maestro-flow 0.3.44 → 0.3.46

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 (173) hide show
  1. package/.claude/commands/learn-decompose.md +1 -1
  2. package/.claude/commands/learn-follow.md +1 -1
  3. package/.claude/commands/learn-investigate.md +1 -1
  4. package/.claude/commands/learn-retro.md +1 -1
  5. package/.claude/commands/learn-second-opinion.md +1 -1
  6. package/.claude/commands/maestro-analyze.md +1 -1
  7. package/.claude/commands/maestro-brainstorm.md +1 -1
  8. package/.claude/commands/maestro-execute.md +3 -2
  9. package/.claude/commands/maestro-plan.md +1 -1
  10. package/.claude/commands/maestro-tools-execute.md +14 -14
  11. package/.claude/commands/maestro-tools-register.md +49 -29
  12. package/.claude/commands/manage-knowhow-capture.md +10 -1
  13. package/.claude/commands/quality-debug.md +3 -2
  14. package/.claude/commands/quality-review.md +3 -2
  15. package/.claude/commands/quality-test.md +5 -0
  16. package/.claude/commands/spec-add.md +7 -12
  17. package/.claude/commands/spec-load.md +15 -16
  18. package/.claude/skills/codify-to-knowhow/SKILL.md +1 -1
  19. package/.claude/skills/codify-to-knowhow/phases/04-index-verify.md +1 -1
  20. package/.claude/skills/maestro-help/SKILL.md +264 -0
  21. package/.claude/skills/maestro-help/index/catalog.json +182 -0
  22. package/.claude/skills/maestro-help/phases/01-parse-intent.md +122 -0
  23. package/.claude/skills/maestro-help/phases/02-search-present.md +181 -0
  24. package/.claude/skills/maestro-help/phases/03-workflow-guide.md +186 -0
  25. package/.codex/agents/team-supervisor.toml +40 -0
  26. package/.codex/agents/team-worker.toml +63 -0
  27. package/.codex/skills/codify-to-knowhow/SKILL.md +2 -2
  28. package/.codex/skills/maestro-analyze/SKILL.md +1 -1
  29. package/.codex/skills/maestro-brainstorm/SKILL.md +1 -1
  30. package/.codex/skills/maestro-collab/SKILL.md +1 -1
  31. package/.codex/skills/maestro-execute/SKILL.md +1 -1
  32. package/.codex/skills/maestro-help/SKILL.md +213 -0
  33. package/.codex/skills/maestro-help/catalog.json +182 -0
  34. package/.codex/skills/maestro-milestone-complete/SKILL.md +1 -1
  35. package/.codex/skills/maestro-plan/SKILL.md +1 -1
  36. package/.codex/skills/maestro-roadmap/SKILL.md +1 -1
  37. package/.codex/skills/maestro-tools-execute/SKILL.md +12 -12
  38. package/.codex/skills/maestro-tools-register/SKILL.md +171 -144
  39. package/.codex/skills/maestro-ui-codify/SKILL.md +1 -1
  40. package/.codex/skills/maestro-verify/SKILL.md +1 -1
  41. package/.codex/skills/manage-issue-discover/SKILL.md +1 -1
  42. package/.codex/skills/manage-knowhow-capture/SKILL.md +18 -3
  43. package/.codex/skills/quality-auto-test/SKILL.md +2 -2
  44. package/.codex/skills/quality-debug/SKILL.md +2 -1
  45. package/.codex/skills/quality-refactor/SKILL.md +1 -1
  46. package/.codex/skills/quality-review/SKILL.md +1 -1
  47. package/.codex/skills/quality-test/SKILL.md +11 -1
  48. package/.codex/skills/spec-add/SKILL.md +104 -114
  49. package/.codex/skills/spec-load/SKILL.md +73 -73
  50. package/.codex/skills/team-quality-assurance/roles/executor/role.md +1 -1
  51. package/.codex/skills/team-review/roles/reviewer/role.md +1 -1
  52. package/.codex/skills/team-tech-debt/roles/scanner/role.md +1 -1
  53. package/.codex/skills/team-testing/roles/executor/role.md +1 -1
  54. package/.codex/skills/team-testing/roles/generator/role.md +1 -1
  55. package/dashboard/dist-server/dashboard/src/server/index.js +5 -3
  56. package/dashboard/dist-server/dashboard/src/server/index.js.map +1 -1
  57. package/dashboard/dist-server/dashboard/src/server/routes/board-state.integration.test.js +3 -3
  58. package/dashboard/dist-server/dashboard/src/server/routes/board-state.integration.test.js.map +1 -1
  59. package/dashboard/dist-server/dashboard/src/server/routes/index.js +14 -5
  60. package/dashboard/dist-server/dashboard/src/server/routes/index.js.map +1 -1
  61. package/dashboard/dist-server/dashboard/src/server/routes/maestro-coordinate.d.ts +2 -0
  62. package/dashboard/dist-server/dashboard/src/server/routes/maestro-coordinate.js +181 -0
  63. package/dashboard/dist-server/dashboard/src/server/routes/maestro-coordinate.js.map +1 -0
  64. package/dashboard/dist-server/dashboard/src/server/routes/specs.js +1 -1
  65. package/dashboard/dist-server/dashboard/src/server/routes/specs.js.map +1 -1
  66. package/dashboard/dist-server/dashboard/src/server/routes/wiki.js +0 -2
  67. package/dashboard/dist-server/dashboard/src/server/routes/wiki.js.map +1 -1
  68. package/dashboard/dist-server/dashboard/src/server/state/event-bus.d.ts +2 -0
  69. package/dashboard/dist-server/dashboard/src/server/state/event-bus.js +2 -0
  70. package/dashboard/dist-server/dashboard/src/server/state/event-bus.js.map +1 -1
  71. package/dashboard/dist-server/dashboard/src/server/state/fs-watcher.d.ts +2 -0
  72. package/dashboard/dist-server/dashboard/src/server/state/fs-watcher.js +58 -0
  73. package/dashboard/dist-server/dashboard/src/server/state/fs-watcher.js.map +1 -1
  74. package/dashboard/dist-server/dashboard/src/server/wiki/spec-entry-parser.d.ts +0 -1
  75. package/dashboard/dist-server/dashboard/src/server/wiki/spec-entry-parser.js +6 -23
  76. package/dashboard/dist-server/dashboard/src/server/wiki/spec-entry-parser.js.map +1 -1
  77. package/dashboard/dist-server/dashboard/src/server/wiki/stress.test.js +0 -1
  78. package/dashboard/dist-server/dashboard/src/server/wiki/stress.test.js.map +1 -1
  79. package/dashboard/dist-server/dashboard/src/server/wiki/virtual-wiki-adapters.js +0 -1
  80. package/dashboard/dist-server/dashboard/src/server/wiki/virtual-wiki-adapters.js.map +1 -1
  81. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js +25 -36
  82. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js.map +1 -1
  83. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-types.d.ts +0 -5
  84. package/dashboard/dist-server/dashboard/src/server/wiki/writer.d.ts +0 -2
  85. package/dashboard/dist-server/dashboard/src/server/wiki/writer.js +2 -3
  86. package/dashboard/dist-server/dashboard/src/server/wiki/writer.js.map +1 -1
  87. package/dashboard/dist-server/dashboard/src/server/ws/handlers/agent-handler.d.ts +7 -2
  88. package/dashboard/dist-server/dashboard/src/server/ws/handlers/agent-handler.js +7 -1
  89. package/dashboard/dist-server/dashboard/src/server/ws/handlers/agent-handler.js.map +1 -1
  90. package/dashboard/dist-server/dashboard/src/shared/constants.js +7 -9
  91. package/dashboard/dist-server/dashboard/src/shared/constants.js.map +1 -1
  92. package/dashboard/dist-server/dashboard/src/shared/maestro-session-types.d.ts +113 -0
  93. package/dashboard/dist-server/dashboard/src/shared/maestro-session-types.js +6 -0
  94. package/dashboard/dist-server/dashboard/src/shared/maestro-session-types.js.map +1 -0
  95. package/dashboard/dist-server/dashboard/src/shared/types.d.ts +4 -3
  96. package/dashboard/dist-server/dashboard/src/shared/ws-protocol.d.ts +1 -1
  97. package/dashboard/dist-server/dashboard/src/shared/ws-protocol.js.map +1 -1
  98. package/dashboard/dist-server/src/agents/cli-agent-runner.js +5 -5
  99. package/dashboard/dist-server/src/agents/cli-agent-runner.js.map +1 -1
  100. package/dashboard/dist-server/src/tools/spec-entry-parser.d.ts +3 -9
  101. package/dashboard/dist-server/src/tools/spec-entry-parser.js +9 -31
  102. package/dashboard/dist-server/src/tools/spec-entry-parser.js.map +1 -1
  103. package/dashboard/dist-server/src/tools/spec-loader.d.ts +5 -9
  104. package/dashboard/dist-server/src/tools/spec-loader.js +99 -52
  105. package/dashboard/dist-server/src/tools/spec-loader.js.map +1 -1
  106. package/dist/src/agents/cli-agent-runner.js +5 -5
  107. package/dist/src/agents/cli-agent-runner.js.map +1 -1
  108. package/dist/src/commands/knowhow.d.ts.map +1 -1
  109. package/dist/src/commands/knowhow.js +11 -8
  110. package/dist/src/commands/knowhow.js.map +1 -1
  111. package/dist/src/commands/spec.d.ts.map +1 -1
  112. package/dist/src/commands/spec.js +7 -14
  113. package/dist/src/commands/spec.js.map +1 -1
  114. package/dist/src/commands/wiki.d.ts.map +1 -1
  115. package/dist/src/commands/wiki.js +11 -20
  116. package/dist/src/commands/wiki.js.map +1 -1
  117. package/dist/src/hooks/plugins/spec-injection-plugin.js +17 -14
  118. package/dist/src/hooks/plugins/spec-injection-plugin.js.map +1 -1
  119. package/dist/src/hooks/spec-injector.d.ts +0 -7
  120. package/dist/src/hooks/spec-injector.d.ts.map +1 -1
  121. package/dist/src/hooks/spec-injector.js +41 -81
  122. package/dist/src/hooks/spec-injector.js.map +1 -1
  123. package/dist/src/hooks/wiki-role-loader.d.ts +5 -5
  124. package/dist/src/hooks/wiki-role-loader.d.ts.map +1 -1
  125. package/dist/src/hooks/wiki-role-loader.js +6 -6
  126. package/dist/src/hooks/wiki-role-loader.js.map +1 -1
  127. package/dist/src/tools/spec-entry-parser.d.ts +3 -9
  128. package/dist/src/tools/spec-entry-parser.d.ts.map +1 -1
  129. package/dist/src/tools/spec-entry-parser.js +9 -31
  130. package/dist/src/tools/spec-entry-parser.js.map +1 -1
  131. package/dist/src/tools/spec-init.d.ts.map +1 -1
  132. package/dist/src/tools/spec-init.js +54 -73
  133. package/dist/src/tools/spec-init.js.map +1 -1
  134. package/dist/src/tools/spec-loader.d.ts +5 -9
  135. package/dist/src/tools/spec-loader.d.ts.map +1 -1
  136. package/dist/src/tools/spec-loader.js +99 -52
  137. package/dist/src/tools/spec-loader.js.map +1 -1
  138. package/dist/src/tools/spec-writer.d.ts +1 -1
  139. package/dist/src/tools/spec-writer.d.ts.map +1 -1
  140. package/dist/src/tools/spec-writer.js +2 -2
  141. package/dist/src/tools/spec-writer.js.map +1 -1
  142. package/dist/src/tools/store-knowhow.d.ts.map +1 -1
  143. package/dist/src/tools/store-knowhow.js +15 -6
  144. package/dist/src/tools/store-knowhow.js.map +1 -1
  145. package/package.json +4 -2
  146. package/workflows/analyze.md +2 -2
  147. package/workflows/auto-test.md +2 -2
  148. package/workflows/brainstorm.md +1 -1
  149. package/workflows/codebase-rebuild.md +1 -1
  150. package/workflows/codebase-refresh.md +1 -1
  151. package/workflows/debug.md +1 -1
  152. package/workflows/execute.md +3 -3
  153. package/workflows/integration-test.md +2 -2
  154. package/workflows/issue-discover.md +1 -1
  155. package/workflows/knowhow.md +2 -2
  156. package/workflows/learn.md +1 -1
  157. package/workflows/map.md +1 -1
  158. package/workflows/milestone-complete.md +2 -2
  159. package/workflows/plan.md +1 -1
  160. package/workflows/quick.md +1 -1
  161. package/workflows/refactor.md +1 -1
  162. package/workflows/retrospective.md +3 -3
  163. package/workflows/review.md +1 -1
  164. package/workflows/roadmap-common.md +1 -1
  165. package/workflows/specs-add.md +2 -11
  166. package/workflows/specs-load.md +13 -14
  167. package/workflows/test-gen.md +1 -1
  168. package/workflows/tools-spec.md +27 -53
  169. package/workflows/ui-codify-knowhow.md +1 -1
  170. package/workflows/ui-codify.md +1 -1
  171. package/workflows/verify.md +1 -1
  172. package/.claude/commands/maestro-link-coordinate.md +0 -71
  173. package/.codex/skills/maestro-link-coordinate/SKILL.md +0 -257
