/sw:do - Execute Tasks
Implementation Execution: Execute increment tasks following spec.md and plan.md.
This is the main command for doing work in SpecWeave. It smart-resumes from where you left off, runs tests continuously, and updates documentation after each task.
Usageโ
# Auto-resumes from last incomplete task
/sw:do [increment-id]
# Or let it find active increment automatically
/sw:do
# Override model selection (advanced)
/sw:do 0007 --model haiku
/sw:do 0007 --model opus
Argumentsโ
| Argument | Description |
|---|---|
increment-id | Optional. Increment ID (e.g., "0007", "0001-feature") |
--model <tier> | Optional. Override model selection (haiku, sonnet, opus) |
Smart Resumeโ
The command automatically resumes from the last incomplete task:
๐ Resume Context:
Completed: 3/12 tasks (25%)
โโ [โ
] T001: โก haiku - Setup auth module (P1)
โโ [โ
] T002: โก haiku - Create user model (P1)
โโ [โ
] T003: ๐ opus - Implement JWT tokens (P1)
โโ [โณ] T004: โก haiku - Add password hashing (P1) โ RESUMING HERE
Remaining: 9 tasks
Benefits:
- โ No manual tracking needed
- โ Seamlessly continue after breaks
- โ Prevents duplicate work
- โ Shows progress at a glance
Workflowโ
Step 1: Load Contextโ
- Find increment directory - Normalizes ID to 4-digit format
- Load specification and plan - Reads spec.md, plan.md, tasks.md
- Load Living Docs Context (optional) - Checks ADRs and related specs
- Verify readiness - Validates status and AC presence
Step 2: Smart Resumeโ
- Scans all tasks for completion status
- Finds first incomplete task
- Shows resume context with progress
Step 3: Execute Tasks Sequentiallyโ
For each task:
- Read task details - ID, model hint, description, ACs
- Select execution model - Uses hints or
--modeloverride - Execute task - Follows architecture from plan.md
- Mark task complete - Updates tasks.md with
[x] - Run hooks - Plays sound, shows reminder
- Sync to GitHub (if enabled) - Closes issues, updates progress
- Update docs - CLAUDE.md, README.md, CHANGELOG.md
Step 4: Handle Blockersโ
If a task cannot be completed:
โ ๏ธ Blocker on Task T012: "Add email verification"
Issue: Email service provider not specified in plan.md
Options:
A) Use SendGrid (recommended)
B) Use AWS SES
C) Skip for now, add as new task
Step 5: Run Tests Continuouslyโ
After completing tasks that affect testable functionality:
๐งช Running tests for auth module...
โ User model validation
โ Password hashing
โ JWT token generation (FAILED)
๐ง Fixing test failure...
โข Updated JWT expiry config
Re-running tests...
โ JWT token generation
โ
All tests passing (3/3)
Step 6: Completionโ
When all tasks complete:
๐ All tasks completed!
โ
Tasks: 42/42 (100%)
โฑ๏ธ Time taken: 3.2 weeks
๐ Now syncing implementation learnings to living docs...
Next steps:
1. Run full test suite: npm test
2. Validate increment: /sw:validate 0001 --quality
3. Close increment: /sw:done 0001
Model Hints in Tasksโ
Tasks can include model hints for cost optimization:
| Hint | Model | Use Case |
|---|---|---|
| โก | Haiku | Simple mechanical tasks (3x faster, 20x cheaper) |
| ๐ง | Sonnet | Moderate complexity (legacy) |
| ๐ | Opus | Complex reasoning (default) |
Example tasks.md:
### T-001: Setup auth module โก
**Status**: [ ] pending
### T-002: Implement JWT strategy ๐
**Status**: [ ] pending
Hook Integrationโ
After EVERY task completion, hooks run automatically:
- Play completion sound - Glass.aiff on macOS
- Show reminder - Update CLAUDE.md, README.md inline
- Log completion - Appends to
.specweave/logs/tasks.log - Sync to GitHub (if enabled) - Close task issue, update epic
Auto-Execute Rulesโ
When executing deployment tasks:
โ FORBIDDEN: "Next Steps: Run wrangler deploy"
โ
REQUIRED: Execute commands DIRECTLY using available credentials
Always check for credentials before deployment:
grep -E "SUPABASE|DATABASE_URL|CF_" .env 2>/dev/null
wrangler whoami 2>/dev/null
gh auth status 2>/dev/null
Examplesโ
Example 1: Execute Complete Incrementโ
/sw:do 0001
Output:
๐ Loading increment 0001-user-authentication...
โ
Context loaded (spec.md, plan.md, tasks.md)
๐จ Starting execution (42 tasks)...
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Task T001: Create User model
โ
Completed | ๐ช Docs updated
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
[... continues for all 42 tasks ...]
๐ All tasks completed (42/42)
Next: /sw:validate 0001 --quality
Example 2: Resume After Breakโ
/sw:do
Output:
๐ Found active increment: 0003-payment-processing
๐ Resume Context:
Completed: 15/42 tasks (36%)
โ Resuming from T016: Add Stripe webhook handler
๐จ Executing Task T016...
Error Handlingโ
Increment Not Foundโ
โ Error: Increment 0001 not found
Available increments:
โข 0002-core-enhancements (planned)
โข 0003-payment-processing (in-progress)
No Tasks to Executeโ
โ ๏ธ Warning: No tasks found in tasks.md
Options:
1. Re-plan increment: /sw:increment 0001
2. Add tasks manually: Edit tasks.md
Related Commandsโ
| Command | Purpose |
|---|---|
/sw:increment | Plan increment (creates spec.md, plan.md, tasks.md) |
/sw:progress | Check completion status |
/sw:validate | Validate quality before closing |
/sw:done | Close increment (PM validates) |
/sw:auto | Autonomous execution mode |
Best Practicesโ
- Run
/sw:validate --qualityafter execution to ensure quality - Let hooks run - They update docs and sync to GitHub automatically
- Use model hints - Add โก/๐ to tasks for cost optimization
- Check progress often - Run
/sw:progressto see status
See Alsoโ
- Commands Overview - All SpecWeave commands
- /sw:auto Documentation - Autonomous execution
- /sw:progress Documentation - Progress tracking
- /sw:done Documentation - Closing increments