agileflow 2.77.0 → 2.79.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.
Files changed (128) hide show
  1. package/README.md +6 -6
  2. package/package.json +6 -1
  3. package/scripts/agileflow-configure.js +174 -2
  4. package/scripts/agileflow-statusline.sh +171 -78
  5. package/scripts/agileflow-welcome.js +88 -64
  6. package/scripts/auto-self-improve.js +23 -45
  7. package/scripts/check-update.js +35 -42
  8. package/scripts/damage-control/bash-tool-damage-control.js +257 -0
  9. package/scripts/damage-control/edit-tool-damage-control.js +279 -0
  10. package/scripts/damage-control/patterns.yaml +227 -0
  11. package/scripts/damage-control/write-tool-damage-control.js +274 -0
  12. package/scripts/damage-control-bash.js +232 -0
  13. package/scripts/damage-control-edit.js +243 -0
  14. package/scripts/damage-control-write.js +243 -0
  15. package/scripts/obtain-context.js +22 -3
  16. package/scripts/ralph-loop.js +191 -63
  17. package/scripts/screenshot-verifier.js +213 -0
  18. package/scripts/session-manager.js +12 -33
  19. package/src/core/agents/accessibility.md +124 -53
  20. package/src/core/agents/adr-writer.md +192 -52
  21. package/src/core/agents/analytics.md +139 -60
  22. package/src/core/agents/api.md +173 -63
  23. package/src/core/agents/ci.md +139 -57
  24. package/src/core/agents/compliance.md +159 -68
  25. package/src/core/agents/configuration/damage-control.md +356 -0
  26. package/src/core/agents/configuration-damage-control.md +248 -0
  27. package/src/core/agents/database.md +162 -61
  28. package/src/core/agents/datamigration.md +179 -66
  29. package/src/core/agents/design.md +179 -57
  30. package/src/core/agents/devops.md +160 -3
  31. package/src/core/agents/documentation.md +204 -60
  32. package/src/core/agents/epic-planner.md +147 -55
  33. package/src/core/agents/integrations.md +197 -69
  34. package/src/core/agents/mentor.md +158 -57
  35. package/src/core/agents/mobile.md +159 -67
  36. package/src/core/agents/monitoring.md +154 -65
  37. package/src/core/agents/multi-expert.md +115 -43
  38. package/src/core/agents/orchestrator.md +77 -24
  39. package/src/core/agents/performance.md +130 -75
  40. package/src/core/agents/product.md +151 -55
  41. package/src/core/agents/qa.md +162 -74
  42. package/src/core/agents/readme-updater.md +178 -76
  43. package/src/core/agents/refactor.md +148 -95
  44. package/src/core/agents/research.md +143 -72
  45. package/src/core/agents/security.md +154 -65
  46. package/src/core/agents/testing.md +176 -97
  47. package/src/core/agents/ui.md +170 -79
  48. package/src/core/commands/adr/list.md +171 -0
  49. package/src/core/commands/adr/update.md +235 -0
  50. package/src/core/commands/adr/view.md +252 -0
  51. package/src/core/commands/adr.md +207 -50
  52. package/src/core/commands/agent.md +16 -0
  53. package/src/core/commands/assign.md +148 -44
  54. package/src/core/commands/auto.md +18 -1
  55. package/src/core/commands/babysit.md +391 -38
  56. package/src/core/commands/baseline.md +14 -0
  57. package/src/core/commands/blockers.md +170 -51
  58. package/src/core/commands/board.md +144 -66
  59. package/src/core/commands/changelog.md +15 -0
  60. package/src/core/commands/ci.md +179 -69
  61. package/src/core/commands/compress.md +18 -0
  62. package/src/core/commands/configure.md +16 -0
  63. package/src/core/commands/context/export.md +193 -4
  64. package/src/core/commands/context/full.md +191 -18
  65. package/src/core/commands/context/note.md +248 -4
  66. package/src/core/commands/debt.md +17 -0
  67. package/src/core/commands/deploy.md +208 -65
  68. package/src/core/commands/deps.md +15 -0
  69. package/src/core/commands/diagnose.md +16 -0
  70. package/src/core/commands/docs.md +196 -64
  71. package/src/core/commands/epic/list.md +170 -0
  72. package/src/core/commands/epic/view.md +242 -0
  73. package/src/core/commands/epic.md +192 -69
  74. package/src/core/commands/feedback.md +191 -71
  75. package/src/core/commands/handoff.md +162 -48
  76. package/src/core/commands/help.md +9 -0
  77. package/src/core/commands/ideate.md +446 -0
  78. package/src/core/commands/impact.md +16 -0
  79. package/src/core/commands/metrics.md +141 -37
  80. package/src/core/commands/multi-expert.md +77 -0
  81. package/src/core/commands/packages.md +16 -0
  82. package/src/core/commands/pr.md +161 -67
  83. package/src/core/commands/readme-sync.md +16 -0
  84. package/src/core/commands/research/analyze.md +568 -0
  85. package/src/core/commands/research/ask.md +345 -20
  86. package/src/core/commands/research/import.md +562 -19
  87. package/src/core/commands/research/list.md +173 -5
  88. package/src/core/commands/research/view.md +181 -8
  89. package/src/core/commands/retro.md +135 -48
  90. package/src/core/commands/review.md +219 -47
  91. package/src/core/commands/session/end.md +209 -0
  92. package/src/core/commands/session/history.md +210 -0
  93. package/src/core/commands/session/init.md +116 -0
  94. package/src/core/commands/session/new.md +296 -0
  95. package/src/core/commands/session/resume.md +166 -0
  96. package/src/core/commands/session/status.md +166 -0
  97. package/src/core/commands/setup/visual-e2e.md +462 -0
  98. package/src/core/commands/skill/create.md +115 -17
  99. package/src/core/commands/skill/delete.md +117 -0
  100. package/src/core/commands/skill/edit.md +104 -0
  101. package/src/core/commands/skill/list.md +128 -0
  102. package/src/core/commands/skill/test.md +135 -0
  103. package/src/core/commands/skill/upgrade.md +542 -0
  104. package/src/core/commands/sprint.md +17 -1
  105. package/src/core/commands/status.md +133 -21
  106. package/src/core/commands/story/list.md +176 -0
  107. package/src/core/commands/story/view.md +265 -0
  108. package/src/core/commands/story-validate.md +101 -1
  109. package/src/core/commands/story.md +204 -51
  110. package/src/core/commands/template.md +16 -1
  111. package/src/core/commands/tests.md +226 -64
  112. package/src/core/commands/update.md +17 -1
  113. package/src/core/commands/validate-expertise.md +16 -0
  114. package/src/core/commands/velocity.md +140 -36
  115. package/src/core/commands/verify.md +14 -0
  116. package/src/core/commands/whats-new.md +30 -0
  117. package/src/core/skills/_learnings/README.md +91 -0
  118. package/src/core/skills/_learnings/_template.yaml +106 -0
  119. package/src/core/skills/_learnings/code-review.yaml +118 -0
  120. package/src/core/skills/_learnings/commit.yaml +69 -0
  121. package/src/core/skills/_learnings/story-writer.yaml +71 -0
  122. package/src/core/templates/damage-control-patterns.yaml +234 -0
  123. package/src/core/templates/skill-template.md +53 -11
  124. package/tools/cli/commands/start.js +180 -0
  125. package/tools/cli/installers/ide/claude-code.js +127 -0
  126. package/tools/cli/tui/Dashboard.js +66 -0
  127. package/tools/cli/tui/StoryList.js +69 -0
  128. package/tools/cli/tui/index.js +16 -0
