flow-cc 0.3.0 → 0.4.0

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/CHANGELOG.md CHANGED
@@ -5,6 +5,22 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [0.4.0] - 2026-02-11
9
+
10
+ ### Added
11
+ - Multi-milestone roadmap input in `/flow:setup` — capture your full roadmap upfront (paste a list or build one at a time)
12
+ - Auto-transition between milestones in `/flow:done` — when a milestone completes and the next is planned, it transitions automatically
13
+ - Two-path milestone input (paste/describe or guided) in both `/flow:setup` and `/flow:milestone`
14
+
15
+ ### Changed
16
+ - `/flow:milestone` purpose shifted from "archive + start next" to "add new milestones to the roadmap" — archive logic moved to `/flow:done`
17
+ - `/flow:done` handoff prompt now has three cases: next phase, next milestone (auto-transitioned), or all milestones complete
18
+ - `/flow:status` routing updated — recommends `/flow:done` (not `/flow:milestone`) when next milestone exists, since transition is automatic
19
+ - `/flow:setup` Question 4 changed from "first milestone" to full roadmap input
20
+ - ROADMAP.md template supports multiple milestones with `{{ADDITIONAL_MILESTONES_TABLE}}` and `{{ADDITIONAL_MILESTONES_SECTIONS}}` placeholders
21
+ - Updated lifecycle diagrams in README and `/flow:intro` to show pre-planned milestone flow
22
+ - Updated command descriptions across intro, README, and install.js
23
+
8
24
  ## [0.3.0] - 2026-02-11
9
25
 
10
26
  ### Added
package/README.md CHANGED
@@ -30,39 +30,49 @@ Flow fixes this by giving Claude Code a **memory system and execution framework*
30
30
  - **Session handoffs** preserve context across fresh sessions — no more "where was I?"
31
31
  - **Lessons compound** — mistakes get captured, refined, and promoted into permanent rules
32
32
 
33
+ ## How It Works
34
+
35
+ **One-time setup**, then a repeating build cycle:
36
+
37
+ ```
38
+ /flow:setup → /flow:spec → /flow:go → /flow:done
39
+ (once, (once per (once per (end of session,
40
+ captures milestone) phase) auto-transitions
41
+ full roadmap) between milestones)
42
+ ```
43
+
44
+ 1. **`/flow:setup`** — Scaffolds your project with planning docs and execution rules
45
+ 2. **`/flow:spec`** — Interviews you, then writes an executable PRD with phases, acceptance criteria, and agent-team structure
46
+ 3. **`/flow:go`** — Spawns parallel agent teams to build the next phase, verifies, commits
47
+ 4. **`/flow:done`** — Updates docs, captures lessons, generates a handoff prompt so the next session starts instantly
48
+
49
+ Run `/flow:go` repeatedly until all phases are done, then `/flow:done` to wrap up. Next session, paste the handoff prompt and keep going.
50
+
33
51
  ## Commands
34
52
 
35
- | Command | What it does |
36
- |---|---|
37
- | `/flow:intro` | Walkthrough of the system — **start here** |
38
- | `/flow:setup` | Set up a new project with `.planning/` scaffolding, CLAUDE.md, templates |
39
- | `/flow:milestone` | Archive completed milestone and start a new one |
40
- | `/flow:spec` | Spec interview that produces an executable PRD with phased execution plan |
41
- | `/flow:go` | Execute the next phase from the PRD using wave-based agent teams |
42
- | `/flow:task` | Bug fixes, cleanup, small features — no PRD needed |
43
- | `/flow:done` | Session-end documentation, lessons refinement, handoff prompt |
44
- | `/flow:status` | Quick orientation — current milestone, phase progress, next actions |
45
- | `/flow:update` | Update Flow to the latest version |
53
+ **The build cycle:**
46
54
 
47
- ## How It Works
55
+ | Command | When to use |
56
+ |---|---|
57
+ | `/flow:setup` | Once per project — creates `.planning/`, CLAUDE.md, templates |
58
+ | `/flow:spec` | Once per milestone — interview that produces the PRD |
59
+ | `/flow:go` | Once per phase — executes the next phase with agent teams |
60
+ | `/flow:done` | End of session — updates docs, generates handoff prompt |
48
61
 
