/work-on-issue
Start focused work on a GitHub issue using TDD workflow.
EXECUTE THESE STEPS NOW
When this skill is invoked, you MUST execute these steps immediately. Do NOT just describe what will happen - actually do it.
Step 1: Parse Issue Number
Extract the issue number from $ARGUMENTS:
- •Remove
#prefix if present - •The issue number is: $ARGUMENTS
Step 2: Spawn Issue Worker Agent
Use the Task tool to spawn the issue-worker agent:
Task tool:
subagent_type: issue-worker
prompt: "Read GitHub issue #<NUMBER> and extract:
1. Goal - what the user wants to achieve
2. Acceptance criteria - specific testable requirements
3. Edge cases and constraints
4. Suggested PR split if complex"
Wait for the agent to return requirements.
Step 3: Create Worktree
After receiving requirements, run this command:
.claude/scripts/worktree-create.sh issue-<NUMBER>-<short-description>
Where <short-description> is 2-3 words from the goal (e.g., add-mcp-tools).
Step 4: Change to Worktree
The worktree is created at .worktrees/issue-<NUMBER>-<short-description>/.
Note: You are now in TDD mode. Direct code edits will be blocked.
Step 5: Create Todos
Use TodoWrite to create a todo for EACH acceptance criterion:
TodoWrite:
todos:
- content: "Test: <acceptance criterion 1>"
status: pending
activeForm: "Testing <criterion 1>"
- content: "Test: <acceptance criterion 2>"
status: pending
activeForm: "Testing <criterion 2>"
...
Step 6: Begin TDD Cycle
Immediately invoke /write-tests for the first todo.
DO NOT stop and wait for user input. Start the TDD cycle now.
When to Use
- •Starting work on a GitHub issue
- •You want TDD enforcement (worktree mode)
- •You want isolated work (no branch switching)
When NOT to Use
- •Quick exploration (just stay in main repo)
- •Already in a worktree for this issue
- •Issue doesn't exist in GitHub
Workflow Overview
/work-on-issue #42
↓
Step 1: Parse "42" from arguments
↓
Step 2: Spawn issue-worker → get requirements
↓
Step 3: Create worktree issue-42-<name>
↓
Step 4: Now in TDD mode
↓
Step 5: Create todos from acceptance criteria
↓
Step 6: Invoke /write-tests → begin TDD cycle
Important
This skill runs in the MAIN conversation context (not forked) because it needs to:
- •Spawn the issue-worker agent and receive its results
- •Run worktree-create.sh script
- •Create todos that persist in the conversation
- •Invoke /write-tests to continue the workflow
The issue-worker agent runs in a forked context and returns requirements.