@@ -1,6 +1,21 @@
1
1
  ---
2
2
  description: Create a new epic with stories
3
3
  argument-hint: EPIC=<EP-ID> TITLE=<text> OWNER=<id> GOAL=<text> [STORIES=<list>]
4
+ compact_context:
5
+ priority: high
6
+ preserve_rules:
7
+ - "ACTIVE COMMAND: /agileflow:epic-new - Epic creator for feature planning"
8
+ - "MUST create TodoWrite task list immediately (6 steps: parse, create epic, create stories, merge status, append bus, confirm)"
9
+ - "MUST show file previews before confirming writes"
10
+ - "MUST use Edit tool or jq for JSON operations (never echo/cat > status.json)"
11
+ - "MUST validate JSON after every modification"
12
+ - "MUST use AskUserQuestion for user confirmation (YES/NO/CANCEL format)"
13
+ - "STORIES format: 'US-ID|title|owner,US-ID2|title2|owner2' (comma-separated triplets)"
14
+ state_fields:
15
+ - epic_id
16
+ - owner
17
+ - story_count
18
+ - creation_timestamp
4
19
  ---
5
20
 
6
21
  # epic-new
@@ -20,94 +35,154 @@ This gathers git status, stories/epics, session state, and registers for PreComp
20
35
  Create a new epic with optional child stories.
