maestro-flow 0.4.26 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (380) hide show
  1. package/.agents/skills/learn-follow/SKILL.md +1 -1
  2. package/.agents/skills/learn-investigate/SKILL.md +2 -2
  3. package/.agents/skills/learn-second-opinion/SKILL.md +1 -1
  4. package/.agents/skills/maestro/SKILL.md +6 -3
  5. package/.agents/skills/maestro-analyze/SKILL.md +53 -2
  6. package/.agents/skills/maestro-blueprint/SKILL.md +36 -1
  7. package/.agents/skills/maestro-brainstorm/SKILL.md +40 -1
  8. package/.agents/skills/maestro-collab/SKILL.md +1 -1
  9. package/.agents/skills/maestro-companion/SKILL.md +4 -4
  10. package/.agents/skills/maestro-composer/SKILL.md +1 -1
  11. package/.agents/skills/maestro-execute/SKILL.md +29 -6
  12. package/.agents/skills/maestro-fork/SKILL.md +24 -0
  13. package/.agents/skills/maestro-grill/SKILL.md +38 -1
  14. package/.agents/skills/maestro-help/SKILL.md +5 -6
  15. package/.agents/skills/maestro-help/index/catalog.json +7 -9
  16. package/.agents/skills/maestro-help/phases/02-search-present.md +2 -4
  17. package/.agents/skills/maestro-help/phases/03-workflow-guide.md +7 -8
  18. package/.agents/skills/maestro-impeccable/SKILL.md +13 -0
  19. package/.agents/skills/maestro-init/SKILL.md +11 -0
  20. package/.agents/skills/maestro-merge/SKILL.md +17 -1
  21. package/.agents/skills/maestro-milestone-audit/SKILL.md +34 -2
  22. package/.agents/skills/maestro-milestone-complete/SKILL.md +19 -1
  23. package/.agents/skills/maestro-milestone-release/SKILL.md +18 -0
  24. package/.agents/skills/maestro-next/SKILL.md +8 -9
  25. package/.agents/skills/maestro-overlay/SKILL.md +3 -3
  26. package/.agents/skills/maestro-plan/SKILL.md +21 -3
  27. package/.agents/skills/maestro-quick/SKILL.md +13 -1
  28. package/.agents/skills/maestro-ralph/SKILL.md +18 -20
  29. package/.agents/skills/maestro-ralph-beta/SKILL.md +10 -16
  30. package/.agents/skills/maestro-ralph-execute/SKILL.md +1 -2
  31. package/.agents/skills/maestro-roadmap/SKILL.md +28 -2
  32. package/.agents/skills/maestro-swarm-workflow/SKILL.md +2 -2
  33. package/.agents/skills/maestro-tools-register/SKILL.md +2 -2
  34. package/.agents/skills/maestro-ui-codify/SKILL.md +20 -0
  35. package/.agents/skills/maestro-update/SKILL.md +59 -116
  36. package/.agents/skills/manage-codebase-rebuild/SKILL.md +3 -3
  37. package/.agents/skills/manage-harvest/SKILL.md +1 -1
  38. package/.agents/skills/manage-knowhow/SKILL.md +3 -1
  39. package/.agents/skills/manage-knowhow-capture/SKILL.md +3 -2
  40. package/.agents/skills/manage-wiki/SKILL.md +17 -8
  41. package/.agents/skills/quality-auto-test/SKILL.md +3 -3
  42. package/.agents/skills/quality-debug/SKILL.md +4 -4
  43. package/.agents/skills/quality-refactor/SKILL.md +2 -2
  44. package/.agents/skills/quality-retrospective/SKILL.md +5 -5
  45. package/.agents/skills/quality-review/SKILL.md +4 -4
  46. package/.agents/skills/quality-sync/SKILL.md +1 -0
  47. package/.agents/skills/quality-test/SKILL.md +4 -4
  48. package/.agents/skills/spec-add/SKILL.md +6 -4
  49. package/.agents/skills/spec-setup/SKILL.md +1 -1
  50. package/.agy/skills/learn-follow/SKILL.md +1 -1
  51. package/.agy/skills/learn-investigate/SKILL.md +2 -2
  52. package/.agy/skills/learn-second-opinion/SKILL.md +1 -1
  53. package/.agy/skills/maestro/SKILL.md +6 -3
  54. package/.agy/skills/maestro-analyze/SKILL.md +53 -2
  55. package/.agy/skills/maestro-blueprint/SKILL.md +36 -1
  56. package/.agy/skills/maestro-brainstorm/SKILL.md +40 -1
  57. package/.agy/skills/maestro-collab/SKILL.md +1 -1
  58. package/.agy/skills/maestro-companion/SKILL.md +4 -4
  59. package/.agy/skills/maestro-composer/SKILL.md +1 -1
  60. package/.agy/skills/maestro-execute/SKILL.md +29 -6
  61. package/.agy/skills/maestro-fork/SKILL.md +24 -0
  62. package/.agy/skills/maestro-grill/SKILL.md +38 -1
  63. package/.agy/skills/maestro-help/SKILL.md +5 -6
  64. package/.agy/skills/maestro-help/index/catalog.json +7 -9
  65. package/.agy/skills/maestro-help/phases/02-search-present.md +2 -4
  66. package/.agy/skills/maestro-help/phases/03-workflow-guide.md +7 -8
  67. package/.agy/skills/maestro-impeccable/SKILL.md +13 -0
  68. package/.agy/skills/maestro-init/SKILL.md +11 -0
  69. package/.agy/skills/maestro-merge/SKILL.md +17 -1
  70. package/.agy/skills/maestro-milestone-audit/SKILL.md +34 -2
  71. package/.agy/skills/maestro-milestone-complete/SKILL.md +19 -1
  72. package/.agy/skills/maestro-milestone-release/SKILL.md +18 -0
  73. package/.agy/skills/maestro-next/SKILL.md +8 -9
  74. package/.agy/skills/maestro-overlay/SKILL.md +3 -3
  75. package/.agy/skills/maestro-plan/SKILL.md +21 -3
  76. package/.agy/skills/maestro-quick/SKILL.md +13 -1
  77. package/.agy/skills/maestro-ralph/SKILL.md +18 -20
  78. package/.agy/skills/maestro-ralph-beta/SKILL.md +10 -16
  79. package/.agy/skills/maestro-ralph-execute/SKILL.md +1 -2
  80. package/.agy/skills/maestro-roadmap/SKILL.md +28 -2
  81. package/.agy/skills/maestro-swarm-workflow/SKILL.md +2 -2
  82. package/.agy/skills/maestro-tools-register/SKILL.md +2 -2
  83. package/.agy/skills/maestro-ui-codify/SKILL.md +20 -0
  84. package/.agy/skills/maestro-update/SKILL.md +59 -116
  85. package/.agy/skills/manage-codebase-rebuild/SKILL.md +3 -3
  86. package/.agy/skills/manage-harvest/SKILL.md +1 -1
  87. package/.agy/skills/manage-knowhow/SKILL.md +3 -1
  88. package/.agy/skills/manage-knowhow-capture/SKILL.md +3 -2
  89. package/.agy/skills/manage-wiki/SKILL.md +17 -8
  90. package/.agy/skills/quality-auto-test/SKILL.md +3 -3
  91. package/.agy/skills/quality-debug/SKILL.md +4 -4
  92. package/.agy/skills/quality-refactor/SKILL.md +2 -2
  93. package/.agy/skills/quality-retrospective/SKILL.md +5 -5
  94. package/.agy/skills/quality-review/SKILL.md +4 -4
  95. package/.agy/skills/quality-sync/SKILL.md +1 -0
  96. package/.agy/skills/quality-test/SKILL.md +4 -4
  97. package/.agy/skills/spec-add/SKILL.md +6 -4
  98. package/.agy/skills/spec-setup/SKILL.md +1 -1
  99. package/.claude/commands/learn-follow.md +1 -1
  100. package/.claude/commands/learn-investigate.md +2 -2
  101. package/.claude/commands/learn-second-opinion.md +1 -1
  102. package/.claude/commands/maestro-analyze.md +53 -2
  103. package/.claude/commands/maestro-blueprint.md +36 -1
  104. package/.claude/commands/maestro-brainstorm.md +40 -1
  105. package/.claude/commands/maestro-collab.md +1 -1
  106. package/.claude/commands/maestro-companion.md +4 -4
  107. package/.claude/commands/maestro-composer.md +1 -1
  108. package/.claude/commands/maestro-execute.md +29 -6
  109. package/.claude/commands/maestro-fork.md +24 -0
  110. package/.claude/commands/maestro-grill.md +38 -1
  111. package/.claude/commands/maestro-impeccable.md +13 -0
  112. package/.claude/commands/maestro-init.md +11 -0
  113. package/.claude/commands/maestro-merge.md +17 -1
  114. package/.claude/commands/maestro-milestone-audit.md +34 -2
  115. package/.claude/commands/maestro-milestone-complete.md +19 -1
  116. package/.claude/commands/maestro-milestone-release.md +18 -0
  117. package/.claude/commands/maestro-next.md +8 -9
  118. package/.claude/commands/maestro-overlay.md +3 -3
  119. package/.claude/commands/maestro-plan.md +21 -3
  120. package/.claude/commands/maestro-quick.md +13 -1
  121. package/.claude/commands/maestro-ralph-beta.md +8 -14
  122. package/.claude/commands/maestro-ralph-execute.md +1 -2
  123. package/.claude/commands/maestro-ralph.md +18 -20
  124. package/.claude/commands/maestro-roadmap.md +28 -2
  125. package/.claude/commands/maestro-swarm-workflow.md +2 -2
  126. package/.claude/commands/maestro-tools-register.md +2 -2
  127. package/.claude/commands/maestro-ui-codify.md +20 -0
  128. package/.claude/commands/maestro-update.md +59 -116
  129. package/.claude/commands/maestro.md +6 -3
  130. package/.claude/commands/manage-codebase-rebuild.md +3 -3
  131. package/.claude/commands/manage-harvest.md +1 -1
  132. package/.claude/commands/manage-knowhow-capture.md +3 -2
  133. package/.claude/commands/manage-knowhow.md +3 -1
  134. package/.claude/commands/manage-wiki.md +17 -8
  135. package/.claude/commands/quality-auto-test.md +3 -3
  136. package/.claude/commands/quality-debug.md +4 -4
  137. package/.claude/commands/quality-refactor.md +2 -2
  138. package/.claude/commands/quality-retrospective.md +5 -5
  139. package/.claude/commands/quality-review.md +4 -4
  140. package/.claude/commands/quality-sync.md +1 -0
  141. package/.claude/commands/quality-test.md +4 -4
  142. package/.claude/commands/spec-add.md +6 -4
  143. package/.claude/commands/spec-setup.md +1 -1
  144. package/.claude/skills/maestro-help/SKILL.md +5 -6
  145. package/.claude/skills/maestro-help/index/catalog.json +7 -9
  146. package/.claude/skills/maestro-help/phases/02-search-present.md +2 -4
  147. package/.claude/skills/maestro-help/phases/03-workflow-guide.md +7 -8
  148. package/.codex/skills/codify-to-knowhow/SKILL.md +5 -4
  149. package/.codex/skills/learn-decompose/SKILL.md +1 -1
  150. package/.codex/skills/learn-follow/SKILL.md +1 -1
  151. package/.codex/skills/learn-investigate/SKILL.md +1 -1
  152. package/.codex/skills/learn-second-opinion/SKILL.md +1 -1
  153. package/.codex/skills/maestro/SKILL.md +29 -31
  154. package/.codex/skills/maestro-analyze/SKILL.md +16 -3
  155. package/.codex/skills/maestro-blueprint/SKILL.md +8 -1
  156. package/.codex/skills/maestro-brainstorm/SKILL.md +8 -5
  157. package/.codex/skills/maestro-companion/SKILL.md +2 -2
  158. package/.codex/skills/maestro-composer/SKILL.md +0 -1
  159. package/.codex/skills/maestro-execute/SKILL.md +11 -8
  160. package/.codex/skills/maestro-fork/SKILL.md +4 -0
  161. package/.codex/skills/maestro-grill/SKILL.md +8 -2
  162. package/.codex/skills/maestro-help/SKILL.md +6 -9
  163. package/.codex/skills/maestro-help/catalog.json +6 -8
  164. package/.codex/skills/maestro-impeccable/SKILL.md +2 -0
  165. package/.codex/skills/maestro-init/SKILL.md +3 -0
  166. package/.codex/skills/maestro-merge/SKILL.md +5 -1
  167. package/.codex/skills/maestro-milestone-audit/SKILL.md +3 -0
  168. package/.codex/skills/maestro-milestone-complete/SKILL.md +6 -1
  169. package/.codex/skills/maestro-milestone-release/SKILL.md +4 -0
  170. package/.codex/skills/maestro-next/SKILL.md +3 -4
  171. package/.codex/skills/maestro-plan/SKILL.md +5 -2
  172. package/.codex/skills/maestro-quick/SKILL.md +4 -1
  173. package/.codex/skills/maestro-ralph/SKILL.md +14 -20
  174. package/.codex/skills/maestro-ralph-beta/SKILL.md +13 -21
  175. package/.codex/skills/maestro-ralph-execute/SKILL.md +2 -2
  176. package/.codex/skills/maestro-roadmap/SKILL.md +5 -2
  177. package/.codex/skills/maestro-tools-register/SKILL.md +1 -1
  178. package/.codex/skills/maestro-ui-codify/SKILL.md +4 -1
  179. package/.codex/skills/maestro-update/SKILL.md +35 -130
  180. package/.codex/skills/manage-codebase-rebuild/SKILL.md +2 -2
  181. package/.codex/skills/manage-harvest/SKILL.md +2 -2
  182. package/.codex/skills/manage-knowhow/SKILL.md +1 -1
  183. package/.codex/skills/manage-status/SKILL.md +1 -2
  184. package/.codex/skills/quality-auto-test/SKILL.md +2 -2
  185. package/.codex/skills/quality-debug/SKILL.md +2 -2
  186. package/.codex/skills/quality-refactor/SKILL.md +1 -1
  187. package/.codex/skills/quality-retrospective/SKILL.md +1 -1
  188. package/.codex/skills/quality-test/SKILL.md +3 -4
  189. package/.codex/skills/spec-add/SKILL.md +5 -3
  190. package/.codex/skills/spec-remove/SKILL.md +2 -2
  191. package/.codex/skills/team-coordinate/SKILL.md +1 -1
  192. package/.codex/skills/wiki-digest/SKILL.md +2 -2
  193. package/chains/brainstorm-driven.json +2 -34
  194. package/chains/full-lifecycle.json +2 -34
  195. package/chains/next-milestone.json +0 -7
  196. package/chains/quality-loop.json +3 -19
  197. package/chains/roadmap-driven.json +2 -34
  198. package/chains/spec-driven.json +2 -34
  199. package/chains/ui-craft-build.json +2 -23
  200. package/dashboard/dist-server/dashboard/src/server/coordinator/chain-map.js +8 -11
  201. package/dashboard/dist-server/dashboard/src/server/coordinator/chain-map.js.map +1 -1
  202. package/dashboard/dist-server/dashboard/src/server/wiki/spec-entry-parser.d.ts +1 -0
  203. package/dashboard/dist-server/dashboard/src/server/wiki/spec-entry-parser.js +3 -1
  204. package/dashboard/dist-server/dashboard/src/server/wiki/spec-entry-parser.js.map +1 -1
  205. package/dashboard/dist-server/dashboard/src/server/wiki/stress.test.js +1 -0
  206. package/dashboard/dist-server/dashboard/src/server/wiki/stress.test.js.map +1 -1
  207. package/dashboard/dist-server/dashboard/src/server/wiki/virtual-wiki-adapters.js +9 -0
  208. package/dashboard/dist-server/dashboard/src/server/wiki/virtual-wiki-adapters.js.map +1 -1
  209. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js +9 -4
  210. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js.map +1 -1
  211. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-types.d.ts +3 -0
  212. package/dashboard/dist-server/dashboard/src/server/wiki/writer.d.ts +4 -0
  213. package/dashboard/dist-server/dashboard/src/server/wiki/writer.js +5 -3
  214. package/dashboard/dist-server/dashboard/src/server/wiki/writer.js.map +1 -1
  215. package/dashboard/dist-server/src/types/index.d.ts +2 -0
  216. package/dist/src/cli.js +1 -0
  217. package/dist/src/cli.js.map +1 -1
  218. package/dist/src/commands/hooks.d.ts.map +1 -1
  219. package/dist/src/commands/hooks.js +55 -5
  220. package/dist/src/commands/hooks.js.map +1 -1
  221. package/dist/src/commands/install-backend.d.ts.map +1 -1
  222. package/dist/src/commands/install-backend.js +2 -1
  223. package/dist/src/commands/install-backend.js.map +1 -1
  224. package/dist/src/commands/install.d.ts.map +1 -1
  225. package/dist/src/commands/install.js +16 -1
  226. package/dist/src/commands/install.js.map +1 -1
  227. package/dist/src/commands/kg.d.ts +1 -1
  228. package/dist/src/commands/kg.d.ts.map +1 -1
  229. package/dist/src/commands/kg.js +285 -112
  230. package/dist/src/commands/kg.js.map +1 -1
  231. package/dist/src/commands/knowhow.d.ts.map +1 -1
  232. package/dist/src/commands/knowhow.js +28 -37
  233. package/dist/src/commands/knowhow.js.map +1 -1
  234. package/dist/src/commands/ralph.js +1 -1
  235. package/dist/src/commands/ralph.js.map +1 -1
  236. package/dist/src/commands/search.d.ts +36 -0
  237. package/dist/src/commands/search.d.ts.map +1 -0
  238. package/dist/src/commands/search.js +120 -0
  239. package/dist/src/commands/search.js.map +1 -0
  240. package/dist/src/commands/spec.d.ts.map +1 -1
  241. package/dist/src/commands/spec.js +15 -59
  242. package/dist/src/commands/spec.js.map +1 -1
  243. package/dist/src/commands/update.d.ts.map +1 -1
  244. package/dist/src/commands/update.js +7 -0
  245. package/dist/src/commands/update.js.map +1 -1
  246. package/dist/src/commands/wiki.d.ts.map +1 -1
  247. package/dist/src/commands/wiki.js +6 -21
  248. package/dist/src/commands/wiki.js.map +1 -1
  249. package/dist/src/core/component-defs.d.ts +13 -0
  250. package/dist/src/core/component-defs.d.ts.map +1 -1
  251. package/dist/src/core/component-defs.js +37 -85
  252. package/dist/src/core/component-defs.js.map +1 -1
  253. package/dist/src/core/skill-converter.d.ts +25 -0
  254. package/dist/src/core/skill-converter.d.ts.map +1 -0
  255. package/dist/src/core/skill-converter.js +605 -0
  256. package/dist/src/core/skill-converter.js.map +1 -0
  257. package/dist/src/graph/codegraph-adapter.d.ts +147 -0
  258. package/dist/src/graph/codegraph-adapter.d.ts.map +1 -0
  259. package/dist/src/graph/codegraph-adapter.js +266 -0
  260. package/dist/src/graph/codegraph-adapter.js.map +1 -0
  261. package/dist/src/hooks/constants.d.ts +4 -0
  262. package/dist/src/hooks/constants.d.ts.map +1 -1
  263. package/dist/src/hooks/constants.js +14 -1
  264. package/dist/src/hooks/constants.js.map +1 -1
  265. package/dist/src/hooks/context-format.d.ts +46 -0
  266. package/dist/src/hooks/context-format.d.ts.map +1 -0
  267. package/dist/src/hooks/context-format.js +58 -0
  268. package/dist/src/hooks/context-format.js.map +1 -0
  269. package/dist/src/hooks/index.d.ts +2 -0
  270. package/dist/src/hooks/index.d.ts.map +1 -1
  271. package/dist/src/hooks/index.js +2 -0
  272. package/dist/src/hooks/index.js.map +1 -1
  273. package/dist/src/hooks/keyword-spec-injector.d.ts +1 -1
  274. package/dist/src/hooks/keyword-spec-injector.d.ts.map +1 -1
  275. package/dist/src/hooks/keyword-spec-injector.js +92 -7
  276. package/dist/src/hooks/keyword-spec-injector.js.map +1 -1
  277. package/dist/src/hooks/kg-context-injector.d.ts +19 -0
  278. package/dist/src/hooks/kg-context-injector.d.ts.map +1 -0
  279. package/dist/src/hooks/kg-context-injector.js +139 -0
  280. package/dist/src/hooks/kg-context-injector.js.map +1 -0
  281. package/dist/src/hooks/kg-sync-hook.d.ts +22 -0
  282. package/dist/src/hooks/kg-sync-hook.d.ts.map +1 -0
  283. package/dist/src/hooks/kg-sync-hook.js +139 -0
  284. package/dist/src/hooks/kg-sync-hook.js.map +1 -0
  285. package/dist/src/hooks/plugins/spec-injection-plugin.js +2 -2
  286. package/dist/src/hooks/plugins/spec-injection-plugin.js.map +1 -1
  287. package/dist/src/hooks/skill-context.d.ts.map +1 -1
  288. package/dist/src/hooks/skill-context.js +0 -1
  289. package/dist/src/hooks/skill-context.js.map +1 -1
  290. package/dist/src/hooks/spec-injector.d.ts.map +1 -1
  291. package/dist/src/hooks/spec-injector.js +66 -13
  292. package/dist/src/hooks/spec-injector.js.map +1 -1
  293. package/dist/src/hooks/statusline.d.ts +8 -1
  294. package/dist/src/hooks/statusline.d.ts.map +1 -1
  295. package/dist/src/hooks/statusline.js +45 -29
  296. package/dist/src/hooks/statusline.js.map +1 -1
  297. package/dist/src/hooks/wiki-role-loader.js +1 -1
  298. package/dist/src/hooks/wiki-role-loader.js.map +1 -1
  299. package/dist/src/ralph/cmd-skills.d.ts.map +1 -1
  300. package/dist/src/ralph/cmd-skills.js +9 -2
  301. package/dist/src/ralph/cmd-skills.js.map +1 -1
  302. package/dist/src/ralph/skill-scanner.d.ts +1 -1
  303. package/dist/src/ralph/skill-scanner.d.ts.map +1 -1
  304. package/dist/src/ralph/skill-scanner.js +14 -0
  305. package/dist/src/ralph/skill-scanner.js.map +1 -1
  306. package/dist/src/ralph/status-schema.d.ts +1 -1
  307. package/dist/src/ralph/status-schema.d.ts.map +1 -1
  308. package/dist/src/tools/spec-entry-parser.d.ts +2 -1
  309. package/dist/src/tools/spec-entry-parser.d.ts.map +1 -1
  310. package/dist/src/tools/spec-entry-parser.js +7 -4
  311. package/dist/src/tools/spec-entry-parser.js.map +1 -1
  312. package/dist/src/tools/spec-loader.d.ts.map +1 -1
  313. package/dist/src/tools/spec-loader.js +27 -3
  314. package/dist/src/tools/spec-loader.js.map +1 -1
  315. package/dist/src/tools/spec-writer.d.ts +10 -1
  316. package/dist/src/tools/spec-writer.d.ts.map +1 -1
  317. package/dist/src/tools/spec-writer.js +86 -7
  318. package/dist/src/tools/spec-writer.js.map +1 -1
  319. package/dist/src/tools/store-knowhow.d.ts.map +1 -1
  320. package/dist/src/tools/store-knowhow.js +27 -7
  321. package/dist/src/tools/store-knowhow.js.map +1 -1
  322. package/dist/src/tui/install-ui/ExecutionView.d.ts.map +1 -1
  323. package/dist/src/tui/install-ui/ExecutionView.js +7 -1
  324. package/dist/src/tui/install-ui/ExecutionView.js.map +1 -1
  325. package/dist/src/tui/install-ui/InstallExecution.d.ts.map +1 -1
  326. package/dist/src/tui/install-ui/InstallExecution.js +5 -1
  327. package/dist/src/tui/install-ui/InstallExecution.js.map +1 -1
  328. package/dist/src/types/index.d.ts +2 -0
  329. package/dist/src/types/index.d.ts.map +1 -1
  330. package/dist/src/utils/cli-format.d.ts +6 -0
  331. package/dist/src/utils/cli-format.d.ts.map +1 -1
  332. package/dist/src/utils/cli-format.js +25 -0
  333. package/dist/src/utils/cli-format.js.map +1 -1
  334. package/dist/src/utils/update-notices.js +19 -0
  335. package/dist/src/utils/update-notices.js.map +1 -1
  336. package/package.json +5 -2
  337. package/templates/workflows/specs/node-catalog.md +0 -2
  338. package/workflows/analyze.md +9 -4
  339. package/workflows/auto-test.md +2 -2
  340. package/workflows/business-test.md +1 -1
  341. package/workflows/claude-instructions.md +23 -11
  342. package/workflows/codex-instructions.md +2 -3
  343. package/workflows/execute.md +153 -7
  344. package/workflows/fork.md +1 -1
  345. package/workflows/integration-test.md +1 -1
  346. package/workflows/maestro-super.md +1 -1
  347. package/workflows/maestro.codex.md +18 -34
  348. package/workflows/maestro.md +34 -42
  349. package/workflows/review.md +1 -1
  350. package/workflows/status.md +2 -2
  351. package/workflows/swarm/wf-verify.js +1 -1
  352. package/workflows/test-gen.md +2 -2
  353. package/workflows/test.md +1 -1
  354. package/workflows/updates/README.md +41 -0
  355. package/workflows/updates/update-v3-setup.md +79 -0
  356. package/workflows/verify.md +7 -1
  357. package/.agents/skills/learn-retro/SKILL.md +0 -159
  358. package/.agents/skills/maestro-learn/SKILL.md +0 -142
  359. package/.agents/skills/maestro-verify/SKILL.md +0 -146
  360. package/.agents/skills/manage-codebase-refresh/SKILL.md +0 -62
  361. package/.agents/skills/manage-learn/SKILL.md +0 -67
  362. package/.agents/skills/wiki-connect/SKILL.md +0 -64
  363. package/.agents/skills/wiki-digest/SKILL.md +0 -70
  364. package/.agy/skills/learn-retro/SKILL.md +0 -159
  365. package/.agy/skills/maestro-learn/SKILL.md +0 -142
  366. package/.agy/skills/maestro-verify/SKILL.md +0 -146
  367. package/.agy/skills/manage-codebase-refresh/SKILL.md +0 -62
  368. package/.agy/skills/manage-learn/SKILL.md +0 -64
  369. package/.agy/skills/wiki-connect/SKILL.md +0 -64
  370. package/.agy/skills/wiki-digest/SKILL.md +0 -70
  371. package/.claude/commands/learn-retro.md +0 -157
  372. package/.claude/commands/maestro-learn.md +0 -140
  373. package/.claude/commands/maestro-verify.md +0 -144
  374. package/.claude/commands/manage-codebase-refresh.md +0 -60
  375. package/.claude/commands/manage-learn.md +0 -65
  376. package/.claude/commands/wiki-connect.md +0 -62
  377. package/.claude/commands/wiki-digest.md +0 -68
  378. package/.codex/skills/maestro-verify/SKILL.md +0 -254
  379. package/chains/execute-verify.json +0 -59
  380. package/chains/singles/verify.json +0 -26
