maestro-flow 0.3.15 → 0.3.16

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 (374) hide show
  1. package/.claude/commands/maestro-amend.md +300 -0
  2. package/.claude/commands/maestro-analyze.md +1 -49
  3. package/.claude/commands/maestro-execute.md +2 -56
  4. package/.claude/commands/maestro-fork.md +3 -50
  5. package/.claude/commands/maestro-merge.md +2 -26
  6. package/.claude/commands/maestro-milestone-audit.md +1 -5
  7. package/.claude/commands/maestro-milestone-complete.md +1 -7
  8. package/.claude/commands/maestro-plan.md +6 -127
  9. package/.claude/commands/maestro-roadmap.md +3 -101
  10. package/.claude/commands/maestro-spec-generate.md +1 -25
  11. package/.claude/commands/maestro-ui-design.md +14 -73
  12. package/.claude/commands/maestro-verify.md +1 -32
  13. package/.claude/commands/maestro.md +13 -30
  14. package/.claude/commands/manage-harvest.md +7 -44
  15. package/.claude/commands/manage-knowhow-capture.md +193 -0
  16. package/.claude/commands/{manage-memory.md → manage-knowhow.md} +77 -88
  17. package/.claude/commands/manage-learn.md +3 -28
  18. package/.claude/commands/manage-status.md +1 -20
  19. package/.claude/commands/manage-wiki.md +1 -1
  20. package/.claude/commands/quality-business-test.md +1 -1
  21. package/.claude/commands/quality-debug.md +3 -18
  22. package/.claude/commands/quality-integration-test.md +3 -23
  23. package/.claude/commands/quality-retrospective.md +1 -28
  24. package/.claude/commands/quality-review.md +3 -52
  25. package/.claude/commands/quality-test-gen.md +1 -10
  26. package/.claude/commands/quality-test.md +3 -25
  27. package/.claude/commands/spec-add.md +1 -21
  28. package/.claude/commands/spec-load.md +1 -16
  29. package/.claude/commands/wiki-connect.md +2 -112
  30. package/.claude/commands/wiki-digest.md +2 -141
  31. package/.codex/skills/learn-decompose/SKILL.md +2 -8
  32. package/.codex/skills/maestro/SKILL.md +60 -146
  33. package/.codex/skills/maestro-analyze/SKILL.md +52 -150
  34. package/.codex/skills/maestro-brainstorm/SKILL.md +36 -91
  35. package/.codex/skills/maestro-composer/SKILL.md +4 -76
  36. package/.codex/skills/maestro-execute/SKILL.md +46 -177
  37. package/.codex/skills/maestro-init/SKILL.md +7 -51
  38. package/.codex/skills/maestro-link-coordinate/SKILL.md +56 -229
  39. package/.codex/skills/maestro-milestone-audit/SKILL.md +7 -36
  40. package/.codex/skills/maestro-milestone-complete/SKILL.md +11 -93
  41. package/.codex/skills/maestro-overlay/SKILL.md +23 -92
  42. package/.codex/skills/maestro-plan/SKILL.md +42 -166
  43. package/.codex/skills/maestro-player/SKILL.md +24 -149
  44. package/.codex/skills/maestro-quick/SKILL.md +5 -48
  45. package/.codex/skills/maestro-roadmap/SKILL.md +21 -66
  46. package/.codex/skills/maestro-spec-generate/SKILL.md +20 -56
  47. package/.codex/skills/maestro-ui-design/SKILL.md +6 -53
  48. package/.codex/skills/maestro-verify/SKILL.md +39 -136
  49. package/.codex/skills/manage-codebase-rebuild/SKILL.md +25 -75
  50. package/.codex/skills/manage-codebase-refresh/SKILL.md +5 -32
  51. package/.codex/skills/manage-issue/SKILL.md +1 -6
  52. package/.codex/skills/manage-issue-discover/SKILL.md +33 -93
  53. package/.codex/skills/{manage-memory → manage-knowhow}/SKILL.md +95 -95
  54. package/.codex/skills/manage-knowhow-capture/SKILL.md +110 -0
  55. package/.codex/skills/manage-learn/SKILL.md +17 -71
  56. package/.codex/skills/manage-status/SKILL.md +4 -35
  57. package/.codex/skills/manage-wiki/SKILL.md +1 -1
  58. package/.codex/skills/quality-business-test/SKILL.md +2 -14
  59. package/.codex/skills/quality-debug/SKILL.md +41 -133
  60. package/.codex/skills/quality-integration-test/SKILL.md +36 -145
  61. package/.codex/skills/quality-refactor/SKILL.md +6 -59
  62. package/.codex/skills/quality-retrospective/SKILL.md +292 -531
  63. package/.codex/skills/quality-review/SKILL.md +30 -65
  64. package/.codex/skills/quality-sync/SKILL.md +2 -11
  65. package/.codex/skills/quality-test/SKILL.md +4 -45
  66. package/.codex/skills/quality-test-gen/SKILL.md +33 -121
  67. package/.codex/skills/spec-add/SKILL.md +2 -9
  68. package/.codex/skills/spec-load/SKILL.md +4 -14
  69. package/.codex/skills/spec-map/SKILL.md +4 -37
  70. package/.codex/skills/spec-remove/SKILL.md +3 -35
  71. package/.codex/skills/spec-setup/SKILL.md +2 -19
  72. package/.codex/skills/team-coordinate/SKILL.md +20 -132
  73. package/.codex/skills/team-coordinate/roles/coordinator/commands/monitor.md +61 -215
  74. package/.codex/skills/team-executor/SKILL.md +7 -66
  75. package/.codex/skills/team-executor/roles/executor/commands/monitor.md +60 -182
  76. package/.codex/skills/team-executor/specs/session-schema.md +22 -56
  77. package/.codex/skills/team-lifecycle-v4/SKILL.md +22 -143
  78. package/.codex/skills/team-lifecycle-v4/roles/coordinator/commands/monitor.md +31 -223
  79. package/.codex/skills/team-quality-assurance/SKILL.md +14 -88
  80. package/.codex/skills/team-quality-assurance/roles/coordinator/commands/monitor.md +46 -186
  81. package/.codex/skills/team-review/SKILL.md +12 -86
  82. package/.codex/skills/team-review/roles/coordinator/commands/monitor.md +49 -187
  83. package/.codex/skills/team-tech-debt/SKILL.md +11 -50
  84. package/.codex/skills/team-tech-debt/roles/coordinator/commands/monitor.md +50 -239
  85. package/.codex/skills/team-testing/SKILL.md +14 -99
  86. package/.codex/skills/team-testing/roles/coordinator/commands/monitor.md +52 -228
  87. package/.codex/skills/wiki-connect/SKILL.md +2 -5
  88. package/README.md +6 -0
  89. package/README.zh-CN.md +6 -0
  90. package/chains/_intent-map.json +7 -7
  91. package/chains/singles/{memory-capture.json → knowhow-capture.json} +5 -5
  92. package/chains/singles/{memory.json → knowhow.json} +6 -6
  93. package/dashboard/dist/assets/{ArtifactsPage-CUrrDGgN.js → ArtifactsPage-iJZtYsmR.js} +6 -6
  94. package/dashboard/dist/assets/ChatInput-DNnDLdQF.js +6 -0
  95. package/dashboard/dist/assets/ChatPage-BjBibfE4.js +22 -0
  96. package/dashboard/dist/assets/{CollabPage-DIUXeazv.js → CollabPage-8lUMUol_.js} +1 -1
  97. package/dashboard/dist/assets/{ExecutionPanel-VmYeADFj.js → ExecutionPanel-BKV3GZ7Q.js} +1 -1
  98. package/dashboard/dist/assets/{KanbanPage-DLq8v7hg.js → KanbanPage-diY3QmGd.js} +2 -2
  99. package/dashboard/dist/assets/{MarkdownRenderer-D7AehrnR.js → MarkdownRenderer-cYFfe1uX.js} +1 -1
  100. package/dashboard/dist/assets/McpPage-COjuIf7U.js +21 -0
  101. package/dashboard/dist/assets/MeetingRoomPage-wnvT7wlB.js +85 -0
  102. package/dashboard/dist/assets/{OutputPanel-B-Rjwgmv.js → OutputPanel-DDL90Idy.js} +1 -1
  103. package/dashboard/dist/assets/{ProblemsPanel-GEpF-oi4.js → ProblemsPanel-zFN9IIs0.js} +1 -1
  104. package/dashboard/dist/assets/{RequirementBoardPage-xs8uDM7I.js → RequirementBoardPage-DOPJoT0I.js} +2 -2
  105. package/dashboard/dist/assets/{RequirementPage-BKDSFwjA.js → RequirementPage-CEVquRgM.js} +1 -1
  106. package/dashboard/dist/assets/RoomsPage-D5USEWDh.js +1 -0
  107. package/dashboard/dist/assets/{SpecsPage-DLFb9ZH0.js → SpecsPage-BOwBin_o.js} +1 -1
  108. package/dashboard/dist/assets/{SupervisorPage-SOki_kgz.js → SupervisorPage-5iRyMU5T.js} +1 -1
  109. package/dashboard/dist/assets/TeamsPage-DlcEmr_Q.js +1 -0
  110. package/dashboard/dist/assets/{TreeBrowser-B9DHdULE.js → TreeBrowser-Y48Wz-QY.js} +1 -1
  111. package/dashboard/dist/assets/WorkflowPage-CmQaRVgL.js +6 -0
  112. package/dashboard/dist/assets/arrow-left-NCUOENvg.js +6 -0
  113. package/dashboard/dist/assets/{check-DJDk3A2a.js → check-o7nfGNHf.js} +1 -1
  114. package/dashboard/dist/assets/{chevron-right-C7bVDreZ.js → chevron-right-BXySK2fn.js} +1 -1
  115. package/dashboard/dist/assets/{circle-alert-Na1vf6qQ.js → circle-alert-DcSBokh4.js} +1 -1
  116. package/dashboard/dist/assets/{circle-check-CEGgy3NV.js → circle-check-Cd-jce4j.js} +1 -1
  117. package/dashboard/dist/assets/{circle-check-big-3JB8zRYj.js → circle-check-big-BN7Mdp4i.js} +1 -1
  118. package/dashboard/dist/assets/{circle-Qfgy4LB_.js → circle-cooAwnAR.js} +1 -1
  119. package/dashboard/dist/assets/{code-Ble63Idz.js → code-BQa9oL1n.js} +1 -1
  120. package/dashboard/dist/assets/{columns-3-BUcKlxve.js → columns-3-BzgxelGx.js} +1 -1
  121. package/dashboard/dist/assets/{download-CMqkfn8x.js → download-swRJnate.js} +1 -1
  122. package/dashboard/dist/assets/en-C_BD3UCD.js +1 -0
  123. package/dashboard/dist/assets/{folder-B9ewx9LL.js → folder-DbGbLNFN.js} +1 -1
  124. package/dashboard/dist/assets/index-BEUaOz_b.css +1 -0
  125. package/dashboard/dist/assets/{index-JTmGteaT.js → index-DIoMBMbv.js} +1 -1
  126. package/dashboard/dist/assets/index-DLBN_7fb.js +44 -0
  127. package/dashboard/dist/assets/index-uIqUCT8y.js +236 -0
  128. package/dashboard/dist/assets/{list-DI8Wn2aT.js → list-BTRAIvDq.js} +1 -1
  129. package/dashboard/dist/assets/loader-NHtB6Mdn.js +6 -0
  130. package/dashboard/dist/assets/{minus-Lp_BfctG.js → minus-BjMxRTET.js} +1 -1
  131. package/dashboard/dist/assets/{pen-line-Ch7sphzZ.js → pen-line-C4_O16H0.js} +1 -1
  132. package/dashboard/dist/assets/{pencil-_yRMHmGT.js → pencil-DTmKhyDY.js} +1 -1
  133. package/dashboard/dist/assets/{proxy-D72Y8a4Y.js → proxy-Dtx5p6IO.js} +1 -1
  134. package/dashboard/dist/assets/rows-2-GR1dZtRu.js +6 -0
  135. package/dashboard/dist/assets/{search-BS6fI6Bg.js → search-DVtgy2W7.js} +1 -1
  136. package/dashboard/dist/assets/{shallow-BXasQBvr.js → shallow-BOmvDNsv.js} +1 -1
  137. package/dashboard/dist/assets/{table-CeGlFjlP.js → table-DCzuJAFh.js} +1 -1
  138. package/dashboard/dist/assets/team-types-BPeOvVdA.js +6 -0
  139. package/dashboard/dist/assets/{terminal-BJic2yW-.js → terminal-CzogW4cl.js} +1 -1
  140. package/dashboard/dist/assets/{trash-2-Czz4X8Fb.js → trash-2-52LATVfW.js} +1 -1
  141. package/dashboard/dist/assets/users-DLFE2voE.js +6 -0
  142. package/dashboard/dist/assets/{zap-C3H0jVFA.js → zap-DhiYlgyZ.js} +1 -1
  143. package/dashboard/dist/assets/zh-CN-DvQKfow3.js +1 -0
  144. package/dashboard/dist/index.html +2 -2
  145. package/dashboard/dist-server/dashboard/src/server/agents/agent-manager.d.ts +2 -0
  146. package/dashboard/dist-server/dashboard/src/server/agents/agent-manager.js +19 -11
  147. package/dashboard/dist-server/dashboard/src/server/agents/agent-manager.js.map +1 -1
  148. package/dashboard/dist-server/dashboard/src/server/agents/agent-sdk-adapter.js +5 -0
  149. package/dashboard/dist-server/dashboard/src/server/agents/agent-sdk-adapter.js.map +1 -1
  150. package/dashboard/dist-server/dashboard/src/server/agents/claude-code-adapter.d.ts +1 -0
  151. package/dashboard/dist-server/dashboard/src/server/agents/claude-code-adapter.js +21 -4
  152. package/dashboard/dist-server/dashboard/src/server/agents/claude-code-adapter.js.map +1 -1
  153. package/dashboard/dist-server/dashboard/src/server/agents/env-cleanup.js +8 -0
  154. package/dashboard/dist-server/dashboard/src/server/agents/env-cleanup.js.map +1 -1
  155. package/dashboard/dist-server/dashboard/src/server/coordinator/chain-map.js +6 -6
  156. package/dashboard/dist-server/dashboard/src/server/coordinator/chain-map.js.map +1 -1
  157. package/dashboard/dist-server/dashboard/src/server/coordinator/chain-map.test.js +2 -2
  158. package/dashboard/dist-server/dashboard/src/server/coordinator/chain-map.test.js.map +1 -1
  159. package/dashboard/dist-server/dashboard/src/server/index.js +14 -3
  160. package/dashboard/dist-server/dashboard/src/server/index.js.map +1 -1
  161. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/mcp-config-builder.d.ts +24 -0
  162. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/mcp-config-builder.js +220 -0
  163. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/mcp-config-builder.js.map +1 -0
  164. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/mcp-config-builder.test.d.ts +1 -0
  165. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/mcp-config-builder.test.js +115 -0
  166. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/mcp-config-builder.test.js.map +1 -0
  167. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/meeting-room-mcp-server.d.ts +44 -0
  168. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/meeting-room-mcp-server.js +260 -0
  169. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/meeting-room-mcp-server.js.map +1 -0
  170. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/meeting-room-mcp-server.test.d.ts +1 -0
  171. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/meeting-room-mcp-server.test.js +194 -0
  172. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/meeting-room-mcp-server.test.js.map +1 -0
  173. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/stdio-bridge.d.ts +2 -0
  174. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/stdio-bridge.js +279 -0
  175. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/stdio-bridge.js.map +1 -0
  176. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/tcp-helpers.d.ts +14 -0
  177. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/tcp-helpers.js +131 -0
  178. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/tcp-helpers.js.map +1 -0
  179. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/tcp-helpers.test.d.ts +1 -0
  180. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/tcp-helpers.test.js +134 -0
  181. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/tcp-helpers.test.js.map +1 -0
  182. package/dashboard/dist-server/dashboard/src/server/rooms/meeting-room-session.d.ts +51 -0
  183. package/dashboard/dist-server/dashboard/src/server/rooms/meeting-room-session.js +185 -0
  184. package/dashboard/dist-server/dashboard/src/server/rooms/meeting-room-session.js.map +1 -0
  185. package/dashboard/dist-server/dashboard/src/server/rooms/room-agent-registry.d.ts +29 -0
  186. package/dashboard/dist-server/dashboard/src/server/rooms/room-agent-registry.js +125 -0
  187. package/dashboard/dist-server/dashboard/src/server/rooms/room-agent-registry.js.map +1 -0
  188. package/dashboard/dist-server/dashboard/src/server/rooms/room-mailbox.d.ts +18 -0
  189. package/dashboard/dist-server/dashboard/src/server/rooms/room-mailbox.js +63 -0
  190. package/dashboard/dist-server/dashboard/src/server/rooms/room-mailbox.js.map +1 -0
  191. package/dashboard/dist-server/dashboard/src/server/rooms/room-session-manager.d.ts +19 -0
  192. package/dashboard/dist-server/dashboard/src/server/rooms/room-session-manager.js +45 -0
  193. package/dashboard/dist-server/dashboard/src/server/rooms/room-session-manager.js.map +1 -0
  194. package/dashboard/dist-server/dashboard/src/server/rooms/room-task-board.d.ts +25 -0
  195. package/dashboard/dist-server/dashboard/src/server/rooms/room-task-board.js +115 -0
  196. package/dashboard/dist-server/dashboard/src/server/rooms/room-task-board.js.map +1 -0
  197. package/dashboard/dist-server/dashboard/src/server/rooms/room-types.d.ts +53 -0
  198. package/dashboard/dist-server/dashboard/src/server/rooms/room-types.js +5 -0
  199. package/dashboard/dist-server/dashboard/src/server/rooms/room-types.js.map +1 -0
  200. package/dashboard/dist-server/dashboard/src/server/routes/agents.js +6 -0
  201. package/dashboard/dist-server/dashboard/src/server/routes/agents.js.map +1 -1
  202. package/dashboard/dist-server/dashboard/src/server/routes/cli-history.js +20 -1
  203. package/dashboard/dist-server/dashboard/src/server/routes/cli-history.js.map +1 -1
  204. package/dashboard/dist-server/dashboard/src/server/routes/index.d.ts +2 -1
  205. package/dashboard/dist-server/dashboard/src/server/routes/index.js +8 -1
  206. package/dashboard/dist-server/dashboard/src/server/routes/index.js.map +1 -1
  207. package/dashboard/dist-server/dashboard/src/server/routes/install.js +1 -1
  208. package/dashboard/dist-server/dashboard/src/server/routes/install.js.map +1 -1
  209. package/dashboard/dist-server/dashboard/src/server/routes/mcp.js +2 -2
  210. package/dashboard/dist-server/dashboard/src/server/routes/mcp.js.map +1 -1
  211. package/dashboard/dist-server/dashboard/src/server/routes/room-mcp.d.ts +3 -0
  212. package/dashboard/dist-server/dashboard/src/server/routes/room-mcp.js +246 -0
  213. package/dashboard/dist-server/dashboard/src/server/routes/room-mcp.js.map +1 -0
  214. package/dashboard/dist-server/dashboard/src/server/routes/rooms.d.ts +3 -0
  215. package/dashboard/dist-server/dashboard/src/server/routes/rooms.js +38 -0
  216. package/dashboard/dist-server/dashboard/src/server/routes/rooms.js.map +1 -0
  217. package/dashboard/dist-server/dashboard/src/server/routes/wiki.integration.test.js +7 -7
  218. package/dashboard/dist-server/dashboard/src/server/routes/wiki.integration.test.js.map +1 -1
  219. package/dashboard/dist-server/dashboard/src/server/routes/wiki.js +1 -1
  220. package/dashboard/dist-server/dashboard/src/server/routes/wiki.js.map +1 -1
  221. package/dashboard/dist-server/dashboard/src/server/state/event-bus.d.ts +39 -1
  222. package/dashboard/dist-server/dashboard/src/server/state/event-bus.js +12 -0
  223. package/dashboard/dist-server/dashboard/src/server/state/event-bus.js.map +1 -1
  224. package/dashboard/dist-server/dashboard/src/server/wiki/stress.test.js +1 -1
  225. package/dashboard/dist-server/dashboard/src/server/wiki/stress.test.js.map +1 -1
  226. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js +25 -14
  227. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js.map +1 -1
  228. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.test.js +6 -6
  229. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.test.js.map +1 -1
  230. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-types.d.ts +1 -1
  231. package/dashboard/dist-server/dashboard/src/server/wiki/writer-stress.test.js +17 -16
  232. package/dashboard/dist-server/dashboard/src/server/wiki/writer-stress.test.js.map +1 -1
  233. package/dashboard/dist-server/dashboard/src/server/wiki/writer.d.ts +1 -1
  234. package/dashboard/dist-server/dashboard/src/server/wiki/writer.js +18 -7
  235. package/dashboard/dist-server/dashboard/src/server/wiki/writer.js.map +1 -1
  236. package/dashboard/dist-server/dashboard/src/server/ws/handlers/agent-handler.d.ts +3 -1
  237. package/dashboard/dist-server/dashboard/src/server/ws/handlers/agent-handler.js +75 -1
  238. package/dashboard/dist-server/dashboard/src/server/ws/handlers/agent-handler.js.map +1 -1
  239. package/dashboard/dist-server/dashboard/src/server/ws/handlers/room-handler.d.ts +17 -0
  240. package/dashboard/dist-server/dashboard/src/server/ws/handlers/room-handler.js +192 -0
  241. package/dashboard/dist-server/dashboard/src/server/ws/handlers/room-handler.js.map +1 -0
  242. package/dashboard/dist-server/dashboard/src/server/ws/session-scoped-event-filter.d.ts +13 -0
  243. package/dashboard/dist-server/dashboard/src/server/ws/session-scoped-event-filter.js +37 -0
  244. package/dashboard/dist-server/dashboard/src/server/ws/session-scoped-event-filter.js.map +1 -0
  245. package/dashboard/dist-server/dashboard/src/server/ws/ws-manager.d.ts +7 -1
  246. package/dashboard/dist-server/dashboard/src/server/ws/ws-manager.js +39 -2
  247. package/dashboard/dist-server/dashboard/src/server/ws/ws-manager.js.map +1 -1
  248. package/dashboard/dist-server/dashboard/src/shared/constants.js +12 -0
  249. package/dashboard/dist-server/dashboard/src/shared/constants.js.map +1 -1
  250. package/dashboard/dist-server/dashboard/src/shared/room-leader-prompt.d.ts +1 -0
  251. package/dashboard/dist-server/dashboard/src/shared/room-leader-prompt.js +38 -0
  252. package/dashboard/dist-server/dashboard/src/shared/room-leader-prompt.js.map +1 -0
  253. package/dashboard/dist-server/dashboard/src/shared/team-types.d.ts +66 -0
  254. package/dashboard/dist-server/dashboard/src/shared/team-types.js.map +1 -1
  255. package/dashboard/dist-server/dashboard/src/shared/types.d.ts +24 -3
  256. package/dashboard/dist-server/dashboard/src/shared/ws-protocol.d.ts +76 -2
  257. package/dashboard/dist-server/dashboard/src/shared/ws-protocol.js.map +1 -1
  258. package/dashboard/dist-server/shared/agent-types.d.ts +2 -0
  259. package/dashboard/dist-server/src/commands/delegate.js +11 -8
  260. package/dashboard/dist-server/src/commands/delegate.js.map +1 -1
  261. package/dist/shared/agent-types.d.ts +2 -0
  262. package/dist/shared/agent-types.d.ts.map +1 -1
  263. package/dist/src/cli.js +2 -2
  264. package/dist/src/cli.js.map +1 -1
  265. package/dist/src/commands/delegate.d.ts.map +1 -1
  266. package/dist/src/commands/delegate.js +11 -8
  267. package/dist/src/commands/delegate.js.map +1 -1
  268. package/dist/src/commands/install-backend.d.ts +1 -1
  269. package/dist/src/commands/install-backend.d.ts.map +1 -1
  270. package/dist/src/commands/install-backend.js +1 -1
  271. package/dist/src/commands/install-backend.js.map +1 -1
  272. package/dist/src/commands/knowhow.d.ts +10 -0
  273. package/dist/src/commands/knowhow.d.ts.map +1 -0
  274. package/dist/src/commands/knowhow.js +217 -0
  275. package/dist/src/commands/knowhow.js.map +1 -0
  276. package/dist/src/commands/overlay-ui/OverlayList.d.ts +2 -0
  277. package/dist/src/commands/overlay-ui/OverlayList.d.ts.map +1 -1
  278. package/dist/src/commands/overlay-ui/OverlayList.js +6 -3
  279. package/dist/src/commands/overlay-ui/OverlayList.js.map +1 -1
  280. package/dist/src/commands/overlay-ui/index.d.ts.map +1 -1
  281. package/dist/src/commands/overlay-ui/index.js +70 -44
  282. package/dist/src/commands/overlay-ui/index.js.map +1 -1
  283. package/dist/src/commands/overlay.d.ts.map +1 -1
  284. package/dist/src/commands/overlay.js +4 -3
  285. package/dist/src/commands/overlay.js.map +1 -1
  286. package/dist/src/core/overlay/applier.d.ts +1 -1
  287. package/dist/src/core/overlay/applier.d.ts.map +1 -1
  288. package/dist/src/core/overlay/applier.js +40 -13
  289. package/dist/src/core/overlay/applier.js.map +1 -1
  290. package/dist/src/core/overlay/loader.d.ts.map +1 -1
  291. package/dist/src/core/overlay/loader.js +6 -0
  292. package/dist/src/core/overlay/loader.js.map +1 -1
  293. package/dist/src/core/overlay/types.d.ts +5 -1
  294. package/dist/src/core/overlay/types.d.ts.map +1 -1
  295. package/dist/src/core/overlay/types.js +1 -1
  296. package/dist/src/core/overlay/types.js.map +1 -1
  297. package/dist/src/hooks/context-monitor.js +1 -1
  298. package/dist/src/hooks/context-monitor.js.map +1 -1
  299. package/dist/src/hooks/skill-context.js +1 -1
  300. package/dist/src/hooks/skill-context.js.map +1 -1
  301. package/dist/src/mcp/delegate-channel-relay.d.ts +4 -0
  302. package/dist/src/mcp/delegate-channel-relay.d.ts.map +1 -1
  303. package/dist/src/mcp/delegate-channel-relay.js +73 -4
  304. package/dist/src/mcp/delegate-channel-relay.js.map +1 -1
  305. package/dist/src/tools/index.js +2 -2
  306. package/dist/src/tools/index.js.map +1 -1
  307. package/dist/src/tools/store-knowhow.d.ts +21 -0
  308. package/dist/src/tools/store-knowhow.d.ts.map +1 -0
  309. package/dist/src/tools/store-knowhow.js +295 -0
  310. package/dist/src/tools/store-knowhow.js.map +1 -0
  311. package/package.json +1 -1
  312. package/shared/agent-types.ts +2 -0
  313. package/workflows/analyze.md +61 -185
  314. package/workflows/brainstorm.md +3 -23
  315. package/workflows/codebase-rebuild.md +79 -191
  316. package/workflows/codebase-refresh.md +26 -124
  317. package/workflows/debug.md +21 -141
  318. package/workflows/execute.md +183 -350
  319. package/workflows/fork.md +72 -230
  320. package/workflows/harvest.md +12 -79
  321. package/workflows/init.md +3 -17
  322. package/workflows/integration-test.md +21 -190
  323. package/workflows/issue-analyze.md +35 -153
  324. package/workflows/issue-discover.md +88 -263
  325. package/workflows/issue-execute.md +29 -208
  326. package/workflows/issue-plan.md +33 -154
  327. package/workflows/issue.md +44 -202
  328. package/workflows/knowhow.md +374 -0
  329. package/workflows/learn.md +30 -177
  330. package/workflows/maestro-coordinate.codex.md +77 -362
  331. package/workflows/maestro-link-coordinate.md +12 -61
  332. package/workflows/maestro.codex.md +124 -457
  333. package/workflows/maestro.md +562 -976
  334. package/workflows/map.md +16 -53
  335. package/workflows/merge.md +42 -197
  336. package/workflows/milestone-audit.md +5 -43
  337. package/workflows/milestone-complete.md +11 -60
  338. package/workflows/plan.md +176 -387
  339. package/workflows/quick.md +25 -174
  340. package/workflows/refactor.md +28 -221
  341. package/workflows/retrospective.md +104 -443
  342. package/workflows/review.md +87 -299
  343. package/workflows/roadmap.md +117 -97
  344. package/workflows/spec-generate.md +22 -118
  345. package/workflows/specs-add.md +5 -25
  346. package/workflows/specs-load.md +1 -5
  347. package/workflows/specs-remove.md +0 -11
  348. package/workflows/specs-setup.md +11 -47
  349. package/workflows/status.md +58 -200
  350. package/workflows/sync.md +28 -141
  351. package/workflows/test-gen.md +23 -100
  352. package/workflows/test.md +15 -125
  353. package/workflows/ui-design.md +139 -465
  354. package/workflows/ui-style.md +36 -228
  355. package/workflows/verify.md +52 -273
  356. package/workflows/wiki-connect.md +9 -46
  357. package/workflows/wiki-digest.md +7 -50
  358. package/workflows/wiki-manage.md +11 -108
  359. package/.claude/commands/maestro-coordinate.md +0 -63
  360. package/.claude/commands/manage-memory-capture.md +0 -59
  361. package/.codex/skills/maestro-coordinate/SKILL.md +0 -213
  362. package/.codex/skills/manage-memory-capture/SKILL.md +0 -93
  363. package/dashboard/dist/assets/ChatInput-pUOLJIKE.js +0 -49
  364. package/dashboard/dist/assets/ChatPage-B8Xqkt0v.js +0 -27
  365. package/dashboard/dist/assets/McpPage-BY0SjTgw.js +0 -21
  366. package/dashboard/dist/assets/TeamsPage-BO2kP70F.js +0 -11
  367. package/dashboard/dist/assets/WorkflowPage-C8hWbYim.js +0 -6
  368. package/dashboard/dist/assets/en-ZbRpfzuP.js +0 -1
  369. package/dashboard/dist/assets/index-C2Mcb4TJ.js +0 -231
  370. package/dashboard/dist/assets/index-DyBbPc18.css +0 -1
  371. package/dashboard/dist/assets/loader-B5F6PzFT.js +0 -11
  372. package/dashboard/dist/assets/zh-CN-CoXBFuny.js +0 -1
  373. package/workflows/maestro-coordinate.md +0 -582
  374. package/workflows/memory.md +0 -451
