flow-cc 0.5.5 → 0.5.7

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 CHANGED
@@ -1 +1 @@
1
- 0.5.5
1
+ 0.5.7
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "flow-cc",
3
- "version": "0.5.5",
3
+ "version": "0.5.7",
4
4
  "description": "Structured workflow system for Claude Code — spec interviews, agent-team execution, session handoffs, compounding knowledge",
5
5
  "author": "Troy Hoffman",
6
6
  "license": "MIT",
@@ -10,6 +10,8 @@ You are executing the `/flow:done` skill. This finalizes the current session by
10
10
 
11
11
  **This is the most important skill for sustainability.** Without proper session-end docs, the next session starts blind.
12
12
 
13
+ **Skill boundary:** You are inside the `/flow:*` workflow. NEVER invoke, suggest, or reference skills from other workflow systems (`/lisa:*`, `/gsd:*`, `/superpowers:*`, etc.). Only suggest `/flow:*` commands as next steps. Do NOT use the Skill tool to call any non-flow skill.
14
+
13
15
  ## Steps
14
16
 
15
17
  ### 1. Gather Context
package/skills/flow-go.md CHANGED
@@ -12,26 +12,27 @@ You are executing the `/flow:go` skill. This reads the PRD, identifies the next
12
12
 
13
13
  **Plan mode warning:** Do NOT use this skill with plan mode enabled. `/flow:go` is execution — plan mode's read-only constraint prevents it from creating files, running agents, and committing work. The PRD is your plan; run `/flow:go` in normal mode.
14
14
 
15
+ **Skill boundary:** You are inside the `/flow:*` workflow. NEVER invoke, suggest, or reference skills from other workflow systems (`/lisa:*`, `/gsd:*`, `/superpowers:*`, etc.). Only suggest `/flow:*` commands as next steps. Do NOT use the Skill tool to call any non-flow skill. If the user needs a different workflow, they will invoke it themselves.
16
+
15
17
  ## Step 1 — Orient
16
18
 
17
19
  Read these files (in parallel):
18
20
  - `.planning/STATE.md` — current position
19
21
  - `.planning/ROADMAP.md` — phase progress
20
- - The active PRD (see PRD Resolution below)
21
22
  - `tasks/lessons.md` — active lessons (max 10 one-liners)
22
23
  - `CLAUDE.md` — execution rules and verification commands
23
24
 
24
- ### PRD Resolution
25
+ ### PRD Selection
26
+
27
+ The user must always select which PRD to execute. No silent auto-resolution.
28
+
29
+ 1. **If the user passed an argument** (e.g., `/flow:go v3-payments`) — match it against files in `.planning/prds/` by slug or by the `**Milestone:**` header field. If an exact match is found, use it directly. If no match, show available PRDs and ask.
25
30
 
26
- Resolve the PRD file to use, in this order:
31
+ 2. **If no argument** — list all PRD files in `.planning/prds/`. For each PRD, read its `**Status:**` and `**Milestone:**` header fields. Use AskUserQuestion to let the user pick which PRD to execute. Pre-select the first PRD with status "Ready for execution" as the first option. Always show the picker, even if only one PRD exists — the user may want to confirm or run `/flow:spec` instead. Also check for legacy `PRD.md` at root (backward compat) and include it in the list if found.
27
32
 
28
- 1. **User argument:** If the user passed an argument to `/flow:go` (e.g., `/flow:go v3-payments`), match it against files in `.planning/prds/` (by slug or milestone name from the `**Milestone:**` header field).
29
- 2. **STATE.md Active PRD:** Read the "Active PRD" field from STATE.md's Current Position section. If it points to a valid file, use it.
30
- 3. **Slug derivation:** Derive a slug from STATE.md's current milestone name — version-prefix + lowercase name, spaces/special chars → hyphens, collapse consecutive hyphens (e.g., "v2: Dashboard Analytics" → `v2-dashboard-analytics`). Check `.planning/prds/{slug}.md`.
31
- 4. **Legacy fallback:** If `.planning/prds/` is empty or missing but `PRD.md` exists at the project root, use it. Print: "Using legacy PRD.md at project root. Future specs will use `.planning/prds/`."
32
- 5. **Not found:** "No PRD found for [current milestone name]. Available PRDs: [list files in `.planning/prds/`]. Run `/flow:spec` first."
33
+ 3. **No PRDs found** "No PRDs found in `.planning/prds/`. Run `/flow:spec` first." Stop here.
33
34
 
34
- **Milestone match check:** After resolving the PRD, read its `**Milestone:**` header field. If it doesn't match STATE.md's current milestone, warn: "PRD milestone ([PRD milestone]) doesn't match current milestone ([STATE milestone]). Continuing, but verify you're executing the right spec."
35
+ **After selection:** Read the chosen PRD. If its `**Milestone:**` doesn't match STATE.md's current milestone, warn: "PRD milestone ([PRD milestone]) doesn't match current milestone ([STATE milestone]). Continuing, but verify you're executing the right spec."
35
36
 
