agileflow 3.3.0 → 3.4.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.
Files changed (210) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/README.md +6 -6
  3. package/lib/skill-loader.js +0 -1
  4. package/package.json +1 -1
  5. package/scripts/agileflow-statusline.sh +81 -0
  6. package/scripts/agileflow-welcome.js +79 -0
  7. package/scripts/claude-tmux.sh +90 -23
  8. package/scripts/claude-watchdog.sh +225 -0
  9. package/scripts/generators/agent-registry.js +14 -1
  10. package/scripts/generators/inject-babysit.js +22 -9
  11. package/scripts/generators/inject-help.js +19 -9
  12. package/scripts/lib/ac-test-matcher.js +452 -0
  13. package/scripts/lib/audit-cleanup.js +250 -0
  14. package/scripts/lib/audit-registry.js +304 -0
  15. package/scripts/lib/configure-features.js +35 -0
  16. package/scripts/lib/feature-catalog.js +3 -3
  17. package/scripts/lib/gate-enforcer.js +295 -0
  18. package/scripts/lib/model-profiles.js +118 -0
  19. package/scripts/lib/quality-gates.js +163 -0
  20. package/scripts/lib/signal-detectors.js +44 -1
  21. package/scripts/lib/skill-catalog.js +557 -0
  22. package/scripts/lib/skill-recommender.js +311 -0
  23. package/scripts/lib/status-writer.js +255 -0
  24. package/scripts/lib/story-claiming.js +128 -45
  25. package/scripts/lib/task-sync.js +32 -38
  26. package/scripts/lib/tdd-phase-manager.js +455 -0
  27. package/scripts/lib/team-events.js +34 -3
  28. package/scripts/lib/tmux-audit-monitor.js +611 -0
  29. package/scripts/lib/tmux-group-colors.js +113 -0
  30. package/scripts/lib/tool-registry.yaml +241 -0
  31. package/scripts/lib/tool-shed.js +441 -0
  32. package/scripts/messaging-bridge.js +209 -1
  33. package/scripts/native-team-observer.js +219 -0
  34. package/scripts/obtain-context.js +14 -0
  35. package/scripts/ralph-loop.js +30 -5
  36. package/scripts/smart-detect.js +21 -0
  37. package/scripts/spawn-audit-sessions.js +877 -0
  38. package/scripts/team-manager.js +56 -16
  39. package/scripts/tmux-close-windows.sh +180 -0
  40. package/src/core/agents/a11y-analyzer-aria.md +155 -0
  41. package/src/core/agents/a11y-analyzer-forms.md +162 -0
  42. package/src/core/agents/a11y-analyzer-keyboard.md +175 -0
  43. package/src/core/agents/a11y-analyzer-semantic.md +153 -0
  44. package/src/core/agents/a11y-analyzer-visual.md +158 -0
  45. package/src/core/agents/a11y-consensus.md +248 -0
  46. package/src/core/agents/ads-audit-budget.md +181 -0
  47. package/src/core/agents/ads-audit-compliance.md +169 -0
  48. package/src/core/agents/ads-audit-creative.md +164 -0
  49. package/src/core/agents/ads-audit-google.md +226 -0
  50. package/src/core/agents/ads-audit-meta.md +183 -0
  51. package/src/core/agents/ads-audit-tracking.md +197 -0
  52. package/src/core/agents/ads-consensus.md +396 -0
  53. package/src/core/agents/ads-generate.md +145 -0
  54. package/src/core/agents/ads-performance-tracker.md +197 -0
  55. package/src/core/agents/api-quality-analyzer-conventions.md +148 -0
  56. package/src/core/agents/api-quality-analyzer-docs.md +176 -0
  57. package/src/core/agents/api-quality-analyzer-errors.md +183 -0
  58. package/src/core/agents/api-quality-analyzer-pagination.md +171 -0
  59. package/src/core/agents/api-quality-analyzer-versioning.md +143 -0
  60. package/src/core/agents/api-quality-consensus.md +214 -0
  61. package/src/core/agents/arch-analyzer-circular.md +148 -0
  62. package/src/core/agents/arch-analyzer-complexity.md +171 -0
  63. package/src/core/agents/arch-analyzer-coupling.md +146 -0
  64. package/src/core/agents/arch-analyzer-layering.md +151 -0
  65. package/src/core/agents/arch-analyzer-patterns.md +162 -0
  66. package/src/core/agents/arch-consensus.md +227 -0
  67. package/src/core/agents/brainstorm-analyzer-features.md +169 -0
  68. package/src/core/agents/brainstorm-analyzer-growth.md +161 -0
  69. package/src/core/agents/brainstorm-analyzer-integration.md +172 -0
  70. package/src/core/agents/brainstorm-analyzer-market.md +147 -0
  71. package/src/core/agents/brainstorm-analyzer-ux.md +167 -0
  72. package/src/core/agents/brainstorm-consensus.md +237 -0
  73. package/src/core/agents/completeness-consensus.md +5 -5
  74. package/src/core/agents/perf-consensus.md +2 -2
  75. package/src/core/agents/security-consensus.md +2 -2
  76. package/src/core/agents/seo-analyzer-content.md +167 -0
  77. package/src/core/agents/seo-analyzer-images.md +187 -0
  78. package/src/core/agents/seo-analyzer-performance.md +206 -0
  79. package/src/core/agents/seo-analyzer-schema.md +176 -0
  80. package/src/core/agents/seo-analyzer-sitemap.md +172 -0
  81. package/src/core/agents/seo-analyzer-technical.md +144 -0
  82. package/src/core/agents/seo-consensus.md +289 -0
  83. package/src/core/agents/test-consensus.md +2 -2
  84. package/src/core/commands/adr.md +1 -0
  85. package/src/core/commands/ads/audit.md +375 -0
  86. package/src/core/commands/ads/budget.md +97 -0
  87. package/src/core/commands/ads/competitor.md +112 -0
  88. package/src/core/commands/ads/creative.md +85 -0
  89. package/src/core/commands/ads/generate.md +238 -0
  90. package/src/core/commands/ads/google.md +112 -0
  91. package/src/core/commands/ads/health.md +327 -0
  92. package/src/core/commands/ads/landing.md +119 -0
  93. package/src/core/commands/ads/linkedin.md +112 -0
  94. package/src/core/commands/ads/meta.md +91 -0
  95. package/src/core/commands/ads/microsoft.md +115 -0
  96. package/src/core/commands/ads/plan.md +321 -0
  97. package/src/core/commands/ads/test-plan.md +317 -0
  98. package/src/core/commands/ads/tiktok.md +129 -0
  99. package/src/core/commands/ads/track.md +288 -0
  100. package/src/core/commands/ads/youtube.md +124 -0
  101. package/src/core/commands/ads.md +140 -0
  102. package/src/core/commands/assign.md +1 -0
  103. package/src/core/commands/audit.md +43 -6
  104. package/src/core/commands/babysit.md +315 -1266
  105. package/src/core/commands/baseline.md +1 -0
  106. package/src/core/commands/blockers.md +1 -0
  107. package/src/core/commands/board.md +1 -0
  108. package/src/core/commands/changelog.md +1 -0
  109. package/src/core/commands/choose.md +1 -0
  110. package/src/core/commands/ci.md +1 -0
  111. package/src/core/commands/code/accessibility.md +347 -0
  112. package/src/core/commands/code/api.md +297 -0
  113. package/src/core/commands/code/architecture.md +297 -0
  114. package/src/core/commands/{audit → code}/completeness.md +72 -25
  115. package/src/core/commands/{audit → code}/legal.md +63 -16
  116. package/src/core/commands/{audit → code}/logic.md +64 -16
  117. package/src/core/commands/{audit → code}/performance.md +67 -20
  118. package/src/core/commands/{audit → code}/security.md +69 -19
  119. package/src/core/commands/{audit → code}/test.md +67 -20
  120. package/src/core/commands/configure.md +1 -0
  121. package/src/core/commands/council.md +1 -0
  122. package/src/core/commands/deploy.md +1 -0
  123. package/src/core/commands/diagnose.md +1 -0
  124. package/src/core/commands/docs.md +1 -0
  125. package/src/core/commands/epic/edit.md +213 -0
  126. package/src/core/commands/epic.md +1 -0
  127. package/src/core/commands/export.md +238 -0
  128. package/src/core/commands/help.md +16 -1
  129. package/src/core/commands/{discovery → ideate}/brief.md +12 -12
  130. package/src/core/commands/{discovery/new.md → ideate/discover.md} +20 -16
  131. package/src/core/commands/ideate/features.md +496 -0
  132. package/src/core/commands/ideate/new.md +158 -124
  133. package/src/core/commands/impact.md +1 -0
  134. package/src/core/commands/learn/explain.md +118 -0
  135. package/src/core/commands/learn/glossary.md +135 -0
  136. package/src/core/commands/learn/patterns.md +138 -0
  137. package/src/core/commands/learn/tour.md +126 -0
  138. package/src/core/commands/migrate/codemods.md +151 -0
  139. package/src/core/commands/migrate/plan.md +131 -0
  140. package/src/core/commands/migrate/scan.md +114 -0
  141. package/src/core/commands/migrate/validate.md +119 -0
  142. package/src/core/commands/multi-expert.md +1 -0
  143. package/src/core/commands/pr.md +1 -0
  144. package/src/core/commands/review.md +1 -0
  145. package/src/core/commands/seo/audit.md +373 -0
  146. package/src/core/commands/seo/competitor.md +174 -0
  147. package/src/core/commands/seo/content.md +107 -0
  148. package/src/core/commands/seo/geo.md +229 -0
  149. package/src/core/commands/seo/hreflang.md +140 -0
  150. package/src/core/commands/seo/images.md +96 -0
  151. package/src/core/commands/seo/page.md +198 -0
  152. package/src/core/commands/seo/plan.md +163 -0
  153. package/src/core/commands/seo/programmatic.md +131 -0
  154. package/src/core/commands/seo/references/cwv-thresholds.md +64 -0
  155. package/src/core/commands/seo/references/eeat-framework.md +110 -0
  156. package/src/core/commands/seo/references/quality-gates.md +91 -0
  157. package/src/core/commands/seo/references/schema-types.md +102 -0
  158. package/src/core/commands/seo/schema.md +183 -0
  159. package/src/core/commands/seo/sitemap.md +97 -0
  160. package/src/core/commands/seo/technical.md +100 -0
  161. package/src/core/commands/seo.md +107 -0
  162. package/src/core/commands/skill/list.md +68 -212
  163. package/src/core/commands/skill/recommend.md +216 -0
  164. package/src/core/commands/sprint.md +1 -0
  165. package/src/core/commands/status/undo.md +191 -0
  166. package/src/core/commands/status.md +1 -0
  167. package/src/core/commands/story/edit.md +204 -0
  168. package/src/core/commands/story/view.md +29 -7
  169. package/src/core/commands/story-validate.md +1 -0
  170. package/src/core/commands/story.md +1 -0
  171. package/src/core/commands/tdd-next.md +238 -0
  172. package/src/core/commands/tdd.md +211 -0
  173. package/src/core/commands/team/start.md +10 -6
  174. package/src/core/commands/tests.md +1 -0
  175. package/src/core/commands/verify.md +27 -1
  176. package/src/core/commands/workflow.md +2 -0
  177. package/src/core/experts/_core-expertise.yaml +105 -0
  178. package/src/core/experts/analytics/expertise.yaml +5 -99
  179. package/src/core/experts/codebase-query/expertise.yaml +3 -72
  180. package/src/core/experts/compliance/expertise.yaml +6 -72
  181. package/src/core/experts/database/expertise.yaml +9 -52
  182. package/src/core/experts/documentation/expertise.yaml +7 -140
  183. package/src/core/experts/integrations/expertise.yaml +7 -127
  184. package/src/core/experts/mentor/expertise.yaml +8 -35
  185. package/src/core/experts/monitoring/expertise.yaml +7 -49
  186. package/src/core/experts/performance/expertise.yaml +1 -26
  187. package/src/core/experts/security/expertise.yaml +9 -34
  188. package/src/core/experts/ui/expertise.yaml +6 -36
  189. package/src/core/knowledge/ads/ad-audit-checklist-scoring.md +424 -0
  190. package/src/core/knowledge/ads/ad-optimization-logic.md +590 -0
  191. package/src/core/knowledge/ads/ad-technical-specifications.md +385 -0
  192. package/src/core/knowledge/ads/definitive-advertising-reference-2026.md +506 -0
  193. package/src/core/knowledge/ads/paid-advertising-research-2026.md +445 -0
  194. package/src/core/teams/backend.json +41 -0
  195. package/src/core/teams/frontend.json +41 -0
  196. package/src/core/teams/qa.json +41 -0
  197. package/src/core/teams/solo.json +35 -0
  198. package/src/core/templates/agileflow-metadata.json +20 -1
  199. package/tools/cli/commands/setup.js +85 -3
  200. package/tools/cli/commands/update.js +42 -0
  201. package/tools/cli/installers/ide/_base-ide.js +42 -5
  202. package/tools/cli/installers/ide/claude-code.js +71 -3
  203. package/tools/cli/lib/content-injector.js +160 -12
  204. package/tools/cli/lib/docs-setup.js +1 -1
  205. package/src/core/commands/skill/create.md +0 -698
  206. package/src/core/commands/skill/delete.md +0 -316
  207. package/src/core/commands/skill/edit.md +0 -359
  208. package/src/core/commands/skill/test.md +0 -394
  209. package/src/core/commands/skill/upgrade.md +0 -552
  210. package/src/core/templates/skill-template.md +0 -117
