flow-cc 0.8.0 → 0.8.1

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.
@@ -6,145 +6,105 @@ user_invocable: true
6
6
 
7
7
  # /flow:task — Lightweight Task Execution
8
8
 
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.
9
+ You are executing the `/flow:task` skill. For small, focused work — bug fixes, cleanup, one-off features — that doesn't need a PRD. Understand, execute, verify, commit, document.
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.
11
+ **Skill boundary:** Only use `/flow:*` commands. Never invoke or suggest `/lisa:*`, `/gsd:*`, `/superpowers:*` or any non-flow skill.
12
12
 
13
13
  RULES:
14
14
  - NO AGENT TEAMS. NO PRD. Single execution context.
15
15
  - Exception: ONE Task agent for an isolated subtask to prevent context bloat.
16
- - This skill MUST work without `/flow:setup`. Missing planning files are fine.
16
+ - MUST work without `/flow:setup`. Missing planning files are fine.
17
17
 
18
18
  ## Step 1 — Context Load
19
19
 
20
- Read ALL of the following in parallel. If any file is missing, skip it gracefully:
21
- - `.planning/STATE.md`
22
- - `.planning/ROADMAP.md`
23
- - `CLAUDE.md`
24
- - `tasks/lessons.md`
25
- - Active PRD from `.planning/prds/` (if STATE.md "Active PRD" field exists, use that path; else check for legacy `PRD.md` at root)
26
- - `.claude/memory/session.md` (if exists) — personal session state
20
+ Read ALL in parallel (skip missing files gracefully):
21
+ - `.planning/STATE.md`, `.planning/ROADMAP.md`, `CLAUDE.md`, `tasks/lessons.md`
22
+ - Active PRD from `.planning/prds/` via STATE.md "Active PRD" field (or legacy root `PRD.md`)
23
+ - `.claude/memory/session.md` (if exists)
27
24
 
28
- Run `git config user.name` to get developer identity.
25
+ Run `git config user.name` for developer identity.
29
26
 
30
- If no `.planning/` directory exists, print:
31
- > No `.planning/` directory found — running standalone. Task will still be executed, verified, and committed.
32
-
33
- Then continue.
27
+ If no `.planning/` directory: print "No `.planning/` found — running standalone." Then continue.
34
28
 
35
29
  ## Step 2 — Task Understanding
36
30
 
37
- Parse the user's argument (text provided after `/flow:task`).
31
+ Parse the user's argument (text after `/flow:task`).
38
32
 
39
- IF no argument was provided:
40
- - Use AskUserQuestion: "What needs to be done?"
41
- - Provide 2-4 example options based on common task types (fix, cleanup, add, update)
33
+ If no argument: AskUserQuestion "What needs to be done?" with 2-4 example options (fix, cleanup, add, update).
42
34
 
43
- Run a quick codebase scan (Grep/Glob) for files relevant to the task description.
35
+ Run a quick codebase scan (Grep/Glob) for files relevant to the task.
44
36
 
45
37
  ## Step 3 — Quick Clarification
46
38
 
47
- Ask 0-3 clarifying questions maximum.
39
+ 0-3 clarifying questions maximum. NEVER MORE THAN 3.
48
40
 
49
- RULES:
50
- - NEVER MORE THAN 3 QUESTIONS.
51
- - USE AskUserQuestion with 2-4 CONCRETE OPTIONS derived from codebase exploration.
52
- - IF THE TASK IS UNAMBIGUOUS, ASK ZERO QUESTIONS. Proceed directly.
41
+ Use AskUserQuestion with 2-4 concrete options derived from codebase exploration. If the task is unambiguous, ask zero questions and proceed.
53
42
 
54
- Decision gate: Can you identify WHAT to change, WHERE to change it, and the EXPECTED OUTCOME? If yes, skip to Step 4.
43
+ Decision gate: Can you identify WHAT, WHERE, and EXPECTED OUTCOME? If yes, skip to Step 4.
55
44
 
56
45
  ## Step 4 — Scope Guard
57
46
 
58
- Estimate:
59
- - Number of files affected
60
- - Number of architectural layers touched (e.g., UI, API, DB, config)
47
+ Estimate files affected and architectural layers touched.
61
48
 
62
- IF 5+ files OR 3+ architectural layers:
63
- - Use AskUserQuestion to recommend `/flow:spec` instead:
64
- - Option 1: "Switch to /flow:spec (Recommended)" — "This touches [N] files across [N] layers. A PRD will keep it organized."
65
- - Option 2: "Continue with /flow:task" — "I understand the scope. Execute it here."
49
+ IF 5+ files OR 3+ layers:
50
+ - AskUserQuestion: recommend `/flow:spec` instead:
51
+ - "Switch to /flow:spec (Recommended)" — touches [N] files across [N] layers, PRD keeps it organized
52
+ - "Continue with /flow:task" — understood, execute here
66
53
 
