跳转至

ACP 智能体会话

启动 ACP 会话

有两种方式启动 ACP 会话:

使用 `runtime: "acp"` 从代理回合或工具调用中启动 ACP 会话。

```json
{
  "task": "Open the repo and summarize failing tests",
  "runtime": "acp",
  "agentId": "codex",
  "thread": true,
  "mode": "session"
}
```

Note

runtime 默认为 subagent,因此对于 ACP 会话,请显式设置 runtime: "acp"。如果省略 agentId,OpenClaw 在配置了 acp.defaultAgent 时会使用它。mode: "session" 需要 thread: true 以保持持久的绑定对话。

使用 /acp spawn 从聊天中获得显式的操作者控制。

/acp spawn codex --mode persistent --thread auto
/acp spawn codex --mode oneshot --thread off
/acp spawn codex --bind here
/acp spawn codex --thread here

关键标志:

  • --mode persistent|oneshot
  • --bind here|off
  • --thread auto|here|off
  • --cwd <absolute-path>
  • --label <name>

参见斜杠命令。

sessions_spawn 参数

user string (path)
该请求者的 requester_profile.id,当多个人共同引导此回合时必需。
task string (path) required
发送给 ACP 会话的初始提示。
runtime "acp" (path) required
对于 ACP 会话,必须为 "acp"。
agentId string (path)
ACP 目标 harness id。如果已设置,则回退到 acp.defaultAgent。
thread boolean (path) default: false
在支持的情况下请求线程绑定流程。
mode "run" | "session" (path) default: run
"run" 是一次性的;"session" 是持久的。如果 thread: true 且省略了 mode,OpenClaw 可能根据 runtime 路径默认为持久行为。mode: "session" 需要 thread: true。
cwd string (path)
所请求的 runtime 工作目录(由后端/runtime 策略验证)。如果省略,ACP 派生会在配置了目标代理工作区时继承该工作区;缺失的继承路径回退到后端默认值,而真实的访问错误会返回。
label string (path)
面向操作者的标签,用于会话/横幅文本。
resumeSessionId string (path)
恢复现有的 ACP 会话,而不是创建新会话。代理通过 session/load 重放其对话历史。需要 runtime: "acp"。
streamTo "parent" (path)
"parent" 会将初始 ACP 运行进度摘要作为系统事件流式传回请求者会话。OpenClaw 将完整的中继历史记录在子代理的 SQLite 状态中,并在子会话结束时将其移除。父级进度流默认显示助手评论和 ACP 状态进度,除非设置 streaming.progress.commentary=false。Discord 父级进度需要显式设置 streaming.mode: "progress";未设置的 Discord 流式传输将保持静默。状态进度仍然遵循 acp.stream.tagVisibility,因此除非显式启用,plan 等标签将保持隐藏。

ACP sessions_spawn 运行使用 agents.defaults.subagents.runTimeoutSeconds 作为默认的子回合限制。该工具不接受每次调用的超时覆盖(runTimeoutSeconds/timeoutSeconds 会以 config-the-default 错误被拒绝)。

model string (path)
用于 ACP 子会话的显式模型覆盖。Codex ACP 派生会在 session/new 之前将 OpenAI 引用(如 openai/gpt-5.4)规范化为 Codex ACP 启动配置;斜杠形式(如 openai/gpt-5.4/high)还会设置 Codex ACP 推理强度。省略时,sessions_spawn({ runtime: "acp" }) 会使用目标代理的 subagents.model,然后是 agents.defaults.subagents.model,再然后是目标代理的显式 model.primary。如果均未配置,则让 ACP harness 使用其自身的默认模型。原生子代理派生不会继承 ACP 代理的 harness 主模型;它们改用原生子代理设置或原生默认值。其他 harness 必须声明 ACP 模型控制才能进行显式选择。如果没有这些控制,显式选择将失败;继承的默认值可能会被省略,以便 harness 可以使用其自身的默认值。
thinking string (path)
显式的思考/推理强度。对于 Codex ACP,minimal 映射为低强度,low/medium/high/xhigh 直接映射,off 则省略推理强度启动覆盖。显式值优先于 model 中的推理后缀,包括 off。省略时,ACP 派生会使用现有的子代理思考默认值、已配置目标代理的 thinkingDefault,以及所选模型的逐模型 params.thinking。目标代理的 agents.entries.<agent>.models["provider/model"] 设置会覆盖共享的 agents.defaults.models["provider/model"] 设置。

派生绑定与线程模式

模式 行为
here 就地绑定当前活动会话;如果没有活动会话则失败。
off 不创建当前会话绑定。

备注:

  • --bind here 是“让此频道或聊天由 Codex 提供支持”这一操作的最简路径。
  • --bind here 不会创建子线程。
  • --bind here 仅在支持当前会话绑定的频道上可用。
  • 在同一次 /acp spawn 调用中不能同时使用 --bind 和 --thread。
模式 行为
auto 在活动线程中:绑定该线程。在线程之外:在支持时创建/绑定一个子线程。
模式 行为
here 要求当前处于活动线程中;如果不在线程中则失败。
off 无绑定。会话以未绑定状态启动。

说明:

  • 在非线程绑定界面中,默认行为实际上为 off。
  • 线程绑定的生成需要频道策略支持:
  • Discord/Telegram:session.threadBindings.spawnSessions=true
  • 当希望固定当前对话而不创建子线程时,使用 --bind here。

本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 cl/openclaw