SuperAPI AI 工具集

run-codex-subagents

智能体与模型

查看项目

更新于 10-16 07:00

技能介绍

用途

run-codex-subagents 用于通过已发布的 codex-worker CLI 编排 Codex 工作,适合在需要把编码、研究、验证或后续跟进任务委派给 Codex worker 时使用。

适用场景(原文 trigger boundaries):

  • 通过 codex-worker run 启动基于文件的任务
  • 通过 send、thread resume 或 turn steer 继续已有线程
  • 通过 read、logs、wait 监控进度
  • 通过 request list、request read、request respond 应答运行时的阻塞请求
  • 从本地产物与守护进程状态中恢复失败或中断的工作

不适用场景:

  • MCP 服务器搭建或 mcpc 测试
  • 修改 codex-worker 源代码(除非用户明确要求)
  • 通用的 Codex/OpenAI 文档问题

前置条件

验证 CLI:

codex-worker --help

如果缺失,先安装。系统级:

sudo -v ; curl -fsSL https://github.com/yigitkonur/codex-worker/releases/latest/download/install.sh | sudo bash

用户本地安装:

curl -fsSL https://github.com/yigitkonur/codex-worker/releases/latest/download/install.sh | bash -s -- --install-dir "$HOME/.local/bin"

备用方式:

npm install -g codex-worker

确认运行时健康状态:

codex-worker --output json doctor

提示词以文件形式承载。派发前需先写好 .md 文件。

命令族

按资料所述,当前命令族分组如下:

  • 友好别名:run、send、read、logs,适合最快的文件驱动编排流程
  • 协议优先控制:thread start/resume/read/list、turn start/steer/interrupt、request respond、wait,用于显式控制线程/轮次/请求
  • 诊断:doctor、daemon start/status/stop,用于环境与守护进程检查
  • 环境查看:model list、account read/rate-limits、skills list、app list,用于运行时可见性与发现

该技能针对的已发布 CLI 中没有 task 层、session 层、monitor、review、exec 或 request answer 辅助命令。

标准工作流

1. 编写提示词文件

每个提示词文件应说明:

  • worker 需要做什么
  • 涉及哪些文件
  • 不得改动什么
  • 成功是什么样
  • 哪些命令可以证明成功

2. 启动工作

阻塞式一次性运行:

codex-worker run task.md

异步启动:

codex-worker --output json run task.md --async

已发布 CLI 支持的 run 参数:

  • --cwd <dir>
  • --model <id>
  • --async
  • --timeout <ms>

3. 监控与检查

使用返回的 threadId:

codex-worker wait --thread-id <thread-id> --timeout 300000
codex-worker read <thread-id> --tail 50
codex-worker logs <thread-id> --tail 100

用途:

  • wait 阻塞等待终态
  • read 查看线程状态及本地产物路径
  • logs 查看可读的执行输出

4. 应答阻塞请求

当线程状态变为 waiting_request 时:

codex-worker request list --status pending
codex-worker request read <request-id>
codex-worker request respond <request-id> --decision accept

自由文本应答:

codex-worker request respond <request-id> --answer "Yes" --question-id <id>

遇到特殊载荷时,先检查再使用原始 JSON:

codex-worker request respond <request-id> --json '{"result":{"approved":true}}'

5. 继续或恢复

友好续跑:

codex-worker send <thread-id> followup.md

协议优先续跑:

codex-worker turn steer <thread-id> <turn-id> followup.md

中断活动轮次:

codex-worker turn interrupt <thread-id> <turn-id>

重试前检查:

codex-worker read <thread-id> --tail 50
codex-worker logs <thread-id> --tail 100
codex-worker doctor

快速参考

  • 一次性任务:codex-worker run task.md
  • 异步启动:codex-worker --output json run task.md --async
  • 继续已有线程:codex-worker send <thread-id> followup.md
  • 查看线程状态:codex-worker read <thread-id> --tail 50
  • 查看可读日志:codex-worker logs <thread-id> --tail 100
  • 等待完成:codex-worker wait --thread-id <thread-id> --timeout 300000
  • 应答请求:codex-worker request respond <request-id> ...
  • 读取原始请求载荷:codex-worker request read <request-id>
  • 显式启动线程:codex-worker thread start --cwd /abs/project --model gpt-5.4
  • 显式启动轮次:codex-worker turn start <thread-id> prompt.md

状态含义

可通过 read 或 thread list 输出判断状态:

  • running:轮次处于活动状态,下一步 wait、read 或 logs
  • waiting_request:被运行时输入阻塞,下一步 request list → request read → request respond
  • completed:轮次成功结束,下一步检查产物或发送后续指令
  • failed:轮次因错误结束,下一步检查 read、logs 和 doctor
  • interrupted:轮次被取消或停止,下一步检查并决定恢复或重启
  • idle:线程存在但没有活动轮次,下一步 send、turn start 或 thread resume

机器可读输出

使用 --output json 便于 shell 组合:

codex-worker --output json run task.md --async
codex-worker --output json read <thread-id>
codex-worker --output json thread list --cwd /abs/project
codex-worker --output json request list --status pending

优先使用 JSON 输出,而不是解析文本。

状态存储布局

默认状态根目录:~/.codex-worker/(可通过 CODEX_WORKER_STATE_DIR 覆盖)。

关键路径:

  • registry.json:本地线程/轮次/请求状态
  • daemon.json / daemon.sock:守护进程连接信息
  • workspaces/<hash>/threads/<id>.jsonl:转录事件
  • workspaces/<hash>/logs/<id>.output:可读日志
  • workspaces/<hash>/logs/<id>.raw.ndjson:原始协议日志(在可用时)

参考文件

  • references/command-reference.md:已发布 codex-worker CLI 的完整命令与参数面
  • references/orchestration-patterns.md:阻塞、异步、续跑与多波次编排循环
  • references/request-handling.md:正确的 request respond 载荷模式
  • references/recovery-and-diagnostics.md:失败排查、产物读取与 doctor 用法
  • references/composability-and-exit-codes.md:JSON 模式、shell 组合与命令行为
  • references/prompt-bundles.md:提示词文件行为与续跑模式
  • references/prompt-writing.md:如何编写更好的 Markdown 提示词文件
  • references/runtime-config.md:运行时继承与模型/提供方行为
  • references/templates/coder-mission.md:实现类提示词模板
  • references/templates/research-mission.md:审计/探索类提示词模板
  • references/templates/batch-wave.md:多波次编排提示词模板
  • references/templates/test-runner.md:面向验证的提示词模板
  • references/scripts/batch-status.sh:多运行 shell 的线程列表汇总辅助脚本
  • references/scripts/merged-monitor.sh:合并暴露原始日志线程的原始监控流

限制与约束

  • 不要臆造 task 或 session 子命令层
  • 不要使用 request answer;已发布 CLI 只暴露 request respond
  • 除非 --help 显示,不要假设存在 --follow、--plan、--skip-plan、--label、--compact 等未发布参数
  • 除非确认使用的是更新的未发布版本,不要依赖 monitor、review、exec 或 thread rollback;它们不属于本技能针对的已发布命令面
  • 不要在不重新读取当前线程状态的情况下复用旧的 turn id
  • 不要把 waiting_request 当作失败
  • 在检查 read、logs 和 doctor 之前,不要断言某次运行不可恢复

暂未提供的信息

资料未说明该技能的收费、价格、许可方式、具体适用平台或效果承诺。