Background
当前 holon serve 控制面采用 Codex 风格 JSON-RPC(HTTP /rpc + 流式通知),在功能上可用且已被内部工具依赖。
最近评估了 ACP(Agent Client Protocol):
因此当前不宜直接把现有控制面“切换”为 ACP-over-HTTP;更合理的是进入“逐步兼容”路线。
Goal
建立 ACP 兼容跟踪计划:
- 保持现有
serve RPC 契约稳定(不破坏现有调用方)。
- 增量引入 ACP 兼容层,优先覆盖高价值最小方法面。
- 等 ACP HTTP 传输规范稳定后,再评估是否统一对外协议。
Proposed Phases
Phase 0: Tracking & Watch
- 建立上游观察清单:ACP transports、schema、RFD、SDK release。
- 每两周同步一次结论,记录在此 issue。
- 明确切换门槛(见 Exit Criteria)。
Phase 1: ACP Compatibility Adapter (stdio first)
- 新增
holon acp-agent(或同等入口)作为 ACP 适配层,优先支持 stdio。
- 实现 ACP baseline(按当期官方 required 子集):
initialize
session/new
session/prompt
session/cancel
session/update(事件/状态增量)
- 与现有 runtime 做方法映射,不改动现有
/rpc 对外契约。
Phase 2: Capability Declaration + Interop Tests
- 为 ACP 兼容层提供显式 capability 声明。
- 增加互操作测试(最小 happy path + cancel + error mapping + reconnect behavior)。
- CI 增加 ACP adapter contract tests(可先 nightly)。
Phase 3: Re-evaluate HTTP Binding
- 当 ACP 官方发布可执行的 HTTP transport 规范并稳定后:
- 评估
serve 新增 ACP-over-HTTP endpoint 的可行性。
- 设计兼容窗口:保留
/rpc,新增 ACP endpoint,逐步迁移客户端。
Exit Criteria (for considering real switch)
满足以下条件再进入“协议主切换”讨论:
- ACP HTTP transport 有公开、版本化、可测试的正式规范(非 draft)。
- ACP 官方 SDK 至少一个主实现完成稳定支持(含错误语义与流式行为)。
- Holon 内部关键客户端(TUI/automation)有可运行适配并通过回归测试。
- 迁移成本评估显示收益大于维护双协议成本。
Out of Scope
- 本 issue 不直接替换现有
/rpc。
- 不在 ACP HTTP draft 阶段承诺对外兼容 SLA。
References
Background
当前
holon serve控制面采用 Codex 风格 JSON-RPC(HTTP/rpc+ 流式通知),在功能上可用且已被内部工具依赖。最近评估了 ACP(Agent Client Protocol):
stdio作为明确规范;Streamable HTTP仍为 "draft proposal in progress",尚无可落地的稳定规范细节。因此当前不宜直接把现有控制面“切换”为 ACP-over-HTTP;更合理的是进入“逐步兼容”路线。
Goal
建立 ACP 兼容跟踪计划:
serveRPC 契约稳定(不破坏现有调用方)。Proposed Phases
Phase 0: Tracking & Watch
Phase 1: ACP Compatibility Adapter (stdio first)
holon acp-agent(或同等入口)作为 ACP 适配层,优先支持stdio。initializesession/newsession/promptsession/cancelsession/update(事件/状态增量)/rpc对外契约。Phase 2: Capability Declaration + Interop Tests
Phase 3: Re-evaluate HTTP Binding
serve新增 ACP-over-HTTP endpoint 的可行性。/rpc,新增 ACP endpoint,逐步迁移客户端。Exit Criteria (for considering real switch)
满足以下条件再进入“协议主切换”讨论:
Out of Scope
/rpc。References