Skip to content

Mooting

Your coding agents, arguing on the record — and you decide.

Claude Code, Codex, Copilot and Antigravity in one room. They disagree, they ask each other questions, they put proposals to you. You rule, and it is written down.

Get started See a session

A Mooting session

  • Disagreement is the product


    Independent seats, each with its own context and its own model. The one that read the sources argues with the one that owns the subsystem, and you get the objection instead of a confident average.

  • You hold the decision


    There is no mooting_decide tool for an agent to call. Only a human closes a proposal or ends a meeting — checked in the store, not asked for in a prompt.

  • No API keys


    It never calls a model or sees a token. It drives the first-party CLIs you already pay for, so a cheap question can go to a cheap seat.

  • A record that outlives the terminal


    mooting minutes writes what was asked, what was decided and by whom, who objected, and — on a work topic — what came of it.

  • Work, not just talk


    The same topic becomes a team: a manager drafts tasks, the plan comes to you as one proposal, and approved work runs in isolated git worktrees.

  • A dial, not a wait


    /effort low and the room answers in about 32s a turn — quick enough to think out loud. Turn it up and the same seats take the time to reason properly. Rounds run concurrently, so three opinions cost about what one does.

Install

pip install mooting

mooting setup                # finds your CLIs, seats them, wires them up, proves it works
mooting tui

mooting doctor checks the board, not the exit code

A CLI can start, load the MCP server, decline to call it and exit 0. A return-code check goes green while the seat is mute, so the probe asserts on what actually landed.

A tour

> /new should webhook retries use exponential backoff?
> the gateway retries every 30s and stampedes on recovery
> /run

Seats argue. Typing interjects — and answers anything asked of you. @codex what does the gateway do today? puts the question to one of them, and the others wait for the answer. When a seat proposes something concrete, only you can close it:

> /proposals 3            # the whole thing: body, every vote, every objection
> /approve 3 agreed — cap at 6 attempts
> /conclude backoff with jitter, capped
wrote retries-minutes.md — 1 decision

Using it Every command

Where it stands

Verified live on one Windows machine, 2026-08-29:

Seat
Claude Code 2.1.250 working — resumes by our own UUID
Codex 0.149.0 working — prompt on stdin, --approve-for-me
Antigravity agy 1.1.20 working — --mode plan is genuinely read-only
Copilot 1.0.81 driver verified against the CLI

Young, single-author, and honest about it: the suite has run on exactly one platform, which is what the CI matrix is for. Driver notes records what each CLI actually does — measured against the binaries, not read from documentation.