@@ -1,14 +1,14 @@
1
1
  ---
2
2
  description: Multi-agent security vulnerability analysis with consensus voting for finding exploitable weaknesses
3
- argument-hint: "[file|directory] [DEPTH=quick|deep] [FOCUS=injection|auth|authz|secrets|input|deps|infra|api|all]"
3
+ argument-hint: "[file|directory] [DEPTH=quick|deep|ultradeep|extreme] [FOCUS=injection|auth|authz|secrets|input|deps|infra|api|all] [MODEL=haiku|sonnet|opus]"
4
4
  compact_context:
5
5
  priority: high
6
6
  preserve_rules:
7
- - "ACTIVE COMMAND: /agileflow:audit:security - Multi-agent security vulnerability analysis"
7
+ - "ACTIVE COMMAND: /agileflow:code:security - Multi-agent security vulnerability analysis"
8
8
  - "CRITICAL: Deploy analyzers IN PARALLEL in ONE message with multiple Task calls"
9
9
  - "CRITICAL: Wait for all results before running consensus (use TaskOutput with block=true)"
10
10
  - "CRITICAL: Confidence scoring: CONFIRMED (2+ agree), LIKELY (1 with evidence), INVESTIGATE (1 weak)"
11
- - "MUST parse arguments: TARGET (file/dir), DEPTH (quick/deep), FOCUS (injection|auth|authz|secrets|input|deps|infra|api|all)"
11
+ - "MUST parse arguments: TARGET (file/dir), DEPTH (quick/deep/ultradeep), FOCUS (injection|auth|authz|secrets|input|deps|infra|api|all)"
12
12
  - "Pass consensus all analyzer outputs, let it synthesize the final report"
