Agentops council
Multi-model consensus council. Spawns parallel judges with configurable perspectives. Modes: validate, brainstorm, research. Triggers: "council", "get consensus", "multi-model review", "multi-perspective review", "council validate", "council brainstorm", "council research".
git clone https://github.com/boshu2/agentops
T=$(mktemp -d) && git clone --depth=1 https://github.com/boshu2/agentops "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/council" ~/.claude/skills/boshu2-agentops-council-18410d && rm -rf "$T"
skills/council/SKILL.md/council — Multi-Model Consensus Council
Spawn parallel judges with different perspectives, consolidate into consensus. Works for any task — validation, research, brainstorming.
Quick Start
/council --quick validate recent # fast inline check /council validate this plan # validation (2 agents) /council brainstorm caching approaches # brainstorm /council research kubernetes upgrade strategies # research /council --preset=security-audit validate the auth system # preset personas /council --deep --explorers=3 research upgrade automation # deep + explorers /council --debate validate the auth system # adversarial 2-round review /council # infers from context
Council works independently — no RPI workflow, no ratchet chain, no
ao CLI required.
Modes
| Mode | Agents | Execution Backend | Use Case |
|---|---|---|---|
| 0 (inline) | Self | Fast single-agent check, no spawning |
| default | 2 | Runtime-native (Codex sub-agents preferred; Claude teams fallback) | Independent judges (no perspective labels) |
| 3 | Runtime-native | Thorough review |
| 3+3 | Runtime-native + Codex CLI | Cross-vendor consensus |
| 2+ | Runtime-native | Adversarial refinement (2 rounds) |
Spawn Backend (MANDATORY)
Council requires a runtime that can spawn parallel subagents and (for
--debate) send messages between agents. Use whatever multi-agent primitives your runtime provides. If no multi-agent capability is detected, fall back to --quick (inline single-agent).
Required capabilities:
- Spawn subagent — create a parallel agent with a prompt (required for all modes except
)--quick - Agent messaging — send a message to a specific agent (required for
)--debate
Skills describe WHAT to do, not WHICH tool to call. See
skills/shared/SKILL.md for the capability contract.
After detecting your backend, read the matching reference for concrete spawn/wait/message/cleanup examples:
- Shared Claude feature contract →
skills/shared/references/claude-code-latest-features.md - Local mirrored contract for runtime-local reads →
references/claude-code-latest-features.md - Claude Native Teams →
references/backend-claude-teams.md - Codex Sub-Agents / CLI →
references/backend-codex-subagents.md - Background Tasks →
references/backend-background-tasks.md - Inline (
) →--quickreferences/backend-inline.md
See also
references/cli-spawning.md for council-specific spawning flow (phases, timeouts, output collection).
When to Use --debate
--debateUse
--debate for high-stakes or ambiguous reviews where judges are likely to disagree:
- Security audits, architecture decisions, migration plans
- Reviews where multiple valid perspectives exist
- Cases where a missed finding has real consequences
Skip
--debate for routine validation where consensus is expected. Debate adds R2 latency (judges stay alive and process a second round via backend messaging).
Incompatibilities:
and--quick
cannot be combined.--debate
runs inline with no spawning;--quick
requires multi-agent rounds. If both are passed, exit with error: "Error: --quick and --debate are incompatible."--debate
is only supported with validate mode. Brainstorm and research do not produce PASS/WARN/FAIL verdicts. If combined, exit with error: "Error: --debate is only supported with validate mode."--debate
Task Types
Council infers task type from natural language. Trigger words: validate (validate, check, review, assess, critique, feedback, improve), brainstorm (brainstorm, explore, options, approaches), research (research, investigate, deep dive, analyze, examine, evaluate, compare).
See references/task-type-rigor-gate.md for the trigger-word table, the MANDATORY first-pass rigor gate for plan/spec validation, and the full
--quick single-agent inline mode contract.
Architecture
See references/architecture-flow.md for the context-budget rule, full Phase 1→3 execution flow diagram, reviewer-config loading, graceful degradation table, effort levels, and pre-flight checks.
Packet Format (JSON)
See references/packet-format.md for the full JSON packet schema (fields, output_schema, judge-prompt boundary rules) and the Empirical Evidence Rule for feasibility reviews.
Perspectives
Perspectives & Presets: Use
tool onReadfor persona definitions, preset configurations, and custom perspective details.skills/council/references/personas.md
Auto-Escalation: When
--preset or --perspectives specifies more perspectives than the current judge count, automatically escalate judge count to match. The --count flag overrides auto-escalation.
Named Perspectives & Consensus
See references/consensus-and-output.md for named-perspective usage (
--perspectives, --perspectives-file, YAML format, flag priority), consensus verdict rules (PASS/WARN/FAIL combination table, DISAGREE resolution), and the finding-extraction flywheel protocol. See references/personas.md for built-in presets.
Explorer Sub-Agents
Explorer Details: Use
tool onReadfor explorer architecture, prompts, sub-question generation, and timeout configuration.skills/council/references/explorers.md
Summary: Judges can spawn explorer sub-agents (
--explorers=N, max 5) for parallel deep-dive research. Total agents = judges * (1 + explorers), capped at MAX_AGENTS=12.
Debate Phase (--debate
)
--debateDebate Protocol: Use
tool onReadfor full debate execution flow, R1-to-R2 verdict injection, timeout handling, and cost analysis.skills/council/references/debate-protocol.md
Summary: Two-round adversarial review. R1 produces independent verdicts. R2 sends other judges' verdicts via backend messaging (
send_input or SendMessage) for steel-manning and revision. Only supported with validate mode.
Agent Prompts
Agent Prompts: Use
tool onReadfor judge prompts (default and perspective-based), consolidation prompt, and debate R2 message template.skills/council/references/agent-prompts.md
Output Format & Consensus Rules
Consensus verdict combination rules, DISAGREE handling, and the finding-extraction flywheel protocol live in references/consensus-and-output.md. Full report templates (validate, brainstorm, research) and debate-report additions live in references/output-format.md. All reports write to
.agents/council/YYYY-MM-DD-<type>-<target>.md. Findings extraction targets .agents/council/extraction-candidates.jsonl; see references/finding-extraction.md for schema and classification heuristics.
Core consensus rules: All PASS -> PASS; Any FAIL -> FAIL; Mixed PASS/WARN -> WARN; cross-vendor disagreement -> DISAGREE.
Configuration
Minimum quorum: 1 agent. Recommended: 80% of judges. On timeout, proceed with remaining judges and note in report. On user cancellation, shutdown all judges and generate partial report with INCOMPLETE marker.
| Env var | Default |
|---|---|
| sonnet |
| sonnet |
| gpt-5.3-codex |
| 120 |
| 60 |
| 90 |
| Flag | Description |
|---|---|
| Brainstorm technique (reverse, scamper, six-hats). See . |
| Model quality profile (balanced, budget, fast, inherit, quality, thorough). See . |
See references/flags-reference.md for the full flag and environment variable reference (
COUNCIL_TIMEOUT, COUNCIL_CODEX_MODEL, --deep, --mixed, --debate, --evidence, --commit-ready, --preset, --profile, and all other flags).
CLI Spawning Commands
CLI Spawning: Use
tool onReadfor team setup, Claude/Codex agent spawning, parallel execution, debate R2 commands, cleanup, and model selection.skills/council/references/cli-spawning.md
Examples
See references/examples-extended.md for the full example catalog and walkthroughs (fast single-agent validation, adversarial debate, cross-vendor consensus with explorers).
Troubleshooting
See references/troubleshooting.md for common error messages, causes, and solutions, plus the judge→council migration table.
Multi-Agent Architecture
See references/multi-agent-architecture.md for the deliberation protocol, communication rules, Ralph Wiggum compliance, degradation behavior, and judge naming convention.
See Also
— Complexity + council for code validation (usesskills/vibe/SKILL.md
when spec found)--preset=code-review
— Plan validation (usesskills/pre-mortem/SKILL.md
, always 3 judges)--preset=plan-review
— Work wrap-up (usesskills/post-mortem/SKILL.md
, always 3 judges + retro)--preset=retrospective
— Multi-agent orchestrationskills/swarm/SKILL.md
— Language-specific coding standardsskills/standards/SKILL.md
— Codebase exploration (complementary to council research mode)skills/research/SKILL.md
Reference Documents
- references/architecture-flow.md
- references/packet-format.md
- references/flags-reference.md
- references/examples-extended.md
- references/troubleshooting.md
- references/multi-agent-architecture.md
- references/task-type-rigor-gate.md
- references/consensus-and-output.md
- references/model-routing.md
- references/backend-background-tasks.md
- references/backend-claude-teams.md
- references/backend-codex-subagents.md
- references/backend-inline.md
- references/brainstorm-techniques.md
- references/claude-code-latest-features.md
- references/model-profiles.md
- references/presets.md
- references/quick-mode.md
- references/ralph-loop-contract.md
- references/agent-prompts.md
- references/cli-spawning.md
- references/debate-protocol.md
- references/explorers.md
- references/finding-extraction.md
- references/output-format.md
- references/personas.md
- references/caching-guidance.md
- references/reviewer-config-example.md
- references/strategic-doc-validation.md
- references/evidence-mode.md
- ../shared/references/backend-background-tasks.md
- ../shared/references/backend-claude-teams.md
- ../shared/references/backend-codex-subagents.md
- ../shared/references/backend-inline.md
- ../shared/references/claude-code-latest-features.md
- ../shared/references/ralph-loop-contract.md