| name | kurultai |
| description | Convene the Kurultai council of rival AI models and act as its judge. Use when the user asks to "run the council", "stress-test this idea with other models", "let models debate/attack/estimate this", or when an important decision deserves adversarial multi-model review. |
/kurultai - convene the council, then judge it
Kurultai is a CLI council of rival models (council.py, pure stdlib). You are the
CHAIR: launch the run, wait for the panel, read the transcript, and fill in the
judge section right here in chat - never via a paid API call.
Steps
- Pick the mode from the user's intent (unless they named one):
- contested question, positions should fight ->
debate "<topic>" [debate|brainstorm|decision] [rounds]
- independent panel review of a doc/question + web grounding ->
fusion <file> [quality|budget]
- stress-test one idea, hunt for fatal flaws ->
redteam "<idea or file>"
- choose among 2-6 options ->
tournament <file> (goal text + a markdown list)
- numeric estimate (how many, probability) ->
delphi "<question>" [rounds]
- Run it:
python3 council.py <mode> ... from the repo root. For long
questions, write them to a temp file first and pass the path.
- Wait for the
DONE line with the runs/<...>.md path. If some models were
silent, run python3 council.py resume runs/<...>.json (writes a new -r2 pair).
- Read the transcript and fill the judge template in chat: Consensus /
Contradictions / Partial coverage / Unique insights / Blind spots (+ the
mode-specific sections from the template at the end of the file), then a hard
final synthesis. Blind spots are YOUR layer on top of the panel, not a summary.
- Reply to the user with a tight verdict (consensus + blind spots + your call),
transcript path at the end.
Notes
- The judge is never a paid API call - the judge is you, in this chat.
- Providers may be down; the ladder reroutes automatically.
doctor shows who is alive.
- Never overwrite anything in
runs/ - it is an append-only archive.