关于 team
用于显式启动和协调持久化 tmux 工作组的 OMX 技能。它涵盖任务分派、共享状态、监控、恢复和关闭证据,并要求具备 tmux 运行环境。
主要功能
- 01启动 tmux 工作组
- 02通过持久化状态协调任务
- 03通过邮箱交换消息
- 04监控进度和任务状态
- 05处理工作进程恢复与关闭
适用场景
- 01让多个工作进程并行处理明确的实现任务
- 02跟踪工作进程间的任务分配与完成情况
- 03恢复受阻或失效的工作进程
- 04关闭前核验工作组状态
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ yeachan-heo/ oh-my-codex --skill team安装后在 Claude Code 中输入/team确认已加载。
详细介绍
团队技能
何时使用
仅在明确请求 $team 或启动 omx team ...,且能从持久化 tmux worker、共享任务状态、邮箱协调或 worktree 隔离中获益时使用。阅读 AGENTS.md#durable-runtime-invariants-canonical-ssot;不要将其持久化规则复制到本卡片中。
输入与前提条件
- 启动形式:
omx team [N:agent-type] "<task>"(例如omx team 3:executor "implement X")。 - 需要
tmux -V、带有$TMUX的 leader 会话,以及预期的omx可执行文件。在 Codex App/普通非 tmux 会话中,应说明运行时边界,而不是假装 Team 可用。 - 启动前,将任务建立在最近的
.omx/context/{slug}-*.md上;若不存在,则创建一个简洁快照。包含目标、证据、约束、未知项和可能的接触点。 - 不要启动嵌套的 Team 运行。谨慎选择 worker 角色;仅在需要时使用
OMX_TEAM_WORKER_CLI=codex|claude|auto或OMX_TEAM_WORKER_CLI_MAP=...。 - 每个 Agent 的推理级别由
agentReasoning设置;可接受的值为low、medium、high、xhigh和max。max会原样传递,且仍取决于能力。ultra不受支持,也不是max的别名。 - 无效的配置值会使用内置的角色默认回退值。显式的原始
-c model_reasoning_effort=...是不透明的,并且优先。当两种来源同时存在时,显式原始推理优先于继承的 Team 推理和环境推理。不要将max降级为xhigh或重试;内置角色默认值保持不变。
操作步骤
- 启动运行时并捕获启动证据:
Team started: <name>、tmux 目标、worker 窗格,以及 leader ACK 邮箱。 - 当前运行时行为: 运行时拥有的任务文件和 API 是操作接口;持久化所有权和安全规则仍位于
templates/AGENTS.md。 - 运行时会创建
.omx/state/team/<name>/config.json、manifest.v2.json、tasks/task-<id>.json、worker 身份/收件箱、邮箱文件和调度队列。Worker 会收到OMX_TEAM_WORKER、OMX_TEAM_STATE_ROOT和OMX_TEAM_LEADER_CWD。 - 通过持久化收件箱/任务状态和 CLI API 交付分配。worker 卡片定义了 ACK、claim、transition、mailbox 和 idle-status 命令。
- 优先使用这些机器可读操作:
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 - 使用
omx team status <name> --json或omx team await <name> --timeout-ms 30000 --json进行监控;当 worker 被阻塞或过期时,检查邮箱/状态文件。 - 保持团队运行,直到
pending=0、in_progress=0和failed=0(或明确确认的失败路径)。仅在此时运行omx team shutdown <name>,除非用户明确中止。 - 验证关闭证据和状态清理。当 worker 仍在写入时,不要声称已完成。
Team 与 Ultragoal
当存在由 leader 拥有的 .omx/ultragoal/goals.json 时,worker 仅返回任务证据。Leader 使用新的 Codex get_goal 快照进行检查点:
omx ultragoal checkpoint --goal-id <id> --status complete --evidence "<Team evidence>" --codex-goal-json <fresh-get-goal-json-or-path>
Team 启动仍然是明确的单独操作;它不会创建隐藏的 Codex 目标。
调度与恢复
- 如果调度报告
worker_notify_failed:<worker>,检查tmux list-panes,捕获窗格,然后发送一个简洁触发并重新检查邮箱/状态。 - 对于 Claude 窗格,在工作处于活动状态时不要反复发送 Enter。先确认运行时状态。
- 如果 worker 报告
omx team api ... ENOENT,检查是否过早关闭或删除状态;在所有转换完成之前保留状态。 - 对于干净重试,只终止已知的过期 worker 窗格,只移除确切的过期 Team 根目录,然后重新启动;切勿意外终止 leader/HUD 窗格。
退出与证据
报告团队名称、启动命令、窗格/ACK 证据、任务计数、worker 验证、失败或阻塞、关闭结果,以及已清理的状态路径。包含任何 worktree 或 CLI-map 选择,并将最终集成/验证保留在 leader 通道中。
评论
支持 Markdown