flow-cc 0.5.5 → 0.5.6
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/VERSION +1 -1
- package/package.json +1 -1
- package/skills/flow-spec.md +20 -22
package/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
0.5.
|
|
1
|
+
0.5.6
|
package/package.json
CHANGED
package/skills/flow-spec.md
CHANGED
|
@@ -12,7 +12,7 @@ You are executing the `/flow:spec` skill. This is the KEYSTONE skill of the flow
|
|
|
12
12
|
|
|
13
13
|
**Plan mode warning:** Do NOT use this skill with plan mode enabled. Plan mode's read-only constraint prevents the PRD from being written during the interview. `/flow:spec` IS the planning phase — plan mode on top of it is redundant and breaks the workflow.
|
|
14
14
|
|
|
15
|
-
## Phase 1 — Context Gathering
|
|
15
|
+
## Phase 1 — Context Gathering
|
|
16
16
|
|
|
17
17
|
1. Read `.planning/STATE.md` and `.planning/ROADMAP.md` — understand current milestone and what's done
|
|
18
18
|
2. Read `CLAUDE.md` — understand project rules and tech stack
|
|
@@ -20,7 +20,24 @@ You are executing the `/flow:spec` skill. This is the KEYSTONE skill of the flow
|
|
|
20
20
|
- List `.planning/prds/` directory (if it exists) for existing PRD files
|
|
21
21
|
- Also check for legacy `PRD.md` at project root (backward compat)
|
|
22
22
|
- If a PRD exists for the target milestone, note it for resume/extend flow
|
|
23
|
-
4. **
|
|
23
|
+
4. **Milestone Targeting** — determine which milestone this PRD targets before scanning the codebase:
|
|
24
|
+
|
|
25
|
+
1. **If the user passed an argument** (e.g., `/flow:spec v3: Payments`) — match against ROADMAP.md milestones. If no match, print available milestones and ask which one.
|
|
26
|
+
|
|
27
|
+
2. **If no argument** — read ROADMAP.md and list all incomplete milestones. Use AskUserQuestion to let the user pick which milestone to spec. Pre-select the next unspecced milestone as the first option. Always show the picker, even if only one milestone is listed — the user may want to confirm or choose "Other" to define a new milestone first.
|
|
28
|
+
|
|
29
|
+
3. **Derive the PRD slug:** Take the milestone's version prefix and name (e.g., "v3: Dashboard Analytics"), lowercase it, replace spaces and special characters with hyphens, collapse consecutive hyphens. Result: `v3-dashboard-analytics`. The PRD path is `.planning/prds/{slug}.md`.
|
|
30
|
+
|
|
31
|
+
4. **Check for existing PRD at that path:**
|
|
32
|
+
- **If PRD exists** → Use AskUserQuestion: "A PRD already exists for this milestone at `.planning/prds/{slug}.md`. What would you like to do?"
|
|
33
|
+
- "Resume editing" — load the existing PRD and continue the interview from where it left off
|
|
34
|
+
- "Start fresh" — delete the existing PRD and start a new interview
|
|
35
|
+
- "Pick a different milestone" — show available milestones
|
|
36
|
+
- **If no PRD exists** → Proceed with a fresh interview
|
|
37
|
+
|
|
38
|
+
5. **Future milestone detection:** If the target milestone is NOT the current milestone in STATE.md, note this — the PRD will be written but STATE.md's "Active PRD" field will NOT be updated (it stays pointing at the current milestone's PRD). Print: "Speccing future milestone [name]. STATE.md will not be updated — this PRD will be available when you reach this milestone."
|
|
39
|
+
|
|
40
|
+
5. **Codebase scan** (brownfield projects) — spawn **3 parallel Explore subagents** via the Task tool to scan the codebase without consuming main context:
|
|
24
41
|
|
|
25
42
|
| Agent | Focus | Looks For |
|
|
26
43
|
|-------|-------|-----------|
|
|
@@ -35,26 +52,7 @@ You are executing the `/flow:spec` skill. This is the KEYSTONE skill of the flow
|
|
|
35
52
|
- **15-line summary max** — structured as: key files found, patterns observed, reusable code/components, notes
|
|
36
53
|
- **Explicit instruction:** Do NOT return raw file contents — return only structured summaries
|
|
37
54
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
## Milestone Targeting
|
|
41
|
-
|
|
42
|
-
Before starting the interview, determine which milestone this PRD targets:
|
|
43
|
-
|
|
44
|
-
1. **If the user passed an argument** (e.g., `/flow:spec v3: Payments`) — match against ROADMAP.md milestones. If no match, print available milestones and ask which one.
|
|
45
|
-
|
|
46
|
-
2. **If no argument** — read ROADMAP.md and list all incomplete milestones. Use AskUserQuestion to let the user pick which milestone to spec. Pre-select the next unspecced milestone as the first option. Always show the picker, even if only one milestone is listed — the user may want to confirm or choose "Other" to define a new milestone first.
|
|
47
|
-
|
|
48
|
-
3. **Derive the PRD slug:** Take the milestone's version prefix and name (e.g., "v3: Dashboard Analytics"), lowercase it, replace spaces and special characters with hyphens, collapse consecutive hyphens. Result: `v3-dashboard-analytics`. The PRD path is `.planning/prds/{slug}.md`.
|
|
49
|
-
|
|
50
|
-
4. **Check for existing PRD at that path:**
|
|
51
|
-
- **If PRD exists** → Use AskUserQuestion: "A PRD already exists for this milestone at `.planning/prds/{slug}.md`. What would you like to do?"
|
|
52
|
-
- "Resume editing" — load the existing PRD and continue the interview from where it left off
|
|
53
|
-
- "Start fresh" — delete the existing PRD and start a new interview
|
|
54
|
-
- "Pick a different milestone" — show available milestones
|
|
55
|
-
- **If no PRD exists** → Proceed with a fresh interview
|
|
56
|
-
|
|
57
|
-
5. **Future milestone detection:** If the target milestone is NOT the current milestone in STATE.md, note this — the PRD will be written but STATE.md's "Active PRD" field will NOT be updated (it stays pointing at the current milestone's PRD). Print: "Speccing future milestone [name]. STATE.md will not be updated — this PRD will be available when you reach this milestone."
|
|
55
|
+
6. **Assemble summaries:** Collect the 3 agent summaries into a brief context block (~45 lines total). Print to user: "Here's what I found in the codebase: [key components, patterns, data layer]. Starting the spec interview."
|
|
58
56
|
|
|
59
57
|
## Phase 2 — Adaptive Interview
|
|
60
58
|
|