@@ -19,21 +19,33 @@ Available CLI endpoints are dynamically defined by the config file
19
19
 
20
20
  ## Knowledge System
21
21
 
22
- ### Search — Query Before Acting
22
+ ### Design Principles
23
23
 
24
- **Before planning or implementing any task, search wiki and spec first** — the knowledge base contains reusable methods, tools, and hard-won experience. Load the right knowledge at the right time: search before you plan, load relevant entries before you implement, and revisit when you hit unfamiliar territory mid-task.
24
+ - **Single search entry** — `maestro search` is the only user-facing search command
25
+ - **Silent-skip-is-bug** — if knowledge exists but search misses it, that is a defect
26
+ - **Layer 2 auto-injection** — agents receive specs via hooks, rarely need manual `spec load`
25
27
 
26
- When tackling unfamiliar domains or cross-cutting concerns, search existing knowledge first:
27
- - `maestro spec load --category <cat>` — load rules by category (coding/arch/debug/test/review/learning)
28
- - `maestro spec load --keyword <kw>` cross-category keyword match
29
- - `maestro wiki search "<query>"` — full-text search across all knowhow
30
- - `maestro wiki list --category <cat>` `maestro wiki load <id>` — browse then load full detail
28
+ ### Search Three-Layer Architecture
29
+
30
+ **Before planning or implementing, search first.** Load the right knowledge at the right time.
31
+
32
+ | Layer | Command | When to Use |
33
+ |-------|---------|-------------|
34
+ | **1. Unified** | `maestro search "<query>" [--type spec\|knowhow\|issue] [--category <cat>]` | Daily search — BM25 full-text across all knowledge types |
35
+ | **2. Agent injection** | `maestro spec load --category <cat> [--keyword <kw>]` | Domain rules for implementation (auto-injected by hooks) |
36
+ | **3. Code structure** | `maestro kg search <symbol>` / `maestro kg context <node>` | Tracing dependencies, call chains, module boundaries |
37
+
38
+ **Deprecated** (do not use): `spec search`, `knowhow search`, `wiki search` — all replaced by Layer 1.
39
+
40
+ KG stays fresh via hooks (`kg-sync` on UserPromptSubmit, `kg-context-injector` on Agent spawn). Manual `maestro kg index --sqlite` only needed on initial setup.
31
41
 