67
- The user can always override. Do not block.
54
+ User can always override. Do not block.
68
55
 
69
56
  ## Step 5 — Execute
70
57
 
71
- Do the work directly in the current context.
72
-
73
- RULES:
74
- - NO AGENT TEAMS. NO PRD. Direct execution.
75
- - Exception: ONE Task agent is allowed for a single isolated subtask if it prevents context bloat.
76
- - Follow existing code patterns and conventions found in CLAUDE.md and the codebase.
58
+ Do the work directly. NO AGENT TEAMS. NO PRD. Exception: ONE Task agent for isolated subtask if it prevents context bloat. Follow existing code patterns from CLAUDE.md and codebase.
77
59
 
78
60
  ## Step 6 — Verify (MANDATORY)
79
61
 
80
- RULE: NEVER SILENTLY SKIP VERIFICATION.
62
+ NEVER SILENTLY SKIP.
81
63
 
82
- 1. Check CLAUDE.md for project-specific verification commands (build, test, lint).
83
- 2. If no CLAUDE.md commands: check `package.json` scripts, `Makefile`, `pyproject.toml`, or similar for standard commands.
84
- 3. If verification commands are found: run them.
85
- 4. If NO verification commands exist anywhere: print a warning and continue.
86
- > No verification commands found. Skipping automated verification.
87
- 5. If verification fails: fix the issue and re-verify. Up to 2 fix cycles.
88
- 6. If still failing after 2 cycles: report the failure clearly with the error output. Do not silently move on.
64
+ 1. Check CLAUDE.md for verification commands (build, test, lint)
65
+ 2. If none: check `package.json`, `Makefile`, `pyproject.toml` for standard commands
66
+ 3. If found: run them
67
+ 4. If nothing found anywhere: warn and continue
68
+ 5. If verification fails: fix and re-verify. Up to 2 fix cycles.
69
+ 6. Still failing after 2 cycles: report failure clearly with error output. Do not silently move on.
89
70
 
90
71
  ## Step 7 — Commit
91
72
 
92
- - Stage ONLY the files you changed (never `git add .` or `git add -A`)
93
- - Commit message format: `fix:` / `feat:` / `refactor:` / `chore:` followed by a concise description
73
+ - Stage ONLY changed files (never `git add .` or `git add -A`)
74
+ - Message format: `fix:` / `feat:` / `refactor:` / `chore:` + concise description
94
75
  - Do NOT push
95
76
 
96
77
  ## Step 8 — Update Docs
97
78
 
98
- IF `.planning/STATE.md` exists:
99
- - Append to the "What Was Built" section (or create it if missing):
100
- ```
101
- - /flow:task — [description] ([N] files, commit [short SHA])
102
- ```
103
-
104
- RULES:
105
- - DO NOT update ROADMAP.md — tasks are not project milestones.
106
- - DO NOT update any PRD files in `.planning/prds/` — tasks are not part of the spec.
107
- - DO NOT create `.planning/` if it doesn't exist.
108
-
109
- **Session state:** Write `.claude/memory/session.md` (create `.claude/memory/` directory if needed):
79
+ IF `.planning/STATE.md` exists, append to "What Was Built":
110
80
  ```
111
- # Session State
112
- **Date:** [today]
113
- **Developer:** [git config user.name]
114
- **Branch:** [current branch]
115
- **Working On:** /flow:task — [task description]
116
- **Status:** Task complete: [brief description]
117
- **Next:** [suggest next action]
118
- **Blockers:** None
81
+ - /flow:task — [description] ([N] files, commit [short SHA])
119
82
  ```
120
83
 
121
- Quick lessons prompt via AskUserQuestion:
122
- - "Any lessons from this task worth capturing?"
123
- - Option 1: "No, nothing new" — Skip lessons.
124
- - Option 2: "Yes, let me describe it" — Capture to `tasks/lessons.md` as a one-liner: `- **[topic]** The rule`
84
+ RULES: Do NOT update ROADMAP.md, PRDs, or create `.planning/` if missing.
125
85
 
