New services/ai-agent/runner/: a Node CLI the sidecar launches exactly like `claude` (-p/--session-id/--resume/--model). It runs pi 0.80.6 headless on Qwen 3.6 (OpenRouter via vendor-prefixed ids, EVOX2 LM Studio via bare ids, with WoL wake), persists pi sessions keyed by the viewer's session UUID, and mirrors the event stream as a Claude-Code-schema transcript under ~/.pi-runner/transcripts so the viewer parses it with zero new code. Ships a folder-permissions extension (tool_call gate: writes only inside PI_PERM_SCOPE, read roots, bash path scan, secrets deny-list) — pi itself has no permission system. sidecar.py: harness field on /spawn + /resume routes pi sessions to RUNNER_BIN (claude untouched); pi model ids get their own validation regex. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
3.3 KiB
3.3 KiB