Skip to content

Track ACP compatibility path (incremental, no immediate protocol switch) #631

@jolestar

Description

@jolestar

Background

当前 holon serve 控制面采用 Codex 风格 JSON-RPC(HTTP /rpc + 流式通知),在功能上可用且已被内部工具依赖。

最近评估了 ACP(Agent Client Protocol):

  • ACP 消息编码同样使用 JSON-RPC。
  • 但官方传输文档当前仅将 stdio 作为明确规范;Streamable HTTP 仍为 "draft proposal in progress",尚无可落地的稳定规范细节。
  • 已发现有 WebSocket 方向讨论(例如 PR Fix: Allow holon-solve workflow to choose runner (self-hosted/larger) #476),但不等同于 ACP 官方 HTTP 绑定已定稿。

因此当前不宜直接把现有控制面“切换”为 ACP-over-HTTP;更合理的是进入“逐步兼容”路线。

Goal

建立 ACP 兼容跟踪计划:

  1. 保持现有 serve RPC 契约稳定(不破坏现有调用方)。
  2. 增量引入 ACP 兼容层,优先覆盖高价值最小方法面。
  3. 等 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

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions