agent-room

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Agent Room

Agent 讨论室

Meta — Stochastic Multi-Agent Discussion. View a problem through multiple expert perspectives via debate or polling.
Core Question: "What do multiple perspectives converge on — and where do they genuinely disagree?"
This is the centralized multi-perspective analysis capability. When any skill needs debate, consensus, or multiple viewpoints on a decision, it invokes agent-room. Structured decomposition work (like task-breakdown) may retain specialized agents for their domain.

概述 — 随机多Agent讨论。通过辩论或投票,从多个专家视角审视问题。
核心问题: "多Agent最终会达成哪些共识——又会在哪些方面存在真正的分歧?"
这是集中式的多视角分析能力。当任何Skill需要针对某个决策开展辩论、达成共识或获取多方观点时,均可调用agent-room。结构化分解类工作(如task-breakdown)可保留其领域专属的Agent。

Two Entry Points

两种调用方式

1. Standalone (user invokes directly)

1. 独立调用(用户直接触发)

User runs
/agent-room "Should we use a monorepo or polyrepo?"
— the skill runs a full debate or poll session.
用户运行
/agent-room "我们应该使用单体仓库还是多仓库?"
—— 该Skill会启动完整的辩论或投票会话。

2. Sub-routine (another skill invokes mid-flow)

2. 子流程调用(其他Skill在流程中触发)

The
discover
skill hits a complex decision during conversation. It invokes agent-room with the specific decision framed, waits for the result, then continues the conversation.
Sub-routine protocol (for invoking skills):
1. Frame the specific decision as a clear problem statement
2. Include relevant context gathered so far
3. Invoke agent-room with mode (debate/poll) and agent count
4. Receive the report: consensus, disagreements, recommendation
5. Integrate the recommendation into the ongoing conversation
6. The agent-room report is ephemeral — it lives in context, not necessarily on disk
When invoked as a sub-routine, skip writing the report to disk unless the user asks. The value is the insight, not the artifact.

discover
Skill在对话过程中遇到复杂决策时,会将具体决策问题整理后调用agent-room,等待结果返回后再继续对话。
子流程调用协议(供其他Skill调用):
1. 将具体决策问题整理为清晰的陈述
2. 附上目前已收集到的相关上下文
3. 指定模式(辩论/投票)和Agent数量,调用agent-room
4. 接收返回报告:共识内容、分歧点、推荐方案
5. 将推荐方案整合到当前对话中
6. agent-room报告为临时内容——仅存在于上下文,无需写入磁盘
以子流程方式调用时,除非用户要求,否则无需将报告写入磁盘。其价值在于提供洞见,而非生成 artifacts。

Critical Gates

关键准则

  1. Choose the right mode — debate for trade-off decisions, poll for filtering hallucinations and finding consensus. Default to debate (richer output for fewer agents).
  2. Problem must be specific — N agents on a fuzzy prompt wastes tokens. If vague, ask the user to sharpen before spawning.
  3. Agents must produce structured output — freeform prose can't be aggregated.
  4. Cost scales with agent count — 3 debate agents x 3 rounds ~ $0.30-0.50. 10 poll agents ~ $0.30-0.50. Default to sonnet unless user requests opus.

  1. 选择合适的模式 —— 辩论模式适用于需要权衡利弊的决策,投票模式适用于过滤幻觉、寻找共识。默认使用辩论模式(Agent数量更少但输出内容更丰富)。
  2. 问题必须具体 —— 模糊的问题会浪费Token。若问题模糊,需先请用户明确后再启动Agent。
  3. Agent必须生成结构化输出 —— 自由格式的文本无法被汇总。
  4. 成本随Agent数量增加而上升 —— 3个Agent进行3轮辩论约需0.30-0.50美元。10个Agent的投票约需0.30-0.50美元。默认使用sonnet模型,除非用户指定opus。

Mode Routing

模式路由规则

KeywordsMode
"debate", "argue", "discuss", "chatroom", "trade-off"Debate
"consensus", "poll", "vote", "what do agents think", "multiple opinions"Poll
AmbiguousDefault to Debate

关键词模式
"debate", "argue", "discuss", "chatroom", "trade-off"辩论模式
"consensus", "poll", "vote", "what do agents think", "multiple opinions"投票模式
模糊表述默认使用辩论模式

