智能体客户端协议(ACP)由代码编辑器 Zed 主导推出,官网将其定义为「标准化代码编辑器/IDE 与编码智能体之间通信」的协议,本地与远程场景均适用。
要解决的问题
AI 编程智能体与编辑器深度耦合但互操作性缺失——每种编辑器要为想支持的每个智能体写定制集成,每个智能体也要实现各家编辑器的专有 API 才能触达用户。后果是集成成本高、兼容面窄、开发者被锁定。官网明确把 ACP 类比于 LSP 之于语言服务器集成的标准化作用:实现 ACP 的智能体可工作于任何兼容编辑器,支持 ACP 的编辑器则接入整个智能体生态。
技术形态
本地智能体作为编辑器的子进程运行,通过 stdio 上的 JSON-RPC 通信;远程智能体经 HTTP 或 WebSocket 连接(官网注明远程支持仍在完善)。协议尽可能复用 MCP 的 JSON 表示,并为「展示代码差异」等编码场景的交互元素定义了自有类型;用户可读文本默认用 Markdown。
与 MCP 的边界
MCP 连接的是「智能体 ↔ 工具/数据源」,ACP 连接的是「编辑器 ↔ 智能体」,两层协议互补而非替代——这也是为什么 ACP 直接复用 MCP 的数据结构。