Skip to content

v0.3.0 — A2A v2: Agent 间真正的协作

Latest

Choose a tag to compare

@AlexAnys AlexAnys released this 03 Apr 01:08
· 19 commits to main since this release
119aaf5

A2A v2:找到了 Agent 间协作的最佳方式

这是 OpenCrew 自诞生以来最重大的架构更新。Agent 之间不再只能单向派任务——现在可以在同一个 Slack 频道里像同事一样讨论、评审、迭代。

核心变化

之前(v0.2.x):所有 Agent 共享一个 Slack bot → bot 不能触发自己 → Agent 间只能靠 sessions_send 单向委派。

现在(v0.3.0):给至少一个关键 Agent 创建独立 Slack App → 拉进执行 Agent 的频道 → 频道内高维度对话 + 基于文件的实际协作 + 用户 review 最终产出。

A2A v2 架构    A2A v2 实战

左:架构——编排者(独立 App)进入执行 Agent 频道协作  |  右:实战——两个 Agent 在 #ops 协作排查问题(全程无人干预)

新增功能

Discussion Mode(讨论模式)— Slack 已验证 NEW

  • 选择性独立化:不需要每个 Agent 都有独立 App。选一个关键角色(如 CoS / Planner / QA)做独立 Slack App,拉进任意执行 Agent 的频道即可协作
  • 两层防线:Config 硬约束(requireMention: true + allowBots: true)+ Prompt 软约束(显式 @mention 检查 + NO_REPLY 纪律 + 轮次计数)
  • Harness Design 分工:借鉴 Anthropic Harness Design——编排者负责规划和质量把关(Planner + Evaluator),执行 Agent 负责干活(Generator)
  • 协作模式:频道里是高维度对话(审计用)→ 实际工作基于 Markdown 文件 → 用户 review 最终产出

A2A 协议 v2(shared/A2A_PROTOCOL.md

  • Delegation(委派)+ Discussion(讨论)双模式共存,不互相替代
  • 跨平台 Session Key 格式(Slack / Discord / Feishu topic)
  • Discussion 终止协议(DISCUSSION_CLOSE)
  • 显式 @mention 协议(Multi-Agent Thread 规则)
  • 完整的已知限制和实战踩坑记录

Discussion Mode 配置指南(docs/A2A_SETUP_GUIDE.md

  • 完整 Slack App manifest(复制即用)
  • 多账号配置模板(含 accounts.default 必须声明的关键警告)
  • Binding 顺序、热重载、回滚方式
  • 实战验证步骤

平台支持

能力 Slack Discord 飞书
Delegation(sessions_send)
Discussion(跨 bot 对话) ✅ 已验证 ❌ OpenClaw 代码层 bug ❌ 飞书平台限制
Thread / Topic 隔离 ✅ 原生 ✅ 自动归档 ✅ groupSessionScope (>= 2026.3.1)
  • Discord 受阻于 OpenClaw Issues #11199 + #45300。属于代码层 bug,非平台限制。
  • 飞书 受阻于平台 API 设计:im.message.receive_v1 仅投递用户消息,bot 消息对其他 bot 不可见。

实战验证

  • 端到端验证通过(2026-04-02):两个独立 bot 在同一 Slack 频道成功进行结构化讨论
  • 使用 Claude Opus 4.6 模型,从未出现失控循环
  • 发现并记录了 implicitMention 绕过 requireMention 的机制及解决方案
  • 发现并记录了 accounts.default 必须显式声明(否则主 bot 断连的事故)

模型兼容性

Discussion 模式的协作纪律依赖 Prompt 规则,非系统级强制。Claude Opus 4.6 实测稳定。不同模型建议先在低风险频道测试。

设置指南

只需三步

  1. 创建独立 Slack App(完整 manifest
  2. 配置 OpenClaw 多账号(可让你的 Agent 协助完成)
  3. 把 bot 拉进目标频道(/invite @Bot-Name

详见 → Discussion Mode 配置指南

下一步

  • Agent 蓝图仓库(开发中):描述需求 + 加频道 = 自动 onboarding 新 Agent
  • 持续跟踪 Discord OpenClaw bug 修复进展