36
37
  **Identify the next phase:** Find the first phase in ROADMAP.md with status "Pending" or the first unstarted phase in the PRD.
37
38
 
@@ -39,7 +40,7 @@ Resolve the PRD file to use, in this order:
39
40
 
40
41
  Run these checks before executing. If any fail, stop and tell the user what to do:
41
42
 
42
- 1. **PRD resolved?** If PRD Resolution (above) reached step 5 (not found): stop with the "No PRD found" message and available PRD list.
43
+ 1. **PRD selected?** If PRD Selection (above) reached step 3 (no PRDs found): stop with the "No PRDs found" message.
43
44
  2. **Phase detailed enough?** The phase section in the PRD must have:
44
45
  - Wave structure with agent assignments
45
46
  - Explicit file lists per agent
@@ -12,7 +12,9 @@ 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 (automatic, no user input needed)
15
+ **Skill boundary:** You are inside the `/flow:*` workflow. NEVER invoke, suggest, or reference skills from other workflow systems (`/lisa:*`, `/gsd:*`, `/superpowers:*`, etc.). Only suggest `/flow:*` commands as next steps. Do NOT use the Skill tool to call any non-flow skill. If the user needs a different workflow, they will invoke it themselves.
16
+
17
+ ## Phase 1 — Context Gathering
16
18
 
17
19
  1. Read `.planning/STATE.md` and `.planning/ROADMAP.md` — understand current milestone and what's done
18
20
  2. Read `CLAUDE.md` — understand project rules and tech stack
@@ -20,7 +22,24 @@ You are executing the `/flow:spec` skill. This is the KEYSTONE skill of the flow
20
22
  - List `.planning/prds/` directory (if it exists) for existing PRD files
21
23
  - Also check for legacy `PRD.md` at project root (backward compat)
22
24
  - If a PRD exists for the target milestone, note it for resume/extend flow
23
- 4. **Codebase scan** (brownfield projects) spawn **3 parallel Explore subagents** via the Task tool to scan the codebase without consuming main context:
25
+ 4. **Milestone Targeting** — determine which milestone this PRD targets before scanning the codebase:
26
+
27
+ 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.
28
+
29
+ 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.
30
+
31
+ 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`.
32
+
33
+ 4. **Check for existing PRD at that path:**
34
+ - **If PRD exists** → Use AskUserQuestion: "A PRD already exists for this milestone at `.planning/prds/{slug}.md`. What would you like to do?"
35
+ - "Resume editing" — load the existing PRD and continue the interview from where it left off
36
+ - "Start fresh" — delete the existing PRD and start a new interview
37
+ - "Pick a different milestone" — show available milestones
38
+ - **If no PRD exists** → Proceed with a fresh interview
39
+
40
+ 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."
41
+
42
+ 5. **Codebase scan** (brownfield projects) — spawn **3 parallel Explore subagents** via the Task tool to scan the codebase without consuming main context:
24
43
 
25
44
  | Agent | Focus | Looks For |
26
45
  |-------|-------|-----------|
@@ -35,26 +54,7 @@ You are executing the `/flow:spec` skill. This is the KEYSTONE skill of the flow
35
54
  - **15-line summary max** — structured as: key files found, patterns observed, reusable code/components, notes
36
55
  - **Explicit instruction:** Do NOT return raw file contents — return only structured summaries
37
56
 
38
- 5. **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."
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."
57
+ 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
58
 
59
59
  ## Phase 2 — Adaptive Interview
60
60
 
@@ -8,6 +8,8 @@ user_invocable: true
8
8
 
9
9
  You are executing the `/flow:status` skill. This is a READ-ONLY operation. Do NOT modify any files.
10
10
 
11
+ **Skill boundary:** You are inside the `/flow:*` workflow. NEVER invoke, suggest, or reference skills from other workflow systems (`/lisa:*`, `/gsd:*`, `/superpowers:*`, etc.). Only suggest `/flow:*` commands as next steps. Do NOT use the Skill tool to call any non-flow skill.
12
+
11
13
  ## Step 1 — Read Context Files
12
14
 
13
15
  Read ALL of the following in parallel:
@@ -8,6 +8,8 @@ user_invocable: true
8
8
 
9
9
  You are executing the `/flow:task` skill. This is for small, focused work — bug fixes, cleanup, one-off features — that doesn't warrant a full PRD. Understand the task, execute it, verify it works, commit it, and document it.
10
10
 
11
+ **Skill boundary:** You are inside the `/flow:*` workflow. NEVER invoke, suggest, or reference skills from other workflow systems (`/lisa:*`, `/gsd:*`, `/superpowers:*`, etc.). Only suggest `/flow:*` commands as next steps. Do NOT use the Skill tool to call any non-flow skill.
12
+
11
13
  RULES:
12
14
  - NO AGENT TEAMS. NO PRD. Single execution context.
13
15
  - Exception: ONE Task agent for an isolated subtask to prevent context bloat.