32
42
  ### Record — Capture Knowledge
33
43
 
34
- When execution surfaces non-obvious knowledge (decisions, root causes, pitfalls, patterns), persist it:
44
+ When execution surfaces non-obvious knowledge, persist it:
35
45
 
36
- - **Spec entry** (short rule/constraint) → `/spec-add <category> "title" "content" --keywords kw1,kw2`
37
- - **Knowhow document** (detailed recipe/template/decision/reference) → `/manage-knowhow-capture`
46
+ - **Spec entry** (short rule/constraint) → `/spec-add <category> "title" "content" --keywords kw1,kw2 --description "summary"`
47
+ - **Knowhow document** (detailed recipe/template/decision) → `/manage-knowhow-capture`
48
+ - Use `--spec-category <cat>` to bridge knowhow into agent injection
49
+ - Files use `{PREFIX}-{YYYYMMDD}-{slug}.md` naming for readable filenames
38
50
 
39
- Category routing: decisions→`arch`, patterns→`coding`, pitfalls→`debug`/`learning`, rules→`review`, test strategy→`test`.
51
+ Category routing: decisions→`arch`, patterns→`coding`, pitfalls→`debug`/`learning`, rules→`review`, test strategy→`test`.
@@ -68,14 +68,13 @@ Available CLI endpoints are dynamically defined by the config file
68
68
 
