council

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

/council — Multi-Model Consensus Council

/council — 多模型共识委员会

Spawn parallel judges with different perspectives, consolidate into consensus. Works for any task — validation, research, brainstorming.
生成具有不同视角的并行评审Agent,最终整合为共识结论。适用于任何任务——验证、研究、头脑风暴。

Quick Start

快速开始

bash
/council --quick validate recent                               # fast inline check
/council validate this plan                                    # validation (2 agents)
/council brainstorm caching approaches                         # brainstorm
/council validate the implementation                          # validation (critique triggers map here)
/council research kubernetes upgrade strategies                # research
/council research the CI/CD pipeline bottlenecks               # research (analyze triggers map here)
/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 --deep --debate validate the migration plan      # thorough + debate
/council                                                       # infers from context
Council works independently — no RPI workflow, no ratchet chain, no
ao
CLI required. Zero setup beyond plugin install.
bash
/council --quick validate recent                               # 快速内联检查
/council validate this plan                                    # 验证(2个Agent)
/council brainstorm caching approaches                         # 头脑风暴
/council validate the implementation                          # 验证(critique触发词映射至此)
/council research kubernetes upgrade strategies                # 研究
/council research the CI/CD pipeline bottlenecks               # 研究(analyze触发词映射至此)
/council --preset=security-audit validate the auth system      # 使用预设角色
/council --deep --explorers=3 research upgrade automation      # 深度模式 + 探索者Agent
/council --debate validate the auth system                # 对抗式两轮评审
/council --deep --debate validate the migration plan      # 全面评审 + 辩论模式
/council                                                       # 从上下文推断任务
Council可独立运行——无需RPI工作流、无需棘轮链、无需
ao
CLI。仅需安装插件,零额外配置。

Modes

模式

ModeAgentsExecution BackendUse Case
--quick
0 (inline)SelfFast single-agent check, no spawning
default2Runtime-native (Codex sub-agents preferred; Claude teams fallback)Independent judges (no perspective labels)
--deep
3Runtime-nativeThorough review
--mixed
3+3Runtime-native + Codex CLICross-vendor consensus
--debate
2+Runtime-nativeAdversarial refinement (2 rounds)
bash
/council --quick validate recent   # inline single-agent check, no spawning
/council recent                    # 2 runtime-native judges
/council --deep recent             # 3 runtime-native judges
/council --mixed recent            # runtime-native + Codex CLI
模式Agent数量执行后端适用场景
--quick
0(内联)当前Agent自身快速单Agent检查,不生成新Agent
默认2原生运行时(优先使用Codex子Agent;回退至Claude团队)独立评审(无视角标签)
--deep
3原生运行时全面评审
--mixed
3+3原生运行时 + Codex CLI跨供应商共识
--debate
2+原生运行时对抗式优化(两轮)
bash
/council --quick validate recent   # 内联单Agent检查,不生成新Agent
/council recent                    # 2个原生运行时评审Agent
/council --deep recent             # 3个原生运行时评审Agent
/council --mixed recent            # 原生运行时 + Codex CLI

Spawn Backend Selection (MANDATORY)

生成后端选择(必填)

Council must auto-select backend using capability detection:
  1. If
    spawn_agent
    is available, use Codex experimental sub-agents
  2. Else if
    TeamCreate
    is available, use Claude native teams
  3. Else use Task(run_in_background=true) fallback
This keeps
/council
universal across Claude and Codex sessions.
Council必须通过能力检测自动选择后端:
  1. spawn_agent
    可用,使用Codex实验性子Agent
  2. TeamCreate
    可用,使用Claude原生团队
  3. 否则使用**Task(run_in_background=true)**作为回退方案
这确保
/council
可在Claude和Codex会话中通用。

When to Use
--debate

何时使用
--debate
模式

Use
--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:
  • --quick
    and
    --debate
    cannot be combined.
    --quick
    runs inline with no spawning;
    --debate
    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."
在高风险或模糊的评审场景中,当评审Agent可能存在分歧时,使用
--debate
  • 安全审计、架构决策、迁移计划
  • 存在多种合理视角的评审
  • 遗漏结论会产生实际影响的场景
