0.1.x's Codex integration recommended the user set
`sandbox_mode = "workspace-write"` with `network_access = false` in
`~/.codex/config.toml` via the wizard's instruction string. Everyone who
skimmed the output missed it — Codex's primary enforcement layer stayed
off, and the (in testing) label was honest as a result.
0.2.0 writes both keys directly into config.toml during setup:
sandbox_mode = "workspace-write"
[sandbox_workspace_write]
network_access = false
[mcp_servers.agentsid]
...
Codex's sandbox is kernel-level — stronger than any userland hook could
be because it's OS-enforced, not advisory. Combined with the guard MCP
(already shipping), that's enough for the stable label without requiring
a codex-adapter.sh for hook parity (hooks stay opt-in/experimental).
Supporting changes:
- serializeToml generalised: top-level scalars, arrays, nested booleans,
generic [table] sections. Previously hard-coded to mcp_servers.
- platform.tsx + README: Codex label promoted stable (no "(in testing)").
- 10 new tests: 6 on serializeToml generalisation, 4 on the Codex
sandbox output.
Users on 0.1.x keep running without the sandbox until they re-run the
wizard — changelog documents this so nobody is surprised.
Verified locally: 110/110 tests pass, tsc --noEmit clean. Live
verification against a real Codex install is the next step.