maestro-flow 0.3.9 → 0.3.11

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 (281) hide show
  1. package/.claude/agents/workflow-collab-planner.md +1 -1
  2. package/.claude/agents/workflow-executor.md +1 -1
  3. package/.claude/agents/workflow-plan-checker.md +1 -1
  4. package/.claude/agents/workflow-planner.md +1 -1
  5. package/.claude/commands/learn-decompose.md +176 -176
  6. package/.claude/commands/learn-follow.md +167 -167
  7. package/.claude/commands/learn-retro.md +1 -1
  8. package/.claude/commands/maestro-analyze.md +46 -3
  9. package/.claude/commands/maestro-coordinate.md +1 -3
  10. package/.claude/commands/maestro-execute.md +14 -0
  11. package/.claude/commands/maestro-plan.md +16 -0
  12. package/.claude/commands/manage-harvest.md +131 -131
  13. package/.claude/commands/manage-issue-discover.md +2 -2
  14. package/.claude/commands/manage-issue.md +5 -5
  15. package/.claude/commands/spec-add.md +67 -56
  16. package/.claude/commands/spec-load.md +66 -64
  17. package/.claude/commands/spec-setup.md +5 -9
  18. package/.codex/skills/learn-decompose/SKILL.md +119 -0
  19. package/.codex/skills/learn-follow/SKILL.md +83 -0
  20. package/.codex/skills/learn-investigate/SKILL.md +83 -0
  21. package/.codex/skills/learn-retro/SKILL.md +83 -0
  22. package/.codex/skills/learn-second-opinion/SKILL.md +86 -0
  23. package/.codex/skills/maestro/SKILL.md +335 -0
  24. package/.codex/skills/maestro-analyze/SKILL.md +84 -75
  25. package/.codex/skills/maestro-brainstorm/SKILL.md +452 -463
  26. package/.codex/skills/maestro-chain/SKILL.md +233 -0
  27. package/.codex/skills/maestro-coordinate/SKILL.md +167 -278
  28. package/.codex/skills/maestro-execute/SKILL.md +435 -438
  29. package/.codex/skills/maestro-fork/SKILL.md +68 -0
  30. package/.codex/skills/maestro-init/SKILL.md +171 -167
  31. package/.codex/skills/maestro-learn/SKILL.md +80 -0
  32. package/.codex/skills/maestro-link-coordinate/SKILL.md +224 -220
  33. package/.codex/skills/maestro-merge/SKILL.md +62 -0
  34. package/.codex/skills/maestro-milestone-audit/SKILL.md +108 -103
  35. package/.codex/skills/maestro-milestone-complete/SKILL.md +155 -149
  36. package/.codex/skills/maestro-milestone-release/SKILL.md +70 -0
  37. package/.codex/skills/maestro-overlay/SKILL.md +188 -185
  38. package/.codex/skills/maestro-plan/SKILL.md +66 -69
  39. package/.codex/skills/maestro-quick/SKILL.md +26 -23
  40. package/.codex/skills/maestro-roadmap/SKILL.md +65 -73
  41. package/.codex/skills/maestro-spec-generate/SKILL.md +66 -74
  42. package/.codex/skills/maestro-ui-design/SKILL.md +34 -31
  43. package/.codex/skills/maestro-verify/SKILL.md +556 -566
  44. package/.codex/skills/manage-codebase-rebuild/SKILL.md +397 -405
  45. package/.codex/skills/manage-codebase-refresh/SKILL.md +93 -82
  46. package/.codex/skills/manage-harvest/SKILL.md +82 -0
  47. package/.codex/skills/manage-issue/SKILL.md +80 -65
  48. package/.codex/skills/manage-issue-discover/SKILL.md +491 -503
  49. package/.codex/skills/manage-learn/SKILL.md +190 -186
  50. package/.codex/skills/manage-memory/SKILL.md +95 -72
  51. package/.codex/skills/manage-memory-capture/SKILL.md +99 -86
  52. package/.codex/skills/manage-status/SKILL.md +102 -89
  53. package/.codex/skills/quality-business-test/SKILL.md +228 -223
  54. package/.codex/skills/quality-debug/SKILL.md +54 -66
  55. package/.codex/skills/quality-integration-test/SKILL.md +532 -544
  56. package/.codex/skills/quality-refactor/SKILL.md +197 -191
  57. package/.codex/skills/quality-retrospective/SKILL.md +512 -505
  58. package/.codex/skills/quality-review/SKILL.md +93 -105
  59. package/.codex/skills/quality-sync/SKILL.md +101 -89
  60. package/.codex/skills/quality-test/SKILL.md +202 -198
  61. package/.codex/skills/quality-test-gen/SKILL.md +93 -104
  62. package/.codex/skills/spec-add/SKILL.md +58 -39
  63. package/.codex/skills/spec-load/SKILL.md +45 -40
  64. package/.codex/skills/spec-map/SKILL.md +180 -182
  65. package/.codex/skills/spec-setup/SKILL.md +94 -76
  66. package/.codex/skills/team-coordinate/SKILL.md +346 -357
  67. package/.codex/skills/team-executor/SKILL.md +70 -112
  68. package/.codex/skills/team-lifecycle-v4/SKILL.md +311 -299
  69. package/.codex/skills/team-quality-assurance/SKILL.md +234 -227
  70. package/.codex/skills/team-review/SKILL.md +232 -225
  71. package/.codex/skills/team-tech-debt/SKILL.md +78 -100
  72. package/.codex/skills/team-testing/SKILL.md +242 -235
  73. package/.codex/skills/wiki-connect/SKILL.md +75 -0
  74. package/.codex/skills/wiki-digest/SKILL.md +87 -0
  75. package/README.md +14 -11
  76. package/README.zh-CN.md +14 -11
  77. package/chains/issue-lifecycle.json +13 -13
  78. package/chains/singles/issue-analyze.json +3 -3
  79. package/chains/singles/issue-execute.json +3 -3
  80. package/chains/singles/issue-plan.json +3 -3
  81. package/dashboard/dist-server/dashboard/src/server/commander/commander-agent.js +2 -2
  82. package/dashboard/dist-server/dashboard/src/server/commander/commander-agent.js.map +1 -1
  83. package/dashboard/dist-server/dashboard/src/server/coordinator/chain-map.js +3 -3
  84. package/dashboard/dist-server/dashboard/src/server/coordinator/chain-map.js.map +1 -1
  85. package/dashboard/dist-server/dashboard/src/server/routes/issues.js +34 -0
  86. package/dashboard/dist-server/dashboard/src/server/routes/issues.js.map +1 -1
  87. package/dashboard/dist-server/dashboard/src/server/routes/specs.d.ts +1 -1
  88. package/dashboard/dist-server/dashboard/src/server/routes/specs.js +75 -30
  89. package/dashboard/dist-server/dashboard/src/server/routes/specs.js.map +1 -1
  90. package/dashboard/dist-server/dashboard/src/server/state/event-bus.d.ts +5 -0
  91. package/dashboard/dist-server/dashboard/src/server/state/event-bus.js +5 -0
  92. package/dashboard/dist-server/dashboard/src/server/state/event-bus.js.map +1 -1
  93. package/dashboard/dist-server/dashboard/src/server/ws/handlers/execution-handler.js +2 -3
  94. package/dashboard/dist-server/dashboard/src/server/ws/handlers/execution-handler.js.map +1 -1
  95. package/dashboard/dist-server/dashboard/src/shared/constants.js +5 -0
  96. package/dashboard/dist-server/dashboard/src/shared/constants.js.map +1 -1
  97. package/dashboard/dist-server/dashboard/src/shared/issue-types.d.ts +5 -0
  98. package/dashboard/dist-server/dashboard/src/shared/issue-types.js.map +1 -1
  99. package/dashboard/dist-server/dashboard/src/shared/normalize-task.d.ts +2 -0
  100. package/dashboard/dist-server/dashboard/src/shared/normalize-task.js +75 -0
  101. package/dashboard/dist-server/dashboard/src/shared/normalize-task.js.map +1 -0
  102. package/dashboard/dist-server/dashboard/src/shared/team-types.d.ts +21 -0
  103. package/dashboard/dist-server/dashboard/src/shared/team-types.js.map +1 -1
  104. package/dashboard/dist-server/dashboard/src/shared/types.d.ts +3 -2
  105. package/dashboard/dist-server/dashboard/src/shared/ws-protocol.d.ts +1 -1
  106. package/dashboard/dist-server/dashboard/src/shared/ws-protocol.js.map +1 -1
  107. package/dashboard/dist-server/src/hooks/constants.d.ts +92 -12
  108. package/dashboard/dist-server/src/hooks/constants.js +151 -16
  109. package/dashboard/dist-server/src/hooks/constants.js.map +1 -1
  110. package/dashboard/dist-server/src/types/index.d.ts +5 -0
  111. package/dist/src/commands/collab.d.ts +1 -34
  112. package/dist/src/commands/collab.d.ts.map +1 -1
  113. package/dist/src/commands/collab.js +8 -76
  114. package/dist/src/commands/collab.js.map +1 -1
  115. package/dist/src/commands/hooks.d.ts +5 -1
  116. package/dist/src/commands/hooks.d.ts.map +1 -1
  117. package/dist/src/commands/hooks.js +115 -10
  118. package/dist/src/commands/hooks.js.map +1 -1
  119. package/dist/src/commands/install-ui/InstallConfirm.d.ts +3 -1
  120. package/dist/src/commands/install-ui/InstallConfirm.d.ts.map +1 -1
  121. package/dist/src/commands/install-ui/InstallConfirm.js +3 -1
  122. package/dist/src/commands/install-ui/InstallConfirm.js.map +1 -1
  123. package/dist/src/commands/install-ui/InstallExecution.d.ts.map +1 -1
  124. package/dist/src/commands/install-ui/InstallExecution.js +5 -1
  125. package/dist/src/commands/install-ui/InstallExecution.js.map +1 -1
  126. package/dist/src/commands/install-ui/InstallFlow.d.ts.map +1 -1
  127. package/dist/src/commands/install-ui/InstallFlow.js +7 -3
  128. package/dist/src/commands/install-ui/InstallFlow.js.map +1 -1
  129. package/dist/src/commands/install-ui/StatuslineConfig.d.ts +6 -1
  130. package/dist/src/commands/install-ui/StatuslineConfig.d.ts.map +1 -1
  131. package/dist/src/commands/install-ui/StatuslineConfig.js +27 -5
  132. package/dist/src/commands/install-ui/StatuslineConfig.js.map +1 -1
  133. package/dist/src/commands/spec.d.ts.map +1 -1
  134. package/dist/src/commands/spec.js +7 -2
  135. package/dist/src/commands/spec.js.map +1 -1
  136. package/dist/src/hooks/__tests__/statusline-visual-test.d.ts +7 -0
  137. package/dist/src/hooks/__tests__/statusline-visual-test.d.ts.map +1 -0
  138. package/dist/src/hooks/__tests__/statusline-visual-test.js +236 -0
  139. package/dist/src/hooks/__tests__/statusline-visual-test.js.map +1 -0
  140. package/dist/src/hooks/constants.d.ts +92 -12
  141. package/dist/src/hooks/constants.d.ts.map +1 -1
  142. package/dist/src/hooks/constants.js +151 -16
  143. package/dist/src/hooks/constants.js.map +1 -1
  144. package/dist/src/hooks/guards/index.d.ts +2 -0
  145. package/dist/src/hooks/guards/index.d.ts.map +1 -1
  146. package/dist/src/hooks/guards/index.js +2 -0
  147. package/dist/src/hooks/guards/index.js.map +1 -1
  148. package/dist/src/hooks/guards/preflight-guard.d.ts +29 -0
  149. package/dist/src/hooks/guards/preflight-guard.d.ts.map +1 -0
  150. package/dist/src/hooks/guards/preflight-guard.js +95 -0
  151. package/dist/src/hooks/guards/preflight-guard.js.map +1 -0
  152. package/dist/src/hooks/guards/spec-validator.d.ts +25 -0
  153. package/dist/src/hooks/guards/spec-validator.d.ts.map +1 -0
  154. package/dist/src/hooks/guards/spec-validator.js +66 -0
  155. package/dist/src/hooks/guards/spec-validator.js.map +1 -0
  156. package/dist/src/hooks/index.d.ts +1 -0
  157. package/dist/src/hooks/index.d.ts.map +1 -1
  158. package/dist/src/hooks/index.js +1 -0
  159. package/dist/src/hooks/index.js.map +1 -1
  160. package/dist/src/hooks/keyword-spec-injector.d.ts +21 -0
  161. package/dist/src/hooks/keyword-spec-injector.d.ts.map +1 -0
  162. package/dist/src/hooks/keyword-spec-injector.js +96 -0
  163. package/dist/src/hooks/keyword-spec-injector.js.map +1 -0
  164. package/dist/src/hooks/plugins/spec-injection-plugin.d.ts +2 -1
  165. package/dist/src/hooks/plugins/spec-injection-plugin.d.ts.map +1 -1
  166. package/dist/src/hooks/plugins/spec-injection-plugin.js +21 -12
  167. package/dist/src/hooks/plugins/spec-injection-plugin.js.map +1 -1
  168. package/dist/src/hooks/preflight-core.d.ts +37 -0
  169. package/dist/src/hooks/preflight-core.d.ts.map +1 -0
  170. package/dist/src/hooks/preflight-core.js +86 -0
  171. package/dist/src/hooks/preflight-core.js.map +1 -0
  172. package/dist/src/hooks/spec-bridge.d.ts +40 -0
  173. package/dist/src/hooks/spec-bridge.d.ts.map +1 -0
  174. package/dist/src/hooks/spec-bridge.js +97 -0
  175. package/dist/src/hooks/spec-bridge.js.map +1 -0
  176. package/dist/src/hooks/spec-injector.d.ts.map +1 -1
  177. package/dist/src/hooks/spec-injector.js +18 -12
  178. package/dist/src/hooks/spec-injector.js.map +1 -1
  179. package/dist/src/hooks/statusline.d.ts +8 -17
  180. package/dist/src/hooks/statusline.d.ts.map +1 -1
  181. package/dist/src/hooks/statusline.js +269 -112
  182. package/dist/src/hooks/statusline.js.map +1 -1
  183. package/dist/src/i18n/locales/en.d.ts.map +1 -1
  184. package/dist/src/i18n/locales/en.js +5 -0
  185. package/dist/src/i18n/locales/en.js.map +1 -1
  186. package/dist/src/i18n/locales/zh.d.ts.map +1 -1
  187. package/dist/src/i18n/locales/zh.js +5 -0
  188. package/dist/src/i18n/locales/zh.js.map +1 -1
  189. package/dist/src/i18n/types.d.ts +5 -0
  190. package/dist/src/i18n/types.d.ts.map +1 -1
  191. package/dist/src/team/phase-orchestrator.d.ts +52 -0
  192. package/dist/src/team/phase-orchestrator.d.ts.map +1 -0
  193. package/dist/src/team/phase-orchestrator.js +165 -0
  194. package/dist/src/team/phase-orchestrator.js.map +1 -0
  195. package/dist/src/team/phase-types.d.ts +51 -0
  196. package/dist/src/team/phase-types.d.ts.map +1 -0
  197. package/dist/src/team/phase-types.js +41 -0
  198. package/dist/src/team/phase-types.js.map +1 -0
  199. package/dist/src/tools/collab-adapter.d.ts +17 -0
  200. package/dist/src/tools/collab-adapter.d.ts.map +1 -1
  201. package/dist/src/tools/collab-adapter.js +138 -0
  202. package/dist/src/tools/collab-adapter.js.map +1 -1
  203. package/dist/src/tools/index.d.ts.map +1 -1
  204. package/dist/src/tools/index.js +6 -0
  205. package/dist/src/tools/index.js.map +1 -1
  206. package/dist/src/tools/merge-validator.d.ts +24 -0
  207. package/dist/src/tools/merge-validator.d.ts.map +1 -0
  208. package/dist/src/tools/merge-validator.js +220 -0
  209. package/dist/src/tools/merge-validator.js.map +1 -0
  210. package/dist/src/tools/spec-entry-parser.d.ts +56 -0
  211. package/dist/src/tools/spec-entry-parser.d.ts.map +1 -0
  212. package/dist/src/tools/spec-entry-parser.js +196 -0
  213. package/dist/src/tools/spec-entry-parser.js.map +1 -0
  214. package/dist/src/tools/spec-init.d.ts.map +1 -1
  215. package/dist/src/tools/spec-init.js +66 -92
  216. package/dist/src/tools/spec-init.js.map +1 -1
  217. package/dist/src/tools/spec-keyword-index.d.ts +30 -0
  218. package/dist/src/tools/spec-keyword-index.d.ts.map +1 -0
  219. package/dist/src/tools/spec-keyword-index.js +101 -0
  220. package/dist/src/tools/spec-keyword-index.js.map +1 -0
  221. package/dist/src/tools/spec-loader.d.ts +3 -3
  222. package/dist/src/tools/spec-loader.d.ts.map +1 -1
  223. package/dist/src/tools/spec-loader.js +49 -23
  224. package/dist/src/tools/spec-loader.js.map +1 -1
  225. package/dist/src/tools/team-agents.d.ts +27 -0
  226. package/dist/src/tools/team-agents.d.ts.map +1 -0
  227. package/dist/src/tools/team-agents.js +362 -0
  228. package/dist/src/tools/team-agents.js.map +1 -0
  229. package/dist/src/tools/team-mailbox.d.ts +40 -0
  230. package/dist/src/tools/team-mailbox.d.ts.map +1 -0
  231. package/dist/src/tools/team-mailbox.js +384 -0
  232. package/dist/src/tools/team-mailbox.js.map +1 -0
  233. package/dist/src/tools/team-msg.d.ts +17 -8
  234. package/dist/src/tools/team-msg.d.ts.map +1 -1
  235. package/dist/src/tools/team-msg.js +110 -13
  236. package/dist/src/tools/team-msg.js.map +1 -1
  237. package/dist/src/tools/team-tasks-mcp.d.ts +27 -0
  238. package/dist/src/tools/team-tasks-mcp.d.ts.map +1 -0
  239. package/dist/src/tools/team-tasks-mcp.js +408 -0
  240. package/dist/src/tools/team-tasks-mcp.js.map +1 -0
  241. package/dist/src/types/index.d.ts +5 -0
  242. package/dist/src/types/index.d.ts.map +1 -1
  243. package/package.json +2 -1
  244. package/templates/cli/prompts/workflow-skill-conflict-patterns.txt +3 -3
  245. package/templates/cli/prompts/workflow-skill-lessons-learned.txt +3 -3
  246. package/templates/search-tools.md +1 -1
  247. package/workflows/analyze.md +816 -816
  248. package/workflows/brainstorm.md +471 -471
  249. package/workflows/cli-tools-usage.md +44 -27
  250. package/workflows/codebase-rebuild.md +332 -332
  251. package/workflows/codebase-refresh.md +240 -240
  252. package/workflows/delegate-usage.md +3 -3
  253. package/workflows/execute.md +1 -1
  254. package/workflows/harvest.md +420 -420
  255. package/workflows/integration-test.md +343 -343
  256. package/workflows/issue-analyze.md +6 -2
  257. package/workflows/issue-discover.md +414 -414
  258. package/workflows/issue-execute.md +6 -3
  259. package/workflows/issue-plan.md +5 -2
  260. package/workflows/maestro-coordinate.codex.md +281 -470
  261. package/workflows/maestro-coordinate.md +14 -14
  262. package/workflows/maestro-link-coordinate.md +2 -2
  263. package/workflows/maestro.codex.md +710 -0
  264. package/workflows/maestro.md +10 -11
  265. package/workflows/map.md +111 -111
  266. package/workflows/milestone-complete.md +176 -176
  267. package/workflows/plan.md +1 -1
  268. package/workflows/quick.md +497 -497
  269. package/workflows/refactor.md +300 -300
  270. package/workflows/retrospective.md +1 -1
  271. package/workflows/roadmap.md +335 -335
  272. package/workflows/spec-generate.md +640 -640
  273. package/workflows/specs-add.md +46 -81
  274. package/workflows/specs-load.md +15 -17
  275. package/workflows/specs-setup.md +40 -161
  276. package/.claude/commands/manage-issue-analyze.md +0 -62
  277. package/.claude/commands/manage-issue-execute.md +0 -73
  278. package/.claude/commands/manage-issue-plan.md +0 -62
  279. package/.codex/skills/manage-issue-analyze/SKILL.md +0 -207
  280. package/.codex/skills/manage-issue-execute/SKILL.md +0 -200
  281. package/.codex/skills/manage-issue-plan/SKILL.md +0 -186