69
69
  **Before planning or implementing any task, search wiki and spec first** — the knowledge base contains reusable methods, tools, and hard-won experience. Load the right knowledge at the right time: search before you plan, load relevant entries before you implement, and revisit when you hit unfamiliar territory mid-task.
70
70
 
71
+ - `maestro search "<query>" [--type spec|knowhow|issue] [--category <cat>]` — BM25 full-text across all knowledge types
71
72
  - `maestro spec load --category <cat>` — load rules by category (coding/arch/debug/test/review/learning)
72
73
  - `maestro spec load --keyword <kw>` — cross-category keyword match
73
- - `maestro wiki search "<query>"` — full-text search across all knowhow
74
- - `maestro wiki list --category <cat>` → `maestro wiki load <id>` — browse then load full detail
75
74
 
76
75
  ### Knowledge Capture
77
76
 
78
- - **Spec writes** → always `<spec-entry>` closed-tag format with `category`, `keywords`, `date`, `source`. Never raw Markdown. Route through `spec-add` when possible.
77
+ - **Spec writes** → always `<spec-entry>` closed-tag format with `title`, `description`, `category`, `keywords`, `date`, `source`. Never raw Markdown. Route through `spec-add` when possible.
79
78
  - **Capture signal** → when execution surfaces non-obvious knowledge (plan deviation, retry pattern, root cause, constraint violation), ask user once whether to persist it. Match category to content: decisions→`arch`, pitfalls→`debug`/`learning`, patterns→`coding`, rules→`quality`.
80
79
  - **Promotion** → at milestone close, scan learnings for repeated keywords (≥2 entries) and offer to graduate them into formal conventions.
81
80
  - **Traceability** → every entry needs a source anchor: `file:line`, `INS-{id}`, commit, or phase path.
@@ -1,8 +1,8 @@
1
1
  # Execute Workflow
2
2
 
3
- Wave-based parallel execution with atomic commits, breakpoint resume, and optional sync/reflection.
3
+ Wave-based parallel execution with atomic commits, breakpoint resume, built-in verification gate, and optional sync/reflection.
4
4
 
5
- Core principle: **Execute per-plan, not per-phase.** Each plan's wave DAG runs independently. Multiple plans execute sequentially.
5
+ Core principle: **Execute per-plan, not per-phase.** Each plan's wave DAG runs independently. Multiple plans execute sequentially. Verification is an integral post-gate — not a separate command.
6
6
 
7
7
  ---
8
8
 
@@ -69,6 +69,7 @@ For each PLAN_DIR in PLAN_DIRS (sequential):
69
69
  | `--method agent\|codex\|gemini\|cli\|auto` | Override execution method (default: config.json.execution.method) |
70
70
  | `--executor <tool>` | Default CLI tool: gemini\|codex\|qwen\|opencode\|claude (default: first enabled in cli-tools.json) |
71
71
  | `--dir <path>` | Use arbitrary directory instead of phase resolution (skip roadmap validation) |
72
+ | `--skip-verify` | Skip E2.7 verification gate (trust execution output) |
72
73
  | `-y` | Auto-approve execution options (skip confirmation prompt) |
73
74
 
74
75
  ---
@@ -117,10 +118,19 @@ AskUserQuestion({
117
118
  header: "Review",
118
119
  multiSelect: false,
119
120
  options: [
120
- { label: "Skip (Recommended)", description: "No code review, proceed to verification" },
121
- // One option per enabled CLI tool with review capability:
121
+ { label: "Skip", description: "No code review" },
122
122
  ...availableTools.map(t => ({ label: `${t} Review`, description: `${t} CLI: git diff quality review` }))
123
123
  ]
124
+ },
125
+ {
126
+ question: "Verification gate? (external model checks convergence + structure + anti-patterns)",
127
+ header: "Verify",
128
+ multiSelect: false,
129
+ options: [
130
+ { label: "Auto (Recommended)", description: `Delegate to ${availableTools[0] || 'first enabled tool'} for convergence + 3-layer structure + anti-pattern check` },
131
+ ...availableTools.map(t => ({ label: t, description: `${t}: verification gate` })),
132
+ { label: "Skip", description: "No verification gate" }
133
+ ]
124
134
  }
125
135
  ]
126
136
  })
@@ -146,7 +156,17 @@ Other text parsing — match tool names dynamically from enabled tools:
146
156
 
147
157
  **Question 2 (Review):** store as `codeReviewTool`
148
158
 
149
- Store: `executionMethod`, `domainRouting`, `codeReviewTool`
159
+ **Question 3 (Verify):**
160
+
161
+ | Answer | verificationTool |
162
+ |--------|-----------------|
163
+ | "Auto" | First enabled tool from config |
164
+ | Tool name | That tool |
165
+ | "Skip" | `"Skip"` |
166
+
167
+ `--skip-verify` flag overrides to `"Skip"`.
168
+
169
+ Store: `executionMethod`, `domainRouting`, `codeReviewTool`, `verificationTool`
150
170
 
151
171
  ---
152
172
 
@@ -166,6 +186,7 @@ If executionContext is available in memory:
166
186
  executorAssignments = executionContext.executorAssignments || {}
167
187
  domainRouting = E0.5 domainRouting || executionContext.domainRouting || {}
168
188
  codeReviewTool = E0.5 selection || executionContext.codeReviewTool || "Skip"
189
+ verificationTool = E0.5 selection || executionContext.verificationTool || "Auto"
169
190
  Skip disk reload