在预期能达成共识的常规验证场景中,跳过
--debate
。辩论模式会增加R2延迟(评审Agent会保持活跃,并通过后端消息处理第二轮评审)。
不兼容情况:
  • --quick
    --debate
    无法组合使用。
    --quick
    以内联方式运行,不生成新Agent;
    --debate
    需要多Agent轮次。若同时传入,将返回错误:"Error: --quick and --debate are incompatible."
  • --debate
    仅支持验证模式。头脑风暴和研究模式不会生成PASS/WARN/FAIL结论。若组合使用,将返回错误:"Error: --debate is only supported with validate mode."

Task Types

任务类型

TypeTrigger WordsPerspective Focus
validatevalidate, check, review, assess, critique, feedback, improveIs this correct? What's wrong? What could be better?
brainstormbrainstorm, explore, options, approachesWhat are the alternatives? Pros/cons?
researchresearch, investigate, deep dive, explore deeply, analyze, examine, evaluate, compareWhat can we discover? What are the properties, trade-offs, and structure?
Natural language works — the skill infers task type from your prompt.

类型触发词视角重点
验证validate, check, review, assess, critique, feedback, improve内容是否正确?存在哪些问题?如何优化?
头脑风暴brainstorm, explore, options, approaches有哪些替代方案?优缺点分别是什么?
研究research, investigate, deep dive, explore deeply, analyze, examine, evaluate, compare我们能发现什么?其特性、权衡和结构是什么?
支持自然语言触发——工具会从你的提示中推断任务类型。

Architecture

架构

Execution Flow

执行流程

┌─────────────────────────────────────────────────────────────────┐
│  Phase 1: Build Packet (JSON)                                   │
│  - Task type (validate/brainstorm/research)                      │
│  - Target description                                           │
│  - Context (files, diffs, prior decisions)                      │
│  - Perspectives to assign                                       │
└─────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────┐
│  Phase 1a: Select spawn backend                                  │
│  codex_subagents | claude_teams | background_fallback            │
│  Team lead = spawner (this agent)                                │
└─────────────────────────────────────────────────────────────────┘
            ┌─────────────────┴─────────────────┐
            ▼                                   ▼
┌───────────────────────┐           ┌───────────────────────┐
│  RUNTIME-NATIVE JUDGES│           │     CODEX AGENTS      │
│ (spawn_agent or teams)│           │  (Bash tool, parallel)│
│                       │           │  Agent 1 (independent │
│  Agent 1 (independent │           │    or with preset)    │
│    or with preset)    │           │  Agent 2              │
│  Agent 2              │           │  Agent 3              │
│  Agent 3 (--deep only)│           │  (--mixed only)       │
│  (--deep/--mixed only)│           │                       │
│                       │           │  Output: JSON + MD    │
│  Write files, then    │           │  Files: .agents/      │
│ wait()/SendMessage to │           │    council/codex-*    │
│ lead                  │           │                       │
│  Files: .agents/      │           └───────────────────────┘
│    council/claude-*   │                       │
└───────────────────────┘                       │
            │                                   │
            └─────────────────┬─────────────────┘
┌─────────────────────────────────────────────────────────────────┐
│  Phase 2: Consolidation (Team Lead)                             │
│  - Receive completion from backend channel (wait/SendMessage)   │
│  - Read all agent output files                                  │
│  - If schema_version is missing from a judge's output, treat    │
│    as version 0 (backward compatibility)                        │
│  - Compute consensus verdict                                    │
│  - Identify shared findings                                     │
│  - Surface disagreements with attribution                       │
│  - Generate Markdown report for human                           │
└─────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────┐
│  Phase 3: Cleanup                                               │
│  - Cleanup backend resources (close_agent / TeamDelete / none)  │
└─────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────┐
│  Output: Markdown Council Report                                │
│  - Consensus: PASS/WARN/FAIL                                    │
│  - Shared findings                                              │
│  - Disagreements (if any)                                       │
│  - Recommendations                                              │
└─────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────┐
│  阶段1:构建数据包(JSON)                                      │
│  - 任务类型(validate/brainstorm/research)                     │
│  - 目标描述                                                    │
│  - 上下文(文件、差异、先前决策)                               │
│  - 要分配的视角                                                │
└─────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────┐
│  阶段1a:选择生成后端                                           │
│  codex_subagents | claude_teams | background_fallback            │
│  团队负责人 = 生成器(当前Agent)                                │
└─────────────────────────────────────────────────────────────────┘
            ┌─────────────────┴─────────────────┐
            ▼                                   ▼
