now a loop-and-workflow engine: proof-gated results 00 · DEPART

Idle is not done.

Fleet turns one Claude Code session into a Captain that launches workers, verifies their work, and refuses to call a turn complete until the proof gate passes.

type this into Claude Code

>
Star on GitHub

Copied. Paste into Claude Code.

$0 per token, no API key — runs on your Max plan. Or take the 4-line terminal path below.

A Fleet Captain in cmux running a 2-by-2 grid of four Claude Code workers, with a mission-control sidebar on the left tracking each worker's state, the Captain, and the daemon
EXHIBIT 01 a Captain running a 2×2 worker grid in cmux.

One Captain, many hands.

One Claude Code session becomes the ⚓︎ Fleet Captain — it launches, steers, and monitors a fleet of worker sessions, each in its own cmux pane. You give the Captain an objective. The Captain runs the fleet — no hidden processes, no dashboard pretending to be a terminal.

Every worker is a pane you can read, address, and take the helm of. The fleet scales; the babysitting doesn't.

Exhibit 01 — the deck above, in plain sight: four workers underway under one Captain.

$ fleet grid # launch many hands at once

Idle is not done.

A worker going quiet proves nothing. Fleet tracks every worker's state and holds the turn open until there is evidence of work — a test that passes, a file that exists. Idle is a status, not a result.

fleet status table: four agents listed with id, label, workspace, model, status, and task columns — one running, three idle
EXHIBIT 02 fleet status — 4 agents · 1 active. The table is the territory.

$ fleet verify # evidence, not silence

Judge ≠ generator.

Don't trust a worker's "done" — a turn is complete only when the proof gate passes. Verification runs in a separate session from the one that did the work; a generator never grades its own output. An inconclusive verdict is a failing verdict — the gate fails closed.

EXHIBIT 03 skills/fleet/orchestrator-doctrine.md open source — check it
  • judge ≠ generatora worker never grades its own work; verification is a separate session.
  • fail closedinconclusive = FAIL. The gate never gives the benefit of the doubt.
  • checkable proof"complete" requires a test that passes or a file that exists — a note is metadata, not proof.
✓ PASS — the only verdict that ends a turn

$ fleet watch # keep the watch; let the gate decide

Write loops, not keystrokes.

“My job is to write loops.”

— Boris Cherny, on Acquired

Fleet is the loop made operational: spawn the hands, keep the watch, gate the proof, repeat. Five verbs are the whole vocabulary.

$ fleet spawn

Launch a worker in its own cmux pane.

$ fleet grid

Fan out a grid of workers at once.

$ fleet watch

Monitor every worker's state, live.

$ fleet verify

Independent proof gate. Judge ≠ generator.

$ fleet doctor

Check the install end to end.

$ fleet help # every verb above is real — check

Zero to Captain — four steps.

Clone, install, check, command. If step three doesn't print green checks, stop — fleet doctor is the contract, and Exhibit 00 is what passing looks like.

Zero to Captain — about 2 minutes · 4 steps
1git clone https://github.com/dfeirstein/fleet.git
2cd fleet && ./install.sh
3fleet doctor
4fleet captain

$0 per token, no API key — runs on your Max plan.

Or skip the terminal: type "clone fleet and launch my captain" into Claude Code.
Step 3 should end in green checks. If it doesn't, the install is not done — same rule we hold the workers to.

fleet doctor output: green checks for Node, cmux reachable, fleet on PATH, fleet skill installed, daemon running, surfaces healthy
EXHIBIT 00 fleet doctor — what passing looks like.

⚓︎ End of orders

The argument is over. The proof gate is waiting.

Open source. One sentence to install. The fleet takes the watch from there.

type this into Claude Code

>clone fleet and launch my captain

Copied. Paste into Claude Code.

Star on GitHub $0 per token, no API key — runs on your Max plan.
⚓︎ dfeirstein/fleetMulti-agent orchestrator for cmux. Open source · TypeScript · zero runtime deps. View repo ↗