49
- ```
50
- /flow:setup → /flow:spec → /flow:go (repeat per phase) → /flow:done
51
-
52
- handoff prompt for next session
53
-
54
- /flow:milestone → next cycle
62
+ **Standalone:**
55
63
 
56
- /flow:task ← standalone path for bug fixes and small features
57
- ```
64
+ | Command | When to use |
65
+ |---|---|
66
+ | `/flow:task` | Anytime — bug fixes, cleanup, small features (no PRD needed) |
67
+ | `/flow:milestone` | Anytime — add new milestones to the roadmap |
58
68
 
59
- **The lifecycle in practice:**
69
+ **Utility:**
60
70
 
61
- 1. **`/flow:setup`** Creates `.planning/` directory, CLAUDE.md, STATE.md, ROADMAP.md, lessons.md
62
- 2. **`/flow:spec`** — Interviews you about the milestone. Produces a PRD with wave-based phases, acceptance criteria, and agent-team structure
63
- 3. **`/flow:go`** Reads the PRD, spawns parallel agent teams per wave, builds, verifies, commits
64
- 4. **`/flow:done`** Updates all planning docs, captures lessons, generates a one-line handoff prompt so the next session starts instantly
65
- 5. **Repeat** Next session picks up from the handoff. Context lives in the repo, not the conversation.
71
+ | Command | When to use |
72
+ |---|---|
73
+ | `/flow:intro` | First time walkthrough of the system |
74
+ | `/flow:status` | Anytime where am I? What's next? |
75
+ | `/flow:update` | Anytime update Flow to the latest version |
66
76
 
67
77
  ## What Gets Installed
68
78
 
package/VERSION CHANGED
@@ -1 +1 @@
1
- 0.3.0
1
+ 0.4.0
package/bin/install.js CHANGED
@@ -322,8 +322,8 @@ Flow v${version} installed successfully!
322
322
 
323
323
  Commands available:
324
324
  /flow:intro \u2014 Learn the Flow workflow
325
- /flow:setup \u2014 Set up a new project
326
- /flow:milestone \u2014 Start a new milestone
325
+ /flow:setup \u2014 Set up a new project with full roadmap
326
+ /flow:milestone \u2014 Add new milestones to the roadmap
327
327
  /flow:spec \u2014 Spec interview \u2192 executable PRD
328
328
  /flow:go \u2014 Execute next phase with agent teams
329
329
  /flow:done \u2014 Session-end documentation
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "flow-cc",
3
- "version": "0.3.0",
3
+ "version": "0.4.0",
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",
@@ -70,6 +70,10 @@ Structure:
70
70
  - Move milestone phase details to `.planning/archive/milestones-vX.md`
71
71
  - Keep only the summary row in the ROADMAP milestone table
72
72
  - Move `PRD.md` to `.planning/archive/PRD-vX.md`
73
+ - Mark the milestone as "Complete" in the ROADMAP table
74
+ - **Milestone transition:** Check ROADMAP.md for the NEXT milestone with status "Planned":
75
+ - **If a next milestone exists:** Update its status from "Planned" to "Pending — needs `/flow:spec`". Update STATE.md current milestone to point to the new milestone.
76
+ - **If no next milestone exists:** No transition needed — all planned milestones are done.
73
77
 
74
78
  ### 4. Update lessons.md
75
79
 
@@ -98,9 +102,13 @@ Determine the next action and generate a copyable handoff prompt:
98
102
  Phase [N]: [Name] — [short description]. Read STATE.md, ROADMAP.md, and PRD.md (US-X).
99
103
  [One sentence of context]. [One sentence of what NOT to do if relevant].
100
104
  ```
101
- - If milestone is complete:
105
+ - If milestone is complete AND a next milestone was transitioned to (from Step 3):
102
106
  ```
103
- Milestone [name] complete. Run /flow:milestone to start the next milestone.
107
+ Milestone [name] complete. Next: v[X] [next milestone name]. Run /flow:spec to plan it.
108
+ ```
109
+ - If milestone is complete AND no next milestone exists:
110
+ ```
111
+ All milestones complete! Run /flow:milestone to plan what's next, or enjoy the win.
104
112
  ```
105
113
 
106
114
  Print the handoff prompt in a fenced code block so the user can copy it.
@@ -20,25 +20,26 @@ Flow is 6 commands that turn your specs into shipped code through agent teams. E
20
20
 
21
21
  ```