@@ -1,9 +1,9 @@
1
1
  /**
2
- * Spec Loader (simplified)
2
+ * Spec Loader
3
3
  *
4
- * Filename-based category routing. No frontmatter dependency.
4
+ * Category-based loading with keyword cross-matching and knowhow tool discovery.
5
5
  * Reads .workflow/specs/*.md, filters by category via static mapping,
6
- * returns concatenated content.
6
+ * discovers knowhow tools with matching category, returns concatenated content.
7
7
  */
8
8
  import { readFileSync, existsSync, readdirSync, mkdirSync, writeFileSync } from 'node:fs';
9
9
  import { join } from 'node:path';
@@ -15,23 +15,10 @@ import { paths } from '../config/paths.js';
15
15
  export const CATEGORY_MAP = {
16
16
  'coding-conventions.md': 'coding',
17
17
  'architecture-constraints.md': 'arch',
18
- 'quality-rules.md': 'quality',
19
18
  'debug-notes.md': 'debug',
20
19
  'test-conventions.md': 'test',
21
20
  'review-standards.md': 'review',
22
21
  'learnings.md': 'learning',
23
- 'tools.md': 'tools',
24
- };
25
- /** File → primary role mapping. Used by --role loading to identify main docs. */
26
- export const FILE_ROLE_MAP = {
27
- 'coding-conventions.md': 'implement',
28
- 'architecture-constraints.md': 'plan',
29
- 'test-conventions.md': 'test',
30
- 'review-standards.md': 'review',
31
- 'debug-notes.md': 'analyze',
32
- 'quality-rules.md': 'review',
33
- 'learnings.md': 'implement',
34
- 'tools.md': '', // no primary role — per-entry roles
35
22
  };
