several coding agents.
one git tree. only what passes.
bernstein orchestrates claude code, codex, gemini cli, aider, and 42 more cli coding agents - in parallel, in isolated git worktrees, with lint, types, and tests gating every merge. python scheduler. no llm in the loop.
every routing decision signed. every file write logged. the audit chain is hash-linked and replayable end to end.
ask anything.
how it works
How does Bernstein work?
Bernstein is an open-source orchestrator for CLI coding agents. It decomposes a goal into tasks, spawns Claude Code, Codex, Gemini CLI and 43 other agents into isolated git worktrees, runs each task in parallel, then verifies the output through lint, type checks, tests, and an optional cross-model review before merging. The scheduler is plain Python - deterministic, replayable from an HMAC-chained audit log, no LLM tokens spent on coordination.
one run, four stages.
from the blog
three reads worth your time.
field notes from the orchestra pit. hand-picked: where bernstein sits in the multi-agent coding category, what it looks like in the cloud, and how it started.
bernstein 2.x recap: lineage, ten trackers, A2A capability cards, and a CI that started fixing itself
Thirteen releases since the 1.10 recap consolidated into nine themes: a per-artefact transparency log with Ed25519 signatures, ten tracker adapters from Jira to Plane, A2A capability cards, MCP client and server hardening, a Playwright sandbox for UI agents, a secrets broker, supply-chain coverage with SBOM and OSSF Scorecard, calibrated cost guards, and a web UI plus PWA in the wheel.
agents on cloudflare: workers, durable objects, r2, d1
bernstein 1.8.4 cloudflare backend for ai coding agents: workers run agents, durable workflows handle multi-step tasks, r2 + d1 hold state.
bernstein 1.0: open-source orchestrator for ai coding agents
orchestrate cli coding agents (claude code, codex, gemini cli) in parallel. deterministic scheduler, file-based state, one git worktree per agent.
evidence, not vibes
every step signed, in order, on disk.
bernstein writes an hmac-signed event chain to .bernstein/audit.log. each entry references the previous hash. tampering breaks verification. nothing leaves your machine.
this is the artifact security review actually wants. not a screenshot, not a SOC2 PDF — a hash chain you can replay.
how it compares
same shape. different column.
bernstein is not winning the star race in this category - claude-flow, vibe-kanban, and archon are. it owns the column the regulated-buyer needs: hmac-chained audit, signed agent cards, per-artefact lineage, air-gap deploy. star counts captured 2026-05-21; capability snapshots from each project's own readme on the same date.
| bernstein | claude-flow | archon | vibe-kanban | claude-squad | composio ao | |
|---|---|---|---|---|---|---|
| stars (2026-05-21) | 433 | 54k | 22k | 26k | 7.6k | 7.2k |
| cli adapters | 46 | ~5 | ~10 | ~6 | ~5 | 3 |
| deterministic scheduler | yes | no (swarm) | partial | no | yes | no |
| hmac-chained audit log | yes | no | no | no | no | no |
| signed agent cards | yes | no | no | no | no | no |
| per-artefact lineage | yes | no | no | no | no | no |
| air-gap profile | yes | no | partial | no | no | no |
| mcp server mode | yes | yes | yes | no | no | no |
| python library shape | yes | no | no | no | no | no |
frequently asked
what people actually ask first.
is the scheduler an llm?
does it phone home?
where does it run?
how is this different from claude code?
one engineering post a month.
what we shipped, what broke, what we learned. no funnel, no auto-drip. unsubscribe with one click.