22
22
  /flow:setup → /flow:spec → /flow:go (repeat) → /flow:done
23
-
24
- handoff prompt for next session
25
-
26
- /flow:milestone → next cycle
23
+ (captures ↑ |
24
+ full roadmap) | auto-transitions to |
25
+ +---- next planned milestone ------+
27
26
 
28
- /flow:taskstandalone path for bug fixes, cleanup, small features (no PRD needed)
27
+ /flow:milestoneadd milestones to roadmap anytime
28
+ /flow:task ← standalone path for bug fixes, cleanup, small features (no PRD needed)
29
29
  ```
30
30
 
31
31
  ### Command by Command
32
32
 
33
33
  **`/flow:setup`** — Run once per project
34
- - Asks you 4-5 questions (what is it, tech stack, verify commands, first milestone)
34
+ - Asks you 4-5 questions (what is it, tech stack, verify commands, roadmap/milestones)
35
+ - Captures your full roadmap upfront (paste a list or build one milestone at a time)
35
36
  - Creates the scaffolding: `CLAUDE.md`, `.planning/STATE.md`, `.planning/ROADMAP.md`, `tasks/lessons.md`
36
37
  - If project already set up, tells you to use `/flow:milestone` or `/flow:spec` instead
37
38
 
38
- **`/flow:milestone`** — Run when starting a new milestone
39
- - Archives the completed milestone + PRD
40
- - Sets up fresh planning docs for the next milestone
41
- - Guards against archiving milestones with incomplete phases
39
+ **`/flow:milestone`** — Add milestones to the roadmap
40
+ - Adds new milestones to the project roadmap (paste a list or one at a time)
41
+ - Shows current roadmap status before adding
42
+ - If no milestone is active, activates the first new one
42
43
 
43
44
  **`/flow:task`** — Run anytime for small work
44
45
  - Bug fixes, cleanup, one-off features — anything that doesn't need a full PRD
@@ -62,6 +63,7 @@ Flow is 6 commands that turn your specs into shipped code through agent teams. E
62
63
  **`/flow:done`** — Run at end of every session
63
64
  - Replaces STATE.md with current status
64
65
  - Updates ROADMAP.md with phase completions
66
+ - Auto-transitions to the next planned milestone when the current one completes
65
67
  - Asks about lessons, refines existing ones
66
68
  - Commits doc updates
67
69
  - Generates a handoff prompt you copy-paste to start the next session
@@ -1,12 +1,12 @@
1
1
  ---
2
2
  name: flow:milestone
3
- description: Archive completed milestone and start a new one
3
+ description: Add new milestones to the roadmap
4
4
  user_invocable: true
5
5
  ---
6
6
 
7
- # /flow:milestone — Start New Milestone
7
+ # /flow:milestone — Add New Milestones
8
8
 
9
- You are executing the `/flow:milestone` skill. This archives the current milestone and sets up a new one.
9
+ You are executing the `/flow:milestone` skill. This adds new milestones to the project roadmap.
10
10
 
11
11
  ## Guard: Project Must Exist
12
12
 
@@ -17,51 +17,62 @@ Check if `.planning/STATE.md` exists:
17
17
  ## Step 1: Read Context
18
18
 
19
19
  Read `.planning/STATE.md` and `.planning/ROADMAP.md` to understand:
20
- - What milestone just completed (or is completing)
21
- - What version number to use next
22
- - Current state of the project
20
+ - Current milestone status (what's active, what's complete, what's planned)
21
+ - What version numbers are already used
23
22
 
24
- ## Step 2: Check for Pending Phases
23
+ ## Step 2: Show Current Status
25
24
 
26
- Parse ROADMAP.md for the current milestone's phases:
27
- - If any phases have status "Pending" or "In Progress" (not complete):
28
- - Print: "Warning: The current milestone has incomplete phases:"
29
- - List the pending/in-progress phases
30
- - Use AskUserQuestion: "Archive this milestone anyway?" with options:
31
- - "Yes — archive and move on"
32
- - "No — finish current phases first"
33
- - If the user says No → Print: "Run `/flow:go` to continue the current milestone." and **STOP.**
25
+ Print a summary of the roadmap:
26
+ - List all milestones with their status (Complete, Pending, Planned, In Progress)
27
+ - Highlight the currently active milestone (if any)
34
28
 
35
- ## Step 3: Ask Milestone Question
29
+ ## Step 3: Check for Active Work
36
30
 
37
- Use AskUserQuestion:
38
- - "What's the goal of this new milestone?" (free text)
39
- - "What should it be called?" (free text, or suggest a name based on context)
31
+ If there is a milestone with status "Pending" or with incomplete phases (In Progress):
32
+ - Print: "Note: [milestone name] is currently active. New milestones will be added after existing planned milestones."
40
33
 
41
- ## Step 4: Archive Completed Milestone
34
+ ## Step 4: Gather New Milestones
42
35
 
43
- 1. Read current ROADMAP.md phase details for the completed milestone
44
- 2. Write them to `.planning/archive/milestones-vX.md` (where X is the completed version)
45
- 3. If `PRD.md` exists, move it to `.planning/archive/PRD-vX.md` (read it, write to archive, delete original)
46
- 4. In ROADMAP.md, replace the completed milestone's phase details with just the summary row (mark as "Complete")
36
+ Use AskUserQuestion:
37
+ - "How would you like to add milestones?" with options:
38
+ - "I'll paste or describe them"
39
+ - "One at a time (guided)"
40
+
41
+ **If paste/describe:**
42
+ - Accept free text (bullet list, paragraph, pasted doc — any format)
43
+ - Parse into milestones, each with a name + brief goal
44
+ - Print back: "Here's what I got:" followed by the parsed list
45
+ - Use AskUserQuestion to confirm: "Does this look right?" with options:
46
+ - "Yes — looks good"
47
+ - "Let me adjust" (user re-enters)
48
+
49
+ **If guided:**
50
+ - Ask: "What's this milestone called?" (name) and "What's the goal?" (one-sentence description)
51
+ - Then: "Add another milestone?" with options:
52
+ - "Yes — add another"
53
+ - "That's all"
54
+ - Repeat until user says that's all
47
55
 
48
56
  ## Step 5: Update Planning Docs
49
57
 
50
58
  **ROADMAP.md:**
51
- - Add new milestone row to the table
52
- - Add new milestone section with goal and "Run `/flow:spec` to define phases"
59
+ - Determine the next available version number (after existing milestones)
60
+ - Add new milestone rows to the table with status "Planned"
61
+ - Add new milestone sections with goals and "Run `/flow:spec` when this milestone is active."
53
62
 
54
- **STATE.md:**
55
- - Replace with fresh state for the new milestone
56
- - Reset phase progress table
57
- - Note the milestone transition in "What Was Built"
63
+ **If no active milestone** (all existing milestones are "Complete" or there are none):
64
+ - Set the first new milestone's status to "Pending — needs `/flow:spec`"
65
+ - Update STATE.md to point to the new milestone as current
58
66
 
59
67
  ## Step 6: Print Completion Message
60
68
 
61
69
  ```