13
13
  state_fields:
14
14
  - target_path
@@ -18,7 +18,7 @@ compact_context:
18
18
  - findings_collected
19
19
  ---
20
20
 
21
- # /agileflow:audit:security
21
+ # /agileflow:code:security
22
22
 
23
23
  Deploy multiple specialized security vulnerability analyzers in parallel to find exploitable weaknesses, then synthesize results through consensus voting into a prioritized Security Audit Report.
24
24
 
@@ -27,11 +27,14 @@ Deploy multiple specialized security vulnerability analyzers in parallel to find
27
27
  ## Quick Reference
28
28
 
29
29
  ```
30
- /agileflow:audit:security app/ # Analyze app directory (quick, core 5 analyzers)
31
- /agileflow:audit:security . DEPTH=deep # Deep analysis - all 8 analyzers
32
- /agileflow:audit:security src/ FOCUS=injection,auth # Focus on specific areas
33
- /agileflow:audit:security . DEPTH=deep FOCUS=all # Comprehensive full audit
34
- /agileflow:audit:security app/api/ FOCUS=api # Check API routes specifically
30
+ /agileflow:code:security app/ # Analyze app directory (quick, core 5 analyzers)
31
+ /agileflow:code:security . DEPTH=deep # Deep analysis - all 8 analyzers
32
+ /agileflow:code:security src/ FOCUS=injection,auth # Focus on specific areas
33
+ /agileflow:code:security . DEPTH=deep FOCUS=all # Comprehensive full audit
34
+ /agileflow:code:security . DEPTH=ultradeep # Each analyzer in its own tmux session
35
+ /agileflow:code:security src/ MODEL=sonnet # Use Sonnet for all analyzers
36
+ /agileflow:code:security . DEPTH=ultradeep MODEL=opus # Ultradeep with Opus
37
+ /agileflow:code:security app/api/ FOCUS=api # Check API routes specifically
35
38
  ```
36
39
 