Mode A: Debate

模式A:辩论

Spawn N agents (default 3) into a shared conversation. Each reads the full chat history before responding — building on, challenging, or refining previous contributions.
Why it works: Sequential handoffs lose context. A shared conversation preserves reasoning chains and enables genuine debate. When Agent A says "this needs a queue" and Agent B says "a simple loop is fine," that disagreement is more valuable than either agent's solo answer.
启动N个Agent(默认3个)进入共享对话。每个Agent在回应前会阅读完整的对话历史——基于之前的内容进行拓展、质疑或完善。
优势: 顺序传递会丢失上下文,共享对话可保留推理链并促成真正的辩论。当Agent A提出“这需要一个队列”而Agent B认为“简单循环就足够”时,这种分歧比任何单个Agent的独立答案更有价值。

A1. Parse the Request

A1. 解析请求

Extract:
  • Problem/question to debate
  • Agent count N — default 3 (override: "have 5 agents debate")
  • Round count R — default 3 (override: "debate for 5 rounds")
  • Agent roles — user may specify. If not, assign diverse defaults.
提取以下信息:
  • 待辩论的问题
  • Agent数量N —— 默认3个(可覆盖:“让5个Agent进行辩论”)
  • 轮次R —— 默认3轮(可覆盖:“辩论5轮”)
  • Agent角色 —— 用户可指定。若未指定,则分配多样化的默认角色。

A2. Assign Agent Roles

A2. 分配Agent角色

Each agent gets a distinct perspective to maximize productive disagreement.
Software engineering:
  1. Architect — systems, interfaces, scalability, long-term maintainability
  2. Pragmatist — shipping fast, minimal complexity, "good enough" solutions
  3. Critic — edge cases, failure modes, security holes, unstated assumptions
Product/design:
  1. User advocate — UX, simplicity, delight
  2. Business strategist — revenue, growth, competitive advantage
  3. Engineer — technical feasibility and cost
Strategy/decisions:
  1. Optimist — opportunity, upside, reasons to act
  2. Skeptic — risk, downside, reasons to wait
  3. Synthesizer — middle path, integrates both perspectives
For N > 3, add roles that create productive tension with existing ones.
Constraint-assignment for divergence — when the debate is about design or architecture (not strategy), assign each agent a structural constraint instead of (or in addition to) a perspective. This mechanically forces different solutions rather than hoping for them:
  • Agent 1: "Minimize surface area — aim for the fewest possible methods/endpoints"
  • Agent 2: "Maximize flexibility — support the widest range of use cases"
  • Agent 3: "Optimize for the most common case — make the 80% path trivially simple"
  • Agent 4 (if N > 3): "Take inspiration from [specific paradigm/library the user knows]"
Constraint-assigned agents produce genuinely different designs. Perspective-assigned agents tend to converge on similar designs with different justifications.
每个Agent被赋予独特视角,以最大化建设性分歧。
软件工程领域:
  1. 架构师 —— 关注系统、接口、可扩展性、长期可维护性
  2. 实用主义者 —— 关注快速交付、最小复杂度、“足够好”的解决方案
  3. 批评者 —— 关注边缘情况、故障模式、安全漏洞、未明确的假设
产品/设计领域:
  1. 用户倡导者 —— 关注UX、简洁性、用户愉悦感
  2. 商业策略师 —— 关注收入、增长、竞争优势
  3. 工程师 —— 关注技术可行性与成本
策略/决策领域:
  1. 乐观派 —— 关注机会、上行空间、行动理由
  2. 怀疑派 —— 关注风险、下行空间、等待理由
  3. 综合者 —— 关注中间路线、整合双方视角
若N>3,可添加能与现有角色形成建设性张力的新角色。
通过约束分配促进分歧 —— 当辩论主题为设计或架构(而非策略)时,可为每个Agent分配结构性约束(替代或补充视角)。这会机械性地催生不同解决方案,而非依赖自然分歧:
  • Agent 1:“最小化接口面积——尽可能减少方法/端点数量”
  • Agent 2:“最大化灵活性——支持最广泛的使用场景”
  • Agent 3:“针对最常见场景优化——让80%的路径极其简单”
  • Agent 4(若N>3):“从[用户熟悉的特定范式/库]中获取灵感”