21
36
 
22
37
  <!-- COMPACT_SUMMARY_START -->
23
- ## Compact Summary
24
-
25
- **Purpose**: Create structured epics with associated user stories for feature planning.
26
-
27
- **Role**: Epic Creator - Analyzes requirements, structures epics, creates stories, manages dependencies.
28
-
29
- **Critical Behavioral Rules**:
30
- - ALWAYS use TodoWrite tool IMMEDIATELY to track epic creation steps
31
- - ALWAYS show previews before writing any files
32
- - ALWAYS wait for YES/NO confirmation before executing writes
33
- - NEVER create files without explicit user confirmation
34
- - ALWAYS merge entries into status.json (never overwrite)
35
- - ALWAYS append to bus/log.jsonl (never overwrite)
36
- - Parse all required inputs: EPIC, TITLE, OWNER, GOAL
37
- - Parse optional STORIES input (comma-separated triplets)
38
-
39
- **Key Workflow Steps**:
40
- 1. Create todo list with TodoWrite (6 steps: parse, create epic, create stories, merge status, append bus, confirm)
41
- 2. Parse inputs: EPIC=<ID>, TITLE=<text>, OWNER=<id>, GOAL=<text>, STORIES=<list>
42
- 3. Create docs/05-epics/<EPIC>.md from epic-template.md
43
- - Status: active
44
- - Created/updated: current timestamp
45
- 4. For each story in STORIES (format: "US_ID|title|owner"):
46
- - Create docs/06-stories/<EPIC>/<US_ID>-<slug>.md from story-template.md
47
- - Status: ready, estimate: 0.5d, deps: []
48
- 5. Merge into docs/09-agents/status.json:
49
- - Add/update epic entry (id, owner, status, summary, last_update)
50
- - Add/update story entries (id, owner, status, branch, summary, last_update)
51
- 6. Append assign lines to docs/09-agents/bus/log.jsonl:
52
- - Format: {"timestamp":"ISO","type":"assign","epic":"EP-ID","owner":"name"}
53
- - For each story: {"timestamp":"ISO","type":"assign","story":"US-ID","owner":"name"}
54
-
55
- **Input Format**:
56
- - EPIC=<ID> (e.g., EP-0001)
57
- - TITLE=<Epic title>
58
- - OWNER=<name or agent-id>
59
- - GOAL=<outcome/metric>
60
- - STORIES=<optional> (format: "US-0001|Story Title|owner,US-0002|Another Story|owner2")
61
-
62
- **Output Format Requirements**:
63
- - Epic file: docs/05-epics/<EPIC>.md (use epic-template.md structure)
64
- - Story files: docs/06-stories/<EPIC>/<US_ID>-<slug>.md (use story-template.md structure)
65
- - Status.json: Merge entries (preserve existing data)
66
- - Bus log: Append JSONL entries (one per epic/story assignment)
67
-
68
- **Templates Used**:
69
- - packages/cli/src/core/templates/epic-template.md
70
- - packages/cli/src/core/templates/story-template.md
71
-
72
- **Confirmation Flow**:
73
- 1. Show epic preview (file path, title, owner, goal, status)
74
- 2. Show story previews (file paths, titles, owners, estimates)
75
- 3. Show status.json merge preview
76
- 4. Show bus/log.jsonl append preview
77
- 5. Ask: "Proceed with epic creation? (YES/NO)"
78
- 6. On YES: Execute all writes
79
- 7. On NO: Abort without changes
80
-
81
- **Tool Usage Examples**:
82
-
83
- TodoWrite:
38
+
39
+ ## ⚠️ COMPACT SUMMARY - /agileflow:epic-new IS ACTIVE
40
+
41
+ **CRITICAL**: You are the Epic Creator. This command creates new epics with associated stories. Follow every rule.
42
+
43
+ ---
44
+
45
+ ### 🚨 RULE #1: ALWAYS Create TodoWrite Task List FIRST
46
+
47
+ Create a 6-step task list IMMEDIATELY:
84
48
  ```xml
85
49
  <invoke name="TodoWrite">
86
50
  <parameter name="content">1. Parse inputs (EPIC, TITLE, OWNER, GOAL, STORIES)
87
51
  2. Create epic file from template
88
- 3. For each story: create docs/06-stories/
89
- 4. Merge into status.json
90
- 5. Append assign events to bus log
91
- 6. Show preview and wait for confirmation</parameter>
52
+ 3. For each story: create docs/06-stories/<EPIC>/<US_ID>-<slug>.md
53
+ 4. Merge entries into status.json
54
+ 5. Append assign events to bus/log.jsonl
55
+ 6. Show preview and confirm with user</parameter>
92
56
  <parameter name="status">in-progress</parameter>
93
57
  </invoke>
94
58
  ```