37
40
  ---
@@ -40,7 +43,7 @@ Deploy multiple specialized security vulnerability analyzers in parallel to find
40
43
 
41
44
  ```
42
45
  ┌─────────────────────────────────────────────────────────────┐
43
- │ /agileflow:audit:security │
46
+ │ /agileflow:code:security │
44
47
  │ │
45
48
  │ 1. Parse arguments (target, depth, focus) │
46
49
  │ 2. Deploy analyzers IN PARALLEL │
@@ -73,8 +76,9 @@ Deploy multiple specialized security vulnerability analyzers in parallel to find
73
76
  | Argument | Values | Default | Description |
74
77
  |----------|--------|---------|-------------|
75
78
  | TARGET | file/directory | `.` | What to analyze |
76
- | DEPTH | quick, deep | quick | quick = core 5 analyzers, deep = all 8 |
79
+ | DEPTH | quick, deep, ultradeep | quick | quick = core 5, deep = all 8, ultradeep = separate tmux sessions |
77
80
  | FOCUS | injection,auth,authz,secrets,input,deps,infra,api,all | all | Which analyzers to deploy |
81
+ | MODEL | haiku, sonnet, opus | haiku | Model for analyzer subagents. Default preserves existing behavior. |
78
82
 
79
83
  ---
80
84
 
@@ -107,6 +111,52 @@ FOCUS = all (default) or comma-separated list
107
111
  **DEPTH behavior**:
108
112
  - `quick` (default): Deploy core 5 analyzers. Focus on CRITICAL/HIGH issues only.
109
113
  - `deep`: Deploy all 8 analyzers. Include MEDIUM/LOW findings.
114
+ - `ultradeep`: Spawn each analyzer as a separate Claude Code session in tmux. Requires tmux. Uses model profiles from metadata. Falls back to `deep` if tmux unavailable.
115
+
116
+ **ULTRADEEP mode** (DEPTH=ultradeep):
117
+ 1. Show cost estimate:
118
+ ```bash
119
+ node .agileflow/scripts/spawn-audit-sessions.js --audit=security --target=TARGET --focus=FOCUS --model=MODEL --dry-run
120
+ ```
121
+ 2. Confirm with user before launching
122
+ 3. Spawn sessions (use `--json` to capture trace ID):
123
+ ```bash
124
+ node .agileflow/scripts/spawn-audit-sessions.js --audit=security --target=TARGET --focus=FOCUS --model=MODEL --json
125
+ ```
126
+ Parse the JSON output to get `traceId`. Example: `{"ok":true,"traceId":"abc123ef",...}`
127
+ 4. Wait for all analyzers to complete:
128
+ ```bash
129
+ node .agileflow/scripts/lib/tmux-audit-monitor.js wait TRACE_ID --timeout=1800
130
+ ```
131
+ - Exit 0 = all complete (JSON results on stdout)
132
+ - Exit 1 = timeout (partial results on stdout, `missing` array shows what's left)
133
+ - To check progress without blocking: `node .agileflow/scripts/lib/tmux-audit-monitor.js status TRACE_ID`
134
+ - To retry stalled analyzers: `node .agileflow/scripts/lib/tmux-audit-monitor.js retry TRACE_ID`
135
+ 5. Parse `results` array from the JSON output. Pass all findings to consensus coordinator (same as deep mode).
136
+ 6. If tmux unavailable (spawn exits code 2), fall back to `DEPTH=deep` with warning
137
+
138
+ **EXTREME mode** (DEPTH=extreme):
139
+ Partition-based multi-agent audit. Instead of 1 analyzer per tmux window, the codebase is split into partitions and each partition runs ALL analyzers.
140
+ 1. Scan the target directory to understand the codebase structure:
141
+ - Use Glob to find top-level source directories
142
+ - Group related directories into 3-7 logical partitions (coherent domains: auth, api, ui, etc.)
143
+ - If user provided PARTITIONS=N (a number), split into exactly N partitions
144
+ - If user provided PARTITIONS=dir1,dir2,dir3, use those exact directories
145
+ 2. Show the partition plan and agent count to the user, confirm before launching:
146
+ Example: "5 partitions x 8 analyzers = 40 agents. Estimated cost: $X. Proceed?"
147
+ 3. Spawn sessions with partitions:
148
+ ```bash
149
+ node .agileflow/scripts/spawn-audit-sessions.js --audit=security --target=TARGET --depth=extreme --partitions=dir1,dir2,dir3 --model=MODEL --json
150
+ ```
151
+ 4. Wait and collect results (same as ultradeep - use tmux-audit-monitor.js)
152
+ 5. Run consensus on combined results from all partitions
153
+
154
+ **PARTITIONS argument** (only used with DEPTH=extreme):
155
+ | Value | Behavior |
156
+ |-------|----------|
157
+ | Not set | AI decides partitions (3-7 based on codebase size) |
158
+ | `PARTITIONS=5` | AI creates exactly 5 partitions |
159
+ | `PARTITIONS=src/auth,src/api,lib` | Use these exact directories |
110
160
 
111
161
  ### STEP 2: Deploy Analyzers in Parallel
112
162
 
@@ -368,13 +418,13 @@ Total: 7 findings (2 false positives excluded)
368
418
  <!-- COMPACT_SUMMARY_START -->
369
419
  ## Compact Summary
370
420
 
371
- **Command**: `/agileflow:audit:security` - Multi-agent security vulnerability analysis with consensus
421
+ **Command**: `/agileflow:code:security` - Multi-agent security vulnerability analysis with consensus
372
422
 
373
423
  **Quick Usage**:
374
424
  ```
