The heads
Roundtable seats up to six frontier models. Each is independent — a different lab, a different training run, a different set of blind spots. That diversity is the point: a council of six uncorrelated reasoners catches what any single model misses.
| Head | Provider | Key | How it runs | |
|---|---|---|---|---|
| 🤖 | Grok | xAI | XAI_API_KEY | Direct API (or an authenticated local CLI if present) |
| 🧠 | Codex / OpenAI | OpenAI | OPENAI_API_KEY | Direct API (or the local codex CLI if present) |
| 🟣 | GLM | Z.ai | ZAI_API_KEY | Direct API |
| 🟠 | MiniMax | MiniMax | MINIMAX_API_KEY | Direct API |
| 🔵 | Claude | Anthropic | ANTHROPIC_API_KEY | Direct API — also serves as the chair |
| ✨ | Gemini | GEMINI_API_KEY / GOOGLE_API_KEY | Direct API |
Configuring heads
Every head is optional. Configure a key and the seat fills; leave it blank and the head skips gracefully — the council runs with whatever subset you have.
roundtable heads # enable / disable heads interactively
roundtable models # pick the model id used for each head
roundtable doctor # show which heads are configured + reachable
Pick a subset for a single run with --heads:
roundtable ask "Review this API design" --heads claude,grok,gemini
API keys, no CLIs required
Roundtable's heads run on plain API keys, so the full council works without any
vendor CLI installed. Where an authenticated local CLI is present (codex, a
logged-in Grok client), Roundtable will prefer it — but it's never required.
The chair
Claude does double duty: it answers as a head and acts as the chair in deliberation mode, adjudicating consensus. If you have an Anthropic key, you have a chair. See How it works.