specweave 0.1.7 → 0.1.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +50 -32
- package/SPECWEAVE.md +97 -63
- package/package.json +2 -2
- package/src/agents/pm/AGENT.md +286 -0
- package/src/commands/build.md +474 -0
- package/src/commands/done.md +544 -56
- package/src/commands/inc.md +85 -0
- package/src/commands/increment.md +316 -0
- package/src/commands/progress.md +258 -0
- package/src/commands/{validate-increment.md → validate.md} +1 -1
- package/src/templates/CLAUDE.md.template +11 -10
- package/src/commands/add-tasks.md +0 -176
- package/src/commands/at.md +0 -114
- package/src/commands/close-increment.md +0 -347
- package/src/commands/create-increment.md +0 -223
- package/src/commands/init.md +0 -123
- package/src/commands/ls.md +0 -100
- package/src/commands/pi.md +0 -65
- package/src/commands/si.md +0 -83
- package/src/commands/start-increment.md +0 -139
- package/src/commands/vi.md +0 -89
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: inc
|
|
3
|
+
description: Shorthand for /increment - Plan new Product Increment (PM-led process)
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Plan Product Increment (Quick Alias)
|
|
7
|
+
|
|
8
|
+
**⚡ Quick Alias**: This is a shorthand for `/increment`.
|
|
9
|
+
|
|
10
|
+
This is the **most frequently used command** in SpecWeave's append-only increment workflow. Every new feature starts here.
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## Why This Alias Exists
|
|
15
|
+
|
|
16
|
+
In an append-only increment workflow:
|
|
17
|
+
- `/increment` is your starting point for ALL new work
|
|
18
|
+
- You'll use it dozens/hundreds of times
|
|
19
|
+
- Short alias saves time and mental overhead
|
|
20
|
+
- Other commands are used less frequently (no aliases needed)
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## Usage
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
/inc "feature description"
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
**Examples**:
|
|
31
|
+
```bash
|
|
32
|
+
/inc "User authentication with JWT"
|
|
33
|
+
/inc "Payment processing with Stripe"
|
|
34
|
+
/inc "Real-time notifications"
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## What This Does
|
|
40
|
+
|
|
41
|
+
Runs the full `/increment` command, which:
|
|
42
|
+
|
|
43
|
+
1. **Detects tech stack** (TypeScript, Python, Go, etc.)
|
|
44
|
+
2. **PM-led planning**:
|
|
45
|
+
- Market research
|
|
46
|
+
- Create spec.md (WHAT & WHY)
|
|
47
|
+
- Create plan.md (HOW)
|
|
48
|
+
- **Auto-generate tasks.md** from plan
|
|
49
|
+
- Create tests.md (test strategy)
|
|
50
|
+
3. **Strategic agent review**:
|
|
51
|
+
- Architect designs system
|
|
52
|
+
- Security reviews threats
|
|
53
|
+
- QA defines test strategy
|
|
54
|
+
- DevOps plans infrastructure
|
|
55
|
+
4. **User review checkpoint**
|
|
56
|
+
5. **Ready to build**: `/build 0001`
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
## Typical Workflow
|
|
61
|
+
|
|
62
|
+
```bash
|
|
63
|
+
# 1. Plan increment (most common command - use alias!)
|
|
64
|
+
/inc "User authentication"
|
|
65
|
+
|
|
66
|
+
# 2. Review generated docs
|
|
67
|
+
# spec.md, plan.md, tasks.md, tests.md
|
|
68
|
+
|
|
69
|
+
# 3. Build it
|
|
70
|
+
/build 0001
|
|
71
|
+
|
|
72
|
+
# 4. Validate quality (optional)
|
|
73
|
+
/validate 0001 --quality
|
|
74
|
+
|
|
75
|
+
# 5. Close when done
|
|
76
|
+
/done 0001
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
---
|
|
80
|
+
|
|
81
|
+
**💡 Pro Tip**: `/inc` is the ONLY aliased command. Use full names for others (`/build`, `/validate`, `/done`) to keep the workflow clear and explicit.
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
For complete documentation, see `/increment`.
|
|
@@ -0,0 +1,316 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: increment
|
|
3
|
+
description: Plan new Product Increment - PM-led process (market research, spec, plan, auto-generate tasks). Auto-closes previous increment if PM gates pass.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Plan Product Increment
|
|
7
|
+
|
|
8
|
+
**PM-Led Workflow**: From market research to ready-to-build increment.
|
|
9
|
+
|
|
10
|
+
You are helping the user create a new SpecWeave increment with automatic closure of previous increment if ready.
|
|
11
|
+
|
|
12
|
+
## Steps:
|
|
13
|
+
|
|
14
|
+
### Step 0: Smart Check Previous Increment (if applicable)
|
|
15
|
+
|
|
16
|
+
**🎯 CRITICAL: Suggest, don't force** - help user make informed decision!
|
|
17
|
+
|
|
18
|
+
1. **Check for in-progress increments**:
|
|
19
|
+
```bash
|
|
20
|
+
# Find increments with status: in-progress
|
|
21
|
+
grep -r "status: in-progress" .specweave/increments/*/spec.md
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
2. **If previous increment found, validate PM gates**:
|
|
25
|
+
- **Gate 1**: All P1 tasks completed?
|
|
26
|
+
- **Gate 2**: Tests passing (>80% coverage)?
|
|
27
|
+
- **Gate 3**: Documentation updated (CLAUDE.md, README.md)?
|
|
28
|
+
|
|
29
|
+
3. **Decision matrix** (NEVER force, ALWAYS suggest):
|
|
30
|
+
```
|
|
31
|
+
All gates ✅ → Auto-close previous, create new (seamless)
|
|
32
|
+
|
|
33
|
+
Any gate ❌ → STOP and present options (user decides):
|
|
34
|
+
Option A: Complete 0001 first (recommended)
|
|
35
|
+
→ Finish remaining work before starting new
|
|
36
|
+
|
|
37
|
+
Option B: Move incomplete tasks to 0002
|
|
38
|
+
→ Transfer T006, T007 to new increment
|
|
39
|
+
→ Close 0001 as "completed with deferrals"
|
|
40
|
+
|
|
41
|
+
Option C: Cancel new increment
|
|
42
|
+
→ Stay on 0001, continue working
|
|
43
|
+
→ User will retry /inc when ready
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
**CRITICAL**: NEVER auto-close with incomplete work! Always give user control.
|
|
47
|
+
|
|
48
|
+
4. **Auto-close output** (if gates pass):
|
|
49
|
+
```
|
|
50
|
+
📊 Previous Increment Check
|
|
51
|
+
|
|
52
|
+
Found: 0001-user-authentication (in-progress)
|
|
53
|
+
|
|
54
|
+
PM Gate Validation:
|
|
55
|
+
├─ Gate 1 (Tasks): 8/8 P1 completed ✅
|
|
56
|
+
├─ Gate 2 (Tests): 5/5 passing (85% coverage) ✅
|
|
57
|
+
└─ Gate 3 (Docs): CLAUDE.md ✅, README.md ✅
|
|
58
|
+
|
|
59
|
+
✅ Auto-closing increment 0001...
|
|
60
|
+
|
|
61
|
+
Proceeding with new increment 0002...
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
5. **Prompt output** (if gates fail):
|
|
65
|
+
```
|
|
66
|
+
⚠️ Previous Increment Incomplete
|
|
67
|
+
|
|
68
|
+
Found: 0001-user-authentication (in-progress)
|
|
69
|
+
|
|
70
|
+
PM Gate Validation:
|
|
71
|
+
├─ Gate 1 (Tasks): 6/8 P1 completed ❌ (2 P1 tasks remaining)
|
|
72
|
+
├─ Gate 2 (Tests): 3/5 passing (60% coverage) ❌
|
|
73
|
+
└─ Gate 3 (Docs): CLAUDE.md ✅, README.md ⏳
|
|
74
|
+
|
|
75
|
+
Options:
|
|
76
|
+
A. Complete 0001 first (recommended)
|
|
77
|
+
→ Run `/build 0001` to finish remaining tasks
|
|
78
|
+
|
|
79
|
+
B. Force close 0001 and defer tasks to 0002
|
|
80
|
+
→ Transfer T006, T007 to new increment
|
|
81
|
+
|
|
82
|
+
C. Cancel and stay on 0001
|
|
83
|
+
→ Continue working on authentication
|
|
84
|
+
|
|
85
|
+
What would you like to do? (A/B/C)
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
**Why suggest, not force?**
|
|
89
|
+
- ✅ User stays in control (no surprises)
|
|
90
|
+
- ✅ Natural flow in happy path (auto-close if ready)
|
|
91
|
+
- ✅ Clear options when incomplete (complete, defer, or cancel)
|
|
92
|
+
- ✅ Enforces quality awareness (can't ignore incomplete work)
|
|
93
|
+
- ✅ No manual `/done` needed when gates pass
|
|
94
|
+
|
|
95
|
+
### Step 1: Find next increment number
|
|
96
|
+
|
|
97
|
+
- Scan `.specweave/increments/` directory
|
|
98
|
+
- Find highest number (e.g., 002)
|
|
99
|
+
- Next increment: 003
|
|
100
|
+
|
|
101
|
+
### Step 2: Detect tech stack (CRITICAL - framework-agnostic)
|
|
102
|
+
- Check `.specweave/config.yaml` for tech_stack configuration
|
|
103
|
+
- If not found, detect from project files:
|
|
104
|
+
- `package.json` → TypeScript/JavaScript
|
|
105
|
+
- `requirements.txt` or `pyproject.toml` → Python
|
|
106
|
+
- `go.mod` → Go
|
|
107
|
+
- `Cargo.toml` → Rust
|
|
108
|
+
- `pom.xml` or `build.gradle` → Java
|
|
109
|
+
- `*.csproj` → C#/.NET
|
|
110
|
+
- Detect framework (NextJS, Django, FastAPI, Spring Boot, etc.)
|
|
111
|
+
- If detection fails, ask user: "What language/framework are you using?"
|
|
112
|
+
- Store detected tech stack for later use
|
|
113
|
+
|
|
114
|
+
### Step 3: Ask user for details
|
|
115
|
+
|
|
116
|
+
- "What would you like to build?" (get high-level description)
|
|
117
|
+
- "What's the short name?" (e.g., "user-authentication" for increment 003-user-authentication)
|
|
118
|
+
- "Priority? (P1/P2/P3)" (default: P1)
|
|
119
|
+
|
|
120
|
+
### Step 4: Activate role-orchestrator
|
|
121
|
+
|
|
122
|
+
- Analyze user's description
|
|
123
|
+
- Determine which strategic agents are needed:
|
|
124
|
+
- pm-agent (product strategy)?
|
|
125
|
+
- architect-agent (system design)?
|
|
126
|
+
- devops-agent (infrastructure)?
|
|
127
|
+
- security-agent (security review)?
|
|
128
|
+
- qa-lead-agent (testing strategy)?
|
|
129
|
+
|
|
130
|
+
### Step 5: Ask clarifying questions (if needed)
|
|
131
|
+
|
|
132
|
+
- Target users/scale?
|
|
133
|
+
- Technology preferences? (if not detected)
|
|
134
|
+
- Budget constraints?
|
|
135
|
+
- Deployment platform?
|
|
136
|
+
- Payment processing needed?
|
|
137
|
+
- Authentication method?
|
|
138
|
+
|
|
139
|
+
### Step 6: Run strategic agents (with user approval)
|
|
140
|
+
|
|
141
|
+
- **Pass detected tech stack to ALL agents** (CRITICAL!)
|
|
142
|
+
- PM agent creates pm-analysis.md
|
|
143
|
+
- Architect agent creates architecture.md, ADRs (using detected tech stack)
|
|
144
|
+
- DevOps agent creates infrastructure.md (platform-specific)
|
|
145
|
+
- Security agent creates security.md (framework-specific security)
|
|
146
|
+
- QA agent creates test-strategy.md (framework-specific tests)
|
|
147
|
+
|
|
148
|
+
### Step 7: Present strategic docs for review
|
|
149
|
+
|
|
150
|
+
- Show summary of all strategic outputs
|
|
151
|
+
- Ask: "Review docs with /review-docs or approve to continue?"
|
|
152
|
+
- Wait for user approval
|
|
153
|
+
|
|
154
|
+
### Step 8: Create spec.md (based on strategic docs)
|
|
155
|
+
- Frontmatter with increment number, title, priority, status, dependencies
|
|
156
|
+
- **Include detected tech stack in frontmatter** (see format below)
|
|
157
|
+
- Overview section
|
|
158
|
+
- Business value
|
|
159
|
+
- User stories with acceptance tests
|
|
160
|
+
- Functional requirements
|
|
161
|
+
- Out of scope
|
|
162
|
+
- Success criteria
|
|
163
|
+
- Dependencies
|
|
164
|
+
|
|
165
|
+
### Step 9: Create tasks.md (task-builder skill)
|
|
166
|
+
|
|
167
|
+
**🎯 CRITICAL: Auto-generate tasks from plan.md**
|
|
168
|
+
|
|
169
|
+
- Analyze all strategic docs
|
|
170
|
+
- Break down into phases (framework-specific)
|
|
171
|
+
- Create tasks with:
|
|
172
|
+
- Agent references (use framework-specific agents if available)
|
|
173
|
+
- File paths (framework-specific paths: src/ for TS, app/ for Django, etc.)
|
|
174
|
+
- Implementation snippets (framework-specific code)
|
|
175
|
+
- Acceptance criteria
|
|
176
|
+
- Documentation updates
|
|
177
|
+
|
|
178
|
+
### Step 10: Save increment
|
|
179
|
+
|
|
180
|
+
- Create `.specweave/increments/####-name/`
|
|
181
|
+
- Save spec.md
|
|
182
|
+
- Save tasks.md (auto-generated!)
|
|
183
|
+
- Save strategic docs (pm-analysis.md, architecture.md, etc.)
|
|
184
|
+
|
|
185
|
+
### Step 11: Output to user
|
|
186
|
+
```
|
|
187
|
+
✅ Created increment 0003-user-authentication
|
|
188
|
+
|
|
189
|
+
Detected tech stack:
|
|
190
|
+
- Language: {detected-language} (e.g., Python, TypeScript, Go, Java)
|
|
191
|
+
- Framework: {detected-framework} (e.g., Django, FastAPI, NextJS, Spring Boot)
|
|
192
|
+
- Database: {specified-database} (e.g., PostgreSQL, MySQL, MongoDB)
|
|
193
|
+
- Platform: {specified-platform} (e.g., AWS, Hetzner, Vercel, self-hosted)
|
|
194
|
+
|
|
195
|
+
Location: .specweave/increments/0003-user-authentication/
|
|
196
|
+
|
|
197
|
+
📋 Files created:
|
|
198
|
+
- spec.md (6 user stories, 15 requirements)
|
|
199
|
+
- tasks.md (42 implementation tasks using {framework} patterns)
|
|
200
|
+
- pm-analysis.md (product strategy)
|
|
201
|
+
- architecture.md (system design for {framework})
|
|
202
|
+
- infrastructure.md ({platform} deployment)
|
|
203
|
+
- security.md ({framework}-specific security)
|
|
204
|
+
- test-strategy.md (E2E tests for {framework})
|
|
205
|
+
|
|
206
|
+
⏱️ Estimated effort: 3-4 weeks
|
|
207
|
+
|
|
208
|
+
Next steps:
|
|
209
|
+
1. Review docs: /review-docs
|
|
210
|
+
2. Start implementation: Begin with Task T001 in tasks.md
|
|
211
|
+
3. Sync to GitHub: /sync-github
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
## Frontmatter Format (spec.md):
|
|
215
|
+
|
|
216
|
+
**IMPORTANT**: Tech stack is DETECTED from `.specweave/config.yaml` or project files, NOT hardcoded!
|
|
217
|
+
|
|
218
|
+
```yaml
|
|
219
|
+
---
|
|
220
|
+
increment: 003-user-authentication
|
|
221
|
+
title: "User Authentication System"
|
|
222
|
+
priority: P1
|
|
223
|
+
status: planned
|
|
224
|
+
created: 2025-10-26
|
|
225
|
+
dependencies: []
|
|
226
|
+
structure: user-stories
|
|
227
|
+
|
|
228
|
+
# Tech stack is DETECTED, not hardcoded
|
|
229
|
+
tech_stack:
|
|
230
|
+
detected_from: ".specweave/config.yaml" # or "package.json", "requirements.txt", etc.
|
|
231
|
+
language: "{detected-language}" # e.g., "typescript", "python", "go", "java", "rust"
|
|
232
|
+
framework: "{detected-framework}" # e.g., "nextjs", "django", "fastapi", "spring-boot", "gin"
|
|
233
|
+
database: "{specified-database}" # e.g., "postgresql", "mysql", "mongodb", "sqlite"
|
|
234
|
+
orm: "{detected-orm}" # e.g., "prisma", "django-orm", "sqlalchemy", "hibernate"
|
|
235
|
+
|
|
236
|
+
# Platform is SPECIFIED by user or detected from config
|
|
237
|
+
platform: "{specified-platform}" # e.g., "hetzner", "aws", "vercel", "self-hosted"
|
|
238
|
+
estimated_cost: "{calculated-based-on-platform}"
|
|
239
|
+
---
|
|
240
|
+
```
|
|
241
|
+
|
|
242
|
+
**Example for TypeScript/NextJS project**:
|
|
243
|
+
```yaml
|
|
244
|
+
tech_stack:
|
|
245
|
+
detected_from: "package.json"
|
|
246
|
+
language: "typescript"
|
|
247
|
+
framework: "nextjs"
|
|
248
|
+
database: "postgresql"
|
|
249
|
+
orm: "prisma"
|
|
250
|
+
platform: "vercel"
|
|
251
|
+
estimated_cost: "$20/month"
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
**Example for Python/Django project**:
|
|
255
|
+
```yaml
|
|
256
|
+
tech_stack:
|
|
257
|
+
detected_from: "requirements.txt"
|
|
258
|
+
language: "python"
|
|
259
|
+
framework: "django"
|
|
260
|
+
database: "postgresql"
|
|
261
|
+
orm: "django-orm"
|
|
262
|
+
platform: "hetzner"
|
|
263
|
+
estimated_cost: "$12/month"
|
|
264
|
+
```
|
|
265
|
+
|
|
266
|
+
**Example for Go/Gin project**:
|
|
267
|
+
```yaml
|
|
268
|
+
tech_stack:
|
|
269
|
+
detected_from: "go.mod"
|
|
270
|
+
language: "go"
|
|
271
|
+
framework: "gin"
|
|
272
|
+
database: "postgresql"
|
|
273
|
+
orm: "gorm"
|
|
274
|
+
platform: "aws"
|
|
275
|
+
estimated_cost: "$25/month"
|
|
276
|
+
```
|
|
277
|
+
|
|
278
|
+
## Frontmatter Format (tasks.md):
|
|
279
|
+
|
|
280
|
+
```yaml
|
|
281
|
+
---
|
|
282
|
+
increment: 003-event-booking-saas
|
|
283
|
+
status: planned
|
|
284
|
+
dependencies:
|
|
285
|
+
- 001-skills-framework
|
|
286
|
+
- 002-role-based-agents
|
|
287
|
+
phases:
|
|
288
|
+
- infrastructure
|
|
289
|
+
- backend
|
|
290
|
+
- frontend
|
|
291
|
+
- testing
|
|
292
|
+
- deployment
|
|
293
|
+
estimated_tasks: 42
|
|
294
|
+
estimated_weeks: 3-4
|
|
295
|
+
---
|
|
296
|
+
```
|
|
297
|
+
|
|
298
|
+
## Autonomous Mode (Advanced):
|
|
299
|
+
|
|
300
|
+
If user says "autonomous mode" or "full automation":
|
|
301
|
+
1. Run all strategic agents
|
|
302
|
+
2. Create increment
|
|
303
|
+
3. **Start implementation immediately** (with permission)
|
|
304
|
+
4. Ask clarification questions only when critical
|
|
305
|
+
5. Suggest doc updates when needed
|
|
306
|
+
6. Complete full implementation autonomously
|
|
307
|
+
|
|
308
|
+
## Error Handling:
|
|
309
|
+
|
|
310
|
+
- If `.specweave/` not found: "Error: Not a SpecWeave project. Run /create-project first."
|
|
311
|
+
- If user description too vague: Ask more clarifying questions
|
|
312
|
+
- If strategic agents not available: "Warning: Some agents missing. Continue with basic spec?"
|
|
313
|
+
|
|
314
|
+
---
|
|
315
|
+
|
|
316
|
+
**Important**: This is the main entry point for creating new work in SpecWeave.
|
|
@@ -0,0 +1,258 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: progress
|
|
3
|
+
description: Show current increment progress, task completion %, PM gate status, and next action
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Progress Tracking
|
|
7
|
+
|
|
8
|
+
**Quick Status Check**: See exactly where you are in your current increment.
|
|
9
|
+
|
|
10
|
+
Shows:
|
|
11
|
+
- Active increment status
|
|
12
|
+
- Task completion percentage
|
|
13
|
+
- PM gate preview (tasks, tests, docs)
|
|
14
|
+
- Next action to take
|
|
15
|
+
- Time tracking
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## Usage
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
# Check current progress
|
|
23
|
+
/progress
|
|
24
|
+
|
|
25
|
+
# Show progress for specific increment
|
|
26
|
+
/progress 0001
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## What It Shows
|
|
32
|
+
|
|
33
|
+
### 1. Active Increment Info
|
|
34
|
+
- Increment ID and name
|
|
35
|
+
- Current status (planned, in-progress, completed)
|
|
36
|
+
- Time started and last activity
|
|
37
|
+
|
|
38
|
+
### 2. Task Progress (with %)
|
|
39
|
+
- Visual task list with completion indicators
|
|
40
|
+
- Percentage complete (P1 tasks weighted higher)
|
|
41
|
+
- Next incomplete task highlighted
|
|
42
|
+
- Stuck/blocked task warnings
|
|
43
|
+
|
|
44
|
+
### 3. PM Gates Preview
|
|
45
|
+
- **Gate 1**: Tasks completed (P1 required)
|
|
46
|
+
- **Gate 2**: Tests passing (>80% coverage)
|
|
47
|
+
- **Gate 3**: Documentation updated
|
|
48
|
+
|
|
49
|
+
### 4. Next Action Guidance
|
|
50
|
+
- Suggests exact command to run next
|
|
51
|
+
- Warns about WIP limit violations
|
|
52
|
+
- Alerts for long-inactive increments
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
56
|
+
## Example Output
|
|
57
|
+
|
|
58
|
+
### Normal Progress
|
|
59
|
+
|
|
60
|
+
```
|
|
61
|
+
📊 Current Progress
|
|
62
|
+
|
|
63
|
+
Active Increment: 0001-user-authentication
|
|
64
|
+
Status: in-progress (started 2 hours ago)
|
|
65
|
+
|
|
66
|
+
Task Progress: 3/12 completed (25%)
|
|
67
|
+
├─ [✅] T001: Setup auth module (P1) - 5 min ago
|
|
68
|
+
├─ [✅] T002: Create user model (P1) - 10 min ago
|
|
69
|
+
├─ [✅] T003: Implement JWT tokens (P1) - 15 min ago
|
|
70
|
+
├─ [⏳] T004: Add password hashing (P1) ← NEXT
|
|
71
|
+
├─ [ ] T005: Create login endpoint (P1)
|
|
72
|
+
├─ [ ] T006: Add logout endpoint (P2)
|
|
73
|
+
└─ 6 more tasks...
|
|
74
|
+
|
|
75
|
+
PM Gates Preview:
|
|
76
|
+
├─ Gate 1 (Tasks): 3/8 P1 tasks done (38%) ⏳
|
|
77
|
+
├─ Gate 2 (Tests): 2/5 passing (40%) ⏳
|
|
78
|
+
└─ Gate 3 (Docs): CLAUDE.md ✅, README.md ⏳
|
|
79
|
+
|
|
80
|
+
Last Activity: 5 minutes ago
|
|
81
|
+
Next Action: Run `/build 0001` to resume at T004
|
|
82
|
+
|
|
83
|
+
💡 Tip: `/build` auto-resumes from last incomplete task!
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
### No Active Work
|
|
87
|
+
|
|
88
|
+
```
|
|
89
|
+
📊 Current Progress
|
|
90
|
+
|
|
91
|
+
No active increment found.
|
|
92
|
+
|
|
93
|
+
Recent Increments:
|
|
94
|
+
├─ 0003-payment-flow (completed) - 1 day ago
|
|
95
|
+
├─ 0002-user-profile (completed) - 2 days ago
|
|
96
|
+
└─ 0001-auth (closed) - 3 days ago
|
|
97
|
+
|
|
98
|
+
Next Action: Run `/inc "feature description"` to start new work
|
|
99
|
+
|
|
100
|
+
💡 Tip: `/inc` is your starting point for all new features
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
### Multiple In-Progress (WIP Limit Warning)
|
|
104
|
+
|
|
105
|
+
```
|
|
106
|
+
📊 Current Progress
|
|
107
|
+
|
|
108
|
+
⚠️ Warning: 2 increments in-progress (exceeds recommended WIP limit: 1)
|
|
109
|
+
|
|
110
|
+
Active Increments:
|
|
111
|
+
1. 0002-payment-flow (in-progress)
|
|
112
|
+
└─ Task Progress: 5/10 completed (50%)
|
|
113
|
+
|
|
114
|
+
2. 0003-notifications (in-progress)
|
|
115
|
+
└─ Task Progress: 2/8 completed (25%)
|
|
116
|
+
|
|
117
|
+
Recommendation: Focus on completing 0002 before starting new work.
|
|
118
|
+
|
|
119
|
+
Next Action: Run `/build 0002` to continue payment-flow
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
### Stuck/Inactive Increment
|
|
123
|
+
|
|
124
|
+
```
|
|
125
|
+
📊 Current Progress
|
|
126
|
+
|
|
127
|
+
Active Increment: 0001-user-authentication
|
|
128
|
+
Status: in-progress (started 2 days ago)
|
|
129
|
+
|
|
130
|
+
⚠️ Warning: Last activity was 6 hours ago
|
|
131
|
+
└─ Current task T005 may be stuck or blocked
|
|
132
|
+
|
|
133
|
+
Task Progress: 4/12 completed (33%)
|
|
134
|
+
├─ [✅] T001: Setup auth module (P1)
|
|
135
|
+
├─ [✅] T002: Create user model (P1)
|
|
136
|
+
├─ [✅] T003: Implement JWT tokens (P1)
|
|
137
|
+
├─ [✅] T004: Add password hashing (P1)
|
|
138
|
+
├─ [🔄] T005: Create login endpoint (P1) ← STUCK? (6 hours)
|
|
139
|
+
├─ [ ] T006: Add logout endpoint (P2)
|
|
140
|
+
└─ 6 more tasks...
|
|
141
|
+
|
|
142
|
+
Next Action:
|
|
143
|
+
1. Run `/build 0001` to retry T005
|
|
144
|
+
2. Or manually review T005 for blockers
|
|
145
|
+
3. Or skip T005 and defer to next increment
|
|
146
|
+
|
|
147
|
+
💡 Tip: Long-running tasks may need breaking down
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
---
|
|
151
|
+
|
|
152
|
+
## Implementation
|
|
153
|
+
|
|
154
|
+
**How `/progress` works**:
|
|
155
|
+
|
|
156
|
+
### Step 1: Find Active Increment
|
|
157
|
+
|
|
158
|
+
```bash
|
|
159
|
+
# Check for in-progress increments
|
|
160
|
+
find .specweave/increments -name "tasks.md" -exec grep -l "status: in-progress" {} \;
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
### Step 2: Parse Tasks and Calculate %
|
|
164
|
+
|
|
165
|
+
```bash
|
|
166
|
+
# Read tasks.md
|
|
167
|
+
# Count completed vs total
|
|
168
|
+
# Weight P1 tasks higher (2x), P2 (1.5x), P3 (1x)
|
|
169
|
+
# Calculate percentage
|
|
170
|
+
|
|
171
|
+
Example:
|
|
172
|
+
- P1 tasks: 3/8 complete = 3*2 / 8*2 = 6/16 (37.5%)
|
|
173
|
+
- P2 tasks: 2/3 complete = 2*1.5 / 3*1.5 = 3/4.5 (66%)
|
|
174
|
+
- P3 tasks: 1/1 complete = 1*1 / 1*1 = 1/1 (100%)
|
|
175
|
+
|
|
176
|
+
Overall: (6 + 3 + 1) / (16 + 4.5 + 1) = 10/21.5 = 46.5%
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
### Step 3: Check PM Gates
|
|
180
|
+
|
|
181
|
+
```bash
|
|
182
|
+
# Gate 1: Tasks
|
|
183
|
+
# - Count P1 tasks completed
|
|
184
|
+
# - Status: ✅ all done, ⏳ in progress, ❌ blocked
|
|
185
|
+
|
|
186
|
+
# Gate 2: Tests
|
|
187
|
+
# - Run test suite (npm test or equivalent)
|
|
188
|
+
# - Check coverage report
|
|
189
|
+
# - Status: ✅ >80%, ⏳ 50-80%, ❌ <50%
|
|
190
|
+
|
|
191
|
+
# Gate 3: Docs
|
|
192
|
+
# - Check if CLAUDE.md updated recently
|
|
193
|
+
# - Check if README.md mentions new feature
|
|
194
|
+
# - Status: ✅ updated, ⏳ partial, ❌ outdated
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
### Step 4: Determine Next Action
|
|
198
|
+
|
|
199
|
+
```bash
|
|
200
|
+
if [[ $in_progress_count -eq 0 ]]; then
|
|
201
|
+
echo "Run \`/inc\` to start new feature"
|
|
202
|
+
elif [[ $in_progress_count -gt 1 ]]; then
|
|
203
|
+
echo "⚠️ Multiple increments active. Focus on completing one."
|
|
204
|
+
echo "Run \`/build $oldest_increment\`"
|
|
205
|
+
elif [[ $next_task != "" ]]; then
|
|
206
|
+
echo "Run \`/build $increment_id\` to resume at $next_task"
|
|
207
|
+
else
|
|
208
|
+
echo "All tasks complete! Run \`/done $increment_id\` to close."
|
|
209
|
+
fi
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
---
|
|
213
|
+
|
|
214
|
+
## When to Use `/progress`
|
|
215
|
+
|
|
216
|
+
Use `/progress` when you:
|
|
217
|
+
- ✅ Come back after a break and need context
|
|
218
|
+
- ✅ Want to see overall completion status
|
|
219
|
+
- ✅ Need to know which task to work on next
|
|
220
|
+
- ✅ Forgot which increment you're working on
|
|
221
|
+
- ✅ Want to check if PM gates will pass
|
|
222
|
+
- ✅ Suspect a task is stuck or blocked
|
|
223
|
+
- ✅ Have multiple increments and need to prioritize
|
|
224
|
+
|
|
225
|
+
**Typical workflow**:
|
|
226
|
+
```bash
|
|
227
|
+
# Morning: Check what you were working on
|
|
228
|
+
/progress
|
|
229
|
+
|
|
230
|
+
# Shows: "Active: 0002-payments, Task 5/10 (50%)"
|
|
231
|
+
# Shows: "Next: /build 0002 to resume at T006"
|
|
232
|
+
|
|
233
|
+
/build 0002
|
|
234
|
+
# Auto-resumes from T006
|
|
235
|
+
```
|
|
236
|
+
|
|
237
|
+
---
|
|
238
|
+
|
|
239
|
+
## Pro Tips
|
|
240
|
+
|
|
241
|
+
1. **No increment ID needed** - `/progress` automatically finds active increment
|
|
242
|
+
2. **Smart resume** - `/build` picks up where you left off (no task ID needed)
|
|
243
|
+
3. **WIP limits** - Keep 1-2 increments active max for focus
|
|
244
|
+
4. **Completion %** - P1 tasks weighted higher (they're critical path)
|
|
245
|
+
5. **Time tracking** - Warns if tasks are stuck (>2 hours inactive)
|
|
246
|
+
|
|
247
|
+
---
|
|
248
|
+
|
|
249
|
+
## Related Commands
|
|
250
|
+
|
|
251
|
+
- `/inc` - Start new increment (auto-closes previous if ready)
|
|
252
|
+
- `/build` - Execute tasks (auto-resumes from next incomplete)
|
|
253
|
+
- `/validate` - Run quality checks (optional)
|
|
254
|
+
- `/done` - Explicitly close increment (optional if `/inc` auto-closes)
|
|
255
|
+
|
|
256
|
+
---
|
|
257
|
+
|
|
258
|
+
**💡 Remember**: `/progress` is your "where am I?" command. Use it anytime you need orientation!
|
|
@@ -12,16 +12,17 @@ This project uses **SpecWeave** - a specification-first AI development framework
|
|
|
12
12
|
|
|
13
13
|
SpecWeave uses **EXPLICIT SLASH COMMANDS** - no auto-activation, no proactive detection.
|
|
14
14
|
|
|
15
|
-
**
|
|
16
|
-
1. ✅
|
|
17
|
-
2. ✅
|
|
18
|
-
3. ✅
|
|
19
|
-
4. ✅ **
|
|
20
|
-
|
|
21
|
-
**Why
|
|
22
|
-
-
|
|
23
|
-
-
|
|
24
|
-
-
|
|
15
|
+
**Smart Workflow** (Natural & Efficient):
|
|
16
|
+
1. ✅ **`/inc "feature description"`** - Plan increment (PM-led, auto-closes previous if ready)
|
|
17
|
+
2. ✅ **`/build`** - Execute tasks (smart resume, hooks after EVERY task)
|
|
18
|
+
3. ✅ **`/progress`** - Check status (task %, PM gates, next action)
|
|
19
|
+
4. ✅ **Repeat**: `/inc "next"` → auto-closes previous if done
|
|
20
|
+
|
|
21
|
+
**Why smart workflow?**
|
|
22
|
+
- No manual tracking (`/build` auto-resumes from next incomplete task)
|
|
23
|
+
- No manual closure (`/inc` suggests options if previous incomplete)
|
|
24
|
+
- Check progress anytime (`/progress`)
|
|
25
|
+
- Natural flow: finish → start next
|
|
25
26
|
|
|
26
27
|
**See**: Full command list below in "Quick Commands" section
|
|
27
28
|
|