170
191
  ```
171
192
 
@@ -179,6 +200,7 @@ defaultExecutor = --executor flag || config.json.execution.default_executor || f
179
200
  executorAssignments = plan.json.executor_assignments || {}
180
201
  domainRouting = E0.5 domainRouting || built from delegate-config domain tags (frontend→tag match, backend→tag match, default→"agent")
181
202
  codeReviewTool = E0.5 selection || "Skip"
203
+ verificationTool = E0.5 selection || "Auto"
182
204
  ```
183
205
 
184
206
  ### Detect completed tasks (breakpoint resume)
@@ -415,6 +437,128 @@ Wait for completion, log findings summary
415
437
 
416
438
  ---
417
439
 
440
+ ## E2.7: Verification Gate
441
+
442
+ **Purpose:** External model verifies execution output actually achieves convergence criteria and structural integrity. Replaces the standalone `maestro-verify` — verification is now an integral post-gate within execution. The executing agent does NOT verify itself; a separate model performs the cross-check.
443
+
444
+ **Skip if** `verificationTool == "Skip"` OR `--skip-verify` flag OR no completed tasks.
445
+
446
+ ### Step 1: Collect Verification Inputs
447
+
448
+ ```
449
+ modified_files = collect all files changed by completed tasks (from .summaries/ + git diff)
450
+ convergence_criteria = collect convergence.criteria from all completed .task/*.json
451
+ success_criteria = index.json.success_criteria (if exists)
452
+ must_haves = success_criteria || convergence_criteria aggregated
453
+ summaries_content = concatenate all .summaries/TASK-*-summary.md
454
+ ```
455
+
456
+ ### Step 2: Resolve Verification Tool
457
+
458
+ ```
459
+ IF verificationTool == "Auto": resolve to first enabled tool from delegate-config
460
+ ELSE: use specified tool name
461
+ ```
462
+
463
+ ### Step 3: Dispatch Verification (external model)
464
+
465
+ Single delegate call covers convergence review + structure verify + anti-pattern scan:
466
+
467
+ ```
468
+ Bash({
469
+ command: 'maestro delegate "PURPOSE: Verify execution output meets all convergence criteria and structural integrity; success = all criteria verified with file:line evidence
470
+ TASK:
471
+ 1. CONVERGENCE: For each criterion below, check if the actual code satisfies it — read the files, verify the behavior exists, report status with evidence
472
+ 2. STRUCTURE Layer 1 (Existence): Verify all expected output files exist on disk
473
+ 3. STRUCTURE Layer 2 (Substance): Verify files have real implementation — flag stubs, placeholders, TODO-only, empty returns
474
+ 4. STRUCTURE Layer 3 (Wiring): Verify files are imported and used by the system — flag orphaned files
475
+ 5. ANTI-PATTERNS: Scan modified files for TODO/FIXME/HACK, placeholder content, console.log/print debug statements, disabled tests
476
+ MODE: analysis
477
+ CONTEXT: @${modified_files as glob patterns}
478
+ EXPECTED: JSON {
479
+ convergence: [{ criterion: string, status: \"verified\"|\"failed\"|\"uncertain\", evidence: string }],
480
+ structure: {
481
+ existence: [{ path: string, status: \"exists\"|\"missing\" }],
482
+ substance: [{ path: string, status: \"real\"|\"stub\", evidence: string }],
483
+ wiring: [{ path: string, status: \"wired\"|\"orphaned\", importers: string[] }]
484
+ },
485
+ anti_patterns: [{ type: string, file: string, line: number, severity: \"blocker\"|\"warning\"|\"info\" }],
486
+ gaps: [{ id: string, type: string, severity: \"critical\"|\"high\"|\"medium\"|\"low\", description: string, fix_direction: string }],
487
+ overall: \"passed\"|\"gaps_found\"
488
+ }
489
+ CONSTRAINTS: Read-only | Check ALL criteria exhaustively | Evidence must be file:line references | Do NOT assume — verify by reading code
490
+
491
+ ## Convergence Criteria (verify each one)
492
+ ${must_haves.map((c, i) => (i+1) + \". \" + c).join(\"\\n\")}
493
+
494
+ ## Modified Files
495
+ ${modified_files.join(\"\\n\")}
496
+
497
+ ## Task Summaries (executor self-reports — verify independently)
498
+ ${summaries_content}
499
+ " --to ${verificationTool} --mode analysis',
500
+ run_in_background: true
501
+ })
502
+ ```
503
+
504
+ ### Step 4: Process Results
505
+
506
+ ```
507
+ On callback:
508
+ Parse JSON result from delegate output
509
+
510
+ // Write verification.json (downstream compatibility for quality-review, quality-test, etc.)
511
+ Write ${PLAN_DIR}/verification.json:
512
+ {
513
+ "phase": PHASE_NUM,
514
+ "status": result.overall,
515
+ "verified_at": ISO_timestamp,
516
+ "verifier": verificationTool,
517
+ "must_haves": {
518
+ "truths": result.convergence,
519
+ "artifacts": [...result.structure.existence, ...result.structure.substance],
520
+ "key_links": result.structure.wiring
521
+ },
522
+ "gaps": result.gaps,
523
+ "antipatterns": result.anti_patterns,
524
+ "coverage_score": verified_count / total_count
525
+ }
526
+
527
+ IF result.overall == "passed":
528
+ Log "✓ Verification Gate: PASSED — all criteria verified by ${verificationTool}"
529
+ Continue to E3
530
+
531
+ IF result.overall == "gaps_found":
532
+ Log verification report with per-criterion status
533
+
534
+ // Auto-create issues from critical/high gaps
535
+ For each gap with severity critical|high:
536
+ Create issue in .workflow/issues/issues.jsonl:
537
+ id: "ISS-{YYYYMMDD}-{NNN}", status: "registered",
538
+ priority: severity_to_priority(gap.severity), source: "verification-gate",
539
+ phase_ref: PHASE_NUM, gap_ref: gap.id
540
+
541
+ // Gate decision
542
+ IF any critical gaps:
543
+ Set index.json.status = "verification_failed"
544
+ Log: "✗ Verification Gate: FAILED — {N} critical gaps. Run /maestro-plan --gaps to fix."
545
+ STOP pipeline (do not proceed to E3)
546
+ ELSE (medium/low only):
547
+ Log warnings, continue to E3
548
+ ```
549
+
550
+ ### Step 5: Register VRF Artifact
551
+
552
+ ```
553
+ IF verification ran (not skipped):
554
+ Create VRF artifact in state.json:
555
+ { id: "VRF-{next_id}", type: "verify", milestone, phase,
556
+ path: "${PLAN_DIR}/verification.json", status: result.overall == "passed" ? "completed" : "gaps_found",
557
+ depends_on: EXC_artifact.id, created_at, completed_at }
558
+ ```
559
+
560
+ ---
561
+
418
562
  ## E3: Auto Sync
419
563
 
420
564
  **Purpose:** Update codebase documentation after execution.
@@ -460,8 +604,10 @@ If config.json.workflow.reflection == true:
460
604
  ## Final State Update
461
605
 
462
606
  ```
463
- If all tasks completed:
464
- index.json.status = "verifying", set completed_at → "Run /workflow:verify"
607
+ If all tasks completed AND verification passed (or skipped):
608
+ index.json.status = "verified", set completed_at
609
+ Elif all tasks completed AND verification failed:
610
+ index.json.status = "verification_failed", set completed_at
465
611
  Else:
466
612
  index.json.status = "executing" (partial) → "Re-run /workflow:execute to resume"
467
613
 
package/workflows/fork.md CHANGED
@@ -152,7 +152,7 @@ Display:
152
152
  /maestro-analyze {firstPending.phase}
153
153
  /maestro-plan {firstPending.phase}
154
154
  /maestro-execute {firstPending.phase}
155
- /maestro-verify {firstPending.phase}
155
+ /quality-review {firstPending.phase}
156
156
  # ... repeat for next phases in milestone
157
157
 
158
158
  Or delegate (automated):
@@ -179,7 +179,7 @@ List output files: state.json, reflection-log.md, summary.json.
179
179
 
180
180
  | Result | Suggestion |
181
181
  |--------|------------|
182
- | Converged (>=95%) | Skill({ skill: "maestro-verify", args: "{phase}" }) to update validation |
182
+ | Converged (>=95%) | Skill({ skill: "quality-review", args: "{phase}" }) to update validation |
183
183
  | Max iter, >80% | Skill({ skill: "quality-test", args: "{phase}" }) for manual UAT on remaining gaps |
184
184
  | Max iter, <80% | Skill({ skill: "quality-debug" }) for deep investigation |
185
185
  | Bugs discovered | Skill({ skill: "maestro-plan", args: "{phase} --gaps" }) to plan fixes |
@@ -34,7 +34,7 @@ Each milestone must pass a readiness score before advancing. Prevents premature
34
34
  | Documentation (API docs, README, setup guide) | 10% | 60% |
35
35
  | **Weighted total** | | **≥ 80%** |
36
36
 
37
- Score is computed via `maestro-verify` + Gemini analysis. If score < 80%, generate fix plan and re-execute until threshold is met (max 3 retries per milestone, then report blockers).
37
+ Score is computed via `maestro-execute` verification gate + Gemini analysis. If score < 80%, generate fix plan and re-execute until threshold is met (max 3 retries per milestone, then report blockers).
38
38
 
39
39
  ## 6. Completion Criteria
40
40
 
@@ -40,7 +40,7 @@ Instead of regex, extract a structured intent tuple using LLM semantic understan
40
40
 
41
41
  ```json
