代理互联 — agent 够到的是另一个 agent
1. 这条分支是什么
① 分支里 agent 够的是工具(无状态、被动、调完即返)。这条分支里对端本身是个有自主性的 agent——它会接活、慢慢干、中途汇报、可能要好几分钟甚至要回头问你。第一性原理:
当对端是 agent 而非工具,契约就不能只是“请求/响应”,得有任务生命周期(提交→运行→需要输入→完成/失败)、流式进展、异步推送,以及**“你是谁、我凭什么信你”**的身份发现。
这正是这条分支三个库各自补的洞:A2A 补通用的 agent↔agent 任务协议;ACP(Zed) 补一个专门场景(编辑器↔编码 agent);AGNTCY 补跨组织的发现与可验证身份。
2. 分支内有哪几种做法(流派)
代理互联
├── 通用 agent↔agent ...... A2A:Agent Card 发现 + Task/Message/Artifact 生命周期
├── 专用场景子集 .......... ACP(Zed):编辑器/客户端 ↔ 编码 agent 的会话协议
└── 跨组织发现+身份 ........ AGNTCY:分布式 Directory + 可验证身份(为前两者供发现底座)
区别一句话:A2A 是“通用怎么对话”,ACP 是“某一类客户端怎么对话”,AGNTCY 是“先怎么找到对方、怎么信任对方”。
3. 对比矩阵
| 库 | 对话双方 | 怎么发现对端 | 核心交互单元 | 长任务/流式 | 成熟度 | 代码锚点 |
|---|---|---|---|---|---|---|
| a2a-protocol | 任意 client agent ↔ remote agent | Agent Card(可签名,支持多租户、版本协商) | Task / Message / Artifact;JSON-RPC + gRPC 双绑定 | SendStreamingMessage 流式 + push notification config | v1.0 已发布稳定;LF 治理 | a2a-protocol/specification/a2a.proto:21(SendMessage)、:167(Task)、:361(AgentCard) |
| acp-agent-client-protocol | 编辑器/客户端 ↔ 编码 agent | 进程内会话握手(init/auth/capabilities),非网络发现 | session/new、session/prompt,fs/read_text_file 工具,权限请求 | 内容流式 + 权限请求往返 | v1/v2 schema 并存,v2 不兼容 v1 | acp-agent-client-protocol/schema/v1/schema.json:2493(x-method session/prompt)、:292(x-method fs/read_text_file) |
| agntcy | (发现底座)发布/发现任意 agent 记录 | 分布式 Directory:OASF 记录 + 内容寻址 CID + DHT;可验证身份 | Directory 服务的 publish/lookup;索引 A2A Agent Card 而非取代 | 不涉及任务流式,只管目录/身份 | LF IoA,pre-standard,跨多仓 | agntcy/api/core/v1/record.pb.go:221(type Record);proto agntcy/proto/agntcy/dir/core/v1/record.proto:58 |
4. 模式与权衡
- A2A 是这条分支的主干协议。 它把“agent 是个会接活的实体”这件事做全了:Agent Card 让对方机器读懂“我能干啥、怎么调我”,Task 生命周期 + 流式 + push 让长任务可控。做通用多 agent 系统从它入手。
- ACP 是“窄而深”的特化。 它不追求通用 agent 互联,只解决编辑器↔编码 agent 这一桩:会话、工具调用、权限请求、内容流。代价是 v2 与 v1 线不兼容,实现时钉死一个 schema 目录。
- AGNTCY 是发现/身份层,不是对话层。 它和 A2A/MCP 互补:Directory 索引 A2A Agent Card 与 MCP server 描述,提供跨组织发现 + 可验证身份,而不替任何一方定义对话内容。
- ACP 三重名陷阱。 本分支的 ACP 是 Zed 的 Agent Client Protocol;别和 ④ 分支的 OpenAI/Stripe Agentic Commerce Protocol、已并入 A2A 的 IBM/BeeAI Agent Communication Protocol、AGNTCY 的 AConP 搞混。
5. 趋势
- IBM/BeeAI 的 ACP(Agent Communication Protocol)已于 2025-08 并入 A2A——视为历史,不是另一条活规范。
- A2A 自 2025-06 起 LF 治理,仓库迁到
a2aproject;支付能力通过扩展(a2a-x402)接入 ④ 分支(见总纲 §4 交叉点)。
6. 代表作 + 深入
- 首读:
a2a-protocol—— 看specification/a2a.proto这份 normative 接口 +docs/definitions.md的对象速查。 (TODO: 待 a2a-protocol 子库 doc) - 编码 agent 场景:
acp-agent-client-protocol(schema/v2/)。 (TODO: 待子库 doc) - 跨组织发现/身份:
agntcy。 (TODO: 待子库 doc)