引子:从 A2UI 的「传输层可插拔」说起
上一篇文章研究 Google 的 A2UI——一种声明式 Agent UI 协议,让远程不可信 Agent 把富交互界面安全地送回客户端。那张端到端时序图里有一个被一笔带过的角色:传输层。A2UI 反复强调「传输可插拔(A2A / AG-UI / SSE / WebSocket)」,它不绑定传输。
这就留下一个更底层的问题:UI 消息(一行行 JSONL)到底是怎么从远程 Agent 流到你客户端的?如果 Agent 在别的公司、别的云、用别的框架,它们之间靠什么对话?
答案之一,就是这篇的主角——A2A(Agent2Agent)协议。它是 A2UI 最重量级的传输底座,但它的意义远不止「传 UI」:这是 Google 主导、Linux Foundation 治理、150+ 组织支持的 Agent 间通信通用语言。
本篇就从 A2UI 的传输层向下深挖,讲透 A2A:为什么需要它、核心机制、与 MCP 的分工,以及它如何承载 A2UI 的流式 UI。