用途:codex-background 是 Codex 的支持技能,改变 Codex 的等待边界,使编排器对已安装 delegate 技能的委派保持挂起,直到注册的中继完成,避免模型驱动的进度轮询。所选 delegate 技能仍负责简报、提供方参数、权限、结果解释、审查、门禁与落地;Claude 的后台 Bash 工作流保持不变。该支持工具需单独安装,不会作为 codex-delegate 的隐式依赖。
首次使用与设置:若 delegate_run 工具不可用,说明设置未完成。需告知用户 bootstrap 会更新 $CODEX_HOME/config.toml(默认 ~/.codex/config.toml,先备份)并写入已安装 *-delegate 技能的注册表,然后运行:node "<skill-dir>/scripts/bootstrap.mjs"。<skill-dir> 是本技能安装目录(含 SKILL.md 的文件夹)。它会写入工作区之外,需申请 Codex 所需的批准或沙箱升级。报告其输出,然后请用户重启 Codex(或重新加载 MCP 服务器),之后工具才会出现。若 bootstrap 失败,报告失败,不要回退到 shell 轮询。安装更多 delegate 技能后需再次运行。node "<skill-dir>/scripts/bootstrap.mjs" --check 可在不写入的情况下验证设置。
流程:按所选 delegate 技能准备自包含简报和已批准工作区。将简报写入 codex-background 目录下的 briefs/($CODEX_HOME/codex-background/briefs/<runId>.txt),并使用旁边的 runs/<runId> 作为 outputDirectory,或遵循服务器说明中的路径。若沙箱无法写入该处,已批准工作区内的简报也可接受。切勿从简报中接受中继路径。使用唯一 runId、已注册实现方键、绝对简报/工作区/outputDirectory 路径、显式 relayTimeoutSeconds 和提供方原生 relayArgs,仅调用一次已配置 MCP 服务器的 delegate_run。通用参数放入结构化字段;提供方特定参数原样传递。恢复标识符保持不透明。
保持该 MCP 请求挂起直到完成。不要使用模型驱动的 sleep、状态或日志轮询,也不要将其包装在提前让出并恢复推理等待的工具运行器中。将返回的适配器结果与 resultText 分开审查;后者是未更改的 result.json 内容(仅非 UTF-8 字节用 base64),按所选技能解释。适配器完成仅表示中继以零退出并生成文件,不代表报告证明实现正确。需审查 diff、重跑门禁并在现有授权下落地。等待中断后,用相同 runId 调用 delegate_wait,切勿重新派发。MCP 取消会分离等待者并让已授权任务继续运行。仅在明确打算终止时使用 delegate_abort。服务器优雅关闭会中止其拥有的任务。服务器崩溃后,未解决状态返回 recovery_required;检查保留的产物,并使用实现方自己的恢复工作流。切勿采用或杀死持久化的 PID。
限制:宿主配置的工具超时必须比中继超时多出 30 秒以上。服务器会验证声明的预算,但无法强制执行宿主的实际设置。夹具协议测试展示的是一个挂起请求且无中间消息,并不代表实测的 Codex Desktop token 用量,也不保证宿主无限等待。