Ask three agents. Get one answer.

Council runs Codex, Claude, and Gemini in parallel against the same prompt and synthesizes their responses — using the subscriptions you already pay for.

Works with

Codex Claude Gemini
$ npx @armstrng/council review this migration plan

Free and open source. MIT licensed.

Three models, three sets of blind spots. Council runs them in parallel and surfaces where they agree, where they don't, and where one of them is probably wrong.

Features

Works with what you've already got
Detects codex, claude, and gemini on your PATH and runs whichever subset is there. Override with COUNCIL_*_BIN if your binaries live somewhere unusual.
Won't touch your code
Each CLI runs in its plan or read-only mode. Nothing on disk changes unless you opt in.
See where they disagree
One answer drawn from all three responses, with real disagreements surfaced instead of averaged away. If the lead summarizer is down, the next one takes over.
Watch them think, ask follow-ups
Each model streams in place, with a heartbeat on the slow ones. Press a number to expand a full answer. Type to ask a follow-up — the next turn carries the prior context.
Drops into any pipeline
Pipe stdin with echo "..." | council, get structured output with --json or --json-stream, skip the dashboard with --headless, or import runCouncil() directly in Node.