Worker Skill
SkillProductivityThis skill is a team worker protocol for tmux-based OMX teams. It lets your agent act as a team worker that acknowledges tasks, claims assignments, and reports completion. The agent sends a startup ACK to the leader, reads assignments from its inbox, claims each task through the team API, performs the work, and moves the ta
Available today. Use it from your connected AI after setup.
No other account needed.
Confirm the session was started as an OMX Team worker and that OMX_TEAM_WORKER is set to <team-name>/worker-<n>.
Then ask your AI: use the Worker Skill skill
What your AI can do with it
- Send a startup ACK to the leader via omx team api send-message
- Read the first unblocked assignment from inbox.md
- Claim a task before editing with omx team api claim-task
- Transition task status from in_progress to completed or failed
- List and mark mailbox messages with mailbox-list and mailbox-mark-delivered
- Write idle status to status.json after a task transition
Getting started
- Confirm the session was started as an OMX Team worker and that OMX_TEAM_WORKER is set to <team-name>/worker-<n>.
- Read AGENTS.md#durable-runtime-invariants-canonical-ssot before acting.
- Resolve the skill from the first existing path among the listed locations and resolve the Team state root in the given order.
- Send a startup ACK to the leader, then read your inbox.md and claim the first unblocked assignment through the Team API.
- Do the work, transition the task to completed or failed with evidence, acknowledge mailbox messages, and write idle status.
What this skill tells your AI
The instructions your AI receives, as published by yeachan-heo/oh-my-codex in skills/worker/SKILL.md and read by ahel’s review.
When to use
Use only when the session was started as an OMX Team worker. Read AGENTS.md#durable-runtime-invariants-canonical-ssot before acting; it defines the durable ownership and coordination boundaries.
Inputs and preconditions
- Require
OMX_TEAM_WORKER=<team-name>/worker-<n>. - Resolve this skill from the first existing path:
${CODEX_HOME:-~/.codex}/skills/worker/SKILL.md,~/.codex/skills/worker/SKILL.md,<leader_cwd>/.codex/skills/worker/SKILL.md, then<leader_cwd>/skills/worker/SKILL.md. - Resolve the Team state root in this order:
OMX_TEAM_STATE_ROOT, worker identityteam_state_root, config/manifestteam_state_root, local.omx/state.
Operational steps
- Split the environment into
teamNameandworkerName; Send a startup ACK before task work:omx team api send-message --input '{"team_name":"<teamName>","from_worker":"<workerName>","to_worker":"leader-fixed","body":"ACK: <workerName> initialized"}' --json - Read
<team_state_root>/team/<teamName>/workers/<workerName>/inbox.mdand take the first unblocked assignment. - Read
<team_state_root>/team/<teamName>/tasks/task-<id>.json; APIs use the bare numerictask_id(for example"1"). - Claim before editing:
omx team api claim-task --input '{"team_name":"<teamName>","task_id":"<id>","worker":"<workerName>"}' --json - Do the assigned work. Do not write task lifecycle fields directly.
- Complete or fail through the lifecycle API, from
in_progresstocompletedorfailed:
Useomx team api transition-task-status --input '{"team_name":"<teamName>","task_id":"<id>","from":"in_progress","to":"completed","claim_token":"<token>","result":"<evidence>"}' --jsonrelease-task-claimonly to requeue a blocked task topending. - Check and acknowledge mailbox messages:
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 - Write idle status after the transition:
<team_state_root>/team/<teamName>/workers/<workerName>/status.jsonwith{"state":"idle","updated_at":"<ISO timestamp>"}.
Exit and evidence
Completion evidence names the task id, changed artifacts, verification performed, and any blocker. ACKs, task transitions, mailbox acknowledgements, and status writes must be observable through the Team API/state files. On shutdown, follow the lead's inbox instructions and write the required shutdown acknowledgement before exiting.
Signals
- GitHub stars
- 33k
- Forks
- 3k
- Last commit
- Oct 2026
Questions
- When should this skill be used?
- Use only when the session was started as an OMX Team worker. Read AGENTS.md#durable-runtime-invariants-canonical-ssot before acting; it defines the durable ownership and coordination boundaries.
- What are the inputs and preconditions?
- Require OMX_TEAM_WORKER=<team-name>/worker-<n>. Resolve the skill from the first existing listed path, and resolve the Team state root in the order OMX_TEAM_STATE_ROOT, worker identity team_state_root, config/manifest team_state_root, then local .omx/state.
Advanced
- Item type
- skill
- Key
worker- Source
- github.com/yeachan-heo/oh-my-codex