59
+ Mark each step complete as you finish it.
60
+
61
+ ### 🚨 RULE #2: NEVER Create Files Without Preview + Confirmation
62
+
63
+ **Workflow** (ALWAYS follow this order):
64
+ 1. Parse and validate all inputs
65
+ 2. Create epic file from template
66
+ 3. Create story files from template
67
+ 4. Prepare status.json merge
68
+ 5. Prepare bus/log.jsonl append
69
+ 6. Show unified DIFF preview (all files + status.json + bus log)
70
+ 7. Ask user YES/NO/CANCEL confirmation
71
+ 8. Only on YES: Execute writes and update status
72
+
73
+ ### 🚨 RULE #3: NEVER Use echo/cat > For JSON Operations
74
+
75
+ **ALWAYS use one of**:
76
+ - Edit tool for small changes
77
+ - jq for complex merges
78
+ - JSON validation after every write:
79
+ ```bash
80
+ if ! jq empty docs/09-agents/status.json 2>/dev/null; then
81
+ echo "❌ ERROR: status.json is now invalid JSON!"
82
+ exit 1
83
+ fi
84
+ ```
85
+
86
+ ### 🚨 RULE #4: ALWAYS Validate JSON After Modifications
87
+
88
+ After ANY change to status.json:
89
+ ```bash
90
+ jq empty docs/09-agents/status.json 2>/dev/null || {
91
+ echo "❌ VALIDATION FAILED: status.json is corrupt"
92
+ exit 1
93
+ }
94
+ ```
95
+
96
+ ---
97
+
98
+ ## Key Files & Formats
99
+
100
+ **Input Parameters**:
101
+ ```
102
+ EPIC=<EP-ID> # e.g., EP-0001 (required)
103
+ TITLE=<text> # Epic title (required)
104
+ OWNER=<id> # Agent or person name (required)
105
+ GOAL=<outcome> # Epic goal/metric (required)
106
+ STORIES=<list> # Comma-separated triplets (optional)
107
+ Format: "US-0001|Story One|owner,US-0002|Story Two|owner2"
108
+ ```
109
+
110
+ **Output Files Created**:
111
+ | File | Purpose | Template |
112
+ |------|---------|----------|
113
+ | docs/05-epics/EP-<ID>.md | Epic definition | epic-template.md |
114
+ | docs/06-stories/EP-<ID>/US-<ID>-<slug>.md | Child stories | story-template.md |
115
+ | docs/09-agents/status.json | Merged entries | jq merge |
116
+ | docs/09-agents/bus/log.jsonl | Appended events | JSONL lines |
117
+
118
+ **Merge into status.json**:
119
+ - Epic entry: {id, owner, status: "active", summary, created, updated}
120
+ - Story entries: {id, owner, status: "ready", epic, estimate: "0.5d", deps: [], created, updated}
121
+
122
+ **Append to bus/log.jsonl**:
123
+ ```json
124
+ {"ts":"ISO","type":"assign","from":"SYSTEM","to":"<owner>","epic":"<EPIC>","text":"Epic created"}
125
+ {"ts":"ISO","type":"assign","from":"SYSTEM","to":"<owner>","story":"<US-ID>","text":"Story created"}
126
+ ```
127
+
128
+ ---
129
+
130
+ ## Anti-Patterns & Correct Usage
131
+
132
+ ❌ **DON'T**:
133
+ - Ask user to "type" story list (use structured format)
134
+ - Create files without showing preview
135
+ - Overwrite status.json (always merge)
136
+ - Skip JSON validation after edits
137
+ - Create stories without linking to epic
138
+
139
+ ✅ **DO**:
140
+ - Show file previews for all 3-5 files being created
141
+ - Use proper STORIES format with pipes and commas
142
+ - Merge entries into existing JSON (preserve data)
143
+ - Validate JSON after every modification
144
+ - Link all stories to epic in status.json
95
145
 
