ACP Agents 是 OpenClaw 中连接外部编码 harness 的运行时。它可以把 Codex、Claude Code、Gemini CLI、Cursor、OpenCode 等工具接入聊天,让你在 Telegram、Discord、iMessage 等会话里启动一个真正的编码 Agent。
ACP 解决什么问题?
普通聊天 Agent 适合回答问题、调用工具、做轻量任务。但如果你想让专业编码 harness 直接接管一个仓库,比如:
- 用 Codex 修改代码
- 用 Claude Code 跑一次代码审查
- 用 Gemini CLI 做长文档分析
- 在 Discord 线程里持续推进一个开发任务
这时应该使用 ACP runtime,而不是普通 sub-agent。
ACP 和 Sub-agent 的区别
| 场景 | 应使用 |
|---|---|
| 调用 Codex、Claude Code、Gemini CLI | ACP Agents |
| OpenClaw 原生后台任务 | Sub-agents |
| 需要 persistent coding session | ACP Agents |
| 一次性研究/摘要/整理 | Sub-agents |
核心区别:ACP 是外部 harness runtime;sub-agent 是 OpenClaw 自身的隔离 Agent 运行。
三种常见启动方式
1. 绑定当前聊天
text
/acp spawn codex --bind here后续这段聊天里的消息会继续路由到同一个 Codex ACP session。适合一对一工作流,不需要新线程。
2. 自动创建线程
text
/acp spawn codex --mode persistent --thread autoOpenClaw 创建或绑定一个线程,后续任务都在该线程中推进。适合团队频道里避免刷屏。
3. 一次性运行
text
/acp spawn claude --mode oneshot适合让 Claude Code 做一次审查或总结,完成后返回结果。
Bound Session 的心智模型
OpenClaw 把几个概念分开:
- 聊天表面:Telegram/Discord/iMessage 里的会话
- ACP session:Codex/Claude/Gemini 的运行时状态
- 线程/话题:可选的子会话空间
- runtime workspace:外部 harness 实际工作的目录
--bind here 只绑定当前聊天,不一定创建新线程;--thread auto 才是创建或绑定线程。
适合团队的使用模式
- 每个项目频道绑定一个 Codex persistent session
- 每个大型 PR 创建一个 ACP 线程
- 紧急 Bug 用 one-shot Claude Code 快速分析
- 多人协作时用
/acp status查看运行状态 - 任务结束用
/acp close关闭绑定
最佳实践
- 明确指定 harness,例如 codex 或 claude
- 长任务优先用 thread-bound session
- 工作目录用 cwd 指向目标仓库
- 不要把 ACP 和 sub-agent 混用成同一类任务
- 需要持续上下文时使用 persistent mode
- 任务结束后关闭 session,避免上下文漂移
来源:OpenClaw 官方文档 - ACP Agents | 整理:ClaudeEagle