62
- Milestone [name] (v[X]) initialized.
63
- - Archived: previous milestone details + PRD
64
- - Updated: ROADMAP.md, STATE.md
70
+ Added [N] milestone(s) to the roadmap:
71
+ [list of added milestones with version numbers]
72
+
73
+ [If a milestone was activated:]
74
+ v[X] [name] is now active. Run /flow:spec to plan it.
65
75
 
66
- Run `/flow:spec` to build the PRD for this milestone.
76
+ [If milestones were just queued:]
77
+ These will activate in order as you complete current milestones.
67
78
  ```
@@ -37,8 +37,24 @@ Use AskUserQuestion to gather project info. Ask these questions (you may combine
37
37
  - "cargo build && cargo test"
38
38
  - (Other — user types custom)
39
39
 
40
- **Question 4 — First milestone:**
41
- - "What's the first milestone?" (name + one-sentence goal)
40
+ **Question 4 — Roadmap:**
41
+ - "Do you already have a roadmap or list of milestones?" with options:
42
+ - "Yes — I'll paste or describe them"
43
+ - "No — let's figure it out together"
44
+
45
+ **If user selects "Yes":**
46
+ - Accept free text (bullet list, paragraph, pasted doc — any format)
47
+ - Parse into milestones, each with a name + brief goal
48
+ - Print back: "Here's what I got:" followed by the parsed list (e.g., "v1: Auth — user registration and login", "v2: Dashboard — analytics and settings")
49
+ - Use AskUserQuestion to confirm: "Does this look right?" with options:
50
+ - "Yes — looks good"
51
+ - "Let me adjust" (user re-enters)
52
+
53
+ **If user selects "No" (guided):**
54
+ - Ask: "What's the first milestone?" (name + one-sentence goal)
55
+ - Then: "Any more milestones you can see right now? List them, or skip to add them later with `/flow:milestone`." with options:
56
+ - "I have more to add" (user enters additional milestones)
57
+ - "That's it for now"
42
58
 
43
59
  **Question 5 — Brownfield scan:**
44
60
  - "Is this an existing codebase I should scan?" with options:
@@ -93,6 +109,8 @@ Create these 5 files (create directories as needed):
93
109
  | Version | Milestone | Status | Phases |
94
110
  |---------|-----------|--------|--------|
95
111
  | v1 | [first milestone] | Pending — needs `/flow:spec` | TBD |
112
+ [For each additional milestone:]
113
+ | v[N] | [milestone name] | Planned | TBD |
96
114
 
97
115
  ---
98
116
 
@@ -101,8 +119,18 @@ Create these 5 files (create directories as needed):
101
119
  **Goal:** [milestone goal from user]
102
120
 
103
121
  **Phases:** Run `/flow:spec` to define implementation phases.
122
+
123
+ [For each additional milestone:]
124
+
125
+ ## v[N]: [milestone name]
126
+
127
+ **Goal:** [milestone goal]
128
+
129
+ **Phases:** Run `/flow:spec` when this milestone is active.
104
130
  ```