分配约束的Agent会生成真正不同的设计方案,而分配视角的Agent往往会收敛于相似设计,仅理由不同。

A3. Run Debate Rounds

A3. 运行辩论轮次

Round 1 — Opening positions. Agent prompt:
You are {role}: {role_description}

PROBLEM:
{problem}

CONTEXT:
{context}

This is Round 1 of a multi-agent debate. State your initial position.
Be specific — propose actual solutions, not vague principles. Take a clear stance.
Other agents will challenge you in subsequent rounds.

Communication discipline:
- No performative agreement: never open with "Great point" or "I appreciate X's perspective"
- State disagreements directly: "That approach fails because [X]" not "While that has merit..."
- No hedging: "This will break under load" not "This might potentially have scaling concerns"

Respond in this format:
POSITION: [One-sentence stance]
REASONING: [3-5 key points]
PROPOSAL: [Concrete recommendation]
CONCERNS: [What could go wrong with your approach]

Write your response directly — do not write to any files.
Rounds 2+ — Debate. Agent prompt:
You are {role}: {role_description}

PROBLEM:
{problem}

PREVIOUS DISCUSSION:
{all previous round entries}

This is Round {N}. Read the previous discussion carefully.

1. Respond to the strongest counterargument against your position
2. Identify where you AGREE with other agents (concede good points)
3. Identify where you still DISAGREE and why
4. Refine your proposal based on the discussion

Do NOT repeat your previous position. Engage with what others said.
Change your mind if they made a better argument.
Do NOT soften disagreements with praise. "I appreciate Agent A's point, but..." is sycophancy disguised as discourse. State the disagreement directly.

Respond in this format:
AGREEMENTS: [What other agents got right]
DISAGREEMENTS: [Where you still differ and why]
REFINED PROPOSAL: [Updated recommendation]
CONFIDENCE: [1-10]

Write your response directly — do not write to any files.
After each round:
  1. Collect all agent responses
  2. Check for convergence: if all agents agree (confidence 8+, proposals aligned), stop early
  3. Otherwise continue to next round
第1轮 —— 初始立场。 Agent提示词:
你是{role}:{role_description}

问题:
{problem}

上下文:
{context}

这是多Agent辩论的第1轮。请陈述你的初始立场。
内容要具体——提出实际解决方案,而非模糊原则。明确表明立场。
其他Agent会在后续轮次中对你提出质疑。

沟通准则:
- 无敷衍式认同:切勿以“观点很棒”或“我认可X的视角”开场
- 直接表达分歧:使用“该方法失败的原因是[X]”而非“虽然该方法有可取之处...”
- 无含糊表述:使用“这会在高负载下崩溃”而非“这可能存在扩展性问题”

请按以下格式回应:
立场:[一句话明确观点]
理由:[3-5个关键点]
提案:[具体建议]
顾虑:[你的方案可能存在的问题]

直接输出你的回应——无需写入任何文件。
第2轮及以后 —— 辩论。 Agent提示词:
你是{role}:{role_description}

问题:
{problem}

之前的讨论:
{all previous round entries}

这是第{N}轮。请仔细阅读之前的讨论内容。

1. 回应针对你立场的最有力反驳
2. 指出你与其他Agent的**共识**(认可合理观点)
3. 指出你仍与其他Agent存在**分歧**的点及原因
4. 根据讨论内容完善你的提案

请勿重复之前的立场。要针对他人的发言做出回应。
若他人的论点更优,请改变你的观点。
请勿用赞美弱化分歧。“我认可Agent A的观点,但...”是伪装成讨论的奉承。请直接陈述分歧。

请按以下格式回应:
共识:[其他Agent的正确观点]
分歧:[你仍持不同意见的点及原因]
完善后提案:[更新后的建议]
信心值:[1-10]

直接输出你的回应——无需写入任何文件。
每轮结束后:
  1. 收集所有Agent的回应
  2. 检查是否达成共识:若所有Agent达成一致(信心值≥8,提案对齐),则提前结束
  3. 否则进入下一轮

A4. Synthesize

A4. 汇总结果