36
23
  const SPECS_DIR = '.workflow/specs';
37
24
  export const TEAM_SPECS_DIR = '.workflow/collab/specs';
@@ -76,11 +63,10 @@ export function loadSpecs(projectPath, category, uid, keyword, scope, options) {
76
63
  // Team/personal are per-user — auto-creating them for arbitrary uids is wrong.
77
64
  autoInitSeeds(join(projectPath, SPECS_DIR));
78
65
  autoInitSeeds(globalDir);
79
- const role = options?.role;
80
66
  // First pass: collect results per layer (skip empty)
81
67
  const layerResults = [];
82
68
  for (const { dir, label } of layers) {
83
- const { sections, matched } = loadFromDir(dir, category, keyword, role);
69
+ const { sections, matched } = loadFromDir(dir, category, keyword);
84
70
  if (sections.length > 0) {
85
71
  layerResults.push({ label, sections, matched });
86
72
  }
@@ -100,6 +86,14 @@ export function loadSpecs(projectPath, category, uid, keyword, scope, options) {
100
86
  allMatched.push(...matched);
101
87
  totalCount += matched.length;
102
88
  }
89
+ // Tool discovery: scan knowhow/ for documents matching category + tool: true
90
+ if (category) {
91
+ const toolSection = discoverKnowhowTools(join(projectPath, '.workflow'), category);
92
+ if (toolSection) {
93
+ allSections.push(toolSection.content);
94
+ totalCount += toolSection.count;
95
+ }
96
+ }
103
97
  return {
104
98
  content: allSections.length > 0
105
99
  ? `# Project Specs (${totalCount} loaded)\n\n${allSections.join('\n\n---\n\n')}`
@@ -131,11 +125,11 @@ function buildLayers(projectPath, uid, scope, globalDir) {
131
125
  * Load spec files from a single directory. Returns empty arrays if the
132
126
  * directory does not exist or is unreadable.
133
127
  *
134
- * When `role` is provided:
135
- * - Primary role docs (FILE_ROLE_MAP match) are loaded in full
136
- * - Other files: only entries with matching roles attr are included
128
+ * When `category` is provided:
129
+ * - Primary category doc is loaded in full
130
+ * - Other files: only entries with matching keywords are included (cross-category)
137
131
  */
138
- function loadFromDir(specsDir, category, keyword, role) {
132
+ function loadFromDir(specsDir, category, keyword) {
139
133
  if (!existsSync(specsDir))
140
134
  return { sections: [], matched: [] };
141
135
  let files;
@@ -148,7 +142,7 @@ function loadFromDir(specsDir, category, keyword, role) {
148
142
  const sections = [];
149
143
  const matched = [];
150
144
  for (const file of files) {
151
- if (!shouldInclude(file, category, role))
145
+ if (!shouldInclude(file, category))
152
146
  continue;
153
147
  const filePath = join(specsDir, file);
154
148
  let raw;
@@ -161,11 +155,11 @@ function loadFromDir(specsDir, category, keyword, role) {
161
155
  const body = stripFrontmatter(raw).trim();
162
156
  if (!body)
163
157
  continue;
164
- // Determine load mode for this file
165
- const fileRole = FILE_ROLE_MAP[file];
166
- const isFullLoad = role && fileRole === role;
158
+ // Primary category doc → full load; other files keyword-filtered only
159
+ const fileCategory = CATEGORY_MAP[file];
160
+ const isPrimaryDoc = category && fileCategory === category;
167
161
  const workflowRoot = join(specsDir, '..');
168
- const formatted = formatFileContent(body, keyword, isFullLoad ? undefined : role, workflowRoot);
162
+ const formatted = formatFileContent(body, keyword, isPrimaryDoc ? undefined : category, workflowRoot);
169
163
  if (formatted) {
170
164
  sections.push(formatted);
171
165
  matched.push(file);
@@ -176,49 +170,50 @@ function loadFromDir(specsDir, category, keyword, role) {
176
170
  // ============================================================================
177
171
  // Internal
178
172
  // ============================================================================
179
- function shouldInclude(filename, category, role) {
180
- // Category filter takes precedence
181
- if (category) {
182
- const cat = CATEGORY_MAP[filename];
183
- return cat ? cat === category : false;
184
- }
185
- // Role filter: include primary role docs + all other files (for entry-level filtering)
186
- if (role) {
187
- const fileRole = FILE_ROLE_MAP[filename];
188
- // Primary doc for this role → always include (full load)
189
- if (fileRole === role)
190
- return true;
191
- // Files with no role mapping or different primary role → include for entry-level filtering
173
+ function shouldInclude(filename, category) {
174
+ if (!category)
175
+ return true; // No filter → load all
176
+ // Category filter: include primary doc + all other files (for keyword cross-matching)
177
+ const cat = CATEGORY_MAP[filename];
178
+ if (!cat)
179
+ return false; // Unknown file
180
+ // Primary category doc → always include (full load)
181
+ if (cat === category)
192
182
  return true;
193
- }
194
- // No filter → load all
183
+ // Other category files → include for keyword-based cross-category matching
195
184
  return true;
196
185
  }
197
186
  /**
198
187
  * Parse file body, strip <spec-entry> tags, format clean output with metadata.
199
188
  * When keyword is provided, only return matching entries.
200
- * When role is provided, only return entries with matching roles attribute.
189
+ * When crossCategory is provided, only return entries whose keywords overlap
190
+ * (cross-category matching for non-primary docs).
201
191
  * Falls back to raw body for files with no structured entries.
202
192
  */
203
- function formatFileContent(body, keyword, role, workflowRoot) {
193
+ function formatFileContent(body, keyword, crossCategory, workflowRoot) {
204
194
  const { entries, legacy } = parseSpecEntries(body);
205
195
  // No structured entries → pass through raw body (or keyword-grep it)
206
196
  if (entries.length === 0 && legacy.length === 0) {
207
- // Role filtering: non-primary docs with no structured entries are skipped
208
- if (role)
197
+ // Cross-category mode: non-primary docs with no structured entries are skipped
198
+ if (crossCategory)
209
199
  return null;
210
200
  if (keyword) {
211
201
  return body.toLowerCase().includes(keyword.toLowerCase()) ? body : null;
212
202
  }
213
203
  return body;
214
204
  }
215
- // Apply role filter at entry level
205
+ // In cross-category mode: only show entries that have keyword overlap
216
206
  let filteredEntries = entries;
217
- if (role) {
218
- filteredEntries = entries.filter(e => e.roles.includes(role));
207
+ if (crossCategory && keyword) {
208
+ const kw = keyword.toLowerCase();
209
+ filteredEntries = entries.filter(e => e.keywords.includes(kw));
219
210
  if (filteredEntries.length === 0)
220
211
  return null;
221
212
  }
213
+ else if (crossCategory) {
214
+ // Cross-category without keyword → skip (no way to match)
215
+ return null;
216
+ }
222
217
  const parts = [];
223
218
  // Separate ref entries (lightweight display) from regular entries
224
219
  const refEntries = filteredEntries.filter(e => e.ref);
@@ -231,7 +226,7 @@ function formatFileContent(body, keyword, role, workflowRoot) {
231
226
  parts.push(formatSpecEntries(matchedRegular));
232
227
  if (matchedRef.length > 0)
233
228
  parts.push(matchedRef.map(e => formatRefEntry(e, workflowRoot)).join('\n\n---\n\n'));
234
- if (!role) {
229
+ if (!crossCategory) {
235
230
  for (const leg of legacy) {
236
231
  if (leg.content.toLowerCase().includes(kw))
237
232
  parts.push(leg.content);
@@ -243,7 +238,7 @@ function formatFileContent(body, keyword, role, workflowRoot) {
243
238
  parts.push(formatSpecEntries(regularEntries));
244
239
  if (refEntries.length > 0)
245
240
  parts.push(refEntries.map(e => formatRefEntry(e, workflowRoot)).join('\n\n---\n\n'));
246
- if (!role) {
241
+ if (!crossCategory) {
247
242
  for (const leg of legacy)
248
243
  parts.push(leg.content);
249
244
  }
@@ -294,6 +289,59 @@ function resolveRefSummary(ref, workflowRoot) {
294
289
  return null;
295
290
  }
296
291
  }
292
+ /**
293
+ * Scan knowhow/ for documents matching category + tool: true in YAML frontmatter.
294
+ * Returns a formatted section with tool summaries and load commands.
295
+ */
296
+ function discoverKnowhowTools(workflowRoot, category) {
297
+ const knowhowDir = join(workflowRoot, 'knowhow');
298
+ if (!existsSync(knowhowDir))
299
+ return null;
300
+ let files;
301
+ try {
302
+ files = readdirSync(knowhowDir).filter(f => f.endsWith('.md'));
303
+ }
304
+ catch {
305
+ return null;
306
+ }
307
+ const tools = [];
308
+ for (const file of files) {
309
+ try {
310
+ const raw = readFileSync(join(knowhowDir, file), 'utf-8');
311
+ const fmMatch = raw.match(/^---\s*\n([\s\S]*?)\n---/);
312
+ if (!fmMatch)
313
+ continue;
314
+ const fm = fmMatch[1];
315
+ // Check tool: true
316
+ if (!/^tool:\s*true\s*$/m.test(fm))
317
+ continue;
318
+ // Check category match
319
+ const catMatch = fm.match(/^category:\s*(.+)$/m);
320
+ if (!catMatch || catMatch[1].trim() !== category)
321
+ continue;
322
+ const titleMatch = fm.match(/^title:\s*(.+)$/m);
323
+ const summaryMatch = fm.match(/^summary:\s*"?(.+?)"?\s*$/m);
324
+ const title = titleMatch ? titleMatch[1].trim() : file;
325
+ // Summary: YAML summary field, or first paragraph after frontmatter
326
+ let summary = summaryMatch ? summaryMatch[1].trim() : '';
327
+ if (!summary) {
328
+ const body = raw.slice(fmMatch[0].length + 1).trim();
329
+ summary = body.split('\n\n')[0].slice(0, 200).replace(/\s+/g, ' ');
330
+ }
331
+ const stem = file.replace(/\.md$/, '');
332
+ const slug = stem.replace(/^(KNW|TIP|TPL|RCP|REF|DCS|AST|BLP|DOC)-/i, '').toLowerCase().replace(/[^a-z0-9]+/g, '-').replace(/^-|-$/g, '');
333
+ tools.push({ title, summary, id: `knowhow-${slug}` });
334
+ }
335
+ catch {
336
+ continue;
337
+ }
338
+ }
339
+ if (tools.length === 0)
340
+ return null;
341
+ const content = `## Available Tools (${category})\n\n` +
342
+ tools.map(t => `### ${t.title} (tool)\n\n${t.summary}\n\n→ Load: maestro wiki load ${t.id}`).join('\n\n---\n\n');
343
+ return { content, count: tools.length };
344
+ }
297
345
  function stripFrontmatter(raw) {
298
346
  const trimmed = raw.trimStart();
299
347
  if (!trimmed.startsWith('---'))
@@ -313,7 +361,6 @@ const AUTO_INIT_SEEDS = [
313
361
  ['coding-conventions.md', '# Coding Conventions\n\n## Entries\n\n'],
314
362
  ['architecture-constraints.md', '# Architecture Constraints\n\n## Entries\n\n'],
315
363
  ['learnings.md', '# Learnings\n\n## Entries\n\n'],
316
- ['quality-rules.md', '# Quality Rules\n\n## Entries\n\n'],
317
364
  ['debug-notes.md', '# Debug Notes\n\n## Entries\n\n'],
318
365
  ['test-conventions.md', '# Test Conventions\n\n## Entries\n\n'],
319
366
  ['review-standards.md', '# Review Standards\n\n## Entries\n\n'],
@@ -1 +1 @@
1
- {"version":3,"file":"spec-loader.js","sourceRoot":"","sources":["../../../src/tools/spec-loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"spec-loader.js","sourceRoot":"","sources":["../../../src/tools/spec-loader.ts"],"names":[],"mappings":"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"}
@@ -20,7 +20,7 @@ export interface SpecAddResult {
20
20
  * - Skips duplicates (case-insensitive title match)
21
21
  * - Formats entry using `formatNewEntry` and appends to file
22
22
  */
23
- export declare function appendSpecEntry(projectPath: string, category: SpecCategory, title: string, content: string, keywords: string[], source?: string, scope?: SpecScope, uid?: string, roles?: string[]): SpecAddResult;
23
+ export declare function appendSpecEntry(projectPath: string, category: SpecCategory, title: string, content: string, keywords: string[], source?: string, scope?: SpecScope, uid?: string): SpecAddResult;
24
24
  /**
25
25
  * Append a spec index entry that references a knowhow document.
26
26
  * The entry body is a summary, with a ref attribute pointing to the knowhow file.
@@ -1 +1 @@
1
- {"version":3,"file":"spec-writer.d.ts","sourceRoot":"","sources":["../../../src/tools/spec-writer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EAAgC,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAMnG,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,OAAO,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,YAAY,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;CACpB;AAiBD;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAAE,EAClB,MAAM,CAAC,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,SAAS,EACjB,GAAG,CAAC,EAAE,MAAM,EACZ,KAAK,CAAC,EAAE,MAAM,EAAE,GACf,aAAa,CAmCf;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAAE,EAClB,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,SAAS,EACjB,GAAG,CAAC,EAAE,MAAM,GACX,aAAa,CA8Bf"}
1
+ {"version":3,"file":"spec-writer.d.ts","sourceRoot":"","sources":["../../../src/tools/spec-writer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EAAgC,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAMnG,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,OAAO,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,YAAY,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;CACpB;AAiBD;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAAE,EAClB,MAAM,CAAC,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,SAAS,EACjB,GAAG,CAAC,EAAE,MAAM,GACX,aAAa,CAmCf;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAAE,EAClB,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,SAAS,EACjB,GAAG,CAAC,EAAE,MAAM,GACX,aAAa,CA8Bf"}
@@ -29,7 +29,7 @@ function categoryToFilename(category) {
29
29
  * - Skips duplicates (case-insensitive title match)
30
30
  * - Formats entry using `formatNewEntry` and appends to file
31
31
  */
32
- export function appendSpecEntry(projectPath, category, title, content, keywords, source, scope, uid, roles) {
32
+ export function appendSpecEntry(projectPath, category, title, content, keywords, source, scope, uid) {
33
33
  const specsDir = resolveSpecDir(projectPath, scope ?? 'project', uid);
34
34
  const filename = categoryToFilename(category);
35
35
  if (!filename) {
@@ -53,7 +53,7 @@ export function appendSpecEntry(projectPath, category, title, content, keywords,
53
53
  }
54
54
  // Generate and append entry
55
55
  const date = new Date().toISOString().slice(0, 10);
56
- const entry = formatNewEntry(category, keywords, date, title, content, source, undefined, roles);
56
+ const entry = formatNewEntry(category, keywords, date, title, content, source);
57
57
  writeFileSync(filePath, existing + '\n\n' + entry, 'utf-8');
58
58
  return { ok: true, file: filePath, category, title, duplicate: false };
59
59
  }
@@ -1 +1 @@
1
- {"version":3,"file":"spec-writer.js","sourceRoot":"","sources":["../../../src/tools/spec-writer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"spec-writer.js","sourceRoot":"","sources":["../../../src/tools/spec-writer.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"store-knowhow.d.ts","sourceRoot":"","sources":["../../../src/tools/store-knowhow.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AA0NzE,eAAO,MAAM,MAAM,EAAE,UA2FpB,CAAC;AAIF,wBAAsB,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,CAkBrF"}
1
+ {"version":3,"file":"store-knowhow.d.ts","sourceRoot":"","sources":["../../../src/tools/store-knowhow.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AA4NzE,eAAO,MAAM,MAAM,EAAE,UAiGpB,CAAC;AAIF,wBAAsB,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,CAkBrF"}
@@ -47,7 +47,8 @@ const ParamsSchema = z.object({
47
47
  source: z.string().optional(), // reference: original URL
48
48
  status: z.enum(DECISION_STATUSES).optional(), // decision: lifecycle status
49
49
  assetType: z.string().optional(), // asset: asset subtype
50
- codePaths: z.array(z.string()).optional(), // blueprint: related code paths
50
+ codePaths: z.array(z.string()).optional(), // asset/blueprint: related code paths
51
+ category: z.string().optional(), // spec category for tool discovery (coding, arch, test, etc.)
51
52
  // search params
52
53
  query: z.string().optional(),
53
54
  limit: z.number().optional().default(20),
@@ -89,7 +90,7 @@ function parseFrontmatter(raw) {
89
90
  }
90
91
  // --- Operations ---
91
92
  function executeAdd(params) {
92
- const { type, title, body, tags, lang, source, status, assetType, codePaths } = params;
93
+ const { type, title, body, tags, lang, source, status, assetType, codePaths, category } = params;
93
94
  if (!type)
94
95
  return { success: false, error: 'Parameter "type" is required for add operation' };
95
96
  if (!title)
@@ -109,8 +110,8 @@ function executeAdd(params) {
109
110
  if (assetType && type !== 'asset') {
110
111
  return { success: false, error: 'Parameter "assetType" is only valid for type "asset"' };
111
112
  }
112
- if (codePaths && type !== 'blueprint') {
113
- return { success: false, error: 'Parameter "codePaths" is only valid for type "blueprint"' };
113
+ if (codePaths && type !== 'blueprint' && type !== 'asset') {
114
+ return { success: false, error: 'Parameter "codePaths" is only valid for type "asset" or "blueprint"' };
114
115
  }
115
116
  const dir = getKnowhowDir();
116
117
  if (!existsSync(dir))
@@ -135,6 +136,8 @@ function executeAdd(params) {
135
136
  fmLines.push(`source: ${escapeYamlValue(source)}`);
136
137
  if (status)
137
138
  fmLines.push(`status: ${status}`);
139
+ if (category)
140
+ fmLines.push(`category: ${category}`);
138
141
  if (assetType)
139
142
  fmLines.push(`assetType: ${escapeYamlValue(assetType)}`);
140
143
  if (codePaths && codePaths.length > 0) {
@@ -221,7 +224,9 @@ export const schema = {
221
224
  template: lang (programming language)
222
225
  reference: source (URL)
223
226
  decision: status (proposed | accepted | superseded)
224
- Optional: tags (string[])
227
+ asset: assetType (e.g. api-contract, prompt), codePaths (related source paths)
228
+ blueprint: codePaths (related source paths)
229
+ Optional: tags (string[]), category (spec category for agent discovery)
225
230
 
226
231
  * **search** — Full-text search knowhow entries.
227
232
  Required: query
@@ -286,7 +291,11 @@ Entries are automatically indexed by WikiIndexer (type=knowhow, category={type})
286
291
  codePaths: {
287
292
  type: 'array',
288
293
  items: { type: 'string' },
289
- description: '[blueprint] Related code paths.',
294
+ description: '[asset/blueprint] Related code paths.',
295
+ },
296
+ category: {
297
+ type: 'string',
298
+ description: 'Spec category for agent auto-discovery (coding, arch, test, debug, review, learning).',
290
299
  },
291
300
  // search
292
301
  query: {
@@ -1 +1 @@
1
- {"version":3,"file":"store-knowhow.js","sourceRoot":"","sources":["../../../src/tools/store-knowhow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store-knowhow.js","sourceRoot":"","sources":["../../../src/tools/store-knowhow.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,12 +1,13 @@
1
1
  {
2
2
  "name": "maestro-flow",
3
- "version": "0.3.44",
3
+ "version": "0.3.46",
4
4
  "description": "Workflow orchestration CLI with MCP endpoint support and extensible architecture",
5
5
  "type": "module",
6
6
  "imports": {
7
7
  "#maestro-dashboard/agents/*": "./dashboard/dist-server/dashboard/src/server/agents/*",
8
8
  "#maestro-dashboard/shared/*": "./dashboard/dist-server/dashboard/src/shared/*",
9
- "#maestro-dashboard/wiki/*": "./dashboard/dist-server/dashboard/src/server/wiki/*"
9
+ "#maestro-dashboard/wiki/*": "./dashboard/dist-server/dashboard/src/server/wiki/*",
10
+ "#async/*": "./dashboard/dist-server/src/async/*"
10
11
  },
11
12
  "bin": {
12
13
  "maestro": "bin/maestro.js",
@@ -27,6 +28,7 @@
27
28
  ".claude/agents",
28
29
  ".claude/skills",
29
30
  ".claude/CLAUDE.md",
31
+ ".codex/agents",
30
32
  ".codex/skills",
31
33
  "dashboard/dist",
32
34
  "dashboard/dist-server",
@@ -106,12 +106,12 @@ Parse $ARGUMENTS to determine mode and flags:
106
106
  3. Read `.workflow/state.json` → `current_milestone`, `artifacts[]`, `accumulated_context` (key_decisions, deferred items, blockers)
107
107
  4. Find prior analyze artifacts from `state.json.artifacts[]` where type=analyze and same milestone → load their `context.md` to skip already-decided areas
108
108
  5. Find brainstorm artifacts from `state.json.artifacts[]` where type=brainstorm and same milestone → load `guidance-specification.md` if exists
109
- 6. Load project specs: `specs_content = maestro spec load --role plan`
109
+ 6. Load project specs: `specs_content = maestro spec load --category arch`
110
110
 
111
111
  **Load prior context** (adhoc/standalone scope):
112
112
  1. Read `.workflow/project.md` (if exists) — project vision, Validated requirements, Active requirements, Key Decisions
113
113
  2. Read `.workflow/state.json` (if exists) → `accumulated_context` (key_decisions, deferred, blockers)
114
- 3. Load project specs: `specs_content = maestro spec load --role plan`
114
+ 3. Load project specs: `specs_content = maestro spec load --category arch`
115
115
 
116
116
  **Quick mode routing**: If QUICK_MODE, skip to Step 8 (Decision Extraction) after loading context.
117
117
 
@@ -26,8 +26,8 @@ Only Step 2 diverges (scenario source). Everything else is shared.
26
26
 
27
27
  **Load specs:**
28
28
  ```
29
- specs_test = maestro spec load --role test
30
- specs_arch = maestro spec load --role plan
29
+ specs_test = maestro spec load --category test
30
+ specs_arch = maestro spec load --category arch
31
31
  ```
32
32
 
33
33
  `specs_test` for test conventions (Steps 3-5); `specs_arch` for module boundaries (Step 2).
@@ -135,7 +135,7 @@ Parse $ARGUMENTS to determine execution mode:
135
135
  ### Step 1.5: Load Project Specs
136
136
 
137
137
  ```
138
- specs_content = maestro spec load --role plan
138
+ specs_content = maestro spec load --category arch
139
139
  ```
140
140
 
141
141
  Pass to conceptual-planning-agent in Step 4 for architecture-aware role analysis.
@@ -61,7 +61,7 @@ Build component entry:
61
61
  ### Step 2.5: Load Project Specs
62
62
 
63
63
  ```
64
- specs_content = maestro spec load --role plan
64
+ specs_content = maestro spec load --category arch
65
65
  ```
66
66
 
67
67
  Used in Step 2-4 to produce architecture-aware documentation.
@@ -52,7 +52,7 @@ Build affected sets:
52
52
  ### Step 3.5: Load Project Specs
53
53
 
54
54
  ```
55
- specs_content = maestro spec load --role plan
55
+ specs_content = maestro spec load --category arch
56
56
  ```
57
57
 
58
58
  Used in Step 4-5 to validate refreshed docs against architectural expectations.
@@ -53,7 +53,7 @@ If resuming: load understanding.md + evidence.ndjson, spawn continuation agent.
53
53
  ### Step 1.5: Load Project Specs
54
54
 
55
55
  ```
56
- specs_content = maestro spec load --role analyze
56
+ specs_content = maestro spec load --category debug
57
57
  ```
58
58
 
59
59
  Pass to debug agents as prior knowledge (known issues, root causes, workarounds).
@@ -175,7 +175,7 @@ Build execution_queue from plan.json.waves, including only waves with pending (n
175
175
  ## E1.5: Load Project Specs
176
176
 
177
177
  ```
178
- specs_content = maestro spec load --role implement
178
+ specs_content = maestro spec load --category coding
179
179
  ```
180
180
 
181
181
  Pass specs_content to each executor agent in E2.
@@ -457,9 +457,9 @@ Append to state.json.artifacts (atomic write)
457
457
 
458
458
  // Incremental learning extraction
459
459
  Read all .summaries/TASK-*-summary.md; extract strategy adjustments, patterns, pitfalls
460
- Deduplicate against existing learnings (maestro spec load --role implement)
460
+ Deduplicate against existing learnings (maestro spec load --category coding)
461
461
  Append unique entries to .workflow/specs/learnings.md using <spec-entry> closed-tag format:
462
- roles="implement", keywords (3-5 terms), date, source="execute"
462
+ category="learning", keywords (3-5 terms), date, source="execute"
463
463
 
464
464
  Mark artifact.harvested = true; write state.json (atomic)
465
465
  ```
@@ -30,8 +30,8 @@ If existing session at `${PHASE_DIR}/.tests/integration/state.json`: offer resum
30
30
  ### Step 1.3: Load Project Specs
31
31
 
32
32
  ```
33
- specs_content = maestro spec load --role test
34
- arch_content = maestro spec load --role plan
33
+ specs_content = maestro spec load --category test
34
+ arch_content = maestro spec load --category arch
35
35
  ```
36
36
 
37
37
  `specs_content` for test conventions; `arch_content` for module boundaries in Step 2-3.
@@ -86,7 +86,7 @@ Initialize discovery-state.json:
86
86
  ### Step 3.5: Load Project Specs
87
87
 
88
88
  ```
89
- specs_content = maestro spec load --role implement
89
+ specs_content = maestro spec load --category coding
90
90
  ```
91
91
 
92
92
  Pass to each analysis agent so severity assessments align with project quality standards.