@@ -1,131 +1,131 @@
1
- ---
2
- name: manage-harvest
3
- description: Extract knowledge from workflow artifacts and route to wiki / spec / issue stores
4
- argument-hint: "[<session-id|path>] [--to wiki|spec|issue|auto] [--source <type>] [--recent N] [--dry-run] [-y]"
5
- allowed-tools:
6
- - Read
7
- - Write
8
- - Edit
9
- - Bash
10
- - Glob
11
- - Grep
12
- - Agent
13
- - AskUserQuestion
14
- ---
15
- <purpose>
16
- Extract knowledge fragments from workflow artifacts (analysis results, brainstorm outputs, debug sessions, lite-plan/fix results, scratchpad notes, completed sessions) and route them into the project's three knowledge stores: wiki entries, spec conventions, and trackable issues.
17
-
18
- Complements `quality-retrospective` (which is phase-scoped) by harvesting from **any** workflow artifact. Prevents knowledge loss from completed analysis and planning sessions that would otherwise only exist as stale files.
19
-
20
- **Closed-loop**: harvest extracts → wiki/spec/issue stores → downstream commands consume (wiki-digest, spec-load, manage-issue-plan).
21
- </purpose>
22
-
23
- <required_reading>
24
- @~/.maestro/workflows/harvest.md
25
- </required_reading>
26
-
27
- <deferred_reading>
28
- - @~/.maestro/workflows/issue.md (issues.jsonl schema for issue routing — read when creating issues in Stage 6c)
29
- - @~/.maestro/workflows/specs-add.md (spec entry format — read when routing to spec in Stage 6b)
30
- </deferred_reading>
31
-
32
- <context>
33
- Arguments: $ARGUMENTS
34
-
35
- **Modes (auto-detected):**
36
- - No arguments → `scan` mode: discover all harvestable artifacts, interactive selection
37
- - `<session-id>` (e.g., `ANL-auth-20260410`, `WFS-xxx`) → `session` mode: harvest specific session
38
- - `<path>` (e.g., `.workflow/.analysis/ANL-auth-20260410/`) → `path` mode: harvest from explicit directory
39
-
40
- **Flags:**
41
- - `--to <target>` — Force routing: `wiki`, `spec`, `issue`, `auto` (default: `auto`)
42
- - `--source <type>` — Filter source type: `analysis`, `brainstorm`, `debug`, `lite-plan`, `lite-fix`, `scratchpad`, `session`, `learning`, `all` (default: `all`)
43
- - `--recent N` — Only artifacts updated within last N days (default: 30)
44
- - `--dry-run` — Preview extraction and routing without writing
45
- - `-y` / `--yes` — Skip confirmation prompts
46
- - `--min-confidence N` — Minimum extraction confidence 0.0-1.0 (default: 0.5)
47
-
48
- **Source registry (scan paths):**
49
- | Source Type | Scan Path | Key Files |
50
- |-------------|-----------|-----------|
51
- | `analysis` | `.workflow/.analysis/ANL-*/` | `conclusions.json`, `*.md` |
52
- | `brainstorm` | `.workflow/scratch/brainstorm-*/` | `guidance-specification.md` |
53
- | `lite-plan` | `.workflow/.lite-plan/*/` | `plan.json`, `plan-overview.md` |
54
- | `lite-fix` | `.workflow/.lite-fix/*/` | `fix-plan.json` |
55
- | `debug` | `.workflow/.debug/*/` | `debug-log.md`, `hypothesis-*.md` |
56
- | `scratchpad` | `.workflow/.scratchpad/` | `*.md`, `*.json` |
57
- | `session` | `.workflow/active/WFS-*/` | `workflow-session.json` |
58
- | `learning` | `.workflow/learning/` | `lessons.jsonl`, `digest-*.md` |
59
-
60
- **Storage written:**
61
- - `.workflow/harvest/harvest-log.jsonl` — provenance log (prevents duplicate harvesting)
62
- - `.workflow/harvest/harvest-report-{date}.md` — per-run report
63
- - Wiki entries via `maestro wiki create`
64
- - Spec entries via `Skill({ skill: "spec-add" })`
65
- - Issue entries appended to `.workflow/issues/issues.jsonl`
66
-
67
- **Storage read (never modified):**
68
- - All artifact source files (read-only until routing stage)
69
- - `.workflow/harvest/harvest-log.jsonl` (dedup check)
70
- </context>
71
-
72
- <execution>
73
- Follow '~/.maestro/workflows/harvest.md' Stages 1–8 in order. Key invariants:
74
-
75
- 1. **Read-only until Stage 6** — Stages 1–5 must not write anything. All extraction and classification happens in-memory.
76
- 2. **Dedup before write** — Stage 7 (dedup_check) runs BEFORE each write in Stage 6. Check harvest-log.jsonl, wiki search, issues.jsonl, and learnings.md for existing matches.
77
- 3. **Stable fragment IDs** — `HRV-{8 hex}` from `hash(source_id + content_hash)` so re-runs on same artifacts do not create duplicates.
78
- 4. **Reuse existing routing infrastructure**:
79
- - Wiki: `maestro wiki create --type <type> --slug harvest-<source_type>-<short_id>`
80
- - Spec: `Skill({ skill: "spec-add", args: "<type> <content>" })`
81
- - Issue: append to `issues.jsonl` matching canonical schema from `workflows/issue.md`
82
- 5. **Never modify source artifacts** — harvest is purely extractive. Source files remain untouched.
83
- 6. **Confidence filtering** — fragments below `--min-confidence` are logged but not routed.
84
- 7. **Provenance tracking** — every routed item logged to `harvest-log.jsonl` with fragment_id, source reference, and target reference.
85
-
86
- **Fragment extraction uses source-specific parsing** (see harvest.md Stage 3b for per-source patterns). The agent should read each artifact file and identify discrete knowledge items: findings, decisions, patterns, bugs, risks, tasks, lessons, recommendations.
87
-
88
- **Classification uses category-to-target mapping** (see harvest.md Stage 4). Override with `--to` flag if user wants all items in one store.
89
-
90
- **Next-step routing on completion:**
91
- - Review wiki entries → `maestro wiki list --type note`
92
- - Connect wiki graph → `/wiki-connect --fix`
93
- - Triage issues → `/manage-issue list --source harvest`
94
- - View specs → `/spec-load --category general`
95
- - Full retrospective → `/quality-retrospective`
96
- </execution>
97
-
98
- <error_codes>
99
- | Code | Severity | Condition | Recovery |
100
- |------|----------|-----------|----------|
101
- | E001 | error | `.workflow/` not initialized | Run `/maestro-init` first |
102
- | E002 | error | Invalid `--to` target (must be: wiki, spec, issue, auto) | Display valid options |
103
- | E003 | error | Invalid `--source` type | Display valid source types from registry |
104
- | E004 | error | Session ID not found in any source path | Show available sessions with `--source all` |
105
- | E005 | error | Path does not exist or contains no parseable artifacts | Verify path and file structure |
106
- | W001 | warning | No harvestable artifacts found within `--recent` window | Widen time window or check `.workflow/` contents |
107
- | W002 | warning | `maestro wiki create` failed — wiki entries saved to `.workflow/harvest/wiki-pending-*.md` | Apply pending entries manually or retry |
108
- | W003 | warning | Some fragments below confidence threshold — logged but not routed | Lower `--min-confidence` to include |
109
- | W004 | warning | Duplicate fragments skipped | Review harvest-log.jsonl for prior routing |
110
- | W005 | warning | `.workflow/issues/` directory missing | Auto-create directory and empty issues.jsonl |
111
- </error_codes>
112
-
113
- <success_criteria>
114
- - [ ] Mode correctly resolved (scan / session / path)
115
- - [ ] Source artifacts discovered and listed with metadata
116
- - [ ] User selected artifact(s) to harvest (or auto-selected via session/path mode)
117
- - [ ] All files in selected artifacts loaded and parsed
118
- - [ ] Knowledge fragments extracted with category, confidence, tags
119
- - [ ] Fragments filtered by `--min-confidence`
120
- - [ ] Routing classification applied (auto or forced by `--to`)
121
- - [ ] Dedup check passed against harvest-log.jsonl and existing stores
122
- - [ ] If `--dry-run`: preview displayed, no files written
123
- - [ ] If not dry-run: all routed items written to target stores
124
- - [ ] Wiki entries created via `maestro wiki create` (or fallback to pending files)
125
- - [ ] Spec entries added via `spec-add` mechanism
126
- - [ ] Issue entries appended to `issues.jsonl` with canonical schema
127
- - [ ] `harvest-log.jsonl` updated with provenance for each routed item
128
- - [ ] `harvest-report-{date}.md` written with full summary
129
- - [ ] No source artifacts modified
130
- - [ ] Summary displayed with counts and next-step routing
131
- </success_criteria>
1
+ ---
2
+ name: manage-harvest
3
+ description: Extract knowledge from workflow artifacts and route to wiki / spec / issue stores
4
+ argument-hint: "[<session-id|path>] [--to wiki|spec|issue|auto] [--source <type>] [--recent N] [--dry-run] [-y]"
5
+ allowed-tools:
6
+ - Read
7
+ - Write
8
+ - Edit
9
+ - Bash
10
+ - Glob
11
+ - Grep
12
+ - Agent
13
+ - AskUserQuestion
14
+ ---
15
+ <purpose>
16
+ Extract knowledge fragments from workflow artifacts (analysis results, brainstorm outputs, debug sessions, lite-plan/fix results, scratchpad notes, completed sessions) and route them into the project's three knowledge stores: wiki entries, spec conventions, and trackable issues.
17
+
18
+ Complements `quality-retrospective` (which is phase-scoped) by harvesting from **any** workflow artifact. Prevents knowledge loss from completed analysis and planning sessions that would otherwise only exist as stale files.
19
+
20
+ **Closed-loop**: harvest extracts → wiki/spec/issue stores → downstream commands consume (wiki-digest, spec-load, maestro-plan --gaps).
21
+ </purpose>
22
+
23
+ <required_reading>
24
+ @~/.maestro/workflows/harvest.md
25
+ </required_reading>
26
+
27
+ <deferred_reading>
28
+ - @~/.maestro/workflows/issue.md (issues.jsonl schema for issue routing — read when creating issues in Stage 6c)
29
+ - @~/.maestro/workflows/specs-add.md (spec entry format — read when routing to spec in Stage 6b)
30
+ </deferred_reading>
31
+
32
+ <context>
33
+ Arguments: $ARGUMENTS
34
+
35
+ **Modes (auto-detected):**
36
+ - No arguments → `scan` mode: discover all harvestable artifacts, interactive selection
37
+ - `<session-id>` (e.g., `ANL-auth-20260410`, `WFS-xxx`) → `session` mode: harvest specific session
38
+ - `<path>` (e.g., `.workflow/.analysis/ANL-auth-20260410/`) → `path` mode: harvest from explicit directory
39
+
40
+ **Flags:**
41
+ - `--to <target>` — Force routing: `wiki`, `spec`, `issue`, `auto` (default: `auto`)
42
+ - `--source <type>` — Filter source type: `analysis`, `brainstorm`, `debug`, `lite-plan`, `lite-fix`, `scratchpad`, `session`, `learning`, `all` (default: `all`)
43
+ - `--recent N` — Only artifacts updated within last N days (default: 30)
44
+ - `--dry-run` — Preview extraction and routing without writing
45
+ - `-y` / `--yes` — Skip confirmation prompts
46
+ - `--min-confidence N` — Minimum extraction confidence 0.0-1.0 (default: 0.5)
47
+
48
+ **Source registry (scan paths):**
49
+ | Source Type | Scan Path | Key Files |
50
+ |-------------|-----------|-----------|
51
+ | `analysis` | `.workflow/.analysis/ANL-*/` | `conclusions.json`, `*.md` |
52
+ | `brainstorm` | `.workflow/scratch/brainstorm-*/` | `guidance-specification.md` |
53
+ | `lite-plan` | `.workflow/.lite-plan/*/` | `plan.json`, `plan-overview.md` |
54
+ | `lite-fix` | `.workflow/.lite-fix/*/` | `fix-plan.json` |
55
+ | `debug` | `.workflow/.debug/*/` | `debug-log.md`, `hypothesis-*.md` |
56
+ | `scratchpad` | `.workflow/.scratchpad/` | `*.md`, `*.json` |
57
+ | `session` | `.workflow/active/WFS-*/` | `workflow-session.json` |
58
+ | `learning` | `.workflow/learning/` | `lessons.jsonl`, `digest-*.md` |
59
+
60
+ **Storage written:**
61
+ - `.workflow/harvest/harvest-log.jsonl` — provenance log (prevents duplicate harvesting)
62
+ - `.workflow/harvest/harvest-report-{date}.md` — per-run report
63
+ - Wiki entries via `maestro wiki create`
64
+ - Spec entries via `Skill({ skill: "spec-add" })`
65
+ - Issue entries appended to `.workflow/issues/issues.jsonl`
66
+
67
+ **Storage read (never modified):**
68
+ - All artifact source files (read-only until routing stage)
69
+ - `.workflow/harvest/harvest-log.jsonl` (dedup check)
70
+ </context>
71
+
72
+ <execution>
73
+ Follow '~/.maestro/workflows/harvest.md' Stages 1–8 in order. Key invariants:
74
+
75
+ 1. **Read-only until Stage 6** — Stages 1–5 must not write anything. All extraction and classification happens in-memory.
76
+ 2. **Dedup before write** — Stage 7 (dedup_check) runs BEFORE each write in Stage 6. Check harvest-log.jsonl, wiki search, issues.jsonl, and learnings.md for existing matches.
77
+ 3. **Stable fragment IDs** — `HRV-{8 hex}` from `hash(source_id + content_hash)` so re-runs on same artifacts do not create duplicates.
78
+ 4. **Reuse existing routing infrastructure**:
79
+ - Wiki: `maestro wiki create --type <type> --slug harvest-<source_type>-<short_id>`
80
+ - Spec: `Skill({ skill: "spec-add", args: "<category> <content>" })`
81
+ - Issue: append to `issues.jsonl` matching canonical schema from `workflows/issue.md`
82
+ 5. **Never modify source artifacts** — harvest is purely extractive. Source files remain untouched.
83
+ 6. **Confidence filtering** — fragments below `--min-confidence` are logged but not routed.
84
+ 7. **Provenance tracking** — every routed item logged to `harvest-log.jsonl` with fragment_id, source reference, and target reference.
85
+
86
+ **Fragment extraction uses source-specific parsing** (see harvest.md Stage 3b for per-source patterns). The agent should read each artifact file and identify discrete knowledge items: findings, decisions, patterns, bugs, risks, tasks, lessons, recommendations.
87
+
88
+ **Classification uses category-to-target mapping** (see harvest.md Stage 4). Override with `--to` flag if user wants all items in one store.
89
+
90
+ **Next-step routing on completion:**
91
+ - Review wiki entries → `maestro wiki list --type note`
92
+ - Connect wiki graph → `/wiki-connect --fix`
93
+ - Triage issues → `/manage-issue list --source harvest`
94
+ - View specs → `/spec-load --category learning`
95
+ - Full retrospective → `/quality-retrospective`
96
+ </execution>
97
+
98
+ <error_codes>
99
+ | Code | Severity | Condition | Recovery |
100
+ |------|----------|-----------|----------|
101
+ | E001 | error | `.workflow/` not initialized | Run `/maestro-init` first |
102
+ | E002 | error | Invalid `--to` target (must be: wiki, spec, issue, auto) | Display valid options |
103
+ | E003 | error | Invalid `--source` type | Display valid source types from registry |
104
+ | E004 | error | Session ID not found in any source path | Show available sessions with `--source all` |
105
+ | E005 | error | Path does not exist or contains no parseable artifacts | Verify path and file structure |
106
+ | W001 | warning | No harvestable artifacts found within `--recent` window | Widen time window or check `.workflow/` contents |
107
+ | W002 | warning | `maestro wiki create` failed — wiki entries saved to `.workflow/harvest/wiki-pending-*.md` | Apply pending entries manually or retry |
108
+ | W003 | warning | Some fragments below confidence threshold — logged but not routed | Lower `--min-confidence` to include |
109
+ | W004 | warning | Duplicate fragments skipped | Review harvest-log.jsonl for prior routing |
110
+ | W005 | warning | `.workflow/issues/` directory missing | Auto-create directory and empty issues.jsonl |
111
+ </error_codes>
112
+
113
+ <success_criteria>
114
+ - [ ] Mode correctly resolved (scan / session / path)
115
+ - [ ] Source artifacts discovered and listed with metadata
116
+ - [ ] User selected artifact(s) to harvest (or auto-selected via session/path mode)
117
+ - [ ] All files in selected artifacts loaded and parsed
118
+ - [ ] Knowledge fragments extracted with category, confidence, tags
119
+ - [ ] Fragments filtered by `--min-confidence`
120
+ - [ ] Routing classification applied (auto or forced by `--to`)
121
+ - [ ] Dedup check passed against harvest-log.jsonl and existing stores
122
+ - [ ] If `--dry-run`: preview displayed, no files written
123
+ - [ ] If not dry-run: all routed items written to target stores
124
+ - [ ] Wiki entries created via `maestro wiki create` (or fallback to pending files)
125
+ - [ ] Spec entries added via `spec-add` mechanism
126
+ - [ ] Issue entries appended to `issues.jsonl` with canonical schema
127
+ - [ ] `harvest-log.jsonl` updated with provenance for each routed item
128
+ - [ ] `harvest-report-{date}.md` written with full summary
129
+ - [ ] No source artifacts modified
130
+ - [ ] Summary displayed with counts and next-step routing
131
+ </success_criteria>
@@ -20,7 +20,7 @@ Automated issue discovery via multi-perspective codebase analysis (8 perspective
20
20
 
21
21
  For CRUD operations (create, list, update, close, link), use `/manage-issue`.
22
22
 
23
- After discovery, use `/manage-issue-analyze <ISS-ID>` to perform root cause analysis on individual findings.
23
+ After discovery, use `/maestro-analyze --gaps <ISS-ID>` to perform root cause analysis on individual findings.
24
24
  </purpose>
25
25
 
26
26
  <required_reading>
@@ -73,5 +73,5 @@ Follow '~/.maestro/workflows/issue-discover.md' completely.
73
73
  - [ ] Findings deduplicated before issue creation
74
74
  - [ ] Issues appended to issues.jsonl with correct schema
75
75
  - [ ] Discovery session fully traceable via session directory
76
- - [ ] Next step routing: `/manage-issue-analyze <ISS-ID>` for root cause analysis, or `/manage-issue list` to review all issues
76
+ - [ ] Next step routing: `/maestro-analyze --gaps <ISS-ID>` for root cause analysis, or `/manage-issue list` to review all issues
77
77
  </success_criteria>
@@ -16,7 +16,7 @@ Issue lifecycle management for the project issue tracker. Supports create, list,
16
16
 
17
17
  For automated issue discovery, use `/manage-issue-discover`.
18
18
 
19
- **Closed-loop workflow**: After creating an issue, use `/manage-issue-analyze` for root cause analysis, `/manage-issue-plan` for solution planning, and `/manage-issue-execute` for execution.
19
+ **Closed-loop workflow**: After creating an issue, use `/maestro-analyze --gaps <ISS-ID>` for root cause analysis, `/maestro-plan --gaps` for solution planning, and `/maestro-execute` for execution.
20
20
  </purpose>
21
21
 
22
22
  <required_reading>
@@ -48,8 +48,8 @@ Parse subcommand from first token of $ARGUMENTS.
48
48
  Follow '~/.maestro/workflows/issue.md' completely.
49
49
 
50
50
  **Next-step routing on completion:**
51
- - create → `/manage-issue-analyze <ISS-ID>` or `/manage-issue-plan <ISS-ID>`
52
- - list → `/manage-issue-analyze <ISS-ID>` for any open issue
51
+ - create → `/maestro-analyze --gaps <ISS-ID>` or `/maestro-plan --gaps`
52
+ - list → `/maestro-analyze --gaps <ISS-ID>` for any open issue
53
53
  - close → `/manage-status`
54
54
  </execution>
55
55
 
@@ -67,7 +67,7 @@ Follow '~/.maestro/workflows/issue.md' completely.
67
67
  - [ ] Output displayed in appropriate format (table for list, detail for status)
68
68
  - [ ] Cross-references maintained (link creates bidirectional references)
69
69
  - [ ] Next step routing by subcommand:
70
- - create → `/manage-issue-analyze <ISS-ID>` or `/manage-issue-plan <ISS-ID>`
71
- - list → `/manage-issue-analyze <ISS-ID>` for any open issue
70
+ - create → `/maestro-analyze --gaps <ISS-ID>` or `/maestro-plan --gaps`
71
+ - list → `/maestro-analyze --gaps <ISS-ID>` for any open issue
72
72
  - close → `/manage-status`
73
73
  </success_criteria>
@@ -1,56 +1,67 @@
1
- ---
2
- name: spec-add
3
- description: Add a spec entry (bug, pattern, decision, or rule) to the appropriate specs file
4
- argument-hint: "<type> <content>"
5
- allowed-tools:
6
- - Read
7
- - Write
8
- - Bash
9
- - Glob
10
- - Grep
11
- ---
12
- <purpose>
13
- Add a knowledge entry to the project specs system, routing it to the correct file by category.
14
- Each entry is timestamped and appended to learnings.md, then the relevant spec file is updated if the entry warrants a convention or rule change.
15
- Supports four categories: bug fixes, patterns, architectural decisions, and quality rules.
16
- </purpose>
17
-
18
- <required_reading>
19
- @~/.maestro/workflows/specs-add.md
20
- </required_reading>
21
-
22
- <context>
23
- $ARGUMENTS -- expects `<type> <content>` where type is one of: bug, pattern, decision, rule, debug, test, review, validation
24
-
25
- **Type-to-file mapping:**
26
- | Type | Primary file | Secondary update |
27
- |------|-------------|-----------------|
28
- | `bug` | `learnings.md` | -- |
29
- | `pattern` | `learnings.md` | `coding-conventions.md` |
30
- | `decision` | `learnings.md` | `architecture-constraints.md` |
31
- | `rule` | `learnings.md` | `quality-rules.md` |
32
- | `debug` | `learnings.md` | `debug-notes.md` |
33
- | `test` | `learnings.md` | `test-conventions.md` |
34
- | `review` | `learnings.md` | `review-standards.md` |
35
- | `validation` | `learnings.md` | `validation-rules.md` |
36
- </context>
37
-
38
- <execution>
39
- Follow '~/.maestro/workflows/specs-add.md' completely.
40
- </execution>
41
-
42
- <error_codes>
43
- | Code | Severity | Description | Stage |
44
- |------|----------|-------------|-------|
45
- | E001 | fatal | Category and content are both required -- usage: `<type> <content>` | parse_input |
46
- | E002 | fatal | `.workflow/specs/` not initialized -- run `/spec-setup` first | validate_entry |
47
- | E003 | fatal | Invalid category -- must be one of: bug, pattern, decision, rule, debug, test, review, validation | parse_input |
48
- </error_codes>
49
-
50
- <success_criteria>
51
- - [ ] Category parsed and validated as bug/pattern/decision/rule
52
- - [ ] Entry appended to `.workflow/specs/learnings.md` with timestamp
53
- - [ ] Relevant spec file updated (if type is pattern/decision/rule)
54
- - [ ] Confirmation report displayed
55
- - [ ] Next step: `/spec-load --category {type}` to verify, or continue current task
56
- </success_criteria>
1
+ ---
2
+ name: spec-add
3
+ description: Add a spec entry to the appropriate specs file by category
4
+ argument-hint: "<category> <content>"
5
+ allowed-tools:
6
+ - Read
7
+ - Write
8
+ - Bash
9
+ - Glob
10
+ - Grep
11
+ ---
12
+ <purpose>
13
+ Add a knowledge entry to the project specs system using `<spec-entry>` closed-tag format.
14
+ Each category maps 1:1 to a single target file no dual-write.
15
+ </purpose>
16
+
17
+ <required_reading>
18
+ @~/.maestro/workflows/specs-add.md
19
+ </required_reading>
20
+
21
+ <context>
22
+ $ARGUMENTS -- expects `<category> <content>`
23
+
24
+ **Category-to-file mapping (1:1, same as spec-load):**
25
+ | Category | Target file |
26
+ |----------|------------|
27
+ | `coding` | `coding-conventions.md` |
28
+ | `arch` | `architecture-constraints.md` |
29
+ | `quality` | `quality-rules.md` |
30
+ | `debug` | `debug-notes.md` |
31
+ | `test` | `test-conventions.md` |
32
+ | `review` | `review-standards.md` |
33
+ | `learning` | `learnings.md` |
34
+
35
+ **Entry format (closed-tag):**
36
+ ```markdown
37
+ <spec-entry category="{category}" keywords="{auto-extracted}" date="{YYYY-MM-DD}">
38
+
39
+ ### {title}
40
+
41
+ {content}
42
+
43
+ </spec-entry>
44
+ ```
45
+ </context>
46
+
47
+ <execution>
48
+ Follow '~/.maestro/workflows/specs-add.md' completely.
49
+ </execution>
50
+
51
+ <error_codes>
52
+ | Code | Severity | Description | Stage |
53
+ |------|----------|-------------|-------|
54
+ | E001 | fatal | Category and content are both required -- usage: `<category> <content>` | parse_input |
55
+ | E002 | fatal | `.workflow/specs/` not initialized -- run `/spec-setup` first | validate_entry |
56
+ | E003 | fatal | Invalid category -- must be one of: coding, arch, quality, debug, test, review, learning | parse_input |
57
+ </error_codes>
58
+
59
+ <success_criteria>
60
+ - [ ] Category parsed and validated
61
+ - [ ] Keywords auto-extracted from content (3-5 relevant terms)
62
+ - [ ] Entry written in `<spec-entry>` closed-tag format
63
+ - [ ] Entry appended to target file
64
+ - [ ] Confirmation report displayed
65
+ - [ ] Next step: `/spec-load --keyword {keyword}` to verify
66
+ </success_criteria>
67
+ </output>
@@ -1,64 +1,66 @@
1
- ---
2
- name: spec-load
3
- description: Load relevant specs and lessons for current context (used by agents before execution)
4
- argument-hint: "[--category <type>] [--with-lessons] [keyword]"
5
- allowed-tools:
6
- - Read
7
- - Bash
8
- - Glob
9
- - Grep
10
- ---
11
- <purpose>
12
- Load and display relevant spec files for the current working context, optionally filtered by category.
13
- Designed for agents to call before execution to internalize project conventions, constraints, and learnings.
14
- Returns matched sections with file references ranked by relevance.
15
- </purpose>
16
-
17
- <required_reading>
18
- @~/.maestro/workflows/specs-load.md
19
- </required_reading>
20
-
21
- <context>
22
- $ARGUMENTS -- optional `--category <type>` flag and/or keyword to filter specs
23
-
24
- **Category filter** (matches frontmatter `category` field):
25
- | Category | Files loaded |
26
- |----------|-------------|
27
- | `general` | `learnings.md` |
28
- | `exploration` | _(reserved)_ |
29
- | `planning` | `architecture-constraints.md` |
30
- | `execution` | `coding-conventions.md`, `quality-rules.md` |
31
- | `debug` | `debug-notes.md` |
32
- | `test` | `test-conventions.md` |
33
- | `review` | `review-standards.md` |
34
- | `validation` | `validation-rules.md` |
35
- | `all` (default) | All spec files |
36
-
37
- **Keyword:** If provided, search within loaded files for matching sections.
38
- If no arguments, loads all specs for the active phase/task context.
39
-
40
- **Flags:**
41
- - `--with-lessons` — Also search `.workflow/learning/lessons.jsonl` for entries with `category: "gotcha"`, `"antipattern"`, or `"pattern"` relevant to the keyword or current context. Appends matched lessons after spec output. This bridges the gap between specs (prescriptive rules) and lessons (discovered knowledge).
42
- </context>
43
-
44
- <execution>
45
- Follow '~/.maestro/workflows/specs-load.md' completely.
46
- </execution>
47
-
48
- <error_codes>
49
- | Code | Severity | Description | Stage |
50
- |------|----------|-------------|-------|
51
- | E001 | fatal | `.workflow/specs/` not initialized -- run `/spec-setup` first | detect_context |
52
- | W001 | warning | No matching specs found for keyword -- showing all specs in category instead | load_specs |
53
- </error_codes>
54
-
55
- <success_criteria>
56
- - [ ] Category filter parsed correctly (or defaults to all)
57
- - [ ] Spec files resolved and read
58
- - [ ] Keyword filtering applied if provided
59
- - [ ] If `--with-lessons`: lessons.jsonl searched for gotcha/antipattern/pattern entries matching context
60
- - [ ] If `--with-lessons`: matched lessons displayed after specs (max 10, newest first)
61
- - [ ] Results displayed with file:line references
62
- - [ ] Relevant specs loaded into agent context
63
- - [ ] Next step: proceed with current task using loaded specs as context
64
- </success_criteria>
1
+ ---
2
+ name: spec-load
3
+ description: Load relevant specs and lessons for current context (used by agents before execution)
4
+ argument-hint: "[--category <type>] [--keyword <word>] [--with-lessons]"
5
+ allowed-tools:
6
+ - Read
7
+ - Bash
8
+ - Glob
9
+ - Grep
10
+ ---
11
+ <purpose>
12
+ Load and display relevant spec files for the current working context.
13
+ Supports filtering by category (file-level) and keyword (entry-level via `<spec-entry>` tags).
14
+ </purpose>
15
+
16
+ <required_reading>
17
+ @~/.maestro/workflows/specs-load.md
18
+ </required_reading>
19
+
20
+ <context>
21
+ $ARGUMENTS -- optional flags and keyword
22
+
23
+ **Category-to-file mapping (1:1, same as spec-add):**
24
+ | Category | File loaded |
25
+ |----------|------------|
26
+ | `coding` | `coding-conventions.md` |
27
+ | `arch` | `architecture-constraints.md` |
28
+ | `quality` | `quality-rules.md` |
29
+ | `debug` | `debug-notes.md` |
30
+ | `test` | `test-conventions.md` |
31
+ | `review` | `review-standards.md` |
32
+ | `learning` | `learnings.md` |
33
+ | `all` (default) | All spec files |
34
+
35
+ **Flags:**
36
+ - `--category <type>` — Filter by file category (loads one file)
37
+ - `--keyword <word>` Filter entries by keyword attribute in `<spec-entry>` tags. Searches across all files (or within category if combined)
38
+ - `--with-lessons` Also search `.workflow/learning/lessons.jsonl`
39
+
40
+ **Examples:**
41
+ ```
42
+ /spec-load --keyword auth
43
+ /spec-load --category coding --keyword naming
44
+ /spec-load --category arch
45
+ ```
46
+ </context>
47
+
48
+ <execution>
49
+ Follow '~/.maestro/workflows/specs-load.md' completely.
50
+ </execution>
51
+
52
+ <error_codes>
53
+ | Code | Severity | Description | Stage |
54
+ |------|----------|-------------|-------|
55
+ | E001 | fatal | `.workflow/specs/` not initialized -- run `/spec-setup` first | detect_context |
56
+ | W001 | warning | No matching specs found for keyword -- showing all specs in category instead | load_specs |
57
+ </error_codes>
58
+
59
+ <success_criteria>
60
+ - [ ] Category and/or keyword parsed from arguments
61
+ - [ ] Spec files loaded per category mapping
62
+ - [ ] Keyword filtering applied at entry level (via `<spec-entry>` keywords attribute)
63
+ - [ ] Legacy entries filtered by text grep fallback
64
+ - [ ] Results displayed with file:category references
65
+ </success_criteria>
66
+ </output>
@@ -11,7 +11,7 @@ allowed-tools:
11
11
  ---
12
12
  <purpose>
13
13
  Initialize the project-level specs directory by scanning the codebase for conventions, patterns, and tech stack.
14
- Produces four spec files plus a tech profile JSON that downstream agents and commands consume for consistent coding.
14
+ Core files (coding, arch, learning) are always created. Optional files (quality, debug, test, review) are created only when relevant signals are detected.
15
15
  All output lands in `.workflow/specs/` and `.workflow/project-tech.json`.
16
16
  </purpose>
17
17
 
@@ -45,13 +45,9 @@ Follow '~/.maestro/workflows/specs-setup.md' completely.
45
45
 
46
46
  <success_criteria>
47
47
  - [ ] `.workflow/specs/` directory created
48
- - [ ] `coding-conventions.md` written with detected patterns
49
- - [ ] `architecture-constraints.md` written with structural rules
50
- - [ ] `quality-rules.md` written with auto-detected and manual sections
51
- - [ ] `learnings.md` initialized with format instructions
48
+ - [ ] Core files always created: `coding-conventions.md`, `architecture-constraints.md`, `learnings.md`
49
+ - [ ] Optional files created when detected: `quality-rules.md` (linter/CI), `test-conventions.md` (test framework), `debug-notes.md` (on demand), `review-standards.md` (on demand)
52
50
  - [ ] `project-tech.json` written with detected tech stack
53
- - [ ] Report displayed with summary and next steps:
54
- - Build codebase docs → `/manage-codebase-rebuild`
55
- - Load specs for task → `/spec-load`
56
- - Add new knowledge → `/spec-add <type> <content>`
51
+ - [ ] Report displayed with summary and next steps
57
52
  </success_criteria>
53
+ </output>