More than one agent in the workshop
Codex and Antigravity join Claude Code inside the devcontainer, with pinned versions, shared skills, and checks that the safety boundaries are real.
The devcontainer can now run OpenAI Codex and Google Antigravity alongside Claude Code. The goal is not to replace one coding agent with another, but to keep the choice inside the same sandboxed workshop. A task can move to the tool that fits it without giving up the repository’s reproducible environment, persistent authentication, or deny-by-default network boundary.
Pin the tools, preserve the boundary#
Adding two command-line programs was the easy part. The real choice was whether they should arrive as whatever version happened to be current, silently update themselves, or become versioned parts of the development environment. The third option won. A manifest records the selected releases and the network access each tool needs, installers verify what they put on disk, and an explicit update command turns a version change into a reviewable repository change.
That last check closed a gap in the design this work started from. Finding the sandbox executable on the path does not prove that the kernel policy it depends on is loaded and enforced. The implementation therefore tests the boundary itself on every start. Not “the prerequisite package exists”, but “the isolation mechanism is active”. The distinction costs a little more setup and gives a much better failure: the container stops with a specific diagnosis instead of letting a later agent session discover a broken sandbox indirectly.
Share knowledge without merging identities#
The skill layout needed a similarly deliberate boundary. Codex and Antigravity share one global skill source, with compatibility links where their discovery conventions differ. Claude Code keeps its existing refresh behavior and its separate skill directory. Consolidating everything would look tidier, but it would also change a working freshness guarantee merely to make the directory tree more symmetrical. Additive integration was the safer design.
The new setup still needs the strongest receipt: a clean rebuild followed by the live health checks. The static validator and code review pass are green, and the configuration is now explicit enough that a failed rebuild should say which assumption was wrong. Once that verification is complete, choosing another agent should be an ordinary workshop decision rather than a reason to leave the workshop.