Orchestrates a configurable multi-member CLI planning council to produce, anonymize, judge, and merge independent implementation plans from multiple LLM agents.
How this skill is triggered — by the user, by Claude, or both
Slash command
/am-will-codex-skills-5:llm-councilThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
- Always check for an existing agents config file first (`$XDG_CONFIG_HOME/llm-council/agents.json` or `~/.config/llm-council/agents.json`). If none exists, tell the user to run `./setup.sh` to configure or update agents.
references/architecture.mdreferences/cli-notes.mdreferences/data-contracts.mdreferences/prompts.mdreferences/schemas/council_plan.schema.jsonreferences/schemas/final_plan.schema.jsonreferences/schemas/judge_input.schema.jsonreferences/schemas/judge_output.schema.jsonreferences/schemas/task_spec.schema.jsonreferences/task-spec.example.jsonreferences/templates/judge.mdreferences/templates/plan.mdscripts/llm_council.pyscripts/ui/app.jsscripts/ui/index.htmlscripts/ui/styles.cssscripts/ui_server.pyscripts/ui_state.pysetup.batsetup.ps1$XDG_CONFIG_HOME/llm-council/agents.json or ~/.config/llm-council/agents.json). If none exists, tell the user to run ./setup.sh to configure or update agents.python3 scripts/llm_council.py run --spec /path/to/spec.json to run the council../llm-council/runs/<timestamp> relative to the current working directory.python3 scripts/llm_council.py configure (writes $XDG_CONFIG_HOME/llm-council/agents.json or ~/.config/llm-council/agents.json).judge.md and final-plan.md.final-plan.md are confirmed saved; keep the session open during that interval to avoid closing the interface. If you yield while the Council is running, the session will be terminated and you will FAIL to complete the task. The user will escape out when they are ready or after the 30 minutes have elapsed.
Use agents.planners to define any number of planning agents, and optionally agents.judge to override the judge.
If agents.judge is omitted, the first planner config is reused as the judge.
If agents is omitted in the task spec, the CLI will use the user config file when present, otherwise it falls back to the default council.
Example with multiple OpenCode models:
{
"task": "Describe the change request here.",
"agents": {
"planners": [
{ "name": "codex", "kind": "codex", "model": "gpt-5.2-codex", "reasoning_effort": "xhigh" },
{ "name": "claude-opus", "kind": "claude", "model": "opus" },
{ "name": "opencode-claude", "kind": "opencode", "model": "anthropic/claude-sonnet-4-5" },
{ "name": "opencode-gpt", "kind": "opencode", "model": "openai/gpt-4.1" }
],
"judge": { "name": "codex-judge", "kind": "codex", "model": "gpt-5.2-codex" }
}
}
Custom commands (stdin prompt) can be used by setting kind to custom and providing command and prompt_mode (stdin or arg).
Use extra_args to append additional CLI flags for any agent.
See references/task-spec.example.json for a full copy/paste example.
references/architecture.mdreferences/prompts.mdreferences/templates/*.mdreferences/cli-notes.mdfinal-plan.md are saved; keep the session open during that interval to avoid closing the interface.npx claudepluginhub joshuarweaver/cascade-code-general-misc-4 --plugin am-will-codex-skills-5Orchestrates a multi-agent CLI planning council (Codex, Gemini, etc.) to produce independent plans, then judges and merges them into one final plan. Use when you need structured, bias-resistant planning with retries and failure handling.
Runs a configurable multi-LLM council with personas, budget caps, synthesis, veto gates, and optional implementation handoff via a shell runner.
Runs multi-LLM council for adversarial debate and cross-validation on implementation, architecture, review, security, research, and planning tasks.