CtrlK
BlogDocsLog inGet started
Tessl Logo

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".

80

Quality

76%

Does it follow best practices?

Impact

Pending

No eval scenarios have been run

SecuritybySnyk

Passed

No known issues

Optimize this skill with Tessl

npx tessl skill review --optimize ./.codex/skills/team-executor/SKILL.md
SKILL.md
Quality
Evals
Security

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=<path-to-TC-folder>"
  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

ScenarioAction
No --sessionERROR immediately
--session invalidERROR with specific reason
Valid sessionOrchestration 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):

CommandAction
check / statusOutput execution status graph, no advancement
resume / continueCheck worker states, advance next step

Role Registry

RoleFileType
executorroles/executor/role.mdbuilt-in orchestrator
(dynamic)<session>/role-specs/<role-name>.mdloaded 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",
  task_name: "<task-id>",
  fork_context: false,
  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({ targets: [...], timeout_ms: 900000 }) to collect results, then close_agent({ target: <name> }) each worker.


Model Selection Guide

team-executor loads roles dynamically from session role-specs. Use reasoning_effort based on the role type defined in the session:

  • Implementation/fix roles: reasoning_effort: "high"
  • Verification/test roles: reasoning_effort: "medium"
  • Default when role type is unclear: reasoning_effort: "high"

v4 Agent Coordination

State Reconciliation

On resume, executor reconciles session state with actual running agents:

const running = list_agents({})
// Compare with session's task-analysis.json active tasks
// Reset orphaned tasks (in_progress but agent gone) to pending

Worker Communication

  • send_message({ target: "<task-id>", items: [...] }) -- queue supplementary context
  • assign_task({ target: "<task-id>", items: [...] }) -- assign new work to inner_loop worker
  • close_agent({ target: "<task-id>" }) -- cleanup completed 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

ChoiceSteps
Archive & CleanUpdate session status="completed" -> output final summary with artifact paths
Keep ActiveUpdate session status="paused" -> output: "Resume with: Skill(skill='team-executor', args='--session=<path>')"
Export Resultsrequest_user_input(target path) -> copy artifacts to target -> Archive & Clean

Integration with team-coordinate

ScenarioSkill
New task, no sessionteam-coordinate
Existing session, resume executionteam-executor
Session needs new rolesteam-coordinate (with resume)
Pure execution, no analysisteam-executor

Error Handling

ScenarioResolution
No --session providedERROR immediately with usage message
Session directory not foundERROR with path, suggest checking path
team-session.json missingERROR, session incomplete, suggest re-run team-coordinate
task-analysis.json missingERROR, session incomplete, suggest re-run team-coordinate
No role-specs in sessionERROR, session incomplete, suggest re-run team-coordinate
Role-spec file not foundERROR with expected path
capability_gap reportedWarn only, cannot generate new role-specs
Fast-advance spawns wrong taskExecutor reconciles on next callback
Completion action failsDefault to Keep Active, log warning
Repository
catlog22/Claude-Code-Workflow
Last updated
Created

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.