42
42
  {
43
- "action": "<create|fix|analyze|plan|execute|verify|review|test|debug|refactor|explore|manage|transition|continue|sync|learn|retrospect>",
43
+ "action": "<create|fix|analyze|plan|execute|review|test|debug|refactor|explore|manage|transition|continue|sync|learn|retrospect>",
44
44
  "object": "<feature|bug|issue|code|test|spec|phase|milestone|doc|performance|security|ui|memory|codebase|config>",
45
45
  "scope": "<module/file/area or null>",
46
46
  "issue_id": "<ISS-XXXXXXXX-NNN if mentioned, else null>",
@@ -65,7 +65,7 @@ Route via `action × object` matrix. If `issue_id` present → issue pipeline di
65
65
  | execute | issue→issue_execute | execute |
66
66
  | manage | issue→issue, milestone→milestone_audit, phase→phase_transition, memory/doc/codebase→memory/sync/codebase_refresh | status |
67
67
  | transition | phase→phase_transition, milestone→milestone_complete | phase_transition |
68
- | verify, review, test, debug, refactor, continue, sync, learn, retrospect, release, amend, compose | — | self-named |
68
+ | review, test, debug, refactor, continue, sync, learn, retrospect, release, amend, compose | — | self-named |
69
69
 
70
70
  **Clarity scoring**: 3 = action+object+scope, 2 = action+object, 1 = action only, 0 = empty.
71
71
  If `clarity < 2` and not `AUTO_YES`: request user input (max 2 rounds).
@@ -81,16 +81,15 @@ Returns `{ chain, argsOverride? }`. Steps resolved from `chainMap[chain]`.
81
81
  | No phases | `brainstorm-driven` |
82
82
  | pending + has context | `plan` |
83
83
  | pending, no context | `analyze` |
84
- | exploring/planning + has plan | `execute-verify` |
84
+ | exploring/planning + has plan | `execute` |
85
85
  | exploring/planning, no plan | `plan` |
86
- | executing, all tasks done | `verify` |
86
+ | executing, all tasks done | `review` |
87
87
  | executing, tasks remain | `execute` |
88
- | verifying, passed + no review | `review` |
89
- | verifying, passed + BLOCK | `review-fix` |
90
- | verifying, passed + UAT pending | `test` |
91
- | verifying, passed + UAT passed | `milestone-close` |
92
- | verifying, passed + UAT failed | `debug` |
93
- | verifying, not passed | `quality-loop-partial` |
88
+ | exec completed + no review | `review` |
89
+ | exec completed + review BLOCK | `review-fix` |
90
+ | exec completed + UAT pending | `test` |
91
+ | exec completed + UAT passed | `milestone-close` |
92
+ | exec completed + UAT failed | `debug` |
94
93
  | testing, UAT passed | `milestone-close` |
95
94
  | testing, UAT not passed | `debug` |
96
95
  | completed | `milestone-close` |
@@ -108,7 +107,6 @@ const chainMap = {
108
107
  'ui_design': [{ cmd: 'maestro-impeccable', args: '"{phase}" --chain build' }],
109
108
  'plan': [{ cmd: 'maestro-plan', args: '{phase}' }],
110
109
  'execute': [{ cmd: 'maestro-execute', args: '{phase}' }],
111
- 'verify': [{ cmd: 'maestro-verify', args: '{phase}' }],
112
110
  'test_gen': [{ cmd: 'quality-auto-test', args: '{phase}' }],
113
111
  'auto_test': [{ cmd: 'quality-auto-test', args: '{phase}' }],
114
112
  'test': [{ cmd: 'quality-test', args: '{phase}' }],
@@ -141,36 +139,27 @@ const chainMap = {
141
139
  { cmd: 'maestro-init' },
142
140
  { cmd: 'maestro-roadmap', args: '--mode full "{description}"' },
143
141
  { cmd: 'maestro-plan', args: '{phase}' },
144
- { cmd: 'maestro-execute', args: '{phase}' },
145
- { cmd: 'maestro-verify', args: '{phase}' }
142
+ { cmd: 'maestro-execute', args: '{phase}' }
146
143
  ],
147
144
  'brainstorm-driven': [
148
145
  { cmd: 'maestro-brainstorm', args: '"{description}"' },
149
146
  { cmd: 'maestro-plan', args: '{phase}' },
150
- { cmd: 'maestro-execute', args: '{phase}' },
151
- { cmd: 'maestro-verify', args: '{phase}' }
147
+ { cmd: 'maestro-execute', args: '{phase}' }
152
148
  ],
153
149
  'impeccable-build': [
154
150
  { cmd: 'maestro-impeccable', args: '"{phase}" --chain build' },
155
151
  { cmd: 'maestro-plan', args: '{phase}' },
156
- { cmd: 'maestro-execute', args: '{phase}' },
157
- { cmd: 'maestro-verify', args: '{phase}' }
152
+ { cmd: 'maestro-execute', args: '{phase}' }
158
153
  ],
159
154
  'full-lifecycle': [
160
155
  { cmd: 'maestro-plan', args: '{phase}' },
161
156
  { cmd: 'maestro-execute', args: '{phase}' },
162
- { cmd: 'maestro-verify', args: '{phase}' },
163
157
  { cmd: 'quality-review', args: '{phase}' },
164
158
  { cmd: 'quality-test', args: '{phase}' },
165
159
  { cmd: 'maestro-milestone-audit' },
166
160
  { cmd: 'maestro-milestone-complete' }
167
161
  ],
168
- 'execute-verify': [
169
- { cmd: 'maestro-execute', args: '{phase}' },
170
- { cmd: 'maestro-verify', args: '{phase}' }
171
- ],
172
162
  'quality-loop': [
173
- { cmd: 'maestro-verify', args: '{phase}' },
174
163
  { cmd: 'quality-review', args: '{phase}' },
175
164
  { cmd: 'quality-test', args: '{phase}' },
176
165
  { cmd: 'quality-debug', args: '--from-uat {phase}' },
@@ -185,14 +174,12 @@ const chainMap = {
185
174
  { cmd: 'maestro-init' },
186
175
  { cmd: 'maestro-roadmap', args: '"{description}"' },
187
176
  { cmd: 'maestro-plan', args: '{phase}' },
188
- { cmd: 'maestro-execute', args: '{phase}' },
189
- { cmd: 'maestro-verify', args: '{phase}' }
177
+ { cmd: 'maestro-execute', args: '{phase}' }
190
178
  ],
191
179
  'next-milestone': [
192
180
  { cmd: 'maestro-roadmap', args: '"{description}"' },
193
181
  { cmd: 'maestro-plan', args: '{phase}' },
194
- { cmd: 'maestro-execute', args: '{phase}' },
195
- { cmd: 'maestro-verify', args: '{phase}' }
182
+ { cmd: 'maestro-execute', args: '{phase}' }
196
183
  ],
197
184
  'analyze-plan-execute': [
198
185
  { cmd: 'maestro-analyze', args: '"{description}" -q' },
@@ -203,17 +190,15 @@ const chainMap = {
203
190
  // ── SKILL.md simplified aliases (--chain <name> shortcuts) ───────────────
204
191
  'feature': [
205
192
  { cmd: 'maestro-plan', args: '{phase}' },
206
- { cmd: 'maestro-execute', args: '{phase}' },
207
- { cmd: 'maestro-verify', args: '{phase}' }
193
+ { cmd: 'maestro-execute', args: '{phase}' }
208
194
  ],
209
195
  'quality-fix': [
210
196
  { cmd: 'maestro-analyze', args: '--gaps "{description}"' },
211
197
  { cmd: 'maestro-plan', args: '--gaps' },
212
- { cmd: 'maestro-execute', args: '' },
213
- { cmd: 'maestro-verify', args: '{phase}' }
198
+ { cmd: 'maestro-execute', args: '' }
214
199
  ],
215
200
  'deploy': [
216
- { cmd: 'maestro-verify', args: '{phase}' },
201
+ { cmd: 'maestro-execute', args: '{phase}' },
217
202
  { cmd: 'maestro-milestone-release' }
218
203
  ],
219
204
 
@@ -238,8 +223,7 @@ const chainMap = {
238
223
  ],
239
224
  'quality-loop-partial': [
240
225
  { cmd: 'maestro-plan', args: '{phase} --gaps' },
241
- { cmd: 'maestro-execute', args: '{phase}' },
242
- { cmd: 'maestro-verify', args: '{phase}' }
226
+ { cmd: 'maestro-execute', args: '{phase}' }
243
227
  ],
244
228
  'milestone-release': [
245
229
  { cmd: 'maestro-milestone-audit' },
@@ -24,7 +24,7 @@ Parse $ARGUMENTS → extract flags, remainder is intent text.
24
24
 
25
25
  Check `.workflow/state.json` existence.
26
26
 
27
- **If exists:** Read state.json + roadmap.md. Derive progress by grouping artifacts by phase, determining furthest artifact type per phase (analyze→plan→execute→verify), and identifying pending plans. Build `$PROJECT_STATE`:
27
+ **If exists:** Read state.json + roadmap.md. Derive progress by grouping artifacts by phase, determining furthest artifact type per phase (analyze→plan→execute), and identifying pending plans. Build `$PROJECT_STATE`:
28
28
  ```json
29
29
  {
30
30
  "initialized": true,
@@ -91,9 +91,8 @@ Directly match user intent to the best `task_type` (maps to chain in chainMap).
91
91
  |-----------|---------------------------|
92
92
  | `quick` | Simple/small task, add a feature, quick change |
93
93
  | `plan` | Plan, design, architect a phase |
94
- | `execute` | Implement, develop, code a phase |
94
+ | `execute` | Implement, develop, code a phase (includes built-in verification gate) |
95
95
  | `analyze` | Understand, investigate, evaluate code |
96
- | `verify` | Check goals met, validate results |
97
96
  | `review` | Code quality review |
98
97
  | `test` | Run or create tests, UAT |
99
98
  | `test_gen` | Generate tests for coverage gaps |
@@ -127,12 +126,11 @@ Directly match user intent to the best `task_type` (maps to chain in chainMap).
127
126
  | `team_qa` | Team QA, debugging |
128
127
  | `team_tech_debt` | Team tech debt remediation |
129
128
  | `team_lifecycle` | Team full lifecycle (plan+dev+test+review) |
130
- | `full-lifecycle` | Complete phase: plan→execute→verify→review→test→audit |
129
+ | `full-lifecycle` | Complete phase: plan→execute→review→test→audit |
131
130
  | `brainstorm-driven` | Start from exploration/brainstorm |
132
131
  | `spec-driven` | From spec/requirements (heavy, with init) |
133
132
  | `roadmap-driven` | From requirements (light, with init) |
134
133
  | `analyze-plan-execute` | Fast track: analyze→plan→execute |
135
- | `execute-verify` | Resume after planning |
136
134
  | `review-fix` | Fix review-blocked issues |
137
135
  | `quality-loop` | Full quality improvement cycle |
138
136
  | `quality-loop-partial` | Partial quality fix |
@@ -181,8 +179,7 @@ Full `chainMap` and `detectNextAction` are in the [Reference Data](#reference-da
181
179
 
182
180
  Cross-validate intent against project state:
183
181
  - `execute` but no plan → warn, prepend `maestro-plan`
184
- - `verify` but not executed → warn, prepend `maestro-execute`
185
- - `test` but not verified → warn, prepend `maestro-verify`
182
+ - `test` but not executed → warn, prepend `maestro-execute`
186
183
  - `milestone_close` but not all phases executed → warn, suggest completing first
187
184
 
188
185
  Display warning but let user override.
@@ -221,7 +218,7 @@ Step type is selected **per step**, not per chain. Pre-compute and write to each
221
218
  If execMode is 'cli' or 'internal' → force that type for all steps ("cli" or "skill").
222
219
  In 'auto' mode, select per step:
223
220
  CLI steps (heavy, context-isolated): maestro-plan, maestro-execute, maestro-analyze, maestro-brainstorm, maestro-roadmap, maestro-impeccable, quality-refactor → type: "cli"
224
- Skill steps (everything else): current-session Skill() call — verify, review, test, debug, milestone-*, manage-*, spec-*, quick, etc. → type: "skill"
221
+ Skill steps (everything else): current-session Skill() call — review, test, debug, milestone-*, manage-*, spec-*, quick, etc. → type: "skill"
225
222
  ```
226
223
 
227
224
  **Trade-off:** CLI = context isolation + template prompts. Skill = current-session Skill() call, direct visibility + synchronous + user can intervene.
@@ -311,7 +308,6 @@ const chainMap = {
311
308
  'impeccable_improve': [{ cmd: 'maestro-impeccable', args: '"{description}" --chain improve' }],
312
309
  'plan': [{ cmd: 'maestro-plan', args: '{phase}' }],
313
310
  'execute': [{ cmd: 'maestro-execute', args: '{phase}' }],
314
- 'verify': [{ cmd: 'maestro-verify', args: '{phase}' }],
315
311
  'test_gen': [{ cmd: 'quality-auto-test', args: '{phase}' }],
316
312
  'auto_test': [{ cmd: 'quality-auto-test', args: '{phase}' }],
317
313
  'test': [{ cmd: 'quality-test', args: '{phase}' }],
@@ -353,20 +349,19 @@ const chainMap = {
353
349
  'team_tech_debt': [{ cmd: 'team-tech-debt', args: '"{description}"' }],
354
350
 
355
351
  // ── Multi-step chains ──
356
- 'full-lifecycle': [{ cmd: 'maestro-plan', args: '{phase}' }, { cmd: 'maestro-execute', args: '{phase}' }, { cmd: 'maestro-verify', args: '{phase}' }, { cmd: 'quality-review', args: '{phase}' }, { cmd: 'quality-test', args: '{phase}' }, { cmd: 'maestro-milestone-audit' }],
357
- 'spec-driven': [{ cmd: 'maestro-init' }, { cmd: 'maestro-roadmap', args: '--mode full "{description}"' }, { cmd: 'maestro-plan', args: '{phase}' }, { cmd: 'maestro-execute', args: '{phase}' }, { cmd: 'maestro-verify', args: '{phase}' }],
358
- 'roadmap-driven': [{ cmd: 'maestro-init' }, { cmd: 'maestro-roadmap', args: '"{description}"' }, { cmd: 'maestro-plan', args: '{phase}' }, { cmd: 'maestro-execute', args: '{phase}' }, { cmd: 'maestro-verify', args: '{phase}' }],
359
- 'brainstorm-driven': [{ cmd: 'maestro-brainstorm', args: '"{description}"' }, { cmd: 'maestro-plan', args: '{phase}' }, { cmd: 'maestro-execute', args: '{phase}' }, { cmd: 'maestro-verify', args: '{phase}' }],
352
+ 'full-lifecycle': [{ cmd: 'maestro-plan', args: '{phase}' }, { cmd: 'maestro-execute', args: '{phase}' }, { cmd: 'quality-review', args: '{phase}' }, { cmd: 'quality-test', args: '{phase}' }, { cmd: 'maestro-milestone-audit' }],
353
+ 'spec-driven': [{ cmd: 'maestro-init' }, { cmd: 'maestro-roadmap', args: '--mode full "{description}"' }, { cmd: 'maestro-plan', args: '{phase}' }, { cmd: 'maestro-execute', args: '{phase}' }],
354
+ 'roadmap-driven': [{ cmd: 'maestro-init' }, { cmd: 'maestro-roadmap', args: '"{description}"' }, { cmd: 'maestro-plan', args: '{phase}' }, { cmd: 'maestro-execute', args: '{phase}' }],
355
+ 'brainstorm-driven': [{ cmd: 'maestro-brainstorm', args: '"{description}"' }, { cmd: 'maestro-plan', args: '{phase}' }, { cmd: 'maestro-execute', args: '{phase}' }],
360
356
  'brainstorm_visualize': [{ cmd: 'brainstorm-visualize', args: '"{description}"' }],
361
- 'impeccable-build': [{ cmd: 'maestro-impeccable', args: '"{description}" --chain build' }, { cmd: 'maestro-plan', args: '{phase}' }, { cmd: 'maestro-execute', args: '{phase}' }, { cmd: 'maestro-verify', args: '{phase}' }],
362
- 'impeccable-driven': [{ cmd: 'maestro-impeccable', args: '"{description}" --chain build' }, { cmd: 'maestro-verify', args: '{phase}' }],
357
+ 'impeccable-build': [{ cmd: 'maestro-impeccable', args: '"{description}" --chain build' }, { cmd: 'maestro-plan', args: '{phase}' }, { cmd: 'maestro-execute', args: '{phase}' }],
358
+ 'impeccable-driven': [{ cmd: 'maestro-impeccable', args: '"{description}" --chain build' }, { cmd: 'maestro-execute', args: '{phase}' }],
363
359
  'analyze-plan-execute': [{ cmd: 'maestro-analyze', args: '"{description}" -q' }, { cmd: 'maestro-plan', args: '--dir {scratch_dir}' }, { cmd: 'maestro-execute', args: '--dir {scratch_dir}' }],
364
- 'execute-verify': [{ cmd: 'maestro-execute', args: '{phase}' }, { cmd: 'maestro-verify', args: '{phase}' }],
365
- 'quality-loop': [{ cmd: 'maestro-verify', args: '{phase}' }, { cmd: 'quality-review', args: '{phase}' }, { cmd: 'quality-auto-test', args: '{phase}' }, { cmd: 'quality-test', args: '{phase}' }, { cmd: 'quality-debug', args: '--from-uat {phase}' }, { cmd: 'maestro-plan', args: '{phase} --gaps' }, { cmd: 'maestro-execute', args: '{phase}' }],
360
+ 'quality-loop': [{ cmd: 'quality-review', args: '{phase}' }, { cmd: 'quality-auto-test', args: '{phase}' }, { cmd: 'quality-test', args: '{phase}' }, { cmd: 'quality-debug', args: '--from-uat {phase}' }, { cmd: 'maestro-plan', args: '{phase} --gaps' }, { cmd: 'maestro-execute', args: '{phase}' }],
366
361
  'milestone-close': [{ cmd: 'maestro-milestone-audit' }, { cmd: 'maestro-milestone-complete' }],
367
- 'next-milestone': [{ cmd: 'maestro-roadmap', args: '"{description}"' }, { cmd: 'maestro-plan', args: '{phase}' }, { cmd: 'maestro-execute', args: '{phase}' }, { cmd: 'maestro-verify', args: '{phase}' }],
362
+ 'next-milestone': [{ cmd: 'maestro-roadmap', args: '"{description}"' }, { cmd: 'maestro-plan', args: '{phase}' }, { cmd: 'maestro-execute', args: '{phase}' }],
368
363
  'review-fix': [{ cmd: 'maestro-plan', args: '{phase} --gaps' }, { cmd: 'maestro-execute', args: '{phase}' }, { cmd: 'quality-review', args: '{phase}' }],
369
- 'quality-loop-partial': [{ cmd: 'maestro-plan', args: '{phase} --gaps' }, { cmd: 'maestro-execute', args: '{phase}' }, { cmd: 'maestro-verify', args: '{phase}' }],
364
+ 'quality-loop-partial': [{ cmd: 'maestro-plan', args: '{phase} --gaps' }, { cmd: 'maestro-execute', args: '{phase}' }],
370
365
  'issue-full': [{ cmd: 'maestro-analyze', args: '--gaps {issue_id}' }, { cmd: 'maestro-plan', args: '--gaps' }, { cmd: 'maestro-execute', args: '' }, { cmd: 'quality-review', args: '{phase}' }, { cmd: 'manage-issue', args: 'close {issue_id} --resolution fixed' }],
371
366
  'issue-quick': [{ cmd: 'maestro-plan', args: '--gaps' }, { cmd: 'maestro-execute', args: '' }, { cmd: 'manage-issue', args: 'close {issue_id} --resolution fixed' }],
372
367
  'milestone-release': [{ cmd: 'maestro-milestone-audit' }, { cmd: 'maestro-milestone-release' }],
@@ -404,15 +399,13 @@ detectNextAction(state):
404
399
 
405
400
  Route by phase_status (ps):
406
401
  pending: has context artifact → 'plan'; has analysis → 'analyze-quick'; else → 'analyze'
407
- exploring/planning: has plan → 'execute-verify'; else → 'plan'
408
- executing: all tasks done → 'verify'; has blockers → 'debug'; else → 'execute'
409
- verifying:
410
- verification passed:
411
- no review → 'review'
412
- review BLOCK → 'review-fix'
413
- uat pending → 'test'; uat passed → 'milestone-close'; uat failed → 'debug'
414
- default → 'test'
415
- verification not passed → 'quality-loop-partial'
402
+ exploring/planning: has plan → 'execute'; else → 'plan'
403
+ executing: all tasks done → 'review'; has blockers → 'debug'; else → 'execute'
404
+ exec completed (verification is built-in):
405
+ no review → 'review'
406
+ review BLOCK → 'review-fix'
407
+ uat pending → 'test'; uat passed → 'milestone-close'; uat failed → 'debug'
408
+ default → 'test'
416
409
  testing: uat passed → 'milestone-close'; else → 'debug'
417
410
  completed: → 'milestone-close'
418
411
  forked: worktrees.json exists → 'merge'; else → 'status'
@@ -424,19 +417,18 @@ detectNextAction(state):
424
417
 
425
418
  | Chain | Steps | Use Case |
426
419
  |-------|-------|----------|
427
- | `full-lifecycle` | plan → execute → verify → review → test → audit | Full milestone completion |
428
- | `blueprint-driven` | init → blueprint → plan → execute → verify | From idea/requirements (heavy) |
429
- | `roadmap-driven` | init → roadmap → plan → execute → verify | From requirements (light) |
430
- | `brainstorm-driven` | brainstorm → plan → execute → verify | From exploration |
431
- | `impeccable-build` | impeccable --chain build → plan → execute → verify | From design system generation |
420
+ | `full-lifecycle` | plan → execute → review → test → audit | Full milestone completion |
421
+ | `blueprint-driven` | init → blueprint → plan → execute | From idea/requirements (heavy) |
422
+ | `roadmap-driven` | init → roadmap → plan → execute | From requirements (light) |
423
+ | `brainstorm-driven` | brainstorm → plan → execute | From exploration |
424
+ | `impeccable-build` | impeccable --chain build → plan → execute | From design system generation |
432
425
  | `analyze-plan-execute` | analyze -q → plan --dir → execute --dir | Fast track (scratch mode) |
433
- | `execute-verify` | execute → verify | Resume after planning |
434
426
  | `review-fix` | plan --gaps → execute → review | Fix review-blocked issues |
435
- | `quality-loop` | verify → review → test-gen → test → debug → plan --gaps → execute | Fix quality issues |
436
- | `quality-loop-partial` | plan --gaps → execute → verify | Partial quality fix cycle |
427
+ | `quality-loop` | review → test-gen → test → debug → plan --gaps → execute | Fix quality issues |
428
+ | `quality-loop-partial` | plan --gaps → execute | Partial quality fix cycle |
437
429
  | `milestone-close` | audit → complete | Close a milestone |
438
430
  | `milestone-release` | audit → release | Release with version tag |
439
- | `next-milestone` | roadmap → plan → execute → verify | Next milestone (auto-loads deferred) |
431
+ | `next-milestone` | roadmap → plan → execute | Next milestone (auto-loads deferred) |
440
432
  | `issue-full` | analyze → plan → execute → review → close | Issue with quality gate |
441
433
  | `issue-quick` | plan → execute → close | Issue fast path |
442
434
 
@@ -456,8 +448,8 @@ detectNextAction(state):
456
448
  | `"这个问题需要看看"` | analyze | maestro-analyze |
457
449
  | `"创建一个 issue 跟踪"` | issue | manage-issue |
458
450
  | `"discover issues"` | issue_discover | manage-issue-discover |
459
- | `"brainstorm notifications"` | brainstorm-driven | brainstorm→plan→execute→verify |
460
- | `"spec generate auth"` | spec-driven | init→spec→plan→execute→verify |
451
+ | `"brainstorm notifications"` | brainstorm-driven | brainstorm→plan→execute |
452
+ | `"spec generate auth"` | spec-driven | init→spec→plan→execute |
461
453
  | `"ui design landing"` | impeccable_build | maestro-impeccable --chain build |
462
454
  | `"优化界面交互"` | impeccable_improve | maestro-impeccable --chain improve |
463
455
  | `"refactor auth module"` | refactor | quality-refactor "auth module" |
@@ -466,10 +458,10 @@ detectNextAction(state):
466
458
  | `"next phase"` | milestone-close | audit→complete |
467
459
  | `-y "implement X"` | execute | maestro-execute (auto) |
468
460
  | `"release v1.2"` | release | maestro-milestone-release |
469
- | `"从需求开始做完整个项目"` | spec-driven | init→spec→plan→execute→verify |
461
+ | `"从需求开始做完整个项目"` | spec-driven | init→spec→plan→execute |
470
462
  | `"分析完直接改"` | analyze-plan-execute | analyze→plan→execute |
471
463
  | `"review 有问题需要修"` | review-fix | plan --gaps→execute→review |
472
- | `"全面质量检查"` | quality-loop | verify→review→test→debug→plan→execute |
464
+ | `"全面质量检查"` | quality-loop | review→test→debug→plan→execute |
473
465
 
474
466
  ### Error Codes
475
467
 
@@ -488,7 +480,7 @@ detectNextAction(state):
488
480
  1. **Semantic Routing** — LLM-native `action × object` extraction; disambiguates "问题" by context
489
481
  2. **State-Aware** — Reads `.workflow/state.json` before routing
490
482
  3. **Quality Gates** — Issue chains auto-include review; `issue-full` is default for issue execution
491
- 4. **Per-Step Type** — Each step independently typed as `"skill"` or `"cli"`. Heavy steps (plan, execute, analyze, brainstorm) → CLI for context isolation. Observable steps (verify, review, test, debug, manage-*) → Skill (current-session) for direct visibility. `--exec cli|internal` forces all steps.
483
+ 4. **Per-Step Type** — Each step independently typed as `"skill"` or `"cli"`. Heavy steps (plan, execute, analyze, brainstorm) → CLI for context isolation. Observable steps (review, test, debug, manage-*) → Skill (current-session) for direct visibility. `--exec cli|internal` forces all steps.
492
484
  5. **Unified Executor** — All execution dispatched to `maestro-ralph-execute`, which handles both maestro (static chain) and ralph (adaptive chain with decision nodes) sessions.
493
485
  6. **Phase Propagation** — Auto-detects and passes phase numbers to downstream commands
494
486
  7. **Auto Mode** — `-y` propagates through chain, skipping all confirmations
@@ -38,7 +38,7 @@ When external review feedback is received (from human reviewers, PR comments, or
38
38
  ## Prerequisites
39
39
 
40
40
  - Phase execution completed (task summaries exist)
41
- - Recommended: maestro-verify already run (review uses verification gaps as context)
41
+ - Recommended: maestro-execute verification gate already run (review uses verification gaps as context)
42
42
 
43
43
  ---
44
44