96
- AskUserQuestion:
146
+ ---
147
+
148
+ ## Confirmation Flow
149
+
150
+ 1. **Show preview box** with all files being created
151
+ - Epic file path and frontmatter
152
+ - Story file paths and frontmatter
153
+ - status.json changes (diff format)
154
+ - bus/log.jsonl lines to append
155
+
156
+ 2. **Ask confirmation**:
97
157
  ```xml
98
158
  <invoke name="AskUserQuestion">
99
159
  <parameter name="questions">[{
100
- "question": "Create epic EP-0010: Authentication with 3 stories?",
160
+ "question": "Create epic EP-0010 with 3 stories?",
101
161
  "header": "Confirm Epic Creation",
102
162
  "multiSelect": false,
103
163
  "options": [
104
- {"label": "Yes, create epic", "description": "Create epic and all stories"},
105
- {"label": "No, revise", "description": "Modify before creating"},
164
+ {"label": "Yes, create", "description": "Write all files"},
165
+ {"label": "No, edit", "description": "Modify details"},
106
166
  {"label": "Cancel", "description": "Don't create"}
107
167
  ]
108
168
  }]</parameter>
109
169
  </invoke>
110
170
  ```
171
+
172
+ 3. **On YES**: Execute all writes (files, merge, append)
173
+ 4. **On NO/CANCEL**: Abort without changes
174
+
175
+ ---
176
+
177
+ ## REMEMBER AFTER COMPACTION
178
+
179
+ - Command creates epics + child stories in one operation
180
+ - ALWAYS parse and validate STORIES input (triplet format)
181
+ - ALWAYS preview before confirming (prevents mistakes)
182
+ - ALWAYS validate JSON after merge (prevents corruption)
183
+ - Use TodoWrite for step tracking (6 steps)
184
+ - Files: epic file, N story files, status.json, bus/log.jsonl
185
+
111
186
  <!-- COMPACT_SUMMARY_END -->
112
187
 
113
188
  ## Prompt
@@ -148,3 +223,51 @@ ACTIONS
148
223
  4) Append "assign" lines to docs/09-agents/bus/log.jsonl.
149
224
 
150
225
  Always show previews; YES/NO before writing.
226
+
227
+ ---
228
+
229
+ ## POST-CREATION ACTIONS
230
+
231
+ After successfully creating the epic, offer next steps:
232
+
233
+ ```xml
234
+ <invoke name="AskUserQuestion">
235
+ <parameter name="questions">[{
236
+ "question": "Epic <EPIC> created with <N> stories! What would you like to do next?",
237
+ "header": "Next Steps",
238
+ "multiSelect": false,
239
+ "options": [
240
+ {"label": "Add more stories (Recommended)", "description": "Epic may need additional work items"},
241
+ {"label": "Start working on first story", "description": "Begin implementation immediately"},
242
+ {"label": "Plan sprint for this epic", "description": "Schedule stories with /agileflow:sprint"},
243
+ {"label": "View epic details", "description": "See full epic with /agileflow:epic:view"}
244
+ ]
245
+ }]</parameter>
246
+ </invoke>
247
+ ```
248
+
249
+ **If "Add more stories"**:
250
+ - Re-run `/agileflow:story EPIC=<EPIC>` with next story ID
251
+
252
+ **If "Start working on first story"**:
253
+ 1. Show ready stories in this epic
254
+ 2. Let user pick one
255
+ 3. Run `/agileflow:status <STORY> STATUS=in_progress`
256
+ 4. Ask: "Enter plan mode to explore implementation?"
257
+
258
+ **If "Plan sprint"**:
259
+ - Run `/agileflow:sprint` with this epic's stories
260
+
261
+ **If "View epic details"**:
262
+ - Run `/agileflow:epic:view EPIC=<EPIC>`
263
+
264
+ ---
265
+
266
+ ## Related Commands
267
+
268
+ - `/agileflow:epic:list` - View all epics with progress
269
+ - `/agileflow:epic:view` - View epic details with all stories
270
+ - `/agileflow:story` - Create story in epic
271
+ - `/agileflow:story:list` - View all stories
272
+ - `/agileflow:sprint` - Plan sprint with epic stories
273
+ - `/agileflow:board` - Visual kanban board
@@ -1,5 +1,21 @@
1
1
  ---