┌───────────────────────┐           ┌───────────────────────┐
│  原生运行时评审Agent  │           │     CODEX AGENTS      │
│ (spawn_agent或teams)  │           │ (Bash工具,并行执行) │
│                       │           │  Agent 1(独立或使用预设) │
│  Agent 1(独立或使用预设) │           │                      │
│  Agent 2              │           │  Agent 2              │
│  Agent 3(仅--deep模式) │           │  Agent 3              │
│ (仅--deep/--mixed模式) │           │ (仅--mixed模式)       │
│                       │           │                      │
│  写入文件,然后通过wait()/SendMessage发送给负责人 │           │  输出:JSON + MD    │
│  文件路径:.agents/      │           │  文件路径:.agents/      │
│    council/claude-*   │           │    council/codex-*    │
└───────────────────────┘                       │
            │                                   │
            └─────────────────┬─────────────────┘
┌─────────────────────────────────────────────────────────────────┐
│  阶段2:整合(团队负责人)                                      │
│  - 从后端通道接收完成结果(wait/SendMessage)                   │
│  - 读取所有Agent的输出文件                                    │
│  - 若评审Agent的输出中缺少schema_version,视为版本0(向后兼容)  │
│  - 计算共识结论                                                │
│  - 识别共同发现                                                │
│  - 标注分歧点及对应Agent                                       │
│  - 生成供人类阅读的Markdown报告                                │
└─────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────┐
│  阶段3:清理                                                  │
│  - 清理后端资源(close_agent / TeamDelete / 无操作)            │
└─────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────┐
│  输出:Markdown格式的委员会报告                                │
│  - 共识结论:PASS/WARN/FAIL                                    │
│  - 共同发现                                                  │
│  - 分歧点(若存在)                                           │
│  - 建议                                                      │
└─────────────────────────────────────────────────────────────────┘

Graceful Degradation

优雅降级

FailureBehavior
1 of N agents times outProceed with N-1, note in report
All Codex CLI agents failProceed with runtime-native judges only, note degradation
All agents failReturn error, suggest retry
Codex CLI not installedSkip Codex CLI judges, continue runtime-native mode (warn user)
Codex sub-agents unavailableFall back to Claude teams
Native teams unavailableFall back to
Task(run_in_background=true)
fire-and-forget
Output dir missingCreate
.agents/council/
automatically
Timeout: 120s per agent (configurable via
--timeout=N
in seconds).
Minimum quorum: At least 1 agent must respond for a valid council. If 0 agents respond, return error.
故障场景行为
N个Agent中有1个超时继续使用N-1个Agent的结果,并在报告中注明
所有Codex CLI Agent失败仅使用原生运行时评审Agent继续执行,并注明降级情况
所有Agent失败返回错误,建议重试
未安装Codex CLI跳过Codex CLI评审Agent,继续使用原生运行时模式(向用户发出警告)
Codex子Agent不可用回退至Claude团队
原生团队不可用回退至
Task(run_in_background=true)
的即发即忘模式
输出目录不存在自动创建
.agents/council/
超时设置:每个Agent超时时间为120秒(可通过
--timeout=N
参数以秒为单位配置)。
最低法定人数: 至少需要1个Agent响应才能生成有效结论。若0个Agent响应,返回错误。

Pre-Flight Checks

预检查

  1. Runtime-native backend: Select via capability detection (
    spawn_agent
    ->
    TeamCreate
    ->
    Task(run_in_background=true)
    ).
  2. Codex CLI judges (--mixed only): Check
    which codex
    , test model availability, test
    --output-schema
    support. Downgrade mixed mode when unavailable.
  3. Agent count: Verify
    judges * (1 + explorers) <= MAX_AGENTS (12)
  4. Output dir:
    mkdir -p .agents/council

  1. 原生运行时后端: 通过能力检测选择(
    spawn_agent
    TeamCreate
    Task(run_in_background=true)
    )。
  2. Codex CLI评审Agent(仅--mixed模式): 检查
    which codex
    、测试模型可用性、测试
    --output-schema
    支持。不可用时降级混合模式。
  3. Agent数量: 验证
    评审Agent数量 * (1 + 探索者数量) <= 最大Agent数(12)
  4. 输出目录: 执行
    mkdir -p .agents/council