375
- /agileflow:audit:security app/ # Quick scan (core 5 analyzers)
376
- /agileflow:audit:security . DEPTH=deep # All 8 analyzers
377
- /agileflow:audit:security src/ FOCUS=injection,auth # Specific areas
425
+ /agileflow:code:security app/ # Quick scan (core 5 analyzers)
426
+ /agileflow:code:security . DEPTH=deep # All 8 analyzers
427
+ /agileflow:code:security src/ FOCUS=injection,auth # Specific areas
378
428
  ```
379
429
 
380
430
  **What It Does**: Deploy security analyzers in parallel -> Each finds different vulnerability classes -> Consensus coordinator validates, filters by project type, maps to OWASP/CWE -> Actionable Security Audit Report
@@ -409,8 +459,8 @@ Total: 7 findings (2 false positives excluded)
409
459
 
410
460
  ## Boundary Rules (No Overlap)
411
461
 
412
- - **vs audit:logic**: No race conditions, type bugs, control flow, edge cases - those are logic domain
413
- - **vs audit:legal**: No breach notification, PCI-DSS compliance, encryption requirements, negligence liability - those are legal domain
462
+ - **vs code:logic**: No race conditions, type bugs, control flow, edge cases - those are logic domain
463
+ - **vs code:legal**: No breach notification, PCI-DSS compliance, encryption requirements, negligence liability - those are legal domain
414
464
  - **vs security agent**: The `security.md` agent is a team member for story work. This is an on-demand analysis tool
415
465
 
416
466
  ---
@@ -436,8 +486,8 @@ Fix before merging? [Y/n]
436
486
 
437
487
  ## Related Commands
438
488
 
439
- - `/agileflow:audit:logic` - Logic bug analysis (similar architecture)
440
- - `/agileflow:audit:legal` - Legal compliance analysis (similar architecture)
489
+ - `/agileflow:code:logic` - Logic bug analysis (similar architecture)
490
+ - `/agileflow:code:legal` - Legal compliance analysis (similar architecture)
441
491
  - `/agileflow:review` - Code review (includes some security checks)
442
492
  - `/agileflow:multi-expert` - General multi-expert analysis
443
493
  - `/agileflow:verify` - Run tests
@@ -1,14 +1,14 @@
1
1
  ---
2
2
  description: Multi-agent test quality analysis with consensus voting for finding test suite weaknesses
3
- argument-hint: "[file|directory] [DEPTH=quick|deep] [FOCUS=coverage|fragility|mocking|assertions|structure|integration|maintenance|patterns|all]"
3
+ argument-hint: "[file|directory] [DEPTH=quick|deep|ultradeep|extreme] [FOCUS=coverage|fragility|mocking|assertions|structure|integration|maintenance|patterns|all] [MODEL=haiku|sonnet|opus]"
4
4
  compact_context:
5
5
  priority: high
6
6
  preserve_rules:
7
- - "ACTIVE COMMAND: /agileflow:audit:test - Multi-agent test quality analysis"
7
+ - "ACTIVE COMMAND: /agileflow:code:test - Multi-agent test quality analysis"
8
8
  - "CRITICAL: Deploy analyzers IN PARALLEL in ONE message with multiple Task calls"
9
9
  - "CRITICAL: Wait for all results before running consensus (use TaskOutput with block=true)"
10
10
  - "CRITICAL: Confidence scoring: CONFIRMED (2+ agree), LIKELY (1 with evidence), INVESTIGATE (1 weak)"
11
- - "MUST parse arguments: TARGET (file/dir), DEPTH (quick/deep), FOCUS (coverage|fragility|mocking|assertions|structure|integration|maintenance|patterns|all)"
11
+ - "MUST parse arguments: TARGET (file/dir), DEPTH (quick/deep/ultradeep), FOCUS (coverage|fragility|mocking|assertions|structure|integration|maintenance|patterns|all)"
12
12
  - "Pass consensus all analyzer outputs, let it synthesize the final report"
13
13
  state_fields:
14
14
  - target_path
@@ -18,7 +18,7 @@ compact_context:
18
18
  - findings_collected
19
19
  ---
20
20
 
21
- # /agileflow:audit:test
21
+ # /agileflow:code:test
22
22
 
23
23
  Deploy multiple specialized test quality analyzers in parallel to find weaknesses in the test suite, then synthesize results through consensus voting into a prioritized Test Quality Audit Report.
24
24
 
@@ -27,11 +27,11 @@ Deploy multiple specialized test quality analyzers in parallel to find weaknesse
27
27
  ## Quick Reference
28
28
 
29
29
  ```
30
- /agileflow:audit:test app/ # Analyze app tests (quick, core 5 analyzers)
31
- /agileflow:audit:test . DEPTH=deep # Deep analysis - all 8 analyzers
32
- /agileflow:audit:test src/ FOCUS=coverage,mocking # Focus on specific areas
33
- /agileflow:audit:test . DEPTH=deep FOCUS=all # Comprehensive full audit
34
- /agileflow:audit:test __tests__/ FOCUS=fragility # Check test fragility specifically
30
+ /agileflow:code:test app/ # Analyze app tests (quick, core 5 analyzers)
31
+ /agileflow:code:test . DEPTH=deep # Deep analysis - all 8 analyzers
32
+ /agileflow:code:test src/ FOCUS=coverage,mocking # Focus on specific areas
33
+ /agileflow:code:test . DEPTH=deep FOCUS=all # Comprehensive full audit
34
+ /agileflow:code:test __tests__/ FOCUS=fragility # Check test fragility specifically
35
35
  ```
36
36
 
37
37
  ---
@@ -40,7 +40,7 @@ Deploy multiple specialized test quality analyzers in parallel to find weaknesse
40
40
 
41
41
  ```
42
42
  +-------------------------------------------------------------+
43
- | /agileflow:audit:test |
43
+ | /agileflow:code:test |
44
44
  | |
45
45
  | 1. Parse arguments (target, depth, focus) |
46
46
  | 2. Deploy analyzers IN PARALLEL |
