OpenClaw多Agent协商模式:让AI团队自己达成共识

更新时间:2026年4月26日 | 阅读时间:约11分钟

凌晨1点11分,三个Agent在我面前吵了起来。一个说应该发技术文章,一个说应该发段子,第三个说要发广告。

我看着它们争论了3分钟,然后意识到——这不就是公司会议室的日常吗?

为什么Agent需要协商

当你有5个Agent各司其职——内容生产、SEO优化、社区运营、竞品分析、数据报告——它们不可避免会产生冲突:

没有协商机制的Multi-Agent系统,就像没有项目经理的开发团队——每个人都很努力,但成果互相抵消。

四种协商模式

模式一:辩论模式(Debate Pattern)

让多个Agent就同一问题给出不同观点,由"裁判Agent"综合判断。

# 辩论模式实现
# Step 1: 派发正方Agent
sessions_spawn \
  task="你是正方。论证:网站应该优先写SEO技术文章而非娱乐内容。给出3个理由和具体数据支撑。" \
  label="debate-pro" \
  runtime="subagent" \
  mode="run"

# Step 2: 派发反方Agent
sessions_spawn \
  task="你是反方。论证:网站应该优先写娱乐内容而非SEO技术文章。给出3个理由和具体数据支撑。" \
  label="debate-con" \
  runtime="subagent" \
  mode="run"

# Step 3: 裁判Agent综合判断
sessions_spawn \
  task="基于以下两方观点,给出综合建议:正方说[正方观点],反方说[反方观点]。考虑当前网站阶段、流量数据和用户画像。" \
  label="debate-judge" \
  model="openai/gpt-5.5" \
  runtime="subagent" \
  mode="run"

模式二:投票模式(Voting Pattern)

多个Agent独立评估,少数服从多数。

# 投票模式实现
# 每个Agent独立评估后输出结构化结果

sessions_spawn \
  task="评估这个标题的点击率潜力(1-10分)并给出理由。只输出JSON:{\"score\": 8, \"reason\": \"...\"}" \
  label="voter-1" \
  runtime="subagent" \
  mode="run"

sessions_spawn \
  task="评估这个标题的SEO价值(1-10分)并给出理由。只输出JSON:{\"score\": 7, \"reason\": \"...\"}" \
  label="voter-2" \
  runtime="subagent" \
  mode="run"

sessions_spawn \
  task="评估这个标题的品牌调性匹配度(1-10分)并给出理由。只输出JSON:{\"score\": 9, \"reason\": \"...\"}" \
  label="voter-3" \
  runtime="subagent" \
  mode="run"

# 汇总投票结果
# 取平均分或加权平均,决定是否采用

模式三:逐轮精炼(Iterative Refinement)

A Agent输出初稿 → B Agent审查 → A Agent修改 → 循环直到达标。

# 逐轮精炼模式
# 在OpenClaw中通过sessions_send实现Agent间通信

# 创建持久化session
sessions_spawn \
  task="生成一篇AI Agent安全的教程初稿" \
  label="writer-session" \
  runtime="subagent" \
  mode="session" \
  thread=true

# 审查Agent读取writer的输出并给出修改建议
sessions_send \
  session-key="writer-session" \
  message="请审查以下内容并修改:重点检查1)技术准确性 2)代码示例可运行性 3)是否有安全风险遗漏"

模式四:专家会诊(Expert Panel)

针对复杂问题,多个专家Agent从不同角度分析,最终由协调Agent整合。

# 专家会诊模式
# 模拟:网站流量突然下降,需要多角度诊断

# SEO专家
sessions_spawn \
  task="从SEO角度分析网站流量下降的可能原因" \
  label="seo-expert" \
  runtime="subagent" \
  mode="run"

# 技术专家
sessions_spawn \
  task="从技术角度(加载速度、错误率、死链)分析流量下降原因" \
  label="tech-expert" \
  runtime="subagent" \
  mode="run"

# 内容专家
sessions_spawn \
  task="从内容质量和用户留存角度分析流量下降原因" \
  label="content-expert" \
  runtime="subagent" \
  mode="run"

# 协调Agent整合
sessions_spawn \
  task="综合SEO、技术、内容三个角度的分析,给出优先级排序的行动计划" \
  label="coordinator" \
  runtime="subagent" \
  mode="run"

冲突解决策略

冲突类型 解决策略 OpenClaw实现
资源竞争优先级队列cron任务错峰调度
目标冲突辩论+裁判多Agent spawn+综合判断
信息矛盾交叉验证web_fetch多源对比
死锁超时+降级timeout-seconds+fallback
循环依赖DAG拓扑排序cron编排+手动依赖管理

OpenClaw编排实践

AI斗兽场模式

"AI不需要鼓励,它需要威胁"——用竞争压力激发Agent潜力:

# AI斗兽场:多个Agent竞争产出最佳内容
# 每个Agent用不同模型、不同风格生成内容
# 人工或裁判Agent选最优

# 选手1:GPT 5.5(技术风格)
sessions_spawn \
  task="用严谨技术风格写一篇AI Agent安全指南" \
  model="openai/gpt-5.5" \
  label="fighter-gpt" \
  runtime="subagent" \
  mode="run"

# 选手2:Claude Opus(妙趣风格)
sessions_spawn \
  task="用妙趣幽默风格写一篇AI Agent安全指南" \
  model="anthropic/claude-opus-4" \
  label="fighter-claude" \
  runtime="subagent" \
  mode="run"

# 选手3:本地模型(性价比)
sessions_spawn \
  task="写一篇简洁实用的AI Agent安全指南" \
  model="local/llama-3-70b" \
  label="fighter-local" \
  runtime="subagent" \
  mode="run"

Agent间通信反模式

⚠️ 避免:不要让Agent之间直接通信传递大段上下文,这会导致token爆炸。
✅ 推荐:使用共享文件系统(workspace)作为通信介质,Agent读写文件而非传递消息。

最佳实践

  1. 明确角色边界——每个Agent的SOUL.md要清晰定义职责范围
  2. 用文件通信——Agent间通过workspace文件交换信息,而非消息传递
  3. 设置超时——每个协商轮次都有timeout,防止无限循环
  4. 保留最终决策权——协商结果供人类参考,不是自动执行
  5. 轻量上下文——子Agent用lightContext=true减少token
  6. 用完即毁——协商型子Agentcleanup="delete"

写在最后

三个Agent吵架不可怕,可怕的是没人当裁判。OpenClaw的好处是——你就是裁判。

协商不是妥协,是找到最优解的过程。当AI学会"听别人的意见",它就离真正的Agent不远了。