Quick Mode (
--quick
)

快速模式(
--quick

Single-agent inline validation. No subprocess spawning, no Task tool, no Codex. The current agent performs a structured self-review using the same output schema as a full council.
When to use: Routine checks, mid-implementation sanity checks, pre-commit quick scan.
Execution: Gather context (files, diffs) -> perform structured self-review inline using the council output_schema (verdict, confidence, findings, recommendation) -> write report to
.agents/council/YYYY-MM-DD-quick-<target>.md
labeled as
Mode: quick (single-agent)
.
Limitations: No cross-perspective disagreement, no cross-vendor insights, lower confidence ceiling. Not suitable for security audits or architecture decisions.

单Agent内联验证。不生成子进程、不使用Task工具、不调用Codex。当前Agent使用与完整委员会相同的输出 schema,执行结构化自我评审。
适用场景: 常规检查、实现过程中的 sanity check、提交前快速扫描。
执行流程: 收集上下文(文件、差异)→ 使用委员会输出 schema 内联执行结构化自我评审(结论、置信度、发现、建议)→ 将报告写入
.agents/council/YYYY-MM-DD-quick-<target>.md
,标记为
Mode: quick (single-agent)
局限性: 无跨视角分歧分析、无跨供应商见解、置信度上限较低。不适用于安全审计或架构决策。

Packet Format (JSON)

数据包格式(JSON)

The packet sent to each agent. File contents are included inline — agents receive the actual code/plan text in the packet, not just paths. This ensures both Claude and Codex agents can analyze without needing file access.
json
{
  "council_packet": {
    "version": "1.0",
    "mode": "validate | brainstorm | research",
    "target": "Implementation of user authentication system",
    "context": {
      "files": [
        {
          "path": "src/auth/jwt.py",
          "content": "<file contents inlined here>"
        },
        {
          "path": "src/auth/middleware.py",
          "content": "<file contents inlined here>"
        }
      ],
      "diff": "git diff output if applicable",
      "spec": {
        "source": "bead na-0042 | plan doc | none",
        "content": "The spec/bead description text (optional — included when wrapper provides it)"
      },
      "prior_decisions": [
        "Using JWT, not sessions",
        "Refresh tokens required"
      ]
    },
    "perspective": "skeptic (only when --preset or --perspectives used)",
    "perspective_description": "What could go wrong? (only when --preset or --perspectives used)",
    "output_schema": {
      "verdict": "PASS | WARN | FAIL",
      "confidence": "HIGH | MEDIUM | LOW",
      "key_insight": "Single sentence summary",
      "findings": [
        {
          "severity": "critical | significant | minor",
          "category": "security | architecture | performance | style",
          "description": "What was found",
          "location": "file:line if applicable",
          "recommendation": "How to address"
        }
      ],
      "recommendation": "Concrete next step",
      "schema_version": 1
    }
  }
}

发送给每个Agent的数据包。文件内容将内联包含——Agent会收到实际的代码/计划文本,而非仅路径。这确保Claude和Codex Agent无需文件访问即可进行分析。
json
{
  "council_packet": {
    "version": "1.0",
    "mode": "validate | brainstorm | research",
    "target": "用户认证系统实现方案",
    "context": {
      "files": [
        {
          "path": "src/auth/jwt.py",
          "content": "<此处内联文件内容>"
        },
        {
          "path": "src/auth/middleware.py",
          "content": "<此处内联文件内容>"
        }
      ],
      "diff": "git diff输出(若适用)",
      "spec": {
        "source": "bead na-0042 | 计划文档 | 无",
        "content": "规格/bead描述文本(可选——当包装器提供时包含)"
      },
      "prior_decisions": [
        "使用JWT,不使用会话",
        "需要刷新令牌"
      ]
    },
    "perspective": "skeptic(仅当使用--preset或--perspectives时)",
    "perspective_description": "可能出现哪些问题?(仅当使用--preset或--perspectives时)",
    "output_schema": {
      "verdict": "PASS | WARN | FAIL",
      "confidence": "HIGH | MEDIUM | LOW",
      "key_insight": "单句摘要",
      "findings": [
        {
          "severity": "critical | significant | minor",
          "category": "security | architecture | performance | style",
          "description": "发现的问题",
          "location": "文件:行号(若适用)",
          "recommendation": "解决建议"
        }
      ],
      "recommendation": "具体下一步操作",
      "schema_version": 1
    }
  }
}

Perspectives

视角

Perspectives & Presets: Use
Read
tool on
skills/council/references/personas.md
for persona definitions, preset configurations, and custom perspective details.
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.

视角与预设: 使用Read工具读取
skills/council/references/personas.md
,获取角色定义、预设配置和自定义视角详情。
自动升级:
--preset
--perspectives
指定的视角数量超过当前评审Agent数量时,自动将评审Agent数量升级至匹配视角数量。
--count
参数可覆盖自动升级。

Explorer Sub-Agents

探索者子Agent

Explorer Details: Use
Read
tool on
skills/council/references/explorers.md
for explorer architecture, prompts, sub-question generation, and timeout configuration.
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.

探索者详情: 使用Read工具读取
skills/council/references/explorers.md
,获取探索者架构、提示词、子问题生成和超时配置。
概述: 评审Agent可生成探索者子Agent(
--explorers=N
,最多5个)用于并行深度研究。总Agent数量 =
评审Agent数量 * (1 + 探索者数量)
,上限为12个。

Debate Phase (
--debate
)

辩论阶段(
--debate

Debate Protocol: Use
Read
tool on
skills/council/references/debate-protocol.md
for full debate execution flow, R1-to-R2 verdict injection, timeout handling, and cost analysis.
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.

辩论协议: 使用Read工具读取
skills/council/references/debate-protocol.md
,获取完整辩论执行流程、R1到R2结论注入、超时处理和成本分析。
概述: 两轮对抗式评审。R1生成独立结论。R2通过后端消息(
send_input
SendMessage
)将其他评审Agent的结论发送给每个Agent,用于观点强化和修订。仅支持验证模式。

Agent Prompts

Agent提示词

Agent Prompts: Use
Read
tool on
skills/council/references/agent-prompts.md
for judge prompts (default and perspective-based), consolidation prompt, and debate R2 message template.

Agent提示词: 使用Read工具读取
skills/council/references/agent-prompts.md
,获取评审Agent提示词(默认和基于视角的)、整合提示词和辩论R2消息模板。

Consensus Rules

共识规则

ConditionVerdict
All PASSPASS
Any FAILFAIL
Mixed PASS/WARNWARN
All WARNWARN
Disagreement handling:
  • If Claude says PASS and Codex says FAIL → DISAGREE (surface both)
  • Severity-weighted: Security FAIL outweighs style WARN
DISAGREE resolution: When vendors disagree, the spawner presents both positions with reasoning and defers to the user. No automatic tie-breaking — cross-vendor disagreement is a signal worth human attention.

条件结论
所有Agent返回PASSPASS
任意Agent返回FAILFAIL
PASS/WARN混合WARN
所有Agent返回WARNWARN
分歧处理:
  • 若Claude返回PASS而Codex返回FAIL → 标记为DISAGREE(展示双方结论)
  • 按严重程度加权:安全相关的FAIL优先级高于风格相关的WARN
DISAGREE解决方式: 当不同供应商的Agent存在分歧时,生成器会展示双方立场及理由,交由用户决策。不自动打破平局——跨供应商分歧值得人工关注。

Output Format

输出格式

Report Templates: Use
Read
tool on
skills/council/references/output-format.md
for full report templates (validate, brainstorm, research) and debate report additions (verdict shifts, convergence detection).
All reports write to
.agents/council/YYYY-MM-DD-<type>-<target>.md
.

报告模板: 使用Read工具读取
skills/council/references/output-format.md
,获取完整报告模板(验证、头脑风暴、研究)和辩论报告附加内容(结论变化、收敛检测)。
所有报告均写入
.agents/council/YYYY-MM-DD-<type>-<target>.md

Configuration

配置

Partial Completion

部分完成

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.
最低法定人数: 1个Agent。推荐: 80%的评审Agent响应。超时情况下,使用剩余Agent的结果并在报告中注明。用户取消时,关闭所有评审Agent并生成标记为INCOMPLETE的部分报告。

Environment Variables

环境变量

VariableDefaultDescription
COUNCIL_TIMEOUT
120Agent timeout in seconds
COUNCIL_CODEX_MODEL
gpt-5.3-codexDefault Codex model for --mixed
COUNCIL_CLAUDE_MODEL
opusClaude model for agents
COUNCIL_EXPLORER_MODEL
sonnetModel for explorer sub-agents
COUNCIL_EXPLORER_TIMEOUT
60Explorer timeout in seconds
COUNCIL_R2_TIMEOUT
90Maximum wait time for R2 debate completion after sending debate messages. Shorter than R1 since judges already have context.
变量默认值描述
COUNCIL_TIMEOUT
120Agent超时时间(秒)
COUNCIL_CODEX_MODEL
gpt-5.3-codex--mixed模式默认使用的Codex模型
COUNCIL_CLAUDE_MODEL
opusAgent使用的Claude模型
COUNCIL_EXPLORER_MODEL
sonnet探索者子Agent使用的模型
COUNCIL_EXPLORER_TIMEOUT
60探索者超时时间(秒)
COUNCIL_R2_TIMEOUT
90发送辩论消息后,等待R2辩论完成的最长时间。由于评审Agent已有上下文,此时间比R1短。

Flags

命令行参数

FlagDescription
--deep
3 Claude agents instead of 2
--mixed
Add 3 Codex agents
--debate
Enable adversarial debate round (2 rounds via backend messaging, same agents). Incompatible with
--quick
.
--timeout=N
Override timeout in seconds (default: 120)
--perspectives="a,b,c"
Custom perspective names
--preset=<name>
Built-in persona preset (security-audit, architecture, research, ops, code-review, plan-review, retrospective)
--count=N
Override agent count per vendor (e.g.,
--count=4
= 4 Claude, or 4+4 with --mixed). Subject to MAX_AGENTS=12 cap.
--explorers=N
Explorer sub-agents per judge (default: 0, max: 5). Max effective value depends on judge count. Total agents capped at 12.
--explorer-model=M
Override explorer model (default: sonnet)

参数描述
--deep
使用3个Claude Agent替代默认的2个
--mixed
添加3个Codex Agent
--debate
启用对抗式辩论轮次(通过后端消息进行2轮,使用相同Agent)。与
--quick
不兼容。
--timeout=N
覆盖超时时间(秒),默认120
--perspectives="a,b,c"
自定义视角名称
--preset=<name>
内置角色预设(security-audit、architecture、research、ops、code-review、plan-review、retrospective)
--count=N
覆盖每个供应商的Agent数量(例如
--count=4
= 4个Claude Agent,或--mixed模式下4+4个)。受限于最大Agent数12的上限。
--explorers=N
每个评审Agent对应的探索者子Agent数量(默认0,最大5)。实际最大值取决于评审Agent数量。总Agent数量上限为12。
--explorer-model=M
覆盖探索者使用的模型(默认sonnet)

CLI Spawning Commands

CLI生成命令

CLI Spawning: Use
Read
tool on
skills/council/references/cli-spawning.md
for team setup, Claude/Codex agent spawning, parallel execution, debate R2 commands, cleanup, and model selection.

CLI生成: 使用Read工具读取
skills/council/references/cli-spawning.md
,获取团队设置、Claude/Codex Agent生成、并行执行、辩论R2命令、清理和模型选择。

Examples

示例

bash
/council validate recent                                        # 2 judges, recent commits
/council --deep --preset=architecture research the auth system  # 3 judges with architecture personas
/council --mixed validate this plan                             # 3 Claude + 3 Codex
/council --deep --explorers=3 research upgrade patterns         # 12 agents (3 judges x 4)
/council --preset=security-audit --deep validate the API        # attacker, defender, compliance
/council brainstorm caching strategies for the API              # 2 judges explore options
/council research Redis vs Memcached for session storage        # 2 judges assess trade-offs
/council validate the implementation plan in PLAN.md            # structured plan feedback

bash
/council validate recent                                        # 2个评审Agent,评审最近提交
/council --deep --preset=architecture research the auth system  # 3个使用架构角色的评审Agent
/council --mixed validate this plan                             # 3个Claude + 3个Codex Agent
/council --deep --explorers=3 research upgrade patterns         # 12个Agent(3个评审Agent ×4)
/council --preset=security-audit --deep validate the API        # 攻击者、防御者、合规视角
/council brainstorm caching strategies for the API              # 2个评审Agent探索方案
/council research Redis vs Memcached for session storage        # 2个评审Agent评估权衡
/council validate the implementation plan in PLAN.md            # 结构化计划反馈

Migration from /judge

从/judge迁移

/council
replaces
/judge
. Migration:
OldNew
/judge recent
/council validate recent
/judge 2 opus
/council recent
(default)
/judge 3 opus
/council --deep recent
The
/judge
skill is deprecated. Use
/council
.

/council
替代
/judge
。迁移对应关系:
旧命令新命令
/judge recent
/council validate recent
/judge 2 opus
/council recent
(默认模式)
/judge 3 opus
/council --deep recent
/judge
工具已废弃,请使用
/council

Runtime-Native Architecture

原生运行时架构

Council uses runtime-native spawning as primary:
  • Codex sessions: experimental sub-agents (
    spawn_agent
    ,
    wait
    ,
    send_input
    ,
    close_agent
    )
  • Claude sessions: native teams (
    TeamCreate
    ,
    SendMessage
    , shared
    TaskList
    )
  • Fallback:
    Task(run_in_background=true)
Council将原生运行时生成为主要方式:
  • Codex会话:实验性子Agent(
    spawn_agent
    wait
    send_input
    close_agent
  • Claude会话:原生团队(
    TeamCreate
    SendMessage
    、共享
    TaskList
  • 回退方案:
    Task(run_in_background=true)

Deliberation Protocol

审议协议

The
--debate
flag implements the deliberation protocol pattern:
Independent assessment → evidence exchange → position revision → convergence analysis
Runtime-native backends make this pattern first-class:
  • R1: Judges spawn as sub-agents/teammates, assess independently, return verdicts to lead
  • R2: Team lead sends other judges' verdicts via
    send_input
    (Codex) or
    SendMessage
    (Claude). Judges wake from idle with full R1 context.
  • Consolidation: Team lead reads all output files, computes consensus
  • Cleanup:
    close_agent
    (Codex) or
    shutdown_request
    +
    TeamDelete()
    (Claude)
--debate
标志实现了审议协议模式:
独立评估 → 证据交换 → 立场修订 → 收敛分析
原生运行时后端使该模式成为一等公民:
  • R1: 评审Agent作为子Agent/团队成员生成,独立评估,将结论返回给负责人
  • R2: 团队负责人通过
    send_input
    (Codex)或
    SendMessage
    (Claude)将其他评审Agent的结论发送给每个Agent。评审Agent从空闲状态唤醒,拥有完整R1上下文。
  • 整合: 团队负责人读取所有输出文件,计算共识结论
  • 清理: 执行
    close_agent
    (Codex)或
    shutdown_request
    +
    TeamDelete()
    (Claude)

Communication Rules

通信规则

  • Judges → team lead only. Judges never message each other directly. This prevents anchoring.
  • Team lead → judges. Only the team lead sends follow-ups (
    send_input
    or
    SendMessage
    ).
  • No shared task mutation by judges. Team lead manages coordination state.
  • 仅评审Agent → 团队负责人。 评审Agent之间从不直接通信。这可避免锚定效应。
  • 仅团队负责人 → 评审Agent。 仅团队负责人可发送后续消息(
    send_input
    SendMessage
    )。
  • 评审Agent不得修改共享任务。 团队负责人管理协调状态。

Ralph Wiggum Compliance

Ralph Wiggum合规性

Council maintains fresh-context isolation (Ralph Wiggum pattern) with one documented exception:
--debate
reuses judge context across R1 and R2.
This is intentional. Judges persist within a single atomic council invocation — they do NOT persist across separate council calls. The rationale:
  • Judges benefit from their own R1 analytical context (reasoning chain, not just the verdict JSON) when evaluating other judges' positions in R2
  • Re-spawning with only the verdict summary (~200 tokens) would lose the judge's working memory of WHY they reached their verdict
  • The exception is bounded: max 2 rounds, within one invocation, with explicit cleanup (close_agent or shutdown_request + TeamDelete)
Without
--debate
, council is fully Ralph-compliant: each judge is a fresh spawn, executes once, writes output, and terminates.
Council保持新鲜上下文隔离(Ralph Wiggum模式),仅一个有文档记录的例外:
--debate
在R1和R2之间复用评审Agent上下文。
这是有意设计的。评审Agent在单个原子委员会调用中保持活跃——不会在不同的委员会调用之间持久化。设计理由:
  • 在R2评估其他评审Agent的立场时,评审Agent可受益于自身R1的分析上下文(推理链,而非仅结论JSON)
  • 仅重新生成包含结论摘要(约200个token)的Agent会丢失评审Agent得出结论的推理过程记忆
  • 例外情况是有界的:最多2轮,在一次调用内,且有明确的清理步骤(close_agent或shutdown_request + TeamDelete)
不使用
--debate
时,Council完全符合Ralph规范:每个评审Agent都是全新生成的,执行一次,写入输出,然后终止。

Fallback

回退方案

If runtime-native backend is unavailable, fall back to
Task(run_in_background=true)
fire-and-forget. In fallback mode:
  • --debate
    reverts to R2 re-spawning with truncated R1 verdicts
  • The debate report must include
    **Fidelity:** degraded (fallback — R1 verdicts truncated for R2 re-spawn)
    in the header so users know results may be lower fidelity
  • Non-debate mode works identically (judges write files, team lead reads them)
若原生运行时后端不可用,回退至
Task(run_in_background=true)
的即发即忘模式。在回退模式下:
  • --debate
    会回退为R2重新生成Agent,并传入截断的R1结论
  • 辩论报告必须在标题中包含
    **Fidelity:** degraded (fallback — R1 verdicts truncated for R2 re-spawn)
    ,以便用户知晓结果可能保真度较低
  • 非辩论模式工作方式与正常情况相同(评审Agent写入文件,团队负责人读取)

Judge Naming

评审Agent命名规范

Convention:
council-YYYYMMDD-<target>
(e.g.,
council-20260206-auth-system
).
Judge names:
judge-{N}
for independent judges (e.g.,
judge-1
,
judge-2
), or
judge-{perspective}
when using presets/perspectives (e.g.,
judge-error-paths
,
judge-feasibility
). Use the same logical names across both Codex and Claude backends.

约定:
council-YYYYMMDD-<target>
(例如
council-20260206-auth-system
)。
评审Agent名称:独立评审Agent命名为
judge-{N}
(例如
judge-1
judge-2
),使用预设/视角时命名为
judge-{perspective}
(例如
judge-error-paths
judge-feasibility
)。在Codex和Claude后端使用相同的逻辑名称。

See Also

另请参阅

  • skills/vibe/SKILL.md
    — Complexity + council for code validation (uses
    --preset=code-review
    when spec found)
  • skills/pre-mortem/SKILL.md
    — Plan validation (uses
    --preset=plan-review
    , always 3 judges)
  • skills/post-mortem/SKILL.md
    — Work wrap-up (uses
    --preset=retrospective
    , always 3 judges + retro)
  • skills/swarm/SKILL.md
    — Multi-agent orchestration
  • skills/standards/SKILL.md
    — Language-specific coding standards
  • skills/research/SKILL.md
    — Codebase exploration (complementary to council research mode)
  • skills/vibe/SKILL.md
    — 结合复杂度分析与委员会进行代码验证(找到规格时使用
    --preset=code-review
  • skills/pre-mortem/SKILL.md
    — 计划验证(使用
    --preset=plan-review
    ,固定3个评审Agent)
  • skills/post-mortem/SKILL.md
    — 工作收尾(使用
    --preset=retrospective
    ,固定3个评审Agent + 回顾)
  • skills/swarm/SKILL.md
    — 多Agent编排
  • skills/standards/SKILL.md
    — 特定语言编码标准
  • skills/research/SKILL.md
    — 代码库探索(与委员会研究模式互补)