ACPX Harness Routing
原则
当任务明确属于 harness / Claude / Codex / Gemini ACPX 调度任务时,必须强制套用本 skill。
组织方式遵循:
- 先原则
- 再判断路径
- 再执行细则
目标只有一个:
- 用最少分叉、最稳的方式,把总控 agent 对 harness 的调度做成可复用工作法
一句话规则
- harness 任务必须用本 skill
- one-shot:默认 ACP runtime
- 连续任务:默认 direct acpx named session
- Claude:技术架构 / 技术方案
- Codex:需求分析 / 代码实现
- Gemini:交叉验证 / 第二视角
- 只要底层走 acpx / harness,就必须落实“全部批准、不等待交互输入”
- 用户指定优先于默认规则
判断树
第一步:先判断是否属于 harness 任务
属于以下情况时,直接进入本 skill:
- 需要调度 Claude / Codex / Gemini 做分析、实现、验证
- 需要通过 ACP runtime 或 direct acpx 调用 harness
- 需要 one-shot 或连续多轮 harness 工作流
不属于以上情况时,不用本 skill。
第二步:选角色
默认分工:
- Claude:技术架构、技术方案、结构化技术分析
- Codex:需求分析、代码实现
- Gemini:交叉验证、第二视角、多文件快速综合
若用户明确指定角色,则覆盖默认分工。
第三步:选调用路径
A. one-shot 任务
默认走:
sessions_spawn(runtime="acp", agentId="claude|codex|gemini", mode="run", ...)
适用:
- 单轮分析
- 单轮方案
- 单轮需求分析
- 单轮代码实现
- 单轮验证
- 一次性文件生成
B. 连续任务 / 多轮任务
默认走:
direct acpx named session
适用:
- 需要连续承接上下文
- 需要同一个 harness 连续几轮工作
- 需要显式控制 session / cwd / timeout / 审批行为
当前约束:
- Telegram 入口下,ACP runtime 的
thread=true 不可用 mode="session" 依赖 thread=true- 所以当前 Telegram 总控入口,不把 ACP runtime session 作为连续任务主路径
硬规则
1. 审批与交互规则(强制)
无论是 one-shot 还是 long-run,只要底层走的是 acpx / harness 调度,都必须显式确保采用:
尤其 direct acpx 调用时,默认必须带:
--approve-all --non-interactive-permissions deny
这是强制规则,不能省略。
原因:
过去大量“超时 / 不返回 / 卡住”的情况,根因不是 Claude / Codex 不可用,而是没有显式带上这组参数,导致 harness 在非交互环境里等待输入或反馈。
一句话:
- 只要是 acpx harness 调度,就必须把“全部批准、不等待交互输入”落实到调用参数上。
2. 连续会话规则(强制)
连续任务默认走 direct acpx named session,并遵守以下铁律:
铁律 1:创建 / ensure session 时必须显式带 --cwd
错误:
acpx claude sessions ensure --name oc-claude-xxx
正确:
acpx --cwd /path/to/workspace claude sessions ensure --name oc-claude-xxx
铁律 2:后续调用必须保持同一 --cwd
否则会出现:
- session 找不到
- session 绑错目录
- 连续性失效
铁律 3:session 名统一
默认建议:
oc-claude-oc-codex-oc-gemini-
若没有稳定 conversationId,则退化为:
3. 超时规则
默认采用翻倍后的档位:
- 小任务:180
- 中任务:360
- 大任务:600~1200
说明:
- timeout 是上限,不是必须等满
- 任务完成即返回
执行模板
把 harness 当作执行型 worker,不当作闲聊对象。
任务描述默认使用四段:
- 目标
- 边界
- 输出物
- 约束
模板:
目标:
<要完成什么>
边界:
<允许看哪里 / 改哪里 / 不准碰什么>
输出物:
<最终要产出什么文件/结论>
约束:
<风格、实现方式、完成后回复格式>
已验证事实
已验证通过
- OpenClaw ACP runtime one-shot 可用
- direct acpx Claude 可用
- direct acpx Codex 可用
- Claude / Codex 可真实写文件
- direct acpx named session 连续承接可用
已验证限制
- Telegram 入口不支持 ACP
thread=true thread spawn mode="session" 依赖 thread=true- Telegram 总控入口当前不适合用 ACP runtime 做连续 thread session
最终落地规则
如果你只记住三件事,就记住这三件事:
- harness 任务必须先进入本 skill
- one-shot 走 ACP runtime,连续任务走 direct acpx named session
- 只要走 acpx / harness,就必须把“全部批准、不等待交互输入”落实到参数里