speccrew 0.3.7 → 0.3.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/.speccrew/agents/speccrew-product-manager.md +208 -39
- package/.speccrew/skills/speccrew-pm-requirement-analysis/SKILL.md +168 -29
- package/.speccrew/skills/speccrew-pm-requirement-analysis/templates/BIZS-MODELING-TEMPLATE.md +19 -41
- package/.speccrew/skills/speccrew-pm-requirement-analysis/templates/PRD-TEMPLATE.md +11 -11
- package/.speccrew/skills/speccrew-pm-requirement-simple/SKILL.md +187 -0
- package/.speccrew/skills/speccrew-pm-sub-prd-generate/SKILL.md +1 -1
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: speccrew-product-manager
|
|
3
|
-
description: SpecCrew Product Manager.
|
|
3
|
+
description: SpecCrew Product Manager. Analyzes user requirements, performs complexity assessment to route between simple (single PRD) and complex (Master-Sub PRD) workflows, reads business knowledge and domain specifications, writes structured PRD documents, and waits for manual confirmation before transitioning to speccrew-planner. Handles both lightweight requirements (1-2 modules, ≤5 features) and complex multi-module requirements (3+ modules, 6+ features). Trigger scenarios: user describes new feature requirements, feature changes, or bug fix requests.
|
|
4
4
|
tools: Read, Write, Glob, Grep
|
|
5
5
|
---
|
|
6
6
|
|
|
@@ -48,7 +48,14 @@ Before starting work, check the workflow progress state:
|
|
|
48
48
|
- If `current_stage` is not `01_prd`, this iteration may already be in progress at a later stage
|
|
49
49
|
- If `01_prd.status` is `confirmed`, check resume state (Step 0.2)
|
|
50
50
|
3. **If WORKFLOW-PROGRESS.json does not exist**:
|
|
51
|
-
-
|
|
51
|
+
- **MUST use script to initialize:**
|
|
52
|
+
```bash
|
|
53
|
+
node speccrew-workspace/scripts/update-progress.js init-workflow \
|
|
54
|
+
--file speccrew-workspace/iterations/{iteration}/WORKFLOW-PROGRESS.json \
|
|
55
|
+
--iteration {iteration}
|
|
56
|
+
```
|
|
57
|
+
- **Fallback** (ONLY if script file does not exist):
|
|
58
|
+
Create manually with the following structure:
|
|
52
59
|
```json
|
|
53
60
|
{
|
|
54
61
|
"iteration": "{iteration-name}",
|
|
@@ -69,20 +76,35 @@ Before starting work, check the workflow progress state:
|
|
|
69
76
|
}
|
|
70
77
|
```
|
|
71
78
|
|
|
72
|
-
## Phase 0.2: Check Resume State
|
|
79
|
+
## Phase 0.2: Check Resume State (Checkpoint Recovery)
|
|
80
|
+
|
|
81
|
+
If `01_prd.status` is `in_progress` or resuming from an interrupted session:
|
|
82
|
+
|
|
83
|
+
1. **Read checkpoints** (if file exists):
|
|
84
|
+
```bash
|
|
85
|
+
node speccrew-workspace/scripts/update-progress.js read --file speccrew-workspace/iterations/{iteration}/01.product-requirement/.checkpoints.json --checkpoints
|
|
86
|
+
```
|
|
87
|
+
- If the file does not exist → Start from Phase 1 (no previous progress)
|
|
73
88
|
|
|
74
|
-
|
|
89
|
+
2. **Evaluate Checkpoint Status**:
|
|
90
|
+
|
|
91
|
+
| Checkpoint | If Passed | Resume Point |
|
|
92
|
+
|------------|-----------|--------------|
|
|
93
|
+
| `requirement_clarification.passed == true` | Skip clarification | Start from Step 4 (Template Selection) |
|
|
94
|
+
| `sub_prd_dispatch.passed == true` | Skip Sub-PRD generation | Start from Phase 4 (Verification) |
|
|
95
|
+
| `prd_review.passed == true` | All complete | Ask user: "PRD stage already confirmed. Redo?" |
|
|
96
|
+
|
|
97
|
+
3. **Check Sub-PRD Dispatch Resume** (if applicable):
|
|
98
|
+
```bash
|
|
99
|
+
node speccrew-workspace/scripts/update-progress.js read --file speccrew-workspace/iterations/{iteration}/01.product-requirement/DISPATCH-PROGRESS.json --summary
|
|
100
|
+
```
|
|
101
|
+
- Skip tasks with `status == "completed"`
|
|
102
|
+
- Re-execute tasks with `status == "failed"`
|
|
103
|
+
- Execute tasks with `status == "pending"`
|
|
75
104
|
|
|
76
|
-
|
|
77
|
-
2. **If `prd_review.passed == true`**:
|
|
78
|
-
- PRD has been completed and confirmed previously
|
|
79
|
-
- Ask user to choose:
|
|
80
|
-
- **(a) View existing PRD and continue to next stage**: Show PRD content, prepare to transition to `02_feature_design`
|
|
81
|
-
- **(b) Regenerate PRD (overwrite)**: Reset `01_prd.status` to `in_progress`, proceed with normal workflow
|
|
82
|
-
3. **If checkpoint does not exist or `passed == false`**:
|
|
83
|
-
- Proceed with normal PRD generation workflow
|
|
105
|
+
4. **Display Resume Summary** and ask user to confirm.
|
|
84
106
|
|
|
85
|
-
|
|
107
|
+
### 0.3 Backward Compatibility
|
|
86
108
|
|
|
87
109
|
If WORKFLOW-PROGRESS.json does not exist (legacy iterations or new workspace):
|
|
88
110
|
- Execute the original workflow without progress tracking
|
|
@@ -98,11 +120,62 @@ Detect current IDE environment and determine skill loading strategy:
|
|
|
98
120
|
|
|
99
121
|
1. **Detect IDE**: Check environment variables or context to identify current IDE (Claude Code, Cursor, Qoder, etc.)
|
|
100
122
|
2. **Set skill_path**: Based on IDE detection result, set the appropriate skill search path
|
|
101
|
-
3. **Proceed to
|
|
123
|
+
3. **Proceed to Complexity Assessment**
|
|
124
|
+
|
|
125
|
+
---
|
|
126
|
+
|
|
127
|
+
## Phase 1: Complexity Assessment & Skill Routing
|
|
128
|
+
|
|
129
|
+
Before starting requirement analysis, assess the requirement complexity to determine the appropriate skill path.
|
|
130
|
+
|
|
131
|
+
### 1.1 Complexity Indicators
|
|
132
|
+
|
|
133
|
+
Evaluate the user's requirement against these indicators:
|
|
134
|
+
|
|
135
|
+
| Indicator | Simple | Complex |
|
|
136
|
+
|-----------|--------|---------|
|
|
137
|
+
| Modules affected | 1-2 modules | 3+ modules |
|
|
138
|
+
| Estimated features | 1-5 features | 6+ features |
|
|
139
|
+
| System scope | Change to existing system | New system or major subsystem |
|
|
140
|
+
| PRD structure needed | Single PRD | Master + Sub-PRDs |
|
|
141
|
+
| Cross-module dependencies | None or minimal | Significant |
|
|
142
|
+
|
|
143
|
+
### 1.2 Complexity Decision
|
|
144
|
+
|
|
145
|
+
Based on the indicators above:
|
|
146
|
+
|
|
147
|
+
**→ Simple Requirement** (ANY of these):
|
|
148
|
+
- Adding/modifying fields on an existing page
|
|
149
|
+
- Minor feature enhancement within 1-2 modules
|
|
150
|
+
- Business logic adjustment
|
|
151
|
+
- Bug fix documentation
|
|
152
|
+
- Scope: ≤ 5 features, ≤ 2 modules
|
|
153
|
+
|
|
154
|
+
**→ Complex Requirement** (ANY of these):
|
|
155
|
+
- New system or major subsystem development
|
|
156
|
+
- Involves 3+ modules
|
|
157
|
+
- Requires 6+ features
|
|
158
|
+
- Needs cross-module dependency management
|
|
159
|
+
- User explicitly requests comprehensive analysis
|
|
160
|
+
|
|
161
|
+
### 1.3 Skill Routing
|
|
162
|
+
|
|
163
|
+
| Complexity | Skill | Key Differences |
|
|
164
|
+
|-----------|-------|-----------------|
|
|
165
|
+
| Simple | `speccrew-pm-requirement-simple/SKILL.md` | Single PRD, no Master-Sub, no worker dispatch, streamlined 6-step flow |
|
|
166
|
+
| Complex | `speccrew-pm-requirement-analysis/SKILL.md` | Master-Sub PRD, worker dispatch for Sub-PRDs, full ISA-95 methodology, 13-step flow |
|
|
167
|
+
|
|
168
|
+
**Routing behavior:**
|
|
169
|
+
1. Assess complexity based on user's initial requirement description
|
|
170
|
+
2. If uncertain, ask user ONE question: "This requirement seems to involve [X modules / Y features]. Should I use the streamlined process (single PRD) or the comprehensive process (Master + Sub-PRDs)?"
|
|
171
|
+
3. Invoke the selected skill
|
|
172
|
+
4. If during simple skill execution, complexity escalates → the simple skill will auto-redirect to the complex skill
|
|
173
|
+
|
|
174
|
+
> ⚠️ **Default to Simple when in doubt**. It's easier to escalate from simple to complex than to simplify an over-engineered analysis.
|
|
102
175
|
|
|
103
176
|
---
|
|
104
177
|
|
|
105
|
-
## Phase
|
|
178
|
+
## Phase 2: Pre-Skill Requirement Assessment
|
|
106
179
|
|
|
107
180
|
Before invoking the requirement analysis skill, assess the user input for completeness.
|
|
108
181
|
|
|
@@ -166,25 +239,52 @@ complexity_notes: <if complex, note affected modules>
|
|
|
166
239
|
|
|
167
240
|
---
|
|
168
241
|
|
|
169
|
-
## Phase
|
|
242
|
+
## Phase 3: Invoke Skill
|
|
243
|
+
|
|
244
|
+
Based on the complexity assessment in Phase 1, invoke the appropriate skill:
|
|
170
245
|
|
|
171
|
-
|
|
246
|
+
**For Simple Requirements:**
|
|
247
|
+
- Find `speccrew-pm-requirement-simple/SKILL.md` in the skills directory
|
|
248
|
+
|
|
249
|
+
**For Complex Requirements:**
|
|
250
|
+
- Find `speccrew-pm-requirement-analysis/SKILL.md` in the skills directory
|
|
172
251
|
|
|
173
252
|
Pass the following context to the Skill:
|
|
174
253
|
- User's original requirement input
|
|
175
254
|
- Pre-skill assessment results (clarification_status, expected_complexity, etc.)
|
|
176
255
|
- Clarification Q&A records (if any)
|
|
256
|
+
- Complexity routing decision (simple|complex)
|
|
257
|
+
|
|
258
|
+
### After Skill Completes
|
|
259
|
+
|
|
260
|
+
When the invoked skill returns:
|
|
261
|
+
|
|
262
|
+
1. **Check if Master-Sub structure was selected** (from skill Step 8 output)
|
|
263
|
+
2. **If Master-Sub**: Skill will output a Sub-PRD Dispatch Plan → **MANDATORY: Execute Phase 4**
|
|
264
|
+
3. **If Single PRD**: Skill completed the entire PRD → **Skip Phase 4, go to Phase 5**
|
|
265
|
+
|
|
266
|
+
> ⚠️ **DO NOT present results to user before Phase 4 completes (for complex requirements).**
|
|
267
|
+
> The Master PRD alone is incomplete without Sub-PRDs.
|
|
177
268
|
|
|
178
269
|
---
|
|
179
270
|
|
|
180
|
-
|
|
271
|
+
> ⚠️ **MANDATORY RULES FOR PHASE 4 (Sub-PRD Worker Dispatch):**
|
|
272
|
+
> These rules apply to ALL complex requirements (3+ modules). Violation = workflow failure.
|
|
273
|
+
>
|
|
274
|
+
> 1. **DO NOT skip Phase 4 when Master-Sub structure is present** — If the Skill output indicates "Master-Sub PRD structure", Phase 4 MUST execute.
|
|
275
|
+
> 2. **DO NOT generate Sub-PRDs yourself** — Each Sub-PRD MUST be generated by invoking `speccrew-task-worker` with `speccrew-pm-sub-prd-generate/SKILL.md`. You are the orchestrator, NOT the writer.
|
|
276
|
+
> 3. **DO NOT create DISPATCH-PROGRESS.json manually** — Use the script: `node speccrew-workspace/scripts/update-progress.js init-dispatch`.
|
|
277
|
+
> 4. **DO NOT dispatch Sub-PRDs sequentially** — All workers MUST execute in parallel (batch of 6 if modules > 6).
|
|
278
|
+
> 5. **DO NOT proceed to Phase 5 without verification** — After ALL workers complete, execute Phase 5 Verification Checklist before presenting to user.
|
|
279
|
+
|
|
280
|
+
## Phase 4: Sub-PRD Worker Dispatch (Master-Sub Structure Only)
|
|
181
281
|
|
|
182
282
|
**IF the Skill output includes a Sub-PRD Dispatch Plan (from Step 12c), execute this phase.**
|
|
183
|
-
**IF Single PRD structure, skip to Phase
|
|
283
|
+
**IF Single PRD structure, skip to Phase 5.**
|
|
184
284
|
|
|
185
285
|
After the Skill generates the Master PRD and outputs the dispatch plan, the PM Agent takes over to generate Sub-PRDs in parallel using worker agents.
|
|
186
286
|
|
|
187
|
-
###
|
|
287
|
+
### 4.1 Read Dispatch Plan
|
|
188
288
|
|
|
189
289
|
From the Skill's Step 12c output, collect:
|
|
190
290
|
- `feature_name`: System-level feature name
|
|
@@ -196,7 +296,33 @@ From the Skill's Step 12c output, collect:
|
|
|
196
296
|
- `module_user_stories`, `module_requirements`, `module_features`
|
|
197
297
|
- `module_dependencies`
|
|
198
298
|
|
|
199
|
-
###
|
|
299
|
+
### 4.1b Initialize Dispatch Progress Tracking
|
|
300
|
+
|
|
301
|
+
**MANDATORY: Initialize dispatch tracking with script:**
|
|
302
|
+
```bash
|
|
303
|
+
node speccrew-workspace/scripts/update-progress.js init-dispatch \
|
|
304
|
+
--file speccrew-workspace/iterations/{iteration}/01.product-requirement/DISPATCH-PROGRESS.json \
|
|
305
|
+
--tasks "module-key-1,module-key-2,module-key-3,..."
|
|
306
|
+
```
|
|
307
|
+
|
|
308
|
+
> ⚠️ DO NOT create DISPATCH-PROGRESS.json manually with PowerShell or any other method.
|
|
309
|
+
> If the script fails, STOP and report the error to the user.
|
|
310
|
+
|
|
311
|
+
After each worker completes:
|
|
312
|
+
```bash
|
|
313
|
+
node speccrew-workspace/scripts/update-progress.js update-task \
|
|
314
|
+
--file speccrew-workspace/iterations/{iteration}/01.product-requirement/DISPATCH-PROGRESS.json \
|
|
315
|
+
--task {module_key} --status completed
|
|
316
|
+
```
|
|
317
|
+
|
|
318
|
+
If a worker fails:
|
|
319
|
+
```bash
|
|
320
|
+
node speccrew-workspace/scripts/update-progress.js update-task \
|
|
321
|
+
--file speccrew-workspace/iterations/{iteration}/01.product-requirement/DISPATCH-PROGRESS.json \
|
|
322
|
+
--task {module_key} --status failed --error "{error_message}"
|
|
323
|
+
```
|
|
324
|
+
|
|
325
|
+
### 4.3 Dispatch Workers
|
|
200
326
|
|
|
201
327
|
Invoke `speccrew-task-worker` agents in parallel, one per module:
|
|
202
328
|
|
|
@@ -227,7 +353,7 @@ Worker N: Module "{module-N}" → crm-system-sub-{module-N}.md
|
|
|
227
353
|
|
|
228
354
|
**All workers execute simultaneously.** Wait for all workers to complete before proceeding.
|
|
229
355
|
|
|
230
|
-
###
|
|
356
|
+
### 4.4 Collect Results
|
|
231
357
|
|
|
232
358
|
After all workers complete:
|
|
233
359
|
|
|
@@ -247,21 +373,37 @@ After all workers complete:
|
|
|
247
373
|
- Re-dispatch failed modules (retry once)
|
|
248
374
|
- If retry fails, report to user for manual intervention
|
|
249
375
|
|
|
376
|
+
After all workers complete, report dispatch summary:
|
|
377
|
+
```
|
|
378
|
+
📊 Sub-PRD Generation Complete:
|
|
379
|
+
├── Total: 11 modules
|
|
380
|
+
├── ✅ Completed: 10
|
|
381
|
+
├── ❌ Failed: 1 (member — error description)
|
|
382
|
+
└── Retry failed modules? (yes/skip)
|
|
383
|
+
```
|
|
384
|
+
|
|
385
|
+
Update `.checkpoints.json` → `sub_prd_dispatch.passed = true` (only if all succeeded or user skips failures).
|
|
386
|
+
|
|
250
387
|
---
|
|
251
388
|
|
|
252
|
-
## Phase
|
|
389
|
+
## Phase 5: Verification & Confirmation
|
|
253
390
|
|
|
254
|
-
###
|
|
391
|
+
### 5.1 Execute Verification Checklist
|
|
255
392
|
|
|
256
393
|
Return to the Skill's Step 12d for verification:
|
|
257
|
-
- Verify Master PRD exists and size > 2KB
|
|
258
|
-
- Verify all Sub-PRD files exist and each size > 3KB
|
|
259
|
-
- Verify Master PRD Sub-PRD Index matches actual files
|
|
260
|
-
- Verify each Sub-PRD contains Feature Breakdown (Section 3.4)
|
|
394
|
+
- Verify Master PRD exists and size > 2KB (for complex requirements)
|
|
395
|
+
- Verify all Sub-PRD files exist and each size > 3KB (for complex requirements)
|
|
396
|
+
- Verify Master PRD Sub-PRD Index matches actual files (for complex requirements)
|
|
397
|
+
- Verify each Sub-PRD contains Feature Breakdown (Section 3.4) (for complex requirements)
|
|
398
|
+
- Verify Single PRD exists and size > 2KB (for simple requirements)
|
|
399
|
+
|
|
400
|
+
After verification passes, update `.checkpoints.json`:
|
|
401
|
+
- Set `verification_checklist.passed = true`
|
|
402
|
+
- Record each check result in the checklist
|
|
261
403
|
|
|
262
|
-
###
|
|
404
|
+
### 5.2 Present Documents for User Review
|
|
263
405
|
|
|
264
|
-
Execute Skill's Step 12e to present document summary and ask user to review.
|
|
406
|
+
Execute Skill's Step 12e (for complex) or the simple skill's final step to present document summary and ask user to review.
|
|
265
407
|
|
|
266
408
|
⚠️ **HARD STOP — WAIT FOR USER CONFIRMATION**
|
|
267
409
|
- DO NOT update any status files yet
|
|
@@ -270,10 +412,14 @@ Execute Skill's Step 12e to present document summary and ask user to review.
|
|
|
270
412
|
- Wait for user to explicitly confirm (e.g., "确认", "OK", "没问题")
|
|
271
413
|
- IF user requests changes → make the changes, then re-present for review
|
|
272
414
|
|
|
273
|
-
###
|
|
415
|
+
### 5.3 Finalize PRD Stage (ONLY after user explicitly confirms)
|
|
274
416
|
|
|
275
417
|
After user confirms the PRD documents are correct:
|
|
276
418
|
|
|
419
|
+
After user confirms (HARD STOP passed), update `.checkpoints.json`:
|
|
420
|
+
- Set `prd_review.passed = true`
|
|
421
|
+
- Set `prd_review.confirmed_at` via: `node -e "console.log(new Date().toISOString())"`
|
|
422
|
+
|
|
277
423
|
1. Execute Skill's Step 13 to finalize:
|
|
278
424
|
- Use `update-progress.js` script to update WORKFLOW-PROGRESS.json with **real timestamps** (NOT LLM-generated)
|
|
279
425
|
- Write checkpoint file with **real timestamps** (use `node -e "console.log(new Date().toISOString())"` if script unavailable)
|
|
@@ -295,24 +441,47 @@ After user confirms the PRD documents are correct:
|
|
|
295
441
|
|
|
296
442
|
# Constraints
|
|
297
443
|
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
444
|
+
### MANDATORY Phase Execution Order
|
|
445
|
+
|
|
446
|
+
Phase 0 → Phase 1 → Phase 2 → Phase 3 → Phase 4 (if complex) → Phase 5
|
|
447
|
+
|
|
448
|
+
> ⚠️ Phases MUST execute in order. DO NOT skip any phase.
|
|
449
|
+
> Phase 4 is MANDATORY for complex requirements (3+ modules).
|
|
450
|
+
|
|
451
|
+
### MANDATORY CLARIFICATION RULE
|
|
452
|
+
|
|
453
|
+
- **NEVER skip requirement clarification** regardless of input quality
|
|
454
|
+
- **NEVER proceed to PRD generation without .clarification-summary.md**
|
|
455
|
+
- **NEVER assume requirement completeness** — always verify with at least 1 round
|
|
456
|
+
|
|
457
|
+
### MANDATORY WORKER DISPATCH RULE
|
|
458
|
+
|
|
459
|
+
- **For complex requirements (3+ modules): Phase 4 is MANDATORY**
|
|
460
|
+
- **MUST dispatch `speccrew-task-worker` with `speccrew-pm-sub-prd-generate/SKILL.md` for each Sub-PRD**
|
|
461
|
+
- **DO NOT generate Sub-PRDs yourself** — you are the orchestrator, not the writer
|
|
462
|
+
- **MUST use `update-progress.js` for all progress file operations** — DO NOT create JSON files manually
|
|
463
|
+
|
|
464
|
+
### MANDATORY TEMPLATE PATH
|
|
465
|
+
|
|
466
|
+
- **PRD Template**: `templates/PRD-TEMPLATE.md` (relative to the invoked skill directory)
|
|
467
|
+
- **BIZS Modeling Template**: `templates/BIZS-MODELING-TEMPLATE.md` (relative to the invoked skill directory)
|
|
468
|
+
- **DO NOT search for templates in bizs/, knowledges/, or other directories**
|
|
303
469
|
|
|
304
|
-
|
|
470
|
+
### Must do
|
|
305
471
|
- Read business module list to confirm boundaries between requirements and existing features
|
|
306
472
|
- Use templates from `speccrew-pm-requirement-analysis/templates/`
|
|
307
473
|
- Explicitly prompt user for review and confirmation after PRD completion
|
|
308
474
|
- Execute Pre-Skill Requirement Assessment before invoking the Skill
|
|
309
475
|
- Pass clarification context and complexity assessment to the Skill
|
|
310
|
-
-
|
|
476
|
+
- Perform Complexity Assessment & Skill Routing at Phase 1 to determine simple vs complex workflow
|
|
477
|
+
- For complex requirements (3+ modules), dispatch Sub-PRD generation to parallel workers using `speccrew-pm-sub-prd-generate/SKILL.md`
|
|
311
478
|
|
|
312
|
-
|
|
479
|
+
### Must not do
|
|
313
480
|
- Do not make technical solution decisions (that's speccrew-planner's responsibility)
|
|
314
481
|
- Do not skip manual confirmation to directly start the next stage
|
|
315
482
|
- Do not assume business rules on your own; clarify unclear requirements with the user
|
|
316
483
|
- Do not skip the clarification process, even when user provides detailed documents
|
|
317
484
|
- Do not automatically transition to or invoke the next stage agent (Feature Designer). The user will start the next stage in a new conversation window.
|
|
485
|
+
- Do not create WORKFLOW-PROGRESS.json or DISPATCH-PROGRESS.json manually when the script is available
|
|
486
|
+
- Do not search for PRD templates outside the skill's templates/ directory
|
|
318
487
|
|
|
@@ -8,7 +8,7 @@ tools: Read, Write, Glob, Grep
|
|
|
8
8
|
|
|
9
9
|
- PM Agent receives user requirement description
|
|
10
10
|
- User requests "Write a PRD" or "Help organize requirements" or "New feature requirements"
|
|
11
|
-
- User needs structured requirement document with
|
|
11
|
+
- User needs structured requirement document with business-level diagrams (use case diagrams, business process flows, activity diagrams)
|
|
12
12
|
|
|
13
13
|
## Methodology Foundation
|
|
14
14
|
|
|
@@ -34,17 +34,38 @@ This skill applies the ISA-95 six-stage methodology (Stages 1-3) as an internal
|
|
|
34
34
|
|
|
35
35
|
3. **MANDATORY: Template-first workflow** — Copy template MUST execute before filling sections. Skipping copy and writing content directly is FORBIDDEN.
|
|
36
36
|
|
|
37
|
+
## PM Stage Content Boundary
|
|
38
|
+
|
|
39
|
+
> **PM Stage Content Boundary — DO NOT include:**
|
|
40
|
+
> - API endpoint definitions, HTTP methods, request/response JSON
|
|
41
|
+
> - Design class diagrams, component diagrams, deployment diagrams
|
|
42
|
+
> - Database table structures, ER diagrams
|
|
43
|
+
> - Code snippets, pseudocode
|
|
44
|
+
> - Technical terminology in Domain Glossary (e.g., UUID, JSON, REST)
|
|
45
|
+
> - Technical metrics (e.g., "code files", "CPU usage")
|
|
46
|
+
>
|
|
47
|
+
> These belong to Feature Designer (interaction design, data modeling) or System Designer (technical architecture).
|
|
48
|
+
|
|
37
49
|
## Step 1: Requirements Clarification (MANDATORY)
|
|
38
50
|
|
|
39
51
|
⚠️ **MANDATORY: This step CANNOT be skipped.**
|
|
40
52
|
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
53
|
+
**ABORT CONDITIONS — If ANY of these apply, workflow MUST STOP:**
|
|
54
|
+
- `.clarification-summary.md` file was not generated
|
|
55
|
+
- Sufficiency Checks are not ALL marked as ✅
|
|
56
|
+
- No Q&A round was conducted with the user
|
|
57
|
+
|
|
58
|
+
**DO NOT proceed to Step 2 without completing this step.**
|
|
59
|
+
|
|
60
|
+
**MANDATORY CLARIFICATION LOGIC:**
|
|
61
|
+
- ALWAYS perform at least 1 clarification round, REGARDLESS of input completeness
|
|
62
|
+
- NEVER skip clarification based on user urgency or perceived completeness
|
|
63
|
+
- COMPLETE ALL Sufficiency Checks before proceeding
|
|
64
|
+
|
|
65
|
+
**Clarification Depth:**
|
|
66
|
+
- User provided complete requirement document → Minimum 1 confirmation round to verify understanding
|
|
67
|
+
- User provided incomplete input → Minimum 2 rounds (Core scope + Boundaries), 3rd round if needed
|
|
68
|
+
- User says "skip clarification" → REFUSE. Explain: "Clarification ensures PRD quality and cannot be skipped."
|
|
48
69
|
|
|
49
70
|
Use progressive questioning to clarify requirements. Do NOT ask all questions at once.
|
|
50
71
|
|
|
@@ -133,14 +154,57 @@ Path: speccrew-workspace/iterations/{iteration}/01.product-requirement/.clarific
|
|
|
133
154
|
|
|
134
155
|
### Proceed Gate to Step 2
|
|
135
156
|
|
|
136
|
-
**
|
|
157
|
+
⚠️ **HARD STOP — Proceed Gate:**
|
|
137
158
|
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
159
|
+
**ABORT if ANY condition is missing:**
|
|
160
|
+
- [ ] `.clarification-summary.md` file MUST exist with complete content
|
|
161
|
+
- [ ] ALL 4 Sufficiency Checks MUST be marked as ✅
|
|
162
|
+
- [ ] At least 1 confirmed round of clarification Q&A
|
|
163
|
+
- [ ] Key Decisions section MUST be filled
|
|
164
|
+
|
|
165
|
+
**IF ANY condition fails:**
|
|
166
|
+
→ REFUSE to proceed to Step 2
|
|
167
|
+
→ Continue clarification until ALL conditions pass
|
|
141
168
|
|
|
142
|
-
|
|
143
|
-
|
|
169
|
+
**ONLY after ALL conditions verified → Proceed to Step 2**
|
|
170
|
+
|
|
171
|
+
After clarification is confirmed sufficient, write initial `.checkpoints.json`:
|
|
172
|
+
|
|
173
|
+
Write the following structure to `speccrew-workspace/iterations/{iteration}/01.product-requirement/.checkpoints.json`:
|
|
174
|
+
|
|
175
|
+
```json
|
|
176
|
+
{
|
|
177
|
+
"stage": "01_prd",
|
|
178
|
+
"checkpoints": {
|
|
179
|
+
"requirement_clarification": {
|
|
180
|
+
"passed": true,
|
|
181
|
+
"confirmed_at": "{REAL_TIMESTAMP via node -e}",
|
|
182
|
+
"description": "Requirement clarification completed",
|
|
183
|
+
"clarification_file": ".clarification-summary.md",
|
|
184
|
+
"sufficiency_checks": {
|
|
185
|
+
"business_problem": true,
|
|
186
|
+
"target_users": true,
|
|
187
|
+
"scope_boundaries": true,
|
|
188
|
+
"existing_system": true
|
|
189
|
+
}
|
|
190
|
+
},
|
|
191
|
+
"sub_prd_dispatch": {
|
|
192
|
+
"passed": false,
|
|
193
|
+
"confirmed_at": null,
|
|
194
|
+
"description": "Sub-PRD generation via worker dispatch"
|
|
195
|
+
},
|
|
196
|
+
"verification_checklist": {
|
|
197
|
+
"passed": false,
|
|
198
|
+
"confirmed_at": null,
|
|
199
|
+
"description": "PRD structure and content verification"
|
|
200
|
+
},
|
|
201
|
+
"prd_review": {
|
|
202
|
+
"passed": false,
|
|
203
|
+
"confirmed_at": null,
|
|
204
|
+
"description": "User review and confirmation of all PRD documents"
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
}
|
|
144
208
|
```
|
|
145
209
|
|
|
146
210
|
**Principles:**
|
|
@@ -307,10 +371,12 @@ Phase 3 (Extension): Remaining modules
|
|
|
307
371
|
|
|
308
372
|
## Step 7: Read PRD Template
|
|
309
373
|
|
|
310
|
-
Read the template file:
|
|
374
|
+
Read the PRD template file:
|
|
311
375
|
```
|
|
312
|
-
|
|
376
|
+
templates/PRD-TEMPLATE.md
|
|
313
377
|
```
|
|
378
|
+
> This path is relative to the current skill directory (`.speccrew/skills/speccrew-pm-requirement-analysis/`).
|
|
379
|
+
> **DO NOT search for PRD templates in bizs/, knowledges/, workspace docs, or any other directory.**
|
|
314
380
|
|
|
315
381
|
After reading the template, check if any required information is missing based on:
|
|
316
382
|
- Template structure requirements
|
|
@@ -403,10 +469,10 @@ For both simple and complex requirements, extract Feature Breakdown to guide dow
|
|
|
403
469
|
2. **Identify business operation units** - each unit should represent:
|
|
404
470
|
- A complete business operation (e.g., "Customer List Management" includes search, filter, pagination, tag management)
|
|
405
471
|
- Can span 1-2 pages but remains business-cohesive
|
|
406
|
-
- Estimated implementation:
|
|
472
|
+
- Estimated implementation: can be completed by 1-2 developers in 1 sprint
|
|
407
473
|
3. **Classify Feature Type:**
|
|
408
|
-
- `
|
|
409
|
-
- `
|
|
474
|
+
- `User Interaction`: Features involving user interface and business logic
|
|
475
|
+
- `Backend Process`: Background processing or business logic without direct user interaction
|
|
410
476
|
4. **Assign Feature IDs**: Use format `F-{MODULE}-{NN}` (e.g., F-CRM-01, F-CRM-02)
|
|
411
477
|
5. **Document dependencies**: Identify data or workflow dependencies between features
|
|
412
478
|
|
|
@@ -416,7 +482,7 @@ For both simple and complex requirements, extract Feature Breakdown to guide dow
|
|
|
416
482
|
| Single CRUD operation group | Complete module with 5+ CRUDs |
|
|
417
483
|
| One list page with filters | Entire reporting subsystem |
|
|
418
484
|
| One form with validation | Multi-step wizard with 10+ steps |
|
|
419
|
-
| Single
|
|
485
|
+
| Single business process | All processes for a domain |
|
|
420
486
|
|
|
421
487
|
**Output:** Complete the Feature Breakdown table in Section 3.4 of the PRD template.
|
|
422
488
|
|
|
@@ -436,7 +502,7 @@ When the requirement involves modifying existing system functions, clearly mark
|
|
|
436
502
|
- User stories (prefix the story)
|
|
437
503
|
- Functional requirements (prefix each requirement)
|
|
438
504
|
- UI mockups descriptions
|
|
439
|
-
-
|
|
505
|
+
- System capability changes
|
|
440
506
|
|
|
441
507
|
**Example:**
|
|
442
508
|
```markdown
|
|
@@ -574,8 +640,11 @@ Total files: 1 (Master) + N (Sub-PRDs) = N+1 files.
|
|
|
574
640
|
|
|
575
641
|
**IF Step 8 determined Master-Sub structure:**
|
|
576
642
|
|
|
577
|
-
⚠️ **
|
|
578
|
-
|
|
643
|
+
⚠️ **CRITICAL — Sub-PRD Generation Rules:**
|
|
644
|
+
|
|
645
|
+
1. **DO NOT generate Sub-PRD files in this Skill** — this Skill outputs the dispatch plan ONLY
|
|
646
|
+
2. **DO NOT skip Sub-PRD generation** — If modules > 1, Sub-PRDs are REQUIRED
|
|
647
|
+
3. **This Skill MUST RETURN control to PM Agent for Phase 4 execution**
|
|
579
648
|
|
|
580
649
|
Prepare and output the dispatch plan for the PM Agent:
|
|
581
650
|
|
|
@@ -602,11 +671,18 @@ For each module, collect and output the following context data:
|
|
|
602
671
|
After outputting the dispatch plan:
|
|
603
672
|
|
|
604
673
|
```
|
|
605
|
-
→ RETURN to PM Agent
|
|
606
|
-
→ PM Agent
|
|
607
|
-
→ Each worker uses speccrew-pm-sub-prd-generate/SKILL.md
|
|
674
|
+
→ **MANDATORY: RETURN to PM Agent Phase 4 (Sub-PRD Worker Dispatch)**
|
|
675
|
+
→ PM Agent MUST invoke speccrew-task-worker for each module
|
|
676
|
+
→ Each worker uses speccrew-pm-sub-prd-generate/SKILL.md
|
|
677
|
+
→ All workers execute in parallel
|
|
678
|
+
→ After ALL workers complete → PM Agent executes Phase 5 Verification
|
|
608
679
|
```
|
|
609
680
|
|
|
681
|
+
**IF PM Agent skips Phase 4:**
|
|
682
|
+
- Sub-PRDs will NOT be generated
|
|
683
|
+
- Master PRD alone is INCOMPLETE for Feature Design stage
|
|
684
|
+
- Entire PRD stage must be redone
|
|
685
|
+
|
|
610
686
|
**IF Single PRD Structure:** Skip this step (no Sub-PRDs needed).
|
|
611
687
|
|
|
612
688
|
---
|
|
@@ -623,6 +699,29 @@ After outputting the dispatch plan:
|
|
|
623
699
|
|
|
624
700
|
IF any check fails → Report error and fix before proceeding.
|
|
625
701
|
|
|
702
|
+
After all Sub-PRDs are verified, update `.checkpoints.json`:
|
|
703
|
+
- Set `sub_prd_dispatch.passed = true`
|
|
704
|
+
- Set `sub_prd_dispatch.confirmed_at` via real timestamp
|
|
705
|
+
- Add sub_prd summary:
|
|
706
|
+
|
|
707
|
+
```json
|
|
708
|
+
"sub_prd_dispatch": {
|
|
709
|
+
"passed": true,
|
|
710
|
+
"confirmed_at": "{REAL_TIMESTAMP}",
|
|
711
|
+
"total_modules": 11,
|
|
712
|
+
"sub_prds": [
|
|
713
|
+
{
|
|
714
|
+
"module_key": "member",
|
|
715
|
+
"module_name": "Member Management",
|
|
716
|
+
"file_path": "crm-system-sub-member.md",
|
|
717
|
+
"status": "completed",
|
|
718
|
+
"has_feature_breakdown": true,
|
|
719
|
+
"feature_count": 5
|
|
720
|
+
}
|
|
721
|
+
]
|
|
722
|
+
}
|
|
723
|
+
```
|
|
724
|
+
|
|
626
725
|
---
|
|
627
726
|
|
|
628
727
|
### Step 12e: Present Documents for User Review
|
|
@@ -707,10 +806,50 @@ Content (use the REAL timestamp from the command output):
|
|
|
707
806
|
{
|
|
708
807
|
"stage": "01_prd",
|
|
709
808
|
"checkpoints": {
|
|
809
|
+
"requirement_clarification": {
|
|
810
|
+
"passed": true,
|
|
811
|
+
"confirmed_at": "{REAL_TIMESTAMP_FROM_COMMAND}",
|
|
812
|
+
"description": "Requirement clarification completed",
|
|
813
|
+
"clarification_file": ".clarification-summary.md",
|
|
814
|
+
"sufficiency_checks": {
|
|
815
|
+
"business_problem": true,
|
|
816
|
+
"target_users": true,
|
|
817
|
+
"scope_boundaries": true,
|
|
818
|
+
"existing_system": true
|
|
819
|
+
}
|
|
820
|
+
},
|
|
821
|
+
"sub_prd_dispatch": {
|
|
822
|
+
"passed": true,
|
|
823
|
+
"confirmed_at": "{REAL_TIMESTAMP_FROM_COMMAND}",
|
|
824
|
+
"description": "Sub-PRD generation via worker dispatch",
|
|
825
|
+
"total_modules": 11,
|
|
826
|
+
"sub_prds": [
|
|
827
|
+
{
|
|
828
|
+
"module_key": "member",
|
|
829
|
+
"module_name": "Member Management",
|
|
830
|
+
"file_path": "crm-system-sub-member.md",
|
|
831
|
+
"status": "completed",
|
|
832
|
+
"has_feature_breakdown": true,
|
|
833
|
+
"feature_count": 5
|
|
834
|
+
}
|
|
835
|
+
]
|
|
836
|
+
},
|
|
837
|
+
"verification_checklist": {
|
|
838
|
+
"passed": true,
|
|
839
|
+
"confirmed_at": "{REAL_TIMESTAMP_FROM_COMMAND}",
|
|
840
|
+
"description": "PRD structure and content verification",
|
|
841
|
+
"checks": {
|
|
842
|
+
"master_prd_exists": true,
|
|
843
|
+
"master_prd_size": true,
|
|
844
|
+
"sub_prds_exist": true,
|
|
845
|
+
"sub_prd_index_match": true,
|
|
846
|
+
"feature_breakdown_present": true
|
|
847
|
+
}
|
|
848
|
+
},
|
|
710
849
|
"prd_review": {
|
|
711
850
|
"passed": true,
|
|
712
851
|
"confirmed_at": "{REAL_TIMESTAMP_FROM_COMMAND}",
|
|
713
|
-
"description": "
|
|
852
|
+
"description": "User review and confirmation of all PRD documents"
|
|
714
853
|
}
|
|
715
854
|
}
|
|
716
855
|
}
|
|
@@ -771,8 +910,8 @@ When you are ready to proceed with Feature Design, please start a new conversati
|
|
|
771
910
|
- [ ] PRD structure (single vs master-sub) determined appropriately
|
|
772
911
|
- [ ] **[Master-Sub]** Master PRD includes architecture overview, module list, dependency matrix, implementation phases
|
|
773
912
|
- [ ] **[Master-Sub]** Each Sub-PRD covers exactly one module with interface contracts
|
|
774
|
-
- [ ] **Feature Breakdown** extracted with appropriate granularity (each feature
|
|
775
|
-
- [ ] **Feature Breakdown** includes Feature IDs, Types (
|
|
913
|
+
- [ ] **Feature Breakdown** extracted with appropriate granularity (each feature completable in 1 sprint)
|
|
914
|
+
- [ ] **Feature Breakdown** includes Feature IDs, Types (User Interaction / Backend Process), and dependencies
|
|
776
915
|
- [ ] PRD completely filled according to template structure
|
|
777
916
|
- [ ] User story granularity aligns with "single iteration completable" principle
|
|
778
917
|
- [ ] Acceptance criteria are quantifiable and verifiable
|
package/.speccrew/skills/speccrew-pm-requirement-analysis/templates/BIZS-MODELING-TEMPLATE.md
CHANGED
|
@@ -77,9 +77,9 @@ graph TD
|
|
|
77
77
|
|
|
78
78
|
### 2.2 Function-Capability Mapping Table
|
|
79
79
|
|
|
80
|
-
| Function Module | Core Sub-function | Business Capability |
|
|
81
|
-
|
|
82
|
-
| __________ | __________ | __________ |
|
|
80
|
+
| Function Module | Core Sub-function | Business Capability |
|
|
81
|
+
|-----------------|-------------------|---------------------|
|
|
82
|
+
| __________ | __________ | __________ |
|
|
83
83
|
|
|
84
84
|
### 2.3 UML Visualization (As Needed)
|
|
85
85
|
|
|
@@ -223,58 +223,36 @@ graph TD
|
|
|
223
223
|
|-------------|-----------------|-----------|-------------|-------------|
|
|
224
224
|
| __________ | __________ | String/Number/Enum | Non-null | __________ |
|
|
225
225
|
|
|
226
|
-
### 5.3
|
|
226
|
+
### 5.3 Business Entity Relationship Diagram (Optional)
|
|
227
|
+
|
|
228
|
+
> Visualize core business entity relationships using natural language. Do NOT include programming constructs (visibility modifiers, method signatures, data types).
|
|
227
229
|
|
|
228
230
|
```mermaid
|
|
229
231
|
classDiagram
|
|
230
232
|
class Entity1 {
|
|
231
|
-
|
|
232
|
-
|
|
233
|
+
Core attribute 1
|
|
234
|
+
Core attribute 2
|
|
233
235
|
}
|
|
234
236
|
class Entity2 {
|
|
235
|
-
|
|
237
|
+
Core attribute 3
|
|
236
238
|
}
|
|
237
|
-
Entity1 "1" -- "*" Entity2 :
|
|
239
|
+
Entity1 "1" -- "*" Entity2 : relationship description
|
|
238
240
|
```
|
|
239
241
|
|
|
240
242
|
---
|
|
241
243
|
|
|
242
|
-
## 6.
|
|
243
|
-
|
|
244
|
-
<!-- AI-NOTE: IMPLEMENTATION-READY specifications with technical details. -->
|
|
245
|
-
|
|
246
|
-
### 6.1 Design Class Diagram
|
|
247
|
-
|
|
248
|
-
```mermaid
|
|
249
|
-
classDiagram
|
|
250
|
-
class ClassName {
|
|
251
|
-
-privateAttribute: Type
|
|
252
|
-
+publicMethod(): ReturnType
|
|
253
|
-
}
|
|
254
|
-
class InterfaceName {
|
|
255
|
-
+interfaceMethod(): ReturnType
|
|
256
|
-
}
|
|
257
|
-
ClassName ..|> InterfaceName : implements
|
|
258
|
-
```
|
|
259
|
-
|
|
260
|
-
### 6.2 Component Diagram
|
|
244
|
+
## 6. Data Format Requirements
|
|
261
245
|
|
|
262
|
-
|
|
263
|
-
graph TB
|
|
264
|
-
C1[Component 1] --> C2[Component 2]
|
|
265
|
-
C2 --> C3[Component 3]
|
|
266
|
-
```
|
|
246
|
+
<!-- AI-NOTE: Focus on user-visible data formats and business data quality. Technical implementation details are handled by Feature Designer. -->
|
|
267
247
|
|
|
268
|
-
### 6.
|
|
269
|
-
|
|
270
|
-
**Output Format**: __________
|
|
271
|
-
|
|
272
|
-
**Encoding**: UTF-8
|
|
273
|
-
|
|
274
|
-
**Validation Rules**:
|
|
275
|
-
- __________
|
|
248
|
+
### 6.1 Data Format Requirements
|
|
276
249
|
|
|
277
|
-
|
|
250
|
+
| Requirement | Description |
|
|
251
|
+
|-------------|-------------|
|
|
252
|
+
| Input Format | {User-visible input formats: forms, file upload (CSV/Excel), etc.} |
|
|
253
|
+
| Output Format | {User-visible output formats: PDF reports, Excel export, etc.} |
|
|
254
|
+
| Data Quality | {Business data quality rules: completeness, accuracy, timeliness} |
|
|
255
|
+
| Compliance | {Data compliance requirements: privacy, retention, audit trail} |
|
|
278
256
|
|
|
279
257
|
---
|
|
280
258
|
|
|
@@ -130,14 +130,14 @@ graph TB
|
|
|
130
130
|
|
|
131
131
|
### 3.4 Feature Breakdown
|
|
132
132
|
|
|
133
|
-
> List all business operation units in this module. Each feature represents a cohesive business operation (e.g.,
|
|
133
|
+
> List all business operation units in this module. Each feature represents a cohesive business operation (e.g., a user-facing feature with business logic, or a backend process without direct user interaction). This breakdown guides downstream Feature Design to generate per-feature specs.
|
|
134
134
|
|
|
135
135
|
> Priority follows MoSCoW method: P0 = Must have (MVP core), P1 = Should have, P2 = Could have, Deferred = Won't have this iteration.
|
|
136
136
|
|
|
137
|
-
| Feature ID | Feature Name | Type | Priority |
|
|
138
|
-
|
|
139
|
-
| F-{MODULE}-01 | {Feature name} |
|
|
140
|
-
| F-{MODULE}-02 | {Feature name} |
|
|
137
|
+
| Feature ID | Feature Name | Type | Priority | Scope | Description |
|
|
138
|
+
|------------|-------------|------|----------|-------|-------------|
|
|
139
|
+
| F-{MODULE}-01 | {Feature name} | User Interaction / Backend Process | P0 (Must) / P1 (Should) / P2 (Could) | {Brief scope description} | {Brief description} |
|
|
140
|
+
| F-{MODULE}-02 | {Feature name} | User Interaction / Backend Process | P0 (Must) / P1 (Should) / P2 (Could) | {Brief scope description} | {Brief description} |
|
|
141
141
|
|
|
142
142
|
#### Feature Dependencies
|
|
143
143
|
|
|
@@ -197,12 +197,12 @@ graph LR
|
|
|
197
197
|
|
|
198
198
|
**Operation Steps Detail:**
|
|
199
199
|
|
|
200
|
-
| Step | Action |
|
|
201
|
-
|
|
202
|
-
| 1 | [User action] | [
|
|
203
|
-
| 2 | [User action] | [
|
|
204
|
-
| 3 | [User action] | [
|
|
205
|
-
| 4 | [User action] | [
|
|
200
|
+
| Step | Action | Expected Outcome | Exception Handling |
|
|
201
|
+
|------|--------|------------------|-------------------|
|
|
202
|
+
| 1 | [User action] | [Expected result] | [Error handling] |
|
|
203
|
+
| 2 | [User action] | [Expected result] | [Error handling] |
|
|
204
|
+
| 3 | [User action] | [Expected result] | [Error handling] |
|
|
205
|
+
| 4 | [User action] | [Expected result] | [Error handling] |
|
|
206
206
|
|
|
207
207
|
## 4. Non-functional Requirements
|
|
208
208
|
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: speccrew-pm-requirement-simple
|
|
3
|
+
description: SpecCrew PM Simple Requirement Skill. Handles lightweight requirements (field additions, minor feature changes, single-module enhancements) with a streamlined PRD generation process. Produces a single concise PRD document without Master-Sub structure or worker dispatch.
|
|
4
|
+
tools: Read, Write, Glob, Grep, Terminal
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Skill Overview
|
|
8
|
+
|
|
9
|
+
Simple requirement analysis skill for lightweight changes. Produces a single concise PRD.
|
|
10
|
+
|
|
11
|
+
## Trigger Scenarios
|
|
12
|
+
|
|
13
|
+
- User requests a small change (add field, modify behavior, fix workflow)
|
|
14
|
+
- Requirement scope is within 1-2 modules
|
|
15
|
+
- Estimated 1-5 Features
|
|
16
|
+
|
|
17
|
+
## Methodology Foundation
|
|
18
|
+
|
|
19
|
+
This skill applies ISA-95 Stages 1-3 in lightweight mode:
|
|
20
|
+
|
|
21
|
+
| ISA-95 Stage | Lightweight Application |
|
|
22
|
+
|---|---|
|
|
23
|
+
| Stage 1: Domain Description | Quick scope confirmation (no formal glossary needed) |
|
|
24
|
+
| Stage 2: Functions in Domain | Identify affected functions (no full WBS needed) |
|
|
25
|
+
| Stage 3: Functions of Interest | All identified features are core (no MoSCoW filtering) |
|
|
26
|
+
|
|
27
|
+
> **No separate modeling documents.** Lightweight mode focuses on speed and clarity.
|
|
28
|
+
|
|
29
|
+
## PM Stage Content Boundary
|
|
30
|
+
|
|
31
|
+
> **DO NOT include in PRD:** API definitions, class diagrams, ER diagrams, code snippets, technical metrics.
|
|
32
|
+
> These belong to Feature Designer or System Designer.
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## Workflow
|
|
37
|
+
|
|
38
|
+
### Step 1: Quick Clarification
|
|
39
|
+
|
|
40
|
+
Confirm the requirement in 1-3 rounds:
|
|
41
|
+
|
|
42
|
+
1. **What to change**: Which page/function/module is affected?
|
|
43
|
+
2. **What the change is**: Add field? Modify logic? New sub-feature?
|
|
44
|
+
3. **Business reason**: Why is this change needed?
|
|
45
|
+
4. **Acceptance criteria**: How to verify the change is correct?
|
|
46
|
+
|
|
47
|
+
> **ISA-95 Stage 1 Thinking** — Confirm affected module boundary and impacted user roles. No formal glossary needed.
|
|
48
|
+
|
|
49
|
+
If requirement is already clear, skip and proceed.
|
|
50
|
+
|
|
51
|
+
**If requirement is complex** (3+ modules, 10+ features, new system), **STOP and redirect**:
|
|
52
|
+
```
|
|
53
|
+
⚠️ This requirement appears complex. Switching to full requirement analysis.
|
|
54
|
+
Invoking skill: speccrew-pm-requirement-analysis/SKILL.md
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
### Step 2: Initialize Tracking
|
|
58
|
+
|
|
59
|
+
1. **Determine iteration path**: Use existing or create `speccrew-workspace/iterations/{iteration-id}/`
|
|
60
|
+
|
|
61
|
+
2. **Create checkpoint file** at `01.product-requirement/.checkpoints.json`:
|
|
62
|
+
```json
|
|
63
|
+
{
|
|
64
|
+
"stage": "01_prd",
|
|
65
|
+
"complexity": "simple",
|
|
66
|
+
"checkpoints": {
|
|
67
|
+
"requirement_clarification": { "passed": true, "confirmed_at": "{REAL_TIMESTAMP}", "description": "Quick clarification completed" },
|
|
68
|
+
"prd_review": { "passed": false, "confirmed_at": null, "description": "User review and confirmation" }
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
```
|
|
72
|
+
Get real timestamp via: `node -e "console.log(new Date().toISOString())"`
|
|
73
|
+
|
|
74
|
+
3. **Update WORKFLOW-PROGRESS.json** (if exists):
|
|
75
|
+
```bash
|
|
76
|
+
node speccrew-workspace/scripts/update-progress.js update-workflow \
|
|
77
|
+
--file speccrew-workspace/iterations/{iteration}/WORKFLOW-PROGRESS.json \
|
|
78
|
+
--stage 01_prd --status in_progress
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
### Step 3: Read PRD Template
|
|
82
|
+
|
|
83
|
+
Read the PRD template from the complex requirement skill's template directory:
|
|
84
|
+
```
|
|
85
|
+
{skill-root}/../speccrew-pm-requirement-analysis/templates/PRD-TEMPLATE.md
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
Where `{skill-root}` is the directory of this skill (`.speccrew/skills/speccrew-pm-requirement-simple/`).
|
|
89
|
+
|
|
90
|
+
Alternatively, if the file is available at workspace level:
|
|
91
|
+
```
|
|
92
|
+
speccrew-workspace/docs/templates/PRD-TEMPLATE.md
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
> **Priority**: Use the skill-level template first. Only fall back to workspace-level if not found.
|
|
96
|
+
> **DO NOT search in bizs/, knowledges/, or other unrelated directories.**
|
|
97
|
+
|
|
98
|
+
### Step 4: Generate Single PRD
|
|
99
|
+
|
|
100
|
+
Create PRD at: `speccrew-workspace/iterations/{iteration}/01.product-requirement/{feature-name}-prd.md`
|
|
101
|
+
|
|
102
|
+
> **ISA-95 Stage 2 Thinking** — List only directly affected functions. No full WBS needed.
|
|
103
|
+
|
|
104
|
+
**Section filling guidance:**
|
|
105
|
+
|
|
106
|
+
| PRD Section | Simple Requirement Approach |
|
|
107
|
+
|---|---|
|
|
108
|
+
| 1. Background & Goals | 2-3 sentences. What's changing and why. |
|
|
109
|
+
| 1.2 Domain Boundary | In-scope: the specific change. Out-of-scope: everything else. |
|
|
110
|
+
| 1.3/1.4 Glossary | Only if new business terms introduced. Skip if unnecessary. |
|
|
111
|
+
| 2. User Stories | 1-3 user stories maximum. |
|
|
112
|
+
| 3. Functional Requirements | Brief description of the change. |
|
|
113
|
+
| 3.3 Feature List | Simple table, 1-5 rows. |
|
|
114
|
+
| 3.4 Feature Breakdown | 1-5 features. All P0. |
|
|
115
|
+
| 4. Non-Functional Requirements | Only if relevant. Skip if not applicable. |
|
|
116
|
+
| 5. Acceptance Criteria | 3-5 concrete, testable criteria. |
|
|
117
|
+
| 6. Boundary | Clear in/out scope. |
|
|
118
|
+
| 7. Assumptions | Only if there are assumptions to document. |
|
|
119
|
+
|
|
120
|
+
> **ISA-95 Stage 3 Thinking** — All identified features are Must-have (P0). No MoSCoW filtering needed.
|
|
121
|
+
|
|
122
|
+
### Step 5: Present for User Review
|
|
123
|
+
|
|
124
|
+
Display PRD summary:
|
|
125
|
+
```
|
|
126
|
+
📄 PRD Generated: {feature-name}-prd.md
|
|
127
|
+
|
|
128
|
+
Summary:
|
|
129
|
+
- Scope: {brief scope}
|
|
130
|
+
- Features: {count} features
|
|
131
|
+
- Modules affected: {module names}
|
|
132
|
+
|
|
133
|
+
Please review and confirm the scope, acceptance criteria, and completeness.
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
⚠️ **HARD STOP — WAIT FOR USER CONFIRMATION**
|
|
137
|
+
|
|
138
|
+
```
|
|
139
|
+
DO NOT proceed until user explicitly confirms.
|
|
140
|
+
IF user requests changes → update PRD, then re-present.
|
|
141
|
+
ONLY after user confirms → proceed to Step 6.
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
### Step 6: Finalize PRD Stage
|
|
145
|
+
|
|
146
|
+
After user confirms:
|
|
147
|
+
|
|
148
|
+
1. **Update checkpoint** — set `prd_review.passed = true` with real timestamp
|
|
149
|
+
|
|
150
|
+
2. **Update WORKFLOW-PROGRESS.json**:
|
|
151
|
+
```bash
|
|
152
|
+
node speccrew-workspace/scripts/update-progress.js update-workflow \
|
|
153
|
+
--file speccrew-workspace/iterations/{iteration}/WORKFLOW-PROGRESS.json \
|
|
154
|
+
--stage 01_prd --status confirmed \
|
|
155
|
+
--output "01.product-requirement/{feature-name}-prd.md"
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
3. **Output**: `✅ PRD confirmed. PRD stage is complete. Next: Start Feature Design in a new conversation.`
|
|
159
|
+
|
|
160
|
+
4. **END** — Do not proceed further.
|
|
161
|
+
|
|
162
|
+
---
|
|
163
|
+
|
|
164
|
+
## Output Checklist
|
|
165
|
+
|
|
166
|
+
- [ ] PRD file created at correct path
|
|
167
|
+
- [ ] All relevant sections filled (skip empty optional sections)
|
|
168
|
+
- [ ] No technical implementation details (no API, no code, no class diagrams)
|
|
169
|
+
- [ ] Feature Breakdown table present with at least 1 feature
|
|
170
|
+
- [ ] Acceptance criteria are concrete and testable
|
|
171
|
+
- [ ] .checkpoints.json created with requirement_clarification passed
|
|
172
|
+
- [ ] Business language only — no technical jargon
|
|
173
|
+
|
|
174
|
+
## Constraints
|
|
175
|
+
|
|
176
|
+
**Must do:**
|
|
177
|
+
- Keep PRD concise — 1-3 page PRDs
|
|
178
|
+
- Use business language throughout
|
|
179
|
+
- Verify with user before finalizing
|
|
180
|
+
- Use real timestamps from `node -e "console.log(new Date().toISOString())"`
|
|
181
|
+
|
|
182
|
+
**Must not do:**
|
|
183
|
+
- Do not generate Master-Sub PRD structure
|
|
184
|
+
- Do not dispatch worker agents
|
|
185
|
+
- Do not generate API definitions, class diagrams, or technical artifacts
|
|
186
|
+
- Do not skip user confirmation
|
|
187
|
+
- Do not auto-transition to Feature Design stage
|
|
@@ -66,7 +66,7 @@ Fill each section using `search_replace`:
|
|
|
66
66
|
- 3.2 Business Process Flow: Module-internal process flow
|
|
67
67
|
- 3.3 Feature List: Module features with P0/P1/P2 priority
|
|
68
68
|
- 3.4 Feature Breakdown: **REQUIRED** — Fill with `{module_features}` data:
|
|
69
|
-
- Feature ID, Feature Name, Type (
|
|
69
|
+
- Feature ID, Feature Name, Type (User Interaction / Backend Process), Scope, Description
|
|
70
70
|
- Feature Dependencies table
|
|
71
71
|
- 3.5 Feature Details: Detailed descriptions for each feature including:
|
|
72
72
|
- Requirement Description
|