After the last round, you (the orchestrator) read the full debate and synthesize:
  • Where did agents converge? — high-confidence conclusions
  • Where did they remain split? — genuine trade-offs the user must decide
  • What concerns were raised but unresolved? — risks to monitor
  • Did any agent change their mind? — mind-changes are strong signals

最后一轮结束后,由你(协调者)阅读完整辩论内容并汇总:
  • Agent达成了哪些共识? —— 高可信度结论
  • Agent仍存在哪些分歧? —— 用户必须自行决定的真正权衡点
  • 哪些顾虑被提出但未解决? —— 需要监控的风险
  • 是否有Agent改变了观点? —— 观点转变是强烈的信号

Mode B: Poll

模式B:投票

Spawn N agents (default 10) with identical context and varied framings. Each independently analyzes and produces structured output. Aggregate by consensus, divergence, and outlier.
Why it works: Exploits stochastic variation. Like polling 10 experts separately. Filters hallucinations and individual biases. Divergences reveal genuine judgment calls.
启动N个Agent(默认10个),提供相同上下文但不同的表述框架。每个Agent独立分析并生成结构化输出。通过共识、分歧和异常值进行汇总。
优势: 利用随机变化。如同单独咨询10位专家。可过滤幻觉和个体偏见。分歧点揭示真正的判断难题。

B1. Design Structured Output Schema

B1. 设计结构化输出模板

Each agent must return structured output that can be mechanically compared:
Output TypeWhenSchema
RankingPredefined options"Rank these 5 options 1-5"
RecommendationOpen-ended"Top 3 recommendations with confidence 1-10"
BinaryYes/no decision"YES or NO, top 3 reasons"
ScoringMulti-criteria"Score each option 1-10 on [criteria]"
每个Agent必须返回可被机械比较的结构化输出:
输出类型适用场景模板
排名有预定义选项“将这5个选项按1-5排名”
推荐开放式问题“列出Top3建议并给出1-10的信心值”
二元判断是/否决策“YES或NO,列出Top3理由”
评分多维度评估“按[评估维度]为每个选项打分(1-10)”

B2. Generate Framing Variations

B2. 生成多样化表述框架

N slightly different prompts. Core problem + schema identical — only framing varies:
  1. Neutral baseline
  2. Risk-averse analyst
  3. Growth-oriented strategist
  4. Contrarian (challenge conventional wisdom)
  5. First-principles reasoner
  6. User-empathy focus
  7. Resource-constrained optimizer
  8. Long-term (5-year) optimizer
  9. Data-driven (measurable only)
  10. Systems thinker (second/third-order effects)
For N < 10, use the first N. For N > 10, cycle.
生成N个略有不同的提示词。核心问题和输出模板保持一致——仅表述框架不同:
  1. 中立基准
  2. 风险厌恶型分析师
  3. 增长导向型策略师
  4. contrarian(挑战传统认知)
  5. 第一性原理思考者
  6. 用户同理心导向
  7. 资源受限优化者
  8. 长期(5年)优化者
  9. 数据驱动型(仅关注可衡量指标)
  10. 系统思考者(考虑二阶/三阶效应)
若N<10,使用前N个框架;若N>10,循环使用上述框架。

B3. Spawn All N Agents in Parallel

B3. 并行启动所有N个Agent

One-pass — no convergence detection. Independent samples give better statistical signal than iterative refinement.
一次性启动——无需共识检测。独立样本比迭代优化能提供更好的统计信号。

B4. Aggregate Results

B4. 汇总结果

Rankings: Borda count (1st = N points, 2nd = N-1, etc.) Recommendations: Group similar, count occurrences. Consensus (70%+), Divergence (40-69%), Outlier (<40%). Scoring: Mean, median, standard deviation. Flag high-variance options. Binary: Count YES/NO, summarize strongest arguments from each side.

排名: 使用波达计数法(第1名=N分,第2名=N-1分,依此类推) 推荐: 分组相似建议,统计出现次数。共识(≥70%)、分歧(40%-69%)、异常值(<40%)。 评分: 计算平均值、中位数、标准差。标记高方差选项。 二元判断: 统计YES/NO数量,汇总双方最有力的理由。

Report

报告

