关于 worker
worker 是供 OMX Team 工作进程使用的技能,用于指导领取任务、执行、协作和结束工作。它通过 Team API 管理任务分配与状态更新,并保留可观察的状态和完成证据。
主要功能
- 01要求在 OMX Team 工作进程会话中运行
- 02通过 Team API 确认启动
- 03领取首个未阻塞的任务
- 04通过生命周期 API 更新任务状态
- 05检查并确认邮箱消息
适用场景
- 01在 OMX Team 中领取分配的任务
- 02提交包含变更内容和验证结果的完成记录
- 03处理任务期间收到的邮箱指示
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ yeachan-heo/ oh-my-codex --skill worker安装后在 Claude Code 中输入/worker确认已加载。
详细介绍
Worker 技能
适用场景
仅当会话以 OMX Team worker 身份启动时使用。行动前请阅读 AGENTS.md#durable-runtime-invariants-canonical-ssot;其中定义了持久化的所有权和协调边界。
输入和前置条件
- 要求设置
OMX_TEAM_WORKER=<team-name>/worker-<n>。 - 按以下顺序从第一个存在的路径解析此技能:
${CODEX_HOME:-~/.codex}/skills/worker/SKILL.md、~/.codex/skills/worker/SKILL.md、<leader_cwd>/.codex/skills/worker/SKILL.md,然后是<leader_cwd>/skills/worker/SKILL.md。 - 按以下顺序解析 Team 状态根目录:
OMX_TEAM_STATE_ROOT、worker 身份中的team_state_root、配置/清单中的team_state_root、本地.omx/state。
操作步骤
- 将环境拆分为
teamName和workerName;开始处理任务前发送启动 ACK:omx team api send-message --input '{"team_name":"<teamName>","from_worker":"<workerName>","to_worker":"leader-fixed","body":"ACK: <workerName> initialized"}' --json - 阅读
<team_state_root>/team/<teamName>/workers/<workerName>/inbox.md,并领取第一个未受阻的任务分配。 - 阅读
<team_state_root>/team/<teamName>/tasks/task-<id>.json;API 使用不带前缀的数字task_id(例如"1")。 - 编辑前先认领任务:
omx team api claim-task --input '{"team_name":"<teamName>","task_id":"<id>","worker":"<workerName>"}' --json - 完成分配的工作。不要直接写入任务生命周期字段。
- 通过生命周期 API 将任务从
in_progress完成或标记为失败,状态变为completed或failed:
仅当需要将受阻任务重新排入omx team api transition-task-status --input '{"team_name":"<teamName>","task_id":"<id>","from":"in_progress","to":"completed","claim_token":"<token>","result":"<evidence>"}' --jsonpending时,才使用release-task-claim。 - 检查并确认收件箱消息:
omx team api mailbox-list --input '{"team_name":"<teamName>","worker":"<workerName>"}' --json omx team api mailbox-mark-delivered --input '{"team_name":"<teamName>","worker":"<workerName>","message_id":"<MESSAGE_ID>"}' --json - 状态转换后写入空闲状态:
在
<team_state_root>/team/<teamName>/workers/<workerName>/status.json中写入{"state":"idle","updated_at":"<ISO timestamp>"}。
退出和凭证
完成凭证需列出任务 ID、已更改的产物、执行的验证以及任何阻碍因素。ACK、任务状态转换、收件箱消息确认和状态写入都必须能通过 Team API/状态文件观察到。关闭时,遵循负责人收件箱中的指示,并在退出前写入所需的关闭确认。
评论
支持 Markdown