2
2
  description: Collect and process agent feedback
3
+ compact_context:
4
+ priority: medium
5
+ preserve_rules:
6
+ - "SCOPE (story|epic|sprint) optional - default is story"
7
+ - "STORY or EPIC may be REQUIRED depending on SCOPE"
8
+ - "Feedback is OPTIONAL - never block workflow"
9
+ - "Collect ratings (1-5 scale) and free-form comments"
10
+ - "Save to docs/08-project/feedback/<YYYYMMDD>-<ID>.md"
11
+ - "Analyze patterns across feedback for recurring issues"
12
+ - "Generate improvement stories for recurring problems"
13
+ - "Track metrics: clarity score, estimate accuracy, blocker frequency"
14
+ state_fields:
15
+ - scope
16
+ - story_id
17
+ - epic_id
18
+ - anonymous_flag
3
19
  ---
4
20
 
5
21
  # agent-feedback
@@ -14,73 +30,75 @@ If the user confirms they want the full details, continue. Otherwise, stop here.
14
30
  Collect feedback from agents and humans for continuous process improvement.
15
31
 
16
32
  <!-- COMPACT_SUMMARY_START -->
17
- ## Compact Summary
18
33
 
19
- **Purpose**: Collect feedback on stories, agents, and processes for continuous improvement
34
+ ## ⚠️ COMPACT SUMMARY - /agileflow:agent-feedback IS ACTIVE
20
35
 
21
- **Quick Usage**:
22
- ```bash
23
- /agileflow:agent-feedback SCOPE=story STORY=US-0042
24
- /agileflow:agent-feedback SCOPE=epic EPIC=EP-0010
25
- /agileflow:agent-feedback SCOPE=sprint
26
- ```
36
+ **CRITICAL**: You are collecting feedback for continuous improvement. Feedback is OPTIONAL - never force it.
27
37
 
28
- **What It Does**:
29
- 1. Prompts for feedback at trigger points (story done, epic complete, sprint end)
30
- 2. Collects structured feedback (ratings 1-5, comments, blockers)
31
- 3. Saves feedback to `docs/08-project/feedback/` (markdown format)
32
- 4. Analyzes patterns and generates insights
33
- 5. Suggests improvement stories for recurring issues
34
- 6. Tracks metrics over time (clarity, estimates, blockers)
35
-
36
- **Required Inputs**:
37
- - `SCOPE`: story|epic|sprint (default: story)
38
-
39
- **Optional Inputs**:
40
- - `STORY`: <US-ID> (required if SCOPE=story)
41
- - `EPIC`: <EP-ID> (required if SCOPE=epic)
42
- - `ANONYMOUS`: yes|no (default: no)
43
-
44
- **Data Sources** (parsing required):
45
- 1. Story frontmatter files (US-*.md) - YAML extraction for dates, estimates
46
- 2. status.json - Story metadata (JSON parsing)
47
- 3. bus/log.jsonl - Activity logs for pattern detection (JSON line parsing)
48
- 4. Feedback files (markdown parsing for metrics extraction)
49
-
50
- **Feedback Collection**:
51
- - **Story Completion**: AC clarity, dependencies resolved, estimate accuracy, smoothness (1-5 scale)
52
- - **Agent Performance**: Completion rate, test coverage, reliability metrics
53
- - **Epic Retrospective**: Success metrics, wins, challenges, learnings
54
- - **Sprint Retrospective**: Continue/Stop/Start, experiments, blockers
55
-
56
- **Metrics Tracked**:
57
- - Avg story clarity score (target: >4.0)
58
- - Estimate accuracy (target: within 50%)
59
- - Blocker frequency (target: <20% of stories)
60
- - Test coverage avg
61
- - Completion velocity
38
+ **ROLE**: Feedback Collector & Retrospective Facilitator
62
39
 
