forked from bots-garden/ori
| ✨ Switch the ACP adapter to @agentclientprotocol/claude-agent-acp (template 0.0.2) | 1 | # 2026-09-18 — Claude Code too old inside the ori sandbox |
| 2 | ||
| 3 | ## Problem | |
| 4 | ||
| 5 | Prompt fails: `Claude Code 2.1.44 does not support this model; version 2.1.251 or newer is required` (`claude_code_version_too_old`). Model = host `~/.claude/settings.json` → `claude-fable-5-1[1m]`. Sandbox `ori`: adapter `@zed-industries/claude-code-acp@0.16.2` → bundled CLI 2.1.44; system CLI `/home/agent/.local/bin/claude` → `~/.local/share/claude/versions/2.1.246` (also too old). ori's env has no `CLAUDE_CODE_EXECUTABLE`. | |
| 6 | ||
| 7 | ## Immediate workaround (per sandbox, not yet run) | |
| 8 | ||
| 9 | ```bash | |
| 10 | sbx exec ori claude update # bucket latest = 2.1.276; egress verified OK | |
| 11 | sbx exec ori ls /home/agent/.local/share/claude/versions/ | |
| 12 | sbx exec ori sh -c 'pkill -x ori; PATH=/usr/local/share/npm-global/bin:/home/agent/.local/bin:$PATH \ | |
| 13 | CLAUDE_CODE_EXECUTABLE=/home/agent/.local/bin/claude \ | |
| 14 | nohup ori --addr :8888 --agent-cmd claude-code-acp --cwd /home/agent/workspace >> /home/agent/.ori.log 2>&1 &' | |
| 15 | ``` | |
| 16 | If `~/.local/bin/claude` still points at 2.1.246 after the update, use the explicit `versions/2.1.276` path. Lost at `sbx rm`; survives stop/start (home is persistent). | |
| 17 | ||
| 18 | ## Permanent fix — two options (user decides) | |
| 19 | ||
| 20 | **(b) recommended — switch adapter.** `template/Dockerfile` stage `adapter`: `npm install -g --prefix /adapter @agentclientprotocol/claude-agent-acp`; `CMD` and `kits/ori/spec.yaml` startup + agentInstructions: `--agent-cmd claude-agent-acp`; docs (summary.md line about the Zed adapter, run how-to EN/FR, kit README). **Trap**: the SDK's CLI is a per-platform optional dependency, and the `adapter` stage is built `--platform=$BUILDPLATFORM` then copied to the target — install for the target instead (`npm install --os=linux --cpu=${TARGETARCH} …`, npm ≥ 10) or drop `--platform=$BUILDPLATFORM` on that stage. Verify in the image: `claude-agent-acp` starts and a prompt round-trips (`pong`). Then `./template/build.sh 0.0.2`, bump `--template k33g/ori:0.0.2` in kit description/docs/launcher, `sbx kit push kits/ori docker.io/k33g/ori-kit:latest`. | |
| 21 | ||
| 22 | **(a) keep Zed adapter.** Dockerfile: `USER agent` + `RUN claude update` (≈250 MB layer, chases versions) — or download a pinned version from the release bucket; kit startup: `export CLAUDE_CODE_EXECUTABLE=/home/agent/.local/bin/claude`. Works until the API raises the floor again. | |
| 23 | ||
| 24 | Neither is started. |