deniz.in

Markets

Weather

Loading weather

· via dev.to (home feed)

Open-source Claude Code plugin delegates to Codex and Gemini, which found its race condition

A dev.to post introduces crewmate, an open-source, zero-dependency Claude Code plugin that hands background tasks to OpenAI Codex and Google Gemini. Both models, asked to review the plugin, flagged the same race condition.

Open-source Claude Code plugin delegates to Codex and Gemini, which found its race condition

Claude Code gets a crew

A developer posting as aashish_g on dev.to has released crewmate, an open-source plugin for Claude Code that lets Claude hand tasks to OpenAI Codex or Google Gemini and keep working while they run. According to the post, it installs with two commands, declares zero dependencies, and runs each delegated job in the background so the finished answer is waiting later — even if the session that started it has been closed.

The motivation is a loop most developers will recognize: Claude writes something doubtful, you open a second terminal, paste it into another model, wait, and ferry the reply back. A second opinion often changes the outcome; what nobody wants is the terminal-hopping in between. crewmate automates the hand-off and adds the properties the author says were required: live progress in the chat rather than a final dump, no background server or extra terminal to keep alive, and unambiguous end states. Every job resolves to done, failed, timeout or canceled, with the reason attached and a list of any tools the other model was denied.

Read-only by default, one writer at a time

The visiting model can read the codebase but cannot modify it unless the user passes --write, in which case only a single writing job may run at a time — a lock whose significance becomes clear below. A --resume flag picks the previous conversation back up with a given model.

The feature the author uses most is /crewmate:critique, which sends a design document or a diff to both Codex and Gemini at once, with neither model shown the surrounding Claude conversation. A reviewer who lacks the original reasoning notices assumptions that were never written down, the post argues, and two different models notice different ones.

Crucially, Claude can invoke all of this on its own initiative. The post includes a transcript in which Claude, asked in plain English for Gemini's view of a function, picks the crewmate skill, launches a detached job, polls its status, reads the result, and reports where the two models agree. An agent working through a larger task can delegate the same way, without a human relaying anything.

The race two reviewers agreed on

The sharpest detail in the story is recursive. Late in development, the author ran the critique command on crewmate's own locking code — the mechanism that keeps two writing jobs from editing the same files simultaneously. Codex and Gemini independently flagged the same race condition. The author had already considered it, judged it too unlikely to be worth fixing, and recorded that decision in the written plan; Codex, according to the post, quoted that line back in its review. The bug is fixed now, which the author describes as exactly the outcome the plugin was built to produce.

Caveats, setup and scope

Per the dev.to post, Gemini cannot run shell commands in read-only jobs (it reads files instead), and even with --write it gains file edits but not a shell. If the user's Gemini configuration already permits writes or commands, crewmate refuses to start supposedly read-only Gemini jobs rather than misrepresent what they are. macOS is the tested platform, Linux is expected to work, and Windows is not yet supported. Setup requires Node 20 or newer plus at least one of OpenAI's Codex CLI or Google's Antigravity CLI, installed and signed in.

The author is candid about the competition: anyone using Codex as their only second model should prefer OpenAI's own codex-plugin-cc, which is built on Codex's app server and adds extras such as a hand-off into a native Codex session. crewmate's pitch is having both Codex and Gemini behind a single install. Planned additions include more models behind the same commands and fallback when one hits its quota. An AI-disclosure note states that Claude Code implemented the code from a design the author directed and approved, with Codex, Gemini and fresh Claude sessions reviewing the work, and that the post itself was drafted with Claude and edited by the author.

Why it matters

crewmate is small, but it is a working snapshot of where multi-agent developer tooling points: models delegating to and reviewing one another through ordinary CLI plumbing, with the human moved from relay operator to approver. The race condition is evidence that the pattern can pay for itself. Two reviewers working without the author's context caught a real defect in the very code meant to keep them safe, and they caught it partly because the author had written down — where a model could read it — the reasoning that dismissed the risk. The open problems are the ones the post itself documents: sandboxing by default, serializing writers, explicit terminal states for jobs, and honesty about when a vendor's first-party integration beats a general-purpose bridge.

  • #open-source
  • #claude-code
  • #ai-agents
  • #developer-tools
  • #code-review

Related posts