This skill should be used when the user asks about "writing specs", "specs.md format", "how to write specifications", "sprint requirements", "testing configuration", "scope definition", or needs guidance on creating effective sprint specifications for agentic development.
This skill is limited to using the following tools:
Specifications drive the entire sprint workflow. Well-written specs lead to focused implementations; vague specs cause wasted iterations. This skill covers writing effective specs.md files that guide autonomous agents toward successful outcomes.
Located at .claude/sprint/[N]/specs.md, this file is the primary input to the sprint system. It tells the architect what to build and how to test it.
A complete specs.md contains:
# Sprint [N]: [Short Title]
## Goal
[1-2 sentences describing what success looks like]
## Scope
### In Scope
- [Feature or task 1]
- [Feature or task 2]
### Out of Scope
- [What NOT to do]
## Requirements
[Detailed requirements - can be minimal or extensive]
## Testing
- QA: required / optional / skip
- UI Testing: required / optional / skip
- UI Testing Mode: automated / manual
The goal statement shapes the entire sprint. Make it outcome-focused:
Good goals:
Bad goals:
A good goal answers: "How will we know when we're done?"
List concrete deliverables:
Be specific. "Add user profile page" is better than "improve user experience".
Explicitly exclude work to prevent scope creep:
This prevents agents from over-engineering or adding unrequested features.
Specs can range from minimal to detailed. The architect adapts accordingly.
# Sprint 5: Add dark mode toggle
## Goal
Users can switch between light and dark themes.
## Testing
- UI Testing: required
- UI Testing Mode: manual
Appropriate for: Simple features, trusted architect judgment, exploratory work.
# Sprint 12: User Authentication
## Goal
Complete authentication flow with email verification.
## Scope
### In Scope
- Registration with email/password
- Login with session management
- Password reset via email
- Email verification flow
- Protected route middleware
### Out of Scope
- OAuth providers (future sprint)
- Two-factor authentication
- Account deletion
## Requirements
### Registration
- Email must be unique
- Password minimum 8 characters
- Send verification email on signup
- Users cannot login until verified
### Login
- Return JWT token on success
- Rate limit: 5 attempts per minute
- Lock account after 10 failed attempts
### Password Reset
- Token expires after 1 hour
- Invalidate token after use
- Send confirmation email after reset
## API Endpoints
| Method | Route | Purpose |
|--------|-------|---------|
| POST | /auth/register | Create account |
| POST | /auth/login | Authenticate |
| POST | /auth/verify | Verify email |
| POST | /auth/reset-request | Request reset |
| POST | /auth/reset | Reset password |
## Testing
- QA: required
- UI Testing: required
- UI Testing Mode: automated
Appropriate for: Complex features, specific requirements, team handoffs.
The Testing section controls which testing agents run.
| Setting | Values | Meaning |
|---|---|---|
| QA | required / optional / skip | API and unit tests |
| UI Testing | required / optional / skip | Browser-based E2E tests |
| UI Testing Mode | automated / manual | Auto-run or user-driven |
QA: required
QA: skip
UI Testing: required
UI Testing Mode: manual
UI Testing Mode: automated
## Goal
[What the feature does]
## Scope
### In Scope
- Backend API
- Frontend UI
- Integration tests
## Testing
- QA: required
- UI Testing: required
- UI Testing Mode: automated
## Goal
Fix [specific issue description]
## Root Cause
[If known, describe the cause]
## Expected Behavior
[What should happen]
## Testing
- QA: required # Regression test
- UI Testing: optional
## Goal
Refactor [component] for [benefit]
## Constraints
- No behavior changes
- Maintain API compatibility
- All existing tests must pass
## Testing
- QA: required # Verify no regressions
- UI Testing: skip
Tell the architect WHAT to build, not HOW to build it:
The architect chooses implementation details.
Mention important edge cases in requirements:
If the codebase has conventions, mention them:
Specs should be readable by humans too:
Specs evolve during the sprint:
This convergent pattern keeps context focused.
The /sprint:new command creates specs.md templates interactively. See the command file for implementation details.