Team Skill
SkillProductivityThe team skill is a productivity tool that runs N coordinated agents on a shared task list using tmux-based orchestration. It launches worker agents inside tmux windows under a lead agent, splitting a task across them through a shared task list and message mailboxes. Each worker claims tasks and updates their status through a command-line API while the lead monitors progress until every task finishes before shutting the team down.
Available today. Use it from your connected AI after setup.
No other account needed.
Have tmux installed and verify it with tmux -V.
Then ask your AI: use the Team Skill skill
What your AI can do with it
- Launch N coordinated worker agents under a lead agent in tmux windows
- Split a task across workers via a shared task list
- Let workers claim tasks and update status through a CLI API
- Coordinate workers with message mailboxes and durable inbox state
- Monitor progress with omx team status or omx team await
- Shut the team down after every task finishes
Getting started
- Have tmux installed and verify it with tmux -V.
- Be inside a leader tmux session so the $TMUX variable is set.
- Have the intended omx executable available.
- Ground the task in a recent .omx/context/{slug}-*.md snapshot, creating one if none exists.
- Launch with omx team [N:agent-type] "<task>", for example omx team 3:executor "implement X".
What this skill tells your AI
The instructions your AI receives, as published by yeachan-heo/oh-my-codex in skills/team/SKILL.md and read by ahel’s review.
When to use
Use only for an explicit $team request or omx team ... launch that benefits from durable tmux workers, shared task state, mailbox coordination, or worktree isolation. Read AGENTS.md#durable-runtime-invariants-canonical-ssot; do not copy its durable rules into this card.
Inputs and preconditions
- Launch shape:
omx team [N:agent-type] "<task>"(for exampleomx team 3:executor "implement X"). - Require
tmux -V, a leader session with$TMUX, and the intendedomxexecutable. In Codex App/plain non-tmux sessions, explain the runtime boundary instead of pretending Team is available. - Before launch, ground the task in a recent
.omx/context/{slug}-*.md; create a concise snapshot when none exists. Include target, evidence, constraints, unknowns, and likely touchpoints. - Do not launch nested Team runs. Pick worker roles deliberately; use
OMX_TEAM_WORKER_CLI=codex|claude|autoorOMX_TEAM_WORKER_CLI_MAP=...only when needed. - Per-agent reasoning is set by
agentReasoning; accepted values arelow,medium,high,xhigh, andmax.maxis passed unchanged and remains capability-dependent.ultrais unsupported and is not an alias formax. - Invalid configured values use the built-in role-default fallback. An explicit raw
-c model_reasoning_effort=...is opaque and wins. When both sources are present, explicit raw reasoning wins over inherited Team reasoning and environment reasoning. Do not downgrade or retrymaxasxhigh; built-in role defaults remain unchanged.
Operational steps
- Start the runtime and capture startup evidence:
Team started: <name>, tmux target, worker panes, and the leader ACK mailbox. - Current Runtime Behavior: runtime-owned task files and APIs are the operational interface; the durable ownership and safety rules remain in
templates/AGENTS.md. - Runtime creates
.omx/state/team/<name>/config.json,manifest.v2.json,tasks/task-<id>.json, worker identities/inboxes, mailbox files, and a dispatch queue. Workers receiveOMX_TEAM_WORKER,OMX_TEAM_STATE_ROOT, andOMX_TEAM_LEADER_CWD. - Deliver assignments through durable inbox/task state and the CLI API. The worker card defines ACK, claim, transition, mailbox, and idle-status commands.
- Prefer these machine-readable operations:
omx team api send-message --input '{"team_name":"<name>","from_worker":"leader-fixed","to_worker":"worker-1","body":"<short trigger>"}' --json omx team api read-task --input '{"team_name":"<name>","task_id":"<id>"}' --json omx team api transition-task-status --input '{"team_name":"<name>","task_id":"<id>","from":"in_progress","to":"completed","claim_token":"<token>"}' --json - Monitor with
omx team status <name> --jsonoromx team await <name> --timeout-ms 30000 --json; inspect mailbox/state files when a worker is blocked or stale. - Keep the team running until
pending=0,in_progress=0, andfailed=0(or an explicitly acknowledged failure path). Runomx team shutdown <name>only then, unless the user explicitly aborts. - Verify shutdown evidence and state cleanup. Do not claim completion while workers are still writing.
Team and Ultragoal
When a leader-owned .omx/ultragoal/goals.json exists, workers return task evidence only. The leader checkpoints with a fresh Codex get_goal snapshot:
omx ultragoal checkpoint --goal-id <id> --status complete --evidence "<Team evidence>" --codex-goal-json <fresh-get-goal-json-or-path>
Team launch remains an explicit separate action; it does not create hidden Codex goals.
Dispatch and recovery
- If dispatch reports
worker_notify_failed:<worker>, inspecttmux list-panes, capture the pane, then send one concise trigger and re-check mailbox/state. - For Claude panes, do not spam Enter while work is active. Confirm runtime status first.
- If a worker reports
omx team api ... ENOENT, check whether shutdown or state deletion happened too early; preserve state until all transitions finish. - For a clean retry, kill only known stale worker panes, remove only the exact stale Team root, and relaunch; never kill the leader/HUD pane accidentally.
Exit and evidence
Report team name, launch command, pane/ACK evidence, task counts, worker verification, failures or blockers, shutdown result, and cleaned state paths. Include any worktree or CLI-map choices and keep final integration/verification in the leader lane.
Signals
- GitHub stars
- 33k
- Forks
- 3k
- Last commit
- Oct 2026
Questions
- What is the team skill?
- A skill that runs N coordinated agents on a shared task list using tmux-based orchestration, with a lead agent and worker agents in tmux windows.
- When should I use the team skill?
- Use it only for an explicit $team request or omx team launch that benefits from durable tmux workers, shared task state, mailbox coordination, or worktree isolation.
- What do I need before launching a team?
- tmux -V, a leader session with $TMUX, the intended omx executable, and a recent .omx/context/{slug}-*.md snapshot grounding the task.
Advanced
- Item type
- skill
- Key
team-2- Source
- github.com/yeachan-heo/oh-my-codex