63
- **Workflow**:
64
- 1. Auto-prompt at trigger (story→done, epic complete, sprint end)
65
- 2. Present feedback form with pre-filled context
66
- 3. Ask: "Provide feedback now? (YES/NO/LATER)"
67
- 4. Collect ratings (1-5 scale) and free-form comments
68
- 5. Save to docs/08-project/feedback/<YYYYMMDD>-<ID>.md
69
- 6. Analyze patterns across feedback (pattern matching for recurring themes)
70
- 7. Suggest improvement stories for recurring issues
71
-
72
- **Analysis** (pattern detection):
73
- - Scan all feedback for patterns: "unclear AC" → improve template
74
- - Calculate metrics: avg clarity score, estimate variance, blocker frequency
75
- - Track trends over time (metrics comparison)
76
- - Generate actionable recommendations
77
-
78
- **Output Files**:
79
- - Feedback notes: `docs/08-project/feedback/<YYYYMMDD>-<ID>.md`
80
- - Summary log: `docs/08-project/retrospectives.md`
81
- - Optional: Auto-generated improvement stories for issues
82
-
83
- **Example Story Feedback**:
40
+ ---
41
+
42
+ ### 🚨 RULE #1: FEEDBACK IS ALWAYS OPTIONAL
43
+
44
+ **NEVER require or force feedback collection.** Always ask: "Provide feedback now? (YES/NO/LATER)"
45
+
46
+ - YES: Collect feedback interactively
47
+ - NO: Skip, don't ask again for this story
48
+ - LATER: Add reminder to bus log, ask again at next trigger
49
+
50
+ Feedback should feel helpful, not burdensome.
51
+
52
+ ---
53
+
54
+ ### 🚨 RULE #2: SCOPE DETERMINES INPUTS
55
+
56
+ | SCOPE | Required Inputs | Example |
57
+ |-------|-----------------|---------|
58
+ | `story` | STORY=<US-ID> | Feedback on story completion |
59
+ | `epic` | EPIC=<EP-ID> | Retrospective on epic |
60
+ | `sprint` | None | Sprint retrospective |
61
+
62
+ Ask user if SCOPE not provided or required inputs missing.
63
+
64
+ ---
65
+
66
+ ### 🚨 RULE #3: FEEDBACK FORM SECTIONS
67
+
68
+ For each feedback type, use appropriate form:
69
+
70
+ **Story Feedback** (after story marked "done"):
71
+ - AC clarity (1-5)
72
+ - Dependencies resolved (1-5)
73
+ - Estimate accuracy (1-5)
74
+ - Implementation smoothness (1-5)
75
+ - What went well? (free-form)
76
+ - What could improve? (free-form)
77
+ - Blockers? (list)
78
+ - Learnings? (optional)
79
+
80
+ **Epic Retrospective** (after epic 100% complete):
81
+ - Success metrics (from epic definition)
82
+ - What went well? (bullets)
83
+ - What didn't go well? (bullets)
84
+ - Surprises/learnings? (bullets)
85
+ - Actions for next epic? (checklist)
86
+
87
+ **Sprint Retrospective** (sprint end):
88
+ - Continue (what to keep doing)
89
+ - Stop (what to stop doing)
90
+ - Start (new practices to try)
91
+ - Experiments (things to test next sprint)
92
+ - Blockers removed (what was unblocked)
93
+ - Recurring issues (what needs addressing)
94
+
95
+ ---
96
+
97
+ ### 🚨 RULE #4: SAVE FEEDBACK TO FILE
98
+
99
+ Always save to: `docs/08-project/feedback/<YYYYMMDD>-<ID>.md`
100
+
101
+ Example:
84
102
  ```markdown
85
103
  ## Story Feedback: US-0042
86
104
 
@@ -88,19 +106,121 @@ Collect feedback from agents and humans for continuous process improvement.
88
106
  **Date**: 2025-12-22
89
107
 
90
108
  ### Ratings (1-5)
91
- - AC clarity: 5 (crystal clear)
92
- - Dependencies resolved: 4 (one minor blocker)
93
- - Estimate accuracy: 5 (spot on)
94
- - Implementation smoothness: 4 (smooth)
109
+ - AC clarity: 5
110
+ - Dependencies: 4
111
+ - Estimate accuracy: 5
112
+ - Smoothness: 4
95
113
 
96
114
  ### What Went Well
97
- - Clear acceptance criteria with examples
98
- - All tests passed on first run
115
+ - Clear AC with examples
116
+ - All tests passed
99
117
  - Good documentation
100
118
 
101
- ### What Could Be Improved
102
- - Database schema migration took longer than expected
119
+ ### Improvements
120
+ - Database migration took longer
121
+ ```
122
+
123
+ ---
124
+
125
+ ### 🚨 RULE #5: ANALYZE PATTERNS & GENERATE INSIGHTS
126
+
127
+ After collecting feedback, scan for patterns:
128
+
129
+ **Pattern Detection:**
130
+ - 5+ stories with "unclear AC" → Improve story template
131
+ - 3+ stories blocked by missing tests → Enforce test stubs early
132
+ - Estimates off by 2x → Revise estimation guidelines
133
+
134
+ **Generate Improvement Stories:**
135
+ ```
136
+ Issue: 5 stories had "unclear AC" (score <3)
137
+ Suggested Story: "US-XXXX: Improve story template with AC examples"
138
+ ```
139
+
140
+ **Track Metrics:**
141
+ - Avg AC clarity (target: >4.0)
142
+ - Avg estimate accuracy (target: within 50%)
143
+ - Blocker frequency (target: <20%)
144
+
145
+ ---
146
+
147
+ ### ANTI-PATTERNS (DON'T DO THESE)
148
+
149
+ ❌ Force feedback - make it optional
150
+ ❌ Collect feedback but don't analyze it
151
+ ❌ Ignore patterns - let issues repeat
152
+ ❌ Use vague forms - make it specific
153
+ ❌ Save feedback but don't show insights
154
+ ❌ Create improvement stories without pattern data
155
+
156
+ ### DO THESE INSTEAD
157
+
158
+ ✅ Ask "Provide feedback? (YES/NO/LATER)"
159
+ ✅ Use structured forms with 1-5 ratings
160
+ ✅ Analyze patterns across feedback
161
+ ✅ Suggest improvement stories for recurring issues
162
+ ✅ Track metrics over time
163
+ ✅ Show insights to user
164
+
165
+ ---
166
+
167
+ ### WORKFLOW
168
+
169
+ 1. **Trigger Check**: Story done? Epic complete? Sprint end?
170
+ 2. **Ask Permission**: "Provide feedback now? (YES/NO/LATER)"
171
+ 3. **If YES**: Show feedback form with pre-filled context
172
+ 4. **Collect**: Get ratings, comments, blockers
173
+ 5. **Save**: To `docs/08-project/feedback/<YYYYMMDD>-<ID>.md`
174
+ 6. **Analyze**: Scan for patterns and metrics
175
+ 7. **Suggest**: Show insights and improvement stories
176
+ 8. **Optional**: Create stories if user approves
177
+
178
+ ---
179
+
180
+ ### TOOL USAGE EXAMPLES
181
+
182
+ **TodoWrite** (to track feedback process):
183
+ ```xml
184
+ <invoke name="TodoWrite">
185
+ <parameter name="content">1. Determine scope and required inputs
186
+ 2. Ask for feedback (optional)
187
+ 3. If YES: Show form with pre-filled context
188
+ 4. Collect ratings and comments
189
+ 5. Save to docs/08-project/feedback/
190
+ 6. Analyze patterns
191
+ 7. Suggest improvements</parameter>
192
+ <parameter name="status">in-progress</parameter>
193
+ </invoke>
103
194
  ```
