The container is a generic sandbox, but the CLI's conveniences are claude-shaped. Any harness already runs via aibox shell codex (installed durably through ~/.aibox/Dockerfile.extra, with its auth persisting in the aibox-home volume), but:
- The default command, the auto-installer (
_ensure_claude_bin), and the --yolo permission-flag logic hardcode the claude binary.
--copy (disposable snapshot container) only exists on the claude path — no copy sandbox for other harnesses.
- Only
ANTHROPIC_* host env vars are forwarded; e.g. OPENAI_* is not.
Proposed direction (from discussion, not final)
A generic escape hatch rather than per-harness commands:
aibox run <program> [args...] sharing the container/mode plumbing, so aibox run codex --copy works.
- Widen env forwarding beyond
ANTHROPIC_* (e.g. OPENAI_*, or a configurable prefix list in ~/.aibox/config).
- Keep
--yolo claude-specific — approval flags differ per harness (codex uses --dangerously-bypass-approvals-and-sandbox).
- Possibly a
harness=codex config key to change what bare aibox runs.
Deferred for now; capturing so it isn't lost.
The container is a generic sandbox, but the CLI's conveniences are claude-shaped. Any harness already runs via
aibox shell codex(installed durably through~/.aibox/Dockerfile.extra, with its auth persisting in theaibox-homevolume), but:_ensure_claude_bin), and the--yolopermission-flag logic hardcode theclaudebinary.--copy(disposable snapshot container) only exists on the claude path — no copy sandbox for other harnesses.ANTHROPIC_*host env vars are forwarded; e.g.OPENAI_*is not.Proposed direction (from discussion, not final)
A generic escape hatch rather than per-harness commands:
aibox run <program> [args...]sharing the container/mode plumbing, soaibox run codex --copyworks.ANTHROPIC_*(e.g.OPENAI_*, or a configurable prefix list in~/.aibox/config).--yoloclaude-specific — approval flags differ per harness (codex uses--dangerously-bypass-approvals-and-sandbox).harness=codexconfig key to change what bareaiboxruns.Deferred for now; capturing so it isn't lost.