126
- If `tasks/lessons.md` doesn't exist, skip the lessons prompt.
127
- If lessons.md already has 10 items, promote the most battle-tested to `CLAUDE.md ## Learned Rules` before adding the new one.
86
+ **Session state:** Write `.claude/memory/session.md` (create dir if needed):
87
+ `# Session State` with Date, Developer, Branch, Working On (`/flow:task [desc]`), Status, Next, Blockers fields.
128
88
 
129
- ## Step 9Summary
89
+ Lessons prompt via AskUserQuestion: "Any lessons worth capturing?" "No" / "Yes, let me describe it" → capture to `tasks/lessons.md` as one-liner. Skip if lessons.md doesn't exist. If at 10, promote most battle-tested to `CLAUDE.md ## Learned Rules` first.
130
90
 
131
- Print a compact completion block:
91
+ ## Step 9 Summary
132
92
 
133
93
  ```
134
94
  ✓ /flow:task complete
135
- [description of what was done]
95
+ [description]
136
96
  Files: [N] changed | Commit: [short SHA]
137
97
  Verified: [pass/fail/skipped]
138
98
 
139
99
  Next:
140
- → /flow:task [description] for another quick fix
100
+ → /flow:task [desc] for another quick fix
141
101
  → /flow:go to continue project milestones
142
102
  → /flow:done to wrap up the session
143
103
  ```
144
104
 
145
- **Linear comment (if applicable):** Check if the current branch name contains a Linear issue identifier pattern (e.g., `msig-45` in `feat/msig-45-rate-modeling`). If found:
146
- - Try `mcp__linear__list_issues` with a query matching the identifier
147
- - If Linear MCP is available AND an issue is found: post a progress comment via `mcp__linear__create_comment` with the task summary from the completion block above
148
- - If Linear MCP is not available or no matching issue is found: skip silently
105
+ **Linear comment:** If branch name contains a Linear issue ID (e.g., `msig-45` in `feat/msig-45-rate-modeling`):
106
+ - Try `mcp__linear__list_issues` matching the identifier
107
+ - If Linear MCP available AND issue found: post progress comment via `mcp__linear__create_comment` with task summary
108
+ - Otherwise: skip silently
149
109
 
150
- If no Linear identifier is found in the branch name: skip silently.
110
+ No Linear ID in branch name: skip silently.
@@ -6,9 +6,9 @@ user_invocable: true
6
6
 
7
7
  # /flow:triage — Brain Dump Triage
8
8
 
9
- You are executing the `/flow:triage` skill. This takes a brain dump (text blob, bullet list, or stream of consciousness) and sorts it into actionable categories: Linear issues, ROADMAP entries, lessons, or discard.
9
+ You are executing the `/flow:triage` skill. Takes a brain dump (text blob, bullets, or stream of consciousness) and sorts it into actionable categories.
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.
11
+ **Skill boundary:** Only use `/flow:*` commands. Never invoke or suggest `/lisa:*`, `/gsd:*`, `/superpowers:*` or any non-flow skill.
12
12
 
13
13
  ## Step 1 — Input
14
14
 
@@ -20,40 +20,38 @@ IF no argument: use AskUserQuestion: "Paste your brain dump — bullet list, str
20
20
  ## Step 2 — Context Load
21
21
 
22
22
  Read in parallel (skip gracefully if missing):
23
- - `.planning/ROADMAP.md` — to understand existing projects and avoid duplicates
24
- - `tasks/lessons.md` — to check for existing lessons and enforce cap
23
+ - `.planning/ROADMAP.md` — existing projects, avoid duplicates
24
+ - `tasks/lessons.md` — existing lessons, enforce cap
25
25
  - `CLAUDE.md` — project context
26
26
 
27
27
  Run `git config user.name` to identify the developer.
28
28
 
29
29
  ## Step 3 — Categorize
30
30
 
31
- For each distinct item in the brain dump, classify into one of:
32
- - **Linear Issue** — actionable task, bug, or feature → will become a Linear issue
31
+ For each distinct item, classify into one of:
32
+ - **Linear Issue** — actionable task, bug, or feature → becomes a Linear issue
33
33
  - **ROADMAP Entry** — future project or milestone idea → append to ROADMAP.md Future section
34
34
  - **Lesson** — learning, pattern, or rule → append to tasks/lessons.md
35
- - **Project** — project-sized work item → add to ROADMAP.md as a planned project
36
- - **Discard** — not actionable, already done, duplicate, or too vague to action
35
+ - **Project** — project-sized work → add to ROADMAP.md as planned project
36
+ - **Discard** — not actionable, duplicate, or too vague
37
37
 
38
38
  ## Step 4 — Present Plan
39
39
 
40
- Show the full categorization in a table:
40
+ Show categorization in a table:
41
41
 