@@ -73,8 +73,9 @@ Deploy multiple specialized test quality analyzers in parallel to find weaknesse
73
73
  | Argument | Values | Default | Description |
74
74
  |----------|--------|---------|-------------|
75
75
  | TARGET | file/directory | `.` | What to analyze |
76
- | DEPTH | quick, deep | quick | quick = core 5 analyzers, deep = all 8 |
76
+ | DEPTH | quick, deep, ultradeep | quick | quick = core 5, deep = all 8, ultradeep = separate tmux sessions |
77
77
  | FOCUS | coverage,fragility,mocking,assertions,structure,integration,maintenance,patterns,all | all | Which analyzers to deploy |
78
+ | MODEL | haiku, sonnet, opus | haiku | Model for analyzer subagents. Default preserves existing behavior. |
78
79
 
79
80
  ---
80
81
 
@@ -107,6 +108,52 @@ FOCUS = all (default) or comma-separated list
107
108
  **DEPTH behavior**:
108
109
  - `quick` (default): Deploy core 5 analyzers. Focus on CRITICAL/HIGH issues only.
109
110
  - `deep`: Deploy all 8 analyzers. Include MEDIUM/LOW findings.
111
+ - `ultradeep`: Spawn each analyzer as a separate Claude Code session in tmux. Requires tmux. Uses model profiles from metadata. Falls back to `deep` if tmux unavailable.
112
+
113
+ **ULTRADEEP mode** (DEPTH=ultradeep):
114
+ 1. Show cost estimate:
115
+ ```bash
116
+ node .agileflow/scripts/spawn-audit-sessions.js --audit=test --target=TARGET --focus=FOCUS --model=MODEL --dry-run
117
+ ```
118
+ 2. Confirm with user before launching
119
+ 3. Spawn sessions (use `--json` to capture trace ID):
120
+ ```bash
121
+ node .agileflow/scripts/spawn-audit-sessions.js --audit=test --target=TARGET --focus=FOCUS --model=MODEL --json
122
+ ```
123
+ Parse the JSON output to get `traceId`. Example: `{"ok":true,"traceId":"abc123ef",...}`
124
+ 4. Wait for all analyzers to complete:
125
+ ```bash
126
+ node .agileflow/scripts/lib/tmux-audit-monitor.js wait TRACE_ID --timeout=1800
127
+ ```
128
+ - Exit 0 = all complete (JSON results on stdout)
129
+ - Exit 1 = timeout (partial results on stdout, `missing` array shows what's left)
130
+ - To check progress without blocking: `node .agileflow/scripts/lib/tmux-audit-monitor.js status TRACE_ID`
131
+ - To retry stalled analyzers: `node .agileflow/scripts/lib/tmux-audit-monitor.js retry TRACE_ID`
132
+ 5. Parse `results` array from the JSON output. Pass all findings to consensus coordinator (same as deep mode).
133
+ 6. If tmux unavailable (spawn exits code 2), fall back to `DEPTH=deep` with warning
134
+
135
+ **EXTREME mode** (DEPTH=extreme):
136
+ Partition-based multi-agent audit. Instead of 1 analyzer per tmux window, the codebase is split into partitions and each partition runs ALL analyzers.
137
+ 1. Scan the target directory to understand the codebase structure:
138
+ - Use Glob to find top-level source directories
139
+ - Group related directories into 3-7 logical partitions (coherent domains: auth, api, ui, etc.)
140
+ - If user provided PARTITIONS=N (a number), split into exactly N partitions
141
+ - If user provided PARTITIONS=dir1,dir2,dir3, use those exact directories
142
+ 2. Show the partition plan and agent count to the user, confirm before launching:
143
+ Example: "5 partitions x 8 analyzers = 40 agents. Estimated cost: $X. Proceed?"
144
+ 3. Spawn sessions with partitions:
145
+ ```bash
146
+ node .agileflow/scripts/spawn-audit-sessions.js --audit=test --target=TARGET --depth=extreme --partitions=dir1,dir2,dir3 --model=MODEL --json
147
+ ```
148
+ 4. Wait and collect results (same as ultradeep - use tmux-audit-monitor.js)
149
+ 5. Run consensus on combined results from all partitions
150
+
151
+ **PARTITIONS argument** (only used with DEPTH=extreme):
152
+ | Value | Behavior |
153
+ |-------|----------|
154
+ | Not set | AI decides partitions (3-7 based on codebase size) |
155
+ | `PARTITIONS=5` | AI creates exactly 5 partitions |
156
+ | `PARTITIONS=src/auth,src/api,lib` | Use these exact directories |
110
157
 
111
158
  ### STEP 2: Deploy Analyzers in Parallel
112
159
 
@@ -368,13 +415,13 @@ FIX THIS SPRINT
368
415
  <!-- COMPACT_SUMMARY_START -->
369
416
  ## Compact Summary
370
417
 
371
- **Command**: `/agileflow:audit:test` - Multi-agent test quality analysis with consensus
418
+ **Command**: `/agileflow:code:test` - Multi-agent test quality analysis with consensus
372
419
 
373
420
  **Quick Usage**:
374
421
  ```
375
- /agileflow:audit:test app/ # Quick scan (core 5 analyzers)
376
- /agileflow:audit:test . DEPTH=deep # All 8 analyzers
377
- /agileflow:audit:test src/ FOCUS=coverage,mocking # Specific areas
422
+ /agileflow:code:test app/ # Quick scan (core 5 analyzers)
423
+ /agileflow:code:test . DEPTH=deep # All 8 analyzers
424
+ /agileflow:code:test src/ FOCUS=coverage,mocking # Specific areas
378
425
  ```
379
426
 
380
427
  **What It Does**: Deploy test quality analyzers in parallel -> Each finds different test weakness classes -> Consensus coordinator validates, filters by project type, assesses false confidence risk -> Actionable Test Quality Audit Report
@@ -409,7 +456,7 @@ FIX THIS SPRINT
409
456
 
410
457
  ## Boundary Rules (No Overlap)
411
458
 
412
- - **vs audit:logic**: No logic bugs in application code — only test quality
459
+ - **vs code:logic**: No logic bugs in application code — only test quality
413
460
  - **vs qa agent**: The `qa.md` agent is a team member for story work. This is an on-demand test analysis tool
414
461
 
415
462
  ---
@@ -435,8 +482,8 @@ Add error handling tests before merging? [Y/n]
435
482
 
436
483
  ## Related Commands
437
484
 
438
- - `/agileflow:audit:logic` - Logic bug analysis (similar architecture)
439
- - `/agileflow:audit:security` - Security vulnerability analysis (similar architecture)
440
- - `/agileflow:audit:performance` - Performance bottleneck analysis (similar architecture)
441
- - `/agileflow:audit:legal` - Legal compliance analysis (similar architecture)
485
+ - `/agileflow:code:logic` - Logic bug analysis (similar architecture)
486
+ - `/agileflow:code:security` - Security vulnerability analysis (similar architecture)
487
+ - `/agileflow:code:performance` - Performance bottleneck analysis (similar architecture)
488
+ - `/agileflow:code:legal` - Legal compliance analysis (similar architecture)
442
489
  - `/agileflow:verify` - Run tests
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  description: Configure AgileFlow features, hooks, and project infrastructure (Visual E2E, CI, git)
3
+ phase: pre-story
3
4
  argument-hint: "[--profile=<name>] [--save-profile=<name>] [--list-profiles] [--export-profile=<name>] [--import-profile=<file>] [--enable/--disable=features]"
4
5
  compact_context:
5
6
  priority: critical
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  description: Convene AI Council for strategic decisions with three perspectives (Optimist, Advocate, Analyst)
3
+ phase: planning
3
4
  argument-hint: "<question> [--mode parallel|debate] [--rounds N]"
4
5
  compact_context:
5
6
  priority: high
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  description: Set up automated deployment pipeline
3
+ phase: implementation
3
4
  argument-hint: "(no arguments)"
4
5
  compact_context:
5
6
  priority: high
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  description: System health diagnostics
3
+ phase: post-impl
3
4
  argument-hint: "(no arguments)"
4
5
  compact_context:
5
6
  priority: high
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  description: Synchronize documentation with code changes
3
+ phase: post-impl
3
4
  argument-hint: "[BRANCH=<name>] [BASE=<branch>] [AUTO_CREATE=true|false]"
4
5
  compact_context:
5
6
  priority: high
@@ -0,0 +1,213 @@
1
+ ---
2
+ description: Edit an existing epic's fields (title, owner, goal, status)
3
+ argument-hint: "EPIC=<EP-ID> [TITLE=<text>] [OWNER=<id>] [GOAL=<text>] [STATUS=<status>]"
4
+ compact_context:
5
+ priority: high
6
+ preserve_rules:
7
+ - "ACTIVE COMMAND: /agileflow:epic:edit - Edit epic fields with diff-preview-confirm"
8
+ - "{{RULES:json_operations}}"
9
+ - "{{RULES:user_confirmation}}"
10
+ - "{{RULES:file_preview}}"
11
+ - "MUST read current epic from status.json BEFORE proposing changes"
12
+ - "MUST show diff of old vs new values"
13
+ - "MUST confirm with AskUserQuestion before writing"
14
+ - "MUST log edit event to bus/log.jsonl"
15
+ - "MUST update epic file in docs/05-epics/ if it exists"
16
+ state_fields:
17
+ - epic_id
18
+ - fields_changed
19
+ ---
20
+
21
+ # /agileflow:epic:edit
22
+
23
+ Edit an existing epic's metadata fields with diff preview and confirmation.
24
+
25
+ ---
26
+
27
+ ## STEP 0: Gather Context
28
+
29
+ ```bash
30
+ node .agileflow/scripts/obtain-context.js epic:edit
31
+ ```
32
+
33
+ ---
34
+
35
+ <!-- COMPACT_SUMMARY_START -->
36
+ ## Compact Summary
37
+
38
+ **Command**: `/agileflow:epic:edit EPIC=<EP-ID> [TITLE=...] [OWNER=...] [GOAL=...] [STATUS=...]`
39
+ **Purpose**: Edit epic fields in status.json with diff-preview-confirm workflow
40
+
41
+ ### Flow
42
+ 1. Parse EPIC parameter (required) and optional field overrides
43
+ 2. Read current epic from status.json
44
+ 3. Show diff of proposed changes
45
+ 4. Confirm via AskUserQuestion
46
+ 5. Apply changes to status.json
47
+ 6. Update epic file in docs/05-epics/ if it exists
48
+ 7. Log edit event to bus/log.jsonl
49
+
50
+ ### Critical Rules
51
+ - **Diff preview**: Always show old vs new before writing
52
+ - **Confirmation**: Never write without user approval
53
+ - **Bus logging**: Always append epic-edited event
54
+ - **Epic file sync**: Update markdown file if it exists
55
+ - **Validation**: Verify JSON integrity after write
56
+ <!-- COMPACT_SUMMARY_END -->
57
+
58
+ ---
59
+
60
+ ## Arguments
61
+
62
+ | Argument | Required | Description |
63
+ |----------|----------|-------------|
64
+ | EPIC | Yes | Epic ID (e.g., EP-0041) |
65
+ | TITLE | No | New epic title |
66
+ | OWNER | No | New owner (e.g., AG-DEVOPS, AG-API) |
67
+ | GOAL | No | New epic goal description |
68
+ | STATUS | No | New status (ready, active, complete, on-hold) |
69
+
70
+ At least one optional field must be provided (otherwise suggest `/agileflow:epic:view`).
71
+
72
+ ---
73
+
74
+ ## IMMEDIATE ACTIONS
75
+
76
+ ### Step 1: Validate Input
77
+
78
+ If EPIC not provided:
79
+
80
+ ```xml
81
+ <invoke name="AskUserQuestion">
82
+ <parameter name="questions">[{
83
+ "question": "Which epic would you like to edit?",
84
+ "header": "Select",
85
+ "multiSelect": false,
86
+ "options": [
87
+ {"label": "Enter epic ID", "description": "Provide an EP-XXXX identifier"}
88
+ ]
89
+ }]</parameter>
90
+ </invoke>
91
+ ```
92
+
93
+ ### Step 2: Read Current Epic
94
+
95
+ Read the epic entry from `docs/09-agents/status.json`:
96
+
97
+ ```javascript
98
+ const data = JSON.parse(fs.readFileSync('docs/09-agents/status.json', 'utf8'));
99
+ const epic = data.epics[epicId];
100
+ ```
101
+
102
+ If epic not found, show error: "Epic {EPIC} not found in status.json"
103
+
104
+ ### Step 3: Build Change Set
105
+
106
+ Compare provided fields against current values. Skip fields that match current values (no-op).
107
+
108
+ If no fields would change, inform user: "No changes detected. Current values match provided values."
109
+
110
+ ### Step 4: Show Diff Preview
111
+
112
+ Display a clear diff of what will change:
113
+
114
+ ```markdown
115
+ ## Editing EP-0041: Current Title
116
+
117
+ | Field | Current | New |
118
+ |-------|---------|-----|
119
+ | title | "DX Quick Wins" | "DX Quick Wins - March 2026" |
120
+ | owner | AG-DEVOPS | AG-API |
121
+ | status | ready | active |
122
+
123
+ Files modified:
124
+ 1. docs/09-agents/status.json (epic entry update)
125
+ 2. docs/05-epics/EP-0041-*.md (if exists, update frontmatter)
126
+ 3. docs/09-agents/bus/log.jsonl (edit event append)
127
+ ```
128
+
129
+ ### Step 5: Confirm Changes
130
+
131
+ ```xml
132
+ <invoke name="AskUserQuestion">
133
+ <parameter name="questions">[{
134
+ "question": "Apply these changes to EP-0041?",
135
+ "header": "Confirm edit",
136
+ "multiSelect": false,
137
+ "options": [
138
+ {"label": "Yes, apply changes (Recommended)", "description": "Update status.json and log edit event"},
139
+ {"label": "No, cancel", "description": "Discard changes"}
140
+ ]
141
+ }]</parameter>
142
+ </invoke>
143
+ ```
144
+
145
+ ### Step 6: Apply Changes
146
+
147
+ On confirmation:
148
+
149
+ 1. **Update status.json** using Edit tool or jq:
150
+ - Update only the changed fields in the epic entry
151
+ - Set `updated` timestamp to current ISO date
152
+
153
+ 2. **Update epic file** (if exists in `docs/05-epics/`):
154
+ - Find matching file: `docs/05-epics/EP-XXXX-*.md`
155
+ - Update title in heading and frontmatter
156
+ - Update owner, status, goal fields
157
+
158
+ 3. **Validate JSON**:
159
+ ```bash
160
+ node -e "JSON.parse(require('fs').readFileSync('docs/09-agents/status.json','utf8')); console.log('valid')"
161
+ ```
162
+
163
+ 4. **Append to bus/log.jsonl**:
164
+ ```json
165
+ {"ts":"<ISO>","type":"epic-edited","from":"USER","epic":"<EPIC>","changes":{"field":"old_value->new_value"},"text":"Epic edited: <changed fields>"}
166
+ ```
167
+
168
+ ### Step 7: Confirm Success
169
+
170
+ ```
171
+ Epic EP-0041 updated:
172
+ title: "DX Quick Wins" -> "DX Quick Wins - March 2026"
173
+ status: ready -> active
174
+ ```
175
+
176
+ ---
177
+
178
+ ## Example Usage
179
+
180
+ ```bash
181
+ # Edit title
182
+ /agileflow:epic:edit EPIC=EP-0041 TITLE="Updated Title"
183
+
184
+ # Change owner and status
185
+ /agileflow:epic:edit EPIC=EP-0041 OWNER=AG-API STATUS=active
186
+
187
+ # Update goal
188
+ /agileflow:epic:edit EPIC=EP-0041 GOAL="New goal description for this epic"
189
+
190
+ # Multiple fields at once
191
+ /agileflow:epic:edit EPIC=EP-0041 TITLE="New Title" OWNER=AG-UI STATUS=active
192
+ ```
193
+
194
+ ---
195
+
196
+ ## Rules
197
+
198
+ - **Always preview**: Show diff before applying
199
+ - **Always confirm**: Use AskUserQuestion before writes
200
+ - **Always log**: Append edit event to bus/log.jsonl
201
+ - **Always validate**: Check JSON integrity after write
202
+ - **Sync epic file**: Update docs/05-epics/ markdown if it exists
203
+ - **No silent changes**: Every change must be visible to the user
204
+
205
+ ---
206
+
207
+ ## Related Commands
208
+
209
+ - `/agileflow:epic:view` - View epic details
210
+ - `/agileflow:epic:list` - List all epics
211
+ - `/agileflow:epic` - Create new epic
212
+ - `/agileflow:story:edit` - Edit story fields
213
+ - `/agileflow:status` - Quick status update
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  description: Create a new epic with stories
3
+ phase: pre-story
3
4
  argument-hint: "EPIC=<EP-ID> TITLE=<text> OWNER=<id> GOAL=<text> [STORIES=<list>] [RESEARCH=<file>]"
4
5
  compact_context:
5
6
  priority: high