105
131
 
132
+ Note: The first milestone gets status "Pending — needs `/flow:spec`". All subsequent milestones get status "Planned". Each milestone gets its own section with its goal.
133
+
106
134
  **`CLAUDE.md`:**
107
135
  ```
108
136
  # [Project Name] — Claude Code Instructions
@@ -45,9 +45,13 @@ Use this explicit decision tree:
45
45
  → Primary: `/flow:spec` to create the execution plan
46
46
  → Alt: `/flow:task` for quick fixes or cleanup (no PRD needed)
47
47
 
48
- **IF all phases are complete:**
48
+ **IF all phases are complete AND a next milestone with status "Planned" exists in ROADMAP.md:**
49
+ → Primary: `/flow:done` to finalize this milestone (will auto-transition to next milestone)
50
+ → Alt: `/flow:task` for quick fixes or cleanup (no PRD needed)
51
+
52
+ **IF all phases are complete AND no next milestone exists:**
49
53
  → Primary: `/flow:done` to finalize this milestone
50
- → Then: `/flow:milestone` to start the next milestone
54
+ → Then: `/flow:milestone` to add the next milestone
51
55
  → Alt: `/flow:task` for quick fixes or cleanup (no PRD needed)
52
56
 
53
57
  **IF no phases exist in ROADMAP (milestone defined but not planned):**
@@ -5,6 +5,7 @@
5
5
  | Version | Milestone | Status | Phases |
6
6
  |---------|-----------|--------|--------|
7
7
  | v1 | {{FIRST_MILESTONE}} | Pending — needs `/flow:spec` | TBD |
8
+ {{ADDITIONAL_MILESTONES_TABLE}}
8
9
 
9
10
  ---
10
11
 
@@ -13,3 +14,5 @@
13
14
  **Goal:** {{MILESTONE_GOAL}}
14
15
 
15
16
  **Phases:** Run `/flow:spec` to define implementation phases.
17
+
18
+ {{ADDITIONAL_MILESTONES_SECTIONS}}