42
42
  ```
43
43
  | # | Item | Category | Details |
44
44
  |---|------|----------|---------|
45
45
  | 1 | "Rate modeling table" | Linear Issue | Project: v18 Student Leasing, Priority: Normal |
46
46
  | 2 | "Never use git add ." | Lesson | "Always stage specific files" |
47
- | 3 | "Maybe add dark mode" | ROADMAP | Future/Unscheduled |
48
- | 4 | "Had a thought about..." | Discard | Too vague to action |
49
- | 5 | "Student leasing rate modeling" | Project | Add to ROADMAP as planned project |
47
+ | 3 | "Student leasing rate modeling" | Project | Add to ROADMAP as planned project |
50
48
  ```
51
49
 
52
50
  Use AskUserQuestion: "Here's how I'd categorize your brain dump. Review and approve, or tell me what to change."
53
51
  - "Looks good — execute it"
54
52
  - "I want to make changes" (user provides corrections)
55
53
 
56
- If the user wants changes, update the categorization and present again.
54
+ If the user wants changes, update and present again.
57
55
 
58
56
  ## Step 5 — Execute
59
57
 
@@ -61,37 +59,34 @@ For approved items:
61
59
 
62
60
  **Linear Issues:**
63
61
  - Check if Linear MCP tools are available (try `mcp__linear__list_teams`)
64
- - If available: create issues with `mcp__linear__create_issue` (team: "Monument Square", default project: "Future / Backlog" unless a better match exists based on the item content and existing Linear projects)
65
- - If not available: print the issues as formatted text for manual creation:
62
+ - If available: create issues with `mcp__linear__create_issue` (team: "Monument Square", default project: "Future / Backlog" unless a better match exists)
63
+ - If not available: print formatted text for manual creation:
66
64
  ```
67
65
  Linear issues to create manually:
68
66
  - [Title] | Team: Monument Square | Project: [suggested] | Priority: [suggested]
69
67
  ```
70
68
 
71
69
  **ROADMAP Entries:**
72
- - Append to `.planning/ROADMAP.md` under a "Future (Unscheduled)" section
73
- - If that section doesn't exist, create it at the bottom of the file
70
+ - Append to `.planning/ROADMAP.md` under "Future (Unscheduled)" section (create if missing)
74
71
  - Format: `| [name] | Unscheduled | — |`
75
72
 
76
73
  **Projects:**
77
- - Add to `.planning/ROADMAP.md` main project table with status "Planned"
78
- - Add a section with the project goal: `## [Project Name]\n\n**Goal:** [goal]\n\n**Milestones:** Run /flow:spec when this project is active.`
79
- - If no active project exists (all existing projects are "Complete" or none exist):
80
- - Set the first new project's status to "Pending — needs `/flow:spec`"
81
- - Update STATE.md to point to the new project as current
82
- - Optionally create a Linear project (if Linear MCP tools available via `mcp__linear__list_teams`)
74
+ - Add to `.planning/ROADMAP.md` project table with status "Planned"
75
+ - Add section: `## [Project Name]\n\n**Goal:** [goal]\n\n**Milestones:** Run /flow:spec when this project is active.`
76
+ - If no active project exists (all "Complete" or none):
77
+ - Set first new project status to "Pending — needs `/flow:spec`"
78
+ - Update STATE.md to point to new project as current
79
+ - Optionally create a Linear project (if MCP available)
83
80
 
84
81
  **Lessons:**
85
82
  - Append to `tasks/lessons.md` as one-liners: `- **[topic]** The rule`
86
83
  - Enforce max 10 cap (promote most battle-tested to `CLAUDE.md ## Learned Rules` if full)
87
- - If `tasks/lessons.md` doesn't exist, create it
84
+ - Create `tasks/lessons.md` if it doesn't exist
88
85
 
89
86
  **Discard:** No action needed.
90
87
 
91
88
  ## Step 6 — Summary
92
89
 
93
- Print a compact completion block:
94
-
95
90
  ```
96
91
  Triage complete:
97
92
  - [N] Linear issues created (in [project names])
@@ -101,10 +96,9 @@ Triage complete:
101
96
  - [N] items discarded
102
97
  ```
103
98
 
104
- Then suggest next actions:
99
+ Next actions:
105
100
  ```
106
- Next:
107
- → /flow:triage for another brain dump
108
- → /flow:spec to plan a project from triaged items
109
- → /flow:status to see current state
101
+ → /flow:triage for another brain dump
102
+ → /flow:spec to plan a project from triaged items
103
+ → /flow:status to see current state
110
104
  ```