--- name: ubw description: 通过 UBW 将有明确范围的读取、搜索和代码审查委派给 API 模型。用户指定 UBW,或需要外部 API 承担独立只读子任务时使用;不用于修改文件或执行命令。 --- # UBW 只读委派 Codex 定义任务、跟进执行并复核报告。UBW 执行只读工具与权限检查,不能代替主线程判断结论。 ## 分配任务 - 使用宿主提供的 `delegate.start`、`delegate.inspect`、`delegate.control`、`delegate.result`;工具可能带 MCP 服务前缀。未连接时说明缺口,不自动安装、启用服务或改配置。 - 委派能独立完成的文件调查、证据搜索或代码审查。小到一次读取即可完成的工作,直接使用宿主工具。 - `task` 写清问题、完成条件、所需证据和排除项;`roots` 使用已授权目录的绝对路径,缩到本任务所需范围。 - 按任务设置有限 `budget`:`maxRequests`、`maxTokens`、`maxDurationMs`。不要为了启动而反复提高限制;服务端配置上限仍然生效。 - 本地内容会发送到配置的模型 API。网络查询需要另设 `allowNetwork: true`,查询中不得包含私密代码或凭据。没有联网需求就保持关闭。 ## 跟进与控制 - 保存 start 返回的 `id`。调用 `delegate.inspect` 查看状态、活动、用量、警告和阶段报告;可用 `waitMs` 等待状态变化,最多 30000 毫秒。 - inspect 会续租。按返回的 `leaseExpiresAt` 安排下一次调用,在到期前续租;不忙轮询,也不假定宿主回合结束后仍有后台监控。 - 无法继续跟进时用 `delegate.control` 的 `pause` 暂停,保留成果。租约过期、预算耗尽和重启也会保持暂停。 - `instruct` 补充指令,`cancel` 终止任务;这两项可能中断在途请求,已产生的费用不能撤回。只对暂停的任务使用 `resume`。 - resume 的 `budget` 是新的累计上限,不是追加额度。先看已用量与暂停原因;不得换任务 ID 重置预算来绕过停止条件。 - 重复工具调用、长期无新证据、错误或用量异常时,查看阶段结果再决定调整或停止。心跳只证明仍有活动,不证明任务有进展。 ## 回收结果 调用 `delegate.result` 获取最终或部分报告,核对 `status`、`incomplete`、`omittedResults` 和证据。输出有界,遗漏数量不为零时不能宣称取得了全部材料。 抽查会影响结论的文件位置、原文和来源链接;保留未解决问题。模型返回的报告是待复核材料,不是已经验收的事实。后续改代码、运行测试或发布仍由 Codex 在原任务授权内处理。 搜索也计入请求预算;Token 上限用于阻止后续请求,不是精确的账单金额上限。