@@ -15,18 +15,8 @@ Execute a planned solution for an issue via dual-mode agent dispatch (server or
15
15
  ### Step 1: Parse Arguments
16
16
 
17
17
  ```
18
- 1. Extract ISS-ID from first positional token in $ARGUMENTS
19
- If empty error E_NO_ISSUE_ID:
20
- "Usage: /manage-issue-execute <ISS-ID> [--executor claude-code|codex|gemini] [--dry-run]"
21
- "Example: /manage-issue-execute ISS-20260318-001 --executor codex --dry-run"
22
-
23
- 2. Parse optional flags:
24
- --executor VALUE → EXECUTOR (default: claude-code)
25
- --dry-run → DRY_RUN = true (default: false)
26
-
27
- 3. Validate:
28
- - ISS-ID matches pattern ISS-\d{8}-\d{3}
29
- - EXECUTOR is one of: claude-code, codex, gemini
18
+ Extract ISS-ID (required, pattern ISS-\d{8}-\d{3}).
19
+ Flags: --executor claude-code|codex|gemini (default: claude-code), --dry-run (default: false)
30
20
  ```
31
21
 
32
22
  ---
@@ -34,29 +24,9 @@ Execute a planned solution for an issue via dual-mode agent dispatch (server or
34
24
  ### Step 2: Load Issue and Validate
35
25
 
36
26
  ```
37
- 1. Check .workflow/issues/issues.jsonl exists
38
- If notfatal: "No issues file. Run /manage-issue create first."
39
-
40
- 2. Read .workflow/issues/issues.jsonl line by line
41
- 3. Parse each line as JSON, find record where id == ISS-ID
42
- If not found → error E_NO_ISSUE_ID:
43
- "Issue {ISS-ID} not found. Run /manage-issue list to see available issues."
44
-
45
- 4. Check issue.solution exists and is not null:
46
- If null → error E_NO_SOLUTION:
47
- "Issue {ISS-ID} has no solution plan."
48
- "Run first: /manage-issue-plan {ISS-ID}"
49
-
50
- 5. Validate solution.steps is a non-empty array
51
- If empty → error E_NO_SOLUTION:
52
- "Solution plan has no steps. Re-run: /manage-issue-plan {ISS-ID}"
53
-
54
- 6. Resolve EXECUTOR to CLI tool mapping:
55
- - claude-code → claude (--tool claude --mode write)
56
- - codex → codex (--tool codex --mode write)
57
- - gemini → gemini (--tool gemini --mode write)
58
-
59
- 7. Store issue record as ISSUE, solution as SOLUTION
27
+ Load ISS-ID from .workflow/issues/issues.jsonl → fatal if file missing or ID not found.
28
+ Require issue.solution with non-empty steps[] error if missing (run manage-issue-plan first).
29
+ Resolve EXECUTOR → CLI tool (claude-code→claude, codex→codex, gemini→gemini), all with --mode write.
60
30
  ```
61
31
 
62
32
  ---
@@ -64,37 +34,8 @@ Execute a planned solution for an issue via dual-mode agent dispatch (server or
64
34
  ### Step 3: Dry Run (if --dry-run)
65
35
 
66
36
  ```
67
- If DRY_RUN == true:
68
-
69
- Display preview:
70
-
71
- ====================================================
72
- DRY RUN: {ISS-ID}
73
- Executor: {EXECUTOR}
74
- Steps: {SOLUTION.steps.length}
75
- ====================================================
76
-
77
- PROMPT TEMPLATE:
78
- {SOLUTION.promptTemplate}
79
-
80
- SOLUTION STEPS:
81
- ---------------------------------------------------------------
82
- # | Action | Title | Files
83
- ---------------------------------------------------------------
84
- {for each step in SOLUTION.steps}
85
- {index} | {step.action} | {step.title} | {step.files joined by ", "}
86
- {/for}
87
- ---------------------------------------------------------------
88
-
89
- CONTEXT:
90
- {SOLUTION.context}
91
-
92
- ====================================================
93
- This is a dry run. No changes were made.
94
- To execute: /manage-issue-execute {ISS-ID} --executor {EXECUTOR}
95
- ====================================================
96
-
97
- Exit (do not proceed to Steps 4-7).
37
+ If DRY_RUN: display prompt template, steps table (action | title | files),
38
+ and context. No changes made. Exit before Step 4.
98
39
  ```
99
40
 
100
41
  ---
@@ -102,14 +43,8 @@ If DRY_RUN == true:
102
43
  ### Step 4: Detect Execution Mode
103
44
 
104
45
  ```
105
- 1. Check if maestro dashboard server is running:
106
- curl http://127.0.0.1:3001/api/health --connect-timeout 2 -s -o /dev/null -w "%{http_code}"
107
-
108
- 2. If HTTP 200 → SERVER_UP = true
109
- Otherwise → SERVER_UP = false
110
-
111
- 3. Log execution mode:
112
- "Execution mode: {SERVER_UP ? 'Server dispatch' : 'Direct CLI'}"
46
+ Health check: curl http://127.0.0.1:3001/api/health
47
+ HTTP 200 SERVER_UP (server dispatch) | otherwise → Direct CLI
113
48
  ```
114
49
 
115
50
  ---
@@ -117,109 +52,25 @@ If DRY_RUN == true:
117
52
  ### Step 5a: Server UP Path
118
53
 
119
54
  ```
120
- If SERVER_UP == true:
121
-
122
- 1. Build dispatch payload:
123
- {
124
- "issueId": "{ISS-ID}",
125
- "executor": "{EXECUTOR}",
126
- "solution": {
127
- "steps": {SOLUTION.steps},
128
- "context": "{SOLUTION.context}",
129
- "promptTemplate": "{SOLUTION.promptTemplate}"
130
- }
131
- }
132
-
133
- 2. POST to server:
134
- curl -X POST http://127.0.0.1:3001/api/execution/dispatch \
135
- -H "Content-Type: application/json" \
136
- -d '{PAYLOAD_JSON}' \
137
- --connect-timeout 5 -s
138
-
139
- 3. Parse response:
140
- - If HTTP 200/201 → DISPATCH_SUCCESS = true, store response as DISPATCH_RESULT
141
- - If error → DISPATCH_SUCCESS = false, fall through to Step 5b
142
-
143
- 4. If DISPATCH_SUCCESS:
144
- - Do NOT update JSONL manually (server manages status)
145
- - Store DISPATCH_RESULT for display in Step 6
146
- - Skip to Step 6
147
-
148
- 5. If DISPATCH_FAILED:
149
- - Log: "Server dispatch failed, falling back to direct CLI execution"
150
- - Proceed to Step 5b
55
+ POST to http://127.0.0.1:3001/api/execution/dispatch:
56
+ { "issueId", "executor", "solution": { steps, context, promptTemplate } }
57
+
58
+ Success (200/201) → server manages status lifecycle, skip to Step 6.
59
+ Failure → fall through to Step 5b (direct CLI fallback).
151
60
  ```
152
61
 
153
62
  ### Step 5b: Server DOWN Path
154
63
 
155
64
  ```
156
- If SERVER_UP == false (or server dispatch failed):
157
-
158
- 1. Build execution prompt from SOLUTION:
159
- EXEC_PROMPT = "{SOLUTION.promptTemplate}
160
-
161
- SOLUTION STEPS:
162
- {for each step in SOLUTION.steps}
163
- {index}. [{step.action}] {step.title}
164
- Files: {step.files joined by ', '}
165
- Description: {step.description}
166
- {/for}
167
-
168
- CONTEXT: {SOLUTION.context}
169
-
170
- ISSUE: {ISS-ID} - {ISSUE.title}
171
- CONSTRAINTS: Follow solution steps in order. Verify each step before proceeding."
172
-
173
- 2. Update JSONL: Set issue status → in_progress
174
- - Read all lines from .workflow/issues/issues.jsonl
175
- - Update matching record:
176
- status = "in_progress"
177
- updated_at = NOW_ISO
178
- Add issue_history entry:
179
- {
180
- "timestamp": "{NOW_ISO}",
181
- "from_status": "{ISSUE.status}",
182
- "to_status": "in_progress",
183
- "actor": "{EXECUTOR}",
184
- "note": "Execution started (direct CLI)"
185
- }
186
- - Rewrite file
187
-
188
- 3. Execute via delegate:
189
- maestro delegate "{EXEC_PROMPT}" --to {CLI_TOOL} --mode write
190
-
191
- 4. Evaluate result:
192
- - If CLI exits successfully → EXEC_SUCCESS = true
193
- - If CLI fails → EXEC_SUCCESS = false
194
-
195
- 5. Update JSONL based on result:
196
- If EXEC_SUCCESS:
197
- status = "resolved"
198
- resolved_at = NOW_ISO
199
- updated_at = NOW_ISO
200
- Add issue_history entry:
201
- {
202
- "timestamp": "{NOW_ISO}",
203
- "from_status": "in_progress",
204
- "to_status": "resolved",
205
- "actor": "{EXECUTOR}",
206
- "note": "Solution executed successfully"
207
- }
208
-
209
- If EXEC_FAILED:
210
- status = "open"
211
- updated_at = NOW_ISO
212
- Add issue_history entry:
213
- {
214
- "timestamp": "{NOW_ISO}",
215
- "from_status": "in_progress",
216
- "to_status": "open",
217
- "actor": "{EXECUTOR}",
218
- "note": "Execution failed — reverted to open"
219
- }
220
- - Rewrite JSONL file
221
-
222
- 6. Store result for display
65
+ Build EXEC_PROMPT from SOLUTION (promptTemplate + steps + context + constraints).
66
+
67
+ Status transitions in issues.jsonl with issue_history entries:
68
+ 1. Set status → in_progress (actor: EXECUTOR, note: "Execution started")
69
+ 2. Execute: maestro delegate "{EXEC_PROMPT}" --to {CLI_TOOL} --mode write
70
+ 3. On success → status = "resolved", resolved_at = NOW_ISO
71
+ On failure status = "open" (revert, no stuck in_progress)
72
+
73
+ Read-modify-write pattern preserves other issues.
223
74
  ```
224
75
 
225
76
  ---
@@ -227,32 +78,10 @@ If SERVER_UP == false (or server dispatch failed):
227
78
  ### Step 6: Display Result
228
79
 
229
80
  ```
230
- Display execution summary:
231
-
232
- ====================================================
233
- EXECUTION {EXEC_SUCCESS or DISPATCH_SUCCESS ? "COMPLETE" : "FAILED"}: {ISS-ID}
234
- Mode: {SERVER_UP ? "Server dispatch" : "Direct CLI"}
235
- Executor: {EXECUTOR}
236
- ====================================================
237
-
238
- ISSUE: {ISSUE.title}
239
- STATUS: {new status}
240
-
241
- {If SERVER_UP and DISPATCH_SUCCESS}
242
- Dispatch ID: {DISPATCH_RESULT.id or "N/A"}
243
- Server is managing execution lifecycle.
244
-
245
- {If not SERVER_UP and EXEC_SUCCESS}
246
- Solution applied successfully.
247
- Files modified: {list from SOLUTION.steps[].files}
248
-
249
- {If failure}
250
- Execution failed. Issue reverted to open status.
251
- Review the error output above and consider:
252
- - Re-running with a different executor
253
- - Revising the solution plan
254
-
255
- ====================================================
81
+ Display: execution status (COMPLETE/FAILED), mode, executor, issue title, new status.
82
+ Server dispatch → show dispatch ID, "server managing lifecycle"
83
+ Direct CLI success → show modified files list
84
+ Failure "reverted to open", suggest re-run or revise plan
256
85
  ```
257
86
 
258
87
  ---
@@ -260,16 +89,8 @@ STATUS: {new status}
260
89
  ### Step 7: Suggest Next Steps
261
90
 
262
91
  ```
263
- If execution succeeded:
264
- - Skill({ skill: "manage-issue", args: "close {ISS-ID} --resolution \"Fixed via {EXECUTOR} execution\"" }) -- Close the issue
265
- - Skill({ skill: "manage-issue", args: "status {ISS-ID}" }) -- View updated issue
266
- - Skill({ skill: "quality-test", args: "" }) -- Run tests to verify fix
267
-
268
- If execution failed:
269
- - Skill({ skill: "manage-issue-execute", args: "{ISS-ID} --executor codex" }) -- Retry with different executor
270
- - Skill({ skill: "manage-issue-plan", args: "{ISS-ID}" }) -- Revise solution plan
271
- - Skill({ skill: "manage-issue-analyze", args: "{ISS-ID} --depth deep" }) -- Re-analyze with deeper context
272
- - Skill({ skill: "manage-issue", args: "status {ISS-ID}" }) -- View current issue state
92
+ Success close issue, view status, run tests
93
+ Failure retry with different executor, revise plan, re-analyze with --depth deep
273
94
  ```
274
95
 
275
96
  ---
@@ -15,18 +15,8 @@ Solution planning for a specific issue with codebase-aware step generation and p
15
15
  ### Step 1: Parse Arguments
16
16
 
17
17
  ```
18
- 1. Extract ISS-ID from first positional token in $ARGUMENTS
19
- If empty error E_NO_ISSUE_ID:
20
- "Usage: /manage-issue-plan <ISS-ID> [--tool gemini|qwen] [--from-analysis]"
21
- "Example: /manage-issue-plan ISS-20260318-001 --tool gemini"
22
-
23
- 2. Parse optional flags:
24
- --tool VALUE → TOOL (default: gemini)
25
- --from-analysis → FROM_ANALYSIS = true (default: auto-detect)
26
-
27
- 3. Validate:
28
- - ISS-ID matches pattern ISS-\d{8}-\d{3}
29
- - TOOL is one of: gemini, qwen
18
+ Extract ISS-ID (required, pattern ISS-\d{8}-\d{3}).
19
+ Flags: --tool gemini|qwen (default: gemini), --from-analysis (default: auto-detect)
30
20
  ```
31
21
 
32
22
  ---
@@ -34,29 +24,9 @@ Solution planning for a specific issue with codebase-aware step generation and p
34
24
  ### Step 2: Load Issue and Validate
35
25
 
36
26
  ```
37
- 1. Check .workflow/issues/issues.jsonl exists
38
- If notfatal: "No issues file. Run /manage-issue create first."
39
-
40
- 2. Read .workflow/issues/issues.jsonl line by line
41
- 3. Parse each line as JSON, find record where id == ISS-ID
42
- If not found → error E_ISSUE_NOT_FOUND:
43
- "Issue {ISS-ID} not found. Run /manage-issue list to see available issues."
44
-
45
- 4. Check issue status:
46
- - If status is 'open' or 'registered' → proceed
47
- - If status is other → warn but proceed (planning is non-destructive)
48
-
49
- 5. If issue.solution exists and is not null:
50
- AskUserQuestion({
51
- question: "Issue {ISS-ID} already has a solution plan. Overwrite?",
52
- options: [
53
- { label: "Yes", description: "Replace existing solution with new plan" },
54
- { label: "No", description: "Keep existing solution, abort planning" }
55
- ]
56
- })
57
- If "No" → exit gracefully
58
-
59
- 6. Store issue record as ISSUE
27
+ Load ISS-ID from .workflow/issues/issues.jsonl → fatal if file missing or ID not found.
28
+ Status check: open/registered proceed; other warn but continue (non-destructive).
29
+ If solution already exists → confirm overwrite with user (abort if declined).
60
30
  ```
61
31
 
62
32
  ---
@@ -64,27 +34,10 @@ Solution planning for a specific issue with codebase-aware step generation and p
64
34
  ### Step 3: Load Analysis Context
65
35
 
66
36
  ```
67
- 1. Check if ISSUE.analysis exists and is not null:
68
-
69
- If analysis exists:
70
- - HAS_ANALYSIS = true
71
- - Extract: root_cause, impact, related_files, confidence, suggested_approach
72
- - Build ANALYSIS_CONTEXT:
73
- "PRIOR ANALYSIS (confidence: {confidence}):
74
- Root Cause: {root_cause}
75
- Impact: {impact}
76
- Related Files: {related_files joined by newline}
77
- Suggested Approach: {suggested_approach}"
78
-
79
- If analysis is null:
80
- - HAS_ANALYSIS = false
81
- - If --from-analysis was explicitly passed:
82
- → warning E_NO_ANALYSIS:
83
- "No analysis record on {ISS-ID}. Proceeding without analysis context."
84
- "For better results, run: /manage-issue-analyze {ISS-ID}"
85
- - ANALYSIS_CONTEXT = ""
86
-
87
- 2. Store ANALYSIS_CONTEXT for CLI prompt
37
+ If ISSUE.analysis exists build ANALYSIS_CONTEXT from root_cause, impact,
38
+ related_files, confidence, suggested_approach.
39
+ If null and --from-analysis explicit → warn (suggest running analyze first).
40
+ Otherwise ANALYSIS_CONTEXT = "" (proceed without).
88
41
  ```
89
42
 
90
43
  ---
@@ -92,44 +45,18 @@ Solution planning for a specific issue with codebase-aware step generation and p
92
45
  ### Step 4: Generate Solution via CLI
93
46
 
94
47
  ```
95
- 1. Build planning prompt:
96
-
97
- maestro delegate "PURPOSE: Generate a step-by-step solution plan for issue {ISS-ID}: {ISSUE.title}
98
- Produce an actionable, ordered list of implementation steps.
99
-
100
- ISSUE DETAILS:
101
- - Title: {ISSUE.title}
102
- - Description: {ISSUE.description}
103
- - Severity: {ISSUE.severity}
104
- - Location: {ISSUE.context.location or 'unknown'}
105
- - Fix Direction: {ISSUE.fix_direction or 'none provided'}
106
-
107
- {ANALYSIS_CONTEXT}
108
-
109
- TASK:
110
- - Break the fix into ordered, atomic implementation steps
111
- - Each step: title, description, target file(s), action type (create|modify|delete|test)
112
- - Include a context summary explaining the overall approach
113
- - Generate a promptTemplate string that an executor agent can use to implement the fix
114
-
115
- MODE: analysis
116
- CONTEXT: @**/*
117
- EXPECTED: JSON object with fields:
118
- steps: [{ title: string, description: string, files: string[], action: string }],
119
- context: string (approach summary),
120
- promptTemplate: string (execution prompt for the agent)
121
- CONSTRAINTS: Steps must be concrete and file-specific, not vague
122
- " --to {TOOL} --mode analysis
123
-
124
- 2. Parse CLI output:
125
- - Extract JSON object from response
126
- - Validate required fields: steps (array with length > 0), context, promptTemplate
127
- - Each step must have: title, description, files, action
128
- - If parsing fails → error E_PLANNING_FAILED:
129
- "Planning did not return valid JSON. Raw output saved for review."
130
- Store raw output in ISSUE feedback.
131
-
132
- 3. Store parsed result as SOLUTION_RESULT
48
+ Delegate planning prompt with issue details + ANALYSIS_CONTEXT:
49
+
50
+ maestro delegate "Generate step-by-step solution for {ISS-ID}: {ISSUE.title}
51
+ ISSUE: title, description, severity, location, fix_direction
52
+ {ANALYSIS_CONTEXT}
53
+ TASK: Break into atomic steps with action types (create|modify|delete|test)
54
+ EXPECTED: JSON { steps: [{ title, description, files[], action }], context, promptTemplate }
55
+ CONSTRAINTS: Concrete, file-specific steps
56
+ " --to {TOOL} --mode analysis
57
+
58
+ Validate response: steps[] non-empty, each with title/description/files/action.
59
+ Parse failure → save raw output to issue feedback for review.
133
60
  ```
134
61
 
135
62
  ---
@@ -137,16 +64,8 @@ Solution planning for a specific issue with codebase-aware step generation and p
137
64
  ### Step 5: Build Solution Record
138
65
 
139
66
  ```
140
- 1. Construct IssueSolution record:
141
- {
142
- "steps": {SOLUTION_RESULT.steps},
143
- "context": "{SOLUTION_RESULT.context}",
144
- "promptTemplate": "{SOLUTION_RESULT.promptTemplate}",
145
- "planned_at": "{NOW_ISO}",
146
- "planned_by": "{TOOL}"
147
- }
148
-
149
- 2. Store as SOLUTION record for next step
67
+ Construct IssueSolution:
68
+ { steps, context, promptTemplate, planned_at: NOW_ISO, planned_by: TOOL }
150
69
  ```
151
70
 
152
71
  ---
@@ -154,27 +73,11 @@ Solution planning for a specific issue with codebase-aware step generation and p
154
73
  ### Step 6: Update Issue in JSONL
155
74
 
156
75
  ```
157
- 1. Read all lines from .workflow/issues/issues.jsonl
158
- 2. Find the line matching ISS-ID
159
- 3. Update the issue record:
160
- - Set issue.solution = SOLUTION
161
- - Set issue.updated_at = NOW_ISO
162
- - Add issue_history entry:
163
- {
164
- "timestamp": "{NOW_ISO}",
165
- "from_status": "{ISSUE.status}",
166
- "to_status": "{ISSUE.status}",
167
- "actor": "planning-agent",
168
- "note": "Solution plan generated ({SOLUTION.steps.length} steps)"
169
- }
170
- - Status stays unchanged (planning is metadata enrichment)
171
-
172
- 4. Rewrite .workflow/issues/issues.jsonl:
173
- - Replace the matching line with updated record (single JSON line)
174
- - Write all lines back to file
175
-
176
- 5. Verify file integrity:
177
- - Re-read file, confirm ISS-ID record has solution field
76
+ Read-modify-write issues.jsonl:
77
+ Set issue.solution = SOLUTION, updated_at = NOW_ISO
78
+ Append issue_history: actor "planning-agent", note "{N} steps generated"
79
+ Status unchanged (planning is metadata enrichment).
80
+ Verify: re-read file, confirm solution field present.
178
81
  ```
179
82
 
180
83
  ---
@@ -182,35 +85,11 @@ Solution planning for a specific issue with codebase-aware step generation and p
182
85
  ### Step 7: Display Solution Steps Table and Next Steps
183
86
 
184
87
  ```
185
- Display solution summary:
186
-
187
- ====================================================
188
- SOLUTION PLAN: {ISS-ID}
189
- Tool: {TOOL} Analysis: {HAS_ANALYSIS ? "included" : "none"}
190
- ====================================================
191
-
192
- APPROACH:
193
- {SOLUTION.context}
194
-
195
- STEPS:
196
- ---------------------------------------------------------------
197
- # | Action | Title | Files
198
- ---------------------------------------------------------------
199
- 1 | modify | Fix token validation | src/auth.ts
200
- 2 | create | Add refresh token handler | src/refresh.ts
201
- 3 | test | Add auth test cases | tests/auth.test.ts
202
- ---------------------------------------------------------------
203
-
204
- PROMPT TEMPLATE (for executor):
205
- {SOLUTION.promptTemplate}
206
-
207
- ====================================================
208
-
209
- Suggest next steps:
210
- - Skill({ skill: "manage-issue-execute", args: "{ISS-ID}" }) -- Execute solution
211
- - Skill({ skill: "manage-issue-execute", args: "{ISS-ID} --dry-run" }) -- Preview execution
212
- - Skill({ skill: "manage-issue-execute", args: "{ISS-ID} --executor codex" }) -- Execute with Codex
213
- - Skill({ skill: "manage-issue", args: "status {ISS-ID}" }) -- View full issue details
88
+ Display: approach summary, steps table (# | action | title | files), prompt template.
89
+
90
+ Next steps:
91
+ - manage-issue-execute {ISS-ID} (execute | --dry-run | --executor codex)
92
+ - manage-issue status {ISS-ID}
214
93
  ```
215
94
 
216
95
  ---