Files
Claude-Code-Workflow/.codex/skills/team-executor/SKILL.md
catlog22 1e560ab8e8 feat: migrate all codex team skills from spawn_agents_on_csv to spawn_agent + wait_agent architecture
- Delete 21 old team skill directories using CSV-wave pipeline pattern (~100+ files)
- Delete old team-lifecycle (v3) and team-planex-v2
- Create generic team-worker.toml and team-supervisor.toml (replacing tlv4-specific TOMLs)
- Convert 19 team skills from Claude Code format (Agent/SendMessage/TaskCreate)
  to Codex format (spawn_agent/wait_agent/tasks.json/request_user_input)
- Update team-lifecycle-v4 to use generic agent types (team_worker/team_supervisor)
- Convert all coordinator role files: dispatch.md, monitor.md, role.md
- Convert all worker role files: remove run_in_background, fix Bash syntax
- Convert all specs/pipelines.md references
- Final state: 20 team skills, 217 .md files, zero Claude Code API residuals

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-24 16:54:48 +08:00

6.2 KiB

name, description, allowed-tools
name description allowed-tools
team-executor Lightweight session execution skill. Resumes existing team-coordinate sessions for pure execution via team-worker agents. No analysis, no role generation -- only loads and executes. Session path required. Triggers on "Team Executor". spawn_agent(*), wait_agent(*), send_input(*), close_agent(*), report_agent_job_result(*), request_user_input(*), Read(*), Write(*), Edit(*), Bash(*), Glob(*), Grep(*)

Team Executor

Lightweight session execution skill: load session -> reconcile state -> spawn team-worker agents -> execute -> deliver. No analysis, no role generation -- only executes existing team-coordinate sessions.

Architecture

+---------------------------------------------------+
|  Skill(skill="team-executor")                      |
|  args="--session=<path>" [REQUIRED]                |
+-------------------+-------------------------------+
                    | Session Validation
         +---- --session valid? ----+
         | NO                       | YES
         v                          v
    Error immediately          Orchestration Mode
    (no session)               -> executor
                                    |
                    +-------+-------+-------+
                    v       v       v       v
                 [team-worker agents loaded from session role-specs]

Session Validation (BEFORE routing)

CRITICAL: Session validation MUST occur before any execution.

Parse Arguments

Extract from $ARGUMENTS:

  • --session=<path>: Path to team-coordinate session folder (REQUIRED)

Validation Steps

  1. Check --session provided:

    • If missing -> ERROR: "Session required. Usage: --session="
  2. Validate session structure (see specs/session-schema.md):

    • Directory exists at path
    • team-session.json exists and valid JSON
    • task-analysis.json exists and valid JSON
    • role-specs/ directory has at least one .md file
    • Each role in team-session.json#roles has corresponding .md file in role-specs/
  3. Validation failure:

    • Report specific missing component
    • Suggest re-running team-coordinate or checking path

Role Router

This skill is executor-only. Workers do NOT invoke this skill -- they are spawned as team-worker agents directly.

Dispatch Logic

Scenario Action
No --session ERROR immediately
--session invalid ERROR with specific reason
Valid session Orchestration Mode -> executor

Orchestration Mode

Invocation: Skill(skill="team-executor", args="--session=<session-folder>")

Lifecycle:

Validate session
  -> executor Phase 0: Reconcile state (reset interrupted, detect orphans)
  -> executor Phase 1: Spawn first batch team-worker agents (background) -> STOP
  -> Worker executes -> callback -> executor advances next step
  -> Loop until pipeline complete -> Phase 2 report + completion action

User Commands (wake paused executor):

Command Action
check / status Output execution status graph, no advancement
resume / continue Check worker states, advance next step

Role Registry

Role File Type
executor roles/executor/role.md built-in orchestrator
(dynamic) <session>/role-specs/<role-name>.md loaded from session

Executor Spawn Template

v2 Worker Spawn (all roles)

When executor spawns workers, use team-worker agent with role-spec path:

spawn_agent({
  agent_type: "team_worker",
  items: [
    { type: "text", text: `## Role Assignment
role: <role>
role_spec: <session-folder>/role-specs/<role>.md
session: <session-folder>
session_id: <session-id>
requirement: <task-description>
inner_loop: <true|false>

Read role_spec file to load Phase 2-4 domain instructions.` },

    { type: "text", text: `## Task Context
task_id: <task-id>
title: <task-title>
description: <task-description>
pipeline_phase: <pipeline-phase>` },

    { type: "text", text: `## Upstream Context
<prev_context>` }
  ]
})

After spawning, use wait_agent({ ids: [...], timeout_ms: 900000 }) to collect results, then close_agent({ id }) each worker.


Completion Action

When pipeline completes (all tasks done), executor presents an interactive choice:

request_user_input({
  questions: [{
    question: "Team pipeline complete. What would you like to do?",
    header: "Completion",
    multiSelect: false,
    options: [
      { label: "Archive & Clean (Recommended)", description: "Archive session, clean up team" },
      { label: "Keep Active", description: "Keep session for follow-up work" },
      { label: "Export Results", description: "Export deliverables to target directory, then clean" }
    ]
  }]
})

Action Handlers

Choice Steps
Archive & Clean Update session status="completed" -> output final summary with artifact paths
Keep Active Update session status="paused" -> output: "Resume with: Skill(skill='team-executor', args='--session=')"
Export Results request_user_input(target path) -> copy artifacts to target -> Archive & Clean

Integration with team-coordinate

Scenario Skill
New task, no session team-coordinate
Existing session, resume execution team-executor
Session needs new roles team-coordinate (with resume)
Pure execution, no analysis team-executor

Error Handling

Scenario Resolution
No --session provided ERROR immediately with usage message
Session directory not found ERROR with path, suggest checking path
team-session.json missing ERROR, session incomplete, suggest re-run team-coordinate
task-analysis.json missing ERROR, session incomplete, suggest re-run team-coordinate
No role-specs in session ERROR, session incomplete, suggest re-run team-coordinate
Role-spec file not found ERROR with expected path
capability_gap reported Warn only, cannot generate new role-specs
Fast-advance spawns wrong task Executor reconciles on next callback
Completion action fails Default to Keep Active, log warning