Claude-skill-registry ln-400-story-executor
Orchestrates Story tasks. Prioritizes To Review -> To Rework -> Todo, delegates to ln-401/ln-402/ln-403/ln-404, hands Story quality to ln-500. Metadata-only loading up front.
git clone https://github.com/majiayu000/claude-skill-registry
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/ln-400-story-executor" ~/.claude/skills/majiayu000-claude-skill-registry-ln-400-story-executor-253cb9 && rm -rf "$T"
skills/data/ln-400-story-executor/SKILL.mdStory Execution Orchestrator
Executes a Story end-to-end by looping through its tasks in priority order and delegating quality gates to ln-500-story-quality-gate.
Purpose & Scope
- Load Story + task metadata (no descriptions) and drive execution
- Process tasks in order: To Review → To Rework → Todo (foundation-first within each status)
- Delegate per task type to appropriate workers (see Worker Invocation table)
- Mandatory immediate review: Every execution/rework → ln-402 immediately. No batching
Task Storage Mode
| Aspect | Linear Mode | File Mode |
|---|---|---|
| Detection | Default (MCP Linear available) | directory exists |
| Load tasks | | + parse status |
| Source of truth | Linear API | Task files + kanban_board.md |
Auto-detection: Check if
docs/tasks/epics/ exists → File Mode, otherwise Linear Mode.
File Mode status values: Backlog, Todo, In Progress, To Review, To Rework, Done, Canceled
When to Use
- Story is Todo or In Progress and has implementation/refactor/test tasks to finish
- Need automated orchestration through To Review and quality gates
Workflow
Phase 1: Discovery & Branch Setup
- Auto-discover Team ID/config from kanban_board.md + CLAUDE.md
- Get Story identifier (e.g., PROJ-42) and title
- Generate branch name:
(lowercase, spaces→dashes, no special chars)feature/{identifier}-{story-title-slug} - Check current branch:
git branch --show-current - If not matching:
- If branch exists:
git checkout feature/{identifier}-{slug} - If not:
git checkout -b feature/{identifier}-{slug}
- If branch exists:
Phase 2: Load Metadata
Fetch Story metadata and all child task metadata (ID/title/status/labels only):
- Linear Mode:
list_issues(parentId=Story.id) - File Mode:
+ parseGlob("docs/tasks/epics/*/stories/{story-slug}/tasks/*.md")**Status:**
Summarize counts (e.g., "2 To Review, 1 To Rework, 3 Todo"). NO analysis — proceed immediately.
Phase 3: Context Review (before Todo tasks)
Before delegating a Todo task, verify its plan against current codebase:
- Load task description (get_issue or Read task file)
- Extract referenced files from task plan
- Check: Do files exist? Have related files changed? Are patterns still valid?
- Decision: No conflicts → proceed | Minor changes → update task, proceed | Major conflicts → ask user
Skip Context Review for: To Review tasks, To Rework tasks, test tasks when impl freshly Done, tasks created <24h ago.
Phase 4: Task Loop
For each task by priority (To Review > To Rework > Todo):
- Delegate to worker via Task tool (see Worker Invocation table)
- Reload metadata after subagent completes
- If worker sets status != To Review → STOP and report
- After ln-401/ln-403/ln-404: Immediately invoke ln-402 on same task
Execute → Review → Next. Never skip review. Never batch reviews.
Phase 5: Quality Gate
When all implementation tasks Done:
- Invoke ln-500-story-quality-gate Pass 1 via Task tool
- If creates tasks → return to Phase 4
- When test task Done → invoke Pass 2
- If Pass 2 fails and creates tasks → return to Phase 4
- If Pass 2 passes → Story Done
Worker Invocation
CRITICAL: All delegations use Task tool with subagent_type: "general-purpose" for context isolation.
| Status | Worker | Notes |
|---|---|---|
| To Review | ln-402-task-reviewer | Pass task ID only. Add: "CRITICAL: Load ALL context independently via get_issue(). Fresh eyes review." |
| To Rework | ln-403-task-rework | Then immediate ln-402 on same task |
| Todo (tests) | ln-404-test-executor | Then immediate ln-402 on same task |
| Todo (impl) | ln-401-task-executor | Then immediate ln-402 on same task |
| Quality Gate | ln-500-story-quality-gate | "Pass 1" or "Pass 2" in prompt |
Prompt template:
Task(description: "[Action] task {ID}", prompt: "Execute {skill-name} for task {ID}. Read skill from {skill-name}/SKILL.md.", subagent_type: "general-purpose")
Formats
TodoWrite (mandatory)
Before each task, add BOTH steps:
— mark in_progress when startingExecute [Task-ID]: [Title]
— mark in_progress after executor, completed after ln-402Review [Task-ID]: [Title]
Critical Rules
- Branch isolation: All work in
. Never commit to main/masterfeature/{story-id}-{slug} - Metadata first: Never load task descriptions in Phase 2; workers load full text
- One task at a time: Pick → delegate → review → next. No bulk operations
- Only ln-402 sets Done: Stop and report if any worker leaves task Done or In Progress
- Source of truth: Trust Linear metadata (Linear Mode) or task files (File Mode)
- Story status: ln-400 handles Todo→In Progress→To Review; ln-500 handles To Review→Done
Anti-Patterns
- ❌ Running
/mypy
/ruff
directly instead of skill invocationpytest - ❌ "Minimal quality check" then asking "Want me to run full skill?"
- ❌ Skipping/batching reviews
- ❌ Self-setting Done status without ln-402
- ❌ Any execution bypassing Task tool subagent
ZERO TOLERANCE: If running commands directly instead of invoking skills via Task tool, STOP and correct.
Plan Mode Support
When invoked in Plan Mode (agent cannot execute), generate execution plan instead:
- Build task execution sequence by priority
- For each task show: ID, Title, Status, Worker, expected status after
- Include Quality Gate phases
- Write plan to plan file, call ExitPlanMode
Plan Output Format:
## Execution Plan for Story {STORY-ID}: {Title} | # | Task ID | Title | Status | Executor | Reviewer | |---|---------|-------|--------|----------|----------| | 1 | {ID} | {Title} | {Status} | ln-40X | ln-402 | ### Sequence 1. [Execute] {Task-1} via ln-401-task-executor 2. [Review] {Task-1} via ln-402-task-reviewer ... N. [Quality Gate Pass 1/2] via ln-500-story-quality-gate
Definition of Done
- Working in correct feature branch (verified in Phase 1)
- Story and task metadata loaded; counts shown
- Context Review performed for Todo tasks (or skipped with justification)
- Loop executed: all tasks delegated with immediate review after each
- ln-500 Pass 1/Pass 2 invoked; result handled
- Story status transitions applied; kanban updated by workers
- Final report with task counts
Reference Files
- Quality orchestration:
../ln-500-story-quality-gate/SKILL.md - Executors:
,../ln-401-task-executor/SKILL.md
,../ln-403-task-rework/SKILL.md../ln-404-test-executor/SKILL.md - Reviewer:
../ln-402-task-reviewer/SKILL.md - Auto-discovery:
,CLAUDE.mddocs/tasks/kanban_board.md
Version: 4.0.0 (Restructured: removed duplications, consolidated sections, ~35% reduction) Last Updated: 2026-01-29