195
+
196
+ **AskUserQuestion** (for feedback permission):
197
+ ```xml
198
+ <invoke name="AskUserQuestion">
199
+ <parameter name="questions">[{
200
+ "question": "Provide feedback on US-0042 completion?",
201
+ "header": "Optional Feedback",
202
+ "multiSelect": false,
203
+ "options": [
204
+ {"label": "Yes, provide feedback", "description": "Take 2-3 min to share insights"},
205
+ {"label": "Not now", "description": "Skip feedback"},
206
+ {"label": "Remind me later", "description": "Ask again next time"}
207
+ ]
208
+ }]</parameter>
209
+ </invoke>
210
+ ```
211
+
212
+ ---
213
+
214
+ ### REMEMBER AFTER COMPACTION
215
+
216
+ - `/agileflow:agent-feedback` IS ACTIVE
217
+ - Feedback is OPTIONAL - never force it
218
+ - SCOPE determines inputs (story/epic/sprint)
219
+ - Use 1-5 rating scales for consistency
220
+ - Save to docs/08-project/feedback/
221
+ - Analyze patterns and suggest improvements
222
+ - Track metrics: clarity, estimates, blockers
223
+
104
224
  <!-- COMPACT_SUMMARY_END -->
105
225
 
106
226
  ## Prompt