When standalone (or when explicitly requested), write to
.agents/meta/agent-room-report.md
:
markdown
---
skill: agent-room
version: 1
date: {YYYY-MM-DD}
status: final
---
当独立使用(或用户明确要求)时,将报告写入
.agents/meta/agent-room-report.md
markdown
---
skill: agent-room
version: 1
date: {YYYY-MM-DD}
status: final
---

Agent Room Report

Agent Room 报告

Problem: {problem} Mode: {debate | poll} Agents: {N} | Rounds: {R, debate only}

**Debate sections:** Participants, Consensus, Key Disagreements, Recommended Action, Unresolved Risks, Debate Highlights.

**Poll sections:** Consensus (X+/N agreed), Divergences (split X/Y), Outliers (Z/N), Raw Rankings/Scores.

When invoked as sub-routine: return the synthesis inline, skip disk write.

---
问题:{problem} 模式:{辩论 | 投票} Agent数量:{N} | 轮次:{R, 仅辩论模式}

**辩论模式报告章节:** 参与者、共识内容、关键分歧、推荐行动、未解决风险、辩论亮点。

**投票模式报告章节:** 共识(X+/N同意)、分歧(X/Y分裂)、异常值(Z/N)、原始排名/评分。

当作为子流程调用时:直接返回汇总结果,无需写入磁盘。

---

Configuration

配置参数

ParameterDefaultOverride
modedebate"poll this" / "debate this"
N3 (debate) / 10 (poll)"5 agents" / "15 agents"
R3"debate for 5 rounds" (debate only)
modelsonnet"use opus"
rolesauto"have a DBA, a frontend dev, and a DevOps engineer debate"

参数默认值覆盖方式
modedebate"poll this" / "debate this"
N3(辩论)/10(投票)"5 agents" / "15 agents"
R3"debate for 5 rounds"(仅辩论模式)
modelsonnet"use opus"
roles自动分配"have a DBA, a frontend dev, and a DevOps engineer debate"

Edge Cases

边缘情况处理

  • Vague problem: Ask user to sharpen before spawning. Don't burn tokens on vagueness.
  • N < 2 (debate) or N < 3 (poll): Warn user — debate needs 2+, poll needs 3+.
  • Unanimous agreement round 1: Stop early. Report consensus. Valid and cheap.
  • Deadlock after R rounds: Report honestly. The finding IS that no dominant answer exists.
  • Even poll split: Report the split. No forced tiebreaker.
  • Agent goes off-topic: Exclude from synthesis, note effective N.
  • Existing report: Overwrite — these are ephemeral analysis artifacts.

  • 模糊问题:请用户明确问题后再启动Agent。切勿浪费Token在模糊问题上。
  • N<2(辩论模式)或N<3(投票模式):提醒用户——辩论模式至少需要2个Agent,投票模式至少需要3个Agent。
  • 第1轮即达成完全共识:提前结束。报告共识内容。这是有效且低成本的结果。
  • R轮后仍陷入僵局:如实报告。此时的结论就是不存在主导性答案。
  • 投票结果平分:报告分裂情况。无需强行打破平局。
  • Agent偏离主题:将其排除在汇总结果外,注明实际参与的Agent数量。
  • 已存在报告:覆盖原有报告——这些是临时分析 artifacts。

Cost Considerations

成本考量

  • 3 sonnet agents x 3 rounds (debate): ~$0.30-0.50
  • 10 sonnet agents (poll): ~$0.30-0.50
  • Opus multiplies ~10x — only use when explicitly requested
  • Early convergence saves cost
  • For binary decisions, 5 poll agents usually suffices
  • 3个sonnet Agent进行3轮辩论:约0.30-0.50美元
  • 10个sonnet Agent投票:约0.30-0.50美元
  • Opus模型成本约为sonnet的10倍——仅在用户明确要求时使用
  • 提前达成共识可节省成本
  • 对于二元决策,5个投票Agent通常已足够

Chain Position

流程定位

Standalone skill — can be invoked by any other skill as a sub-routine for multi-perspective decisions. Typical callers:
solution-design
,
system-architecture
,
discover
.
独立Skill——可被任何其他Skill作为子流程调用,以支持多视角决策。典型调用者:
solution-design
,
system-architecture
,
discover