Plan Product Increment
increment
Plan new Product Increment. Use when starting new features, hotfixes, or development work that needs specification.
SKILL.md
Full skill instructions
Plan Product Increment
Orchestrator for increment planning - handles pre-flight checks, then delegates to sw:increment-planner skill.
Workflow
Step 0A: Discipline Check (BLOCKING)
Step 0B: WIP Enforcement
Step 0C: Tech Stack Detection
Step 1: Call sw:increment-planner skill
Step 0A: Discipline Check (MANDATORY)
Cannot start N+1 until N is DONE.
if ! specweave check-discipline; then
echo "❌ Cannot create new increment! Close existing work first."
echo "💡 Run: /sw:done <id>"
exit 1
fi
Step 0B: WIP Enforcement
Default: 1 active increment (focus). Allow 2 for emergencies.
const active = MetadataManager.getAllActive();
const limits = config.limits || { maxActiveIncrements: 1, hardCap: 3 };
if (active.length >= limits.hardCap) {
// BLOCK - ask user to complete/pause existing
console.log("⚠️ WIP LIMIT REACHED");
console.log("Options: /sw:done <id> | /sw:pause <id>");
}
if (active.length >= limits.maxActiveIncrements) {
// SOFT WARNING - hotfix/bug can bypass
const isEmergency = ['hotfix', 'bug'].includes(incrementType);
if (!isEmergency) {
// Prompt: complete, pause, or continue anyway
}
}
Type-Based Limits:
- Hotfix/Bug: Unlimited (emergency)
- Feature/Change-Request: Max 2
- Refactor: Max 1
- Experiment: Unlimited
Step 0C: Tech Stack Detection
Auto-detect from project files:
| File | Language |
|---|---|
| package.json | TypeScript/JavaScript |
| requirements.txt | Python |
| go.mod | Go |
| Cargo.toml | Rust |
| pom.xml | Java |
| *.csproj | C#/.NET |
If detection fails, ask user.
Step 1: Activate Increment Planner
MUST use Skill tool:
Skill({
skill: "sw:increment-planner",
args: "--id=XXXX-name --description=\"...\" --project=my-project"
});
The skill handles:
- Project/board selection
- TDD mode detection
- Template creation
- Living docs sync
Step 2: Post-Creation Sync
After skill completes:
/sw:sync-specs {increment-id}
/sw-github:sync {increment-id} # If configured
Output
✅ Created increment 0003-user-authentication
Tech stack: TypeScript, NextJS, PostgreSQL
Location: .specweave/increments/0003-user-authentication/
Files: spec.md, plan.md, tasks.md, metadata.json
Next: /sw:do 0003 (start implementation)
Error Handling
.specweave/not found: "Run specweave init first"- Vague description: Ask clarifying questions
- Skill fails: Fall back to keyword prompts for PM/Architect skills
This command is the main entry point for creating new work in SpecWeave.
