maestro-flow 0.3.15 → 0.3.17

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 (390) hide show
  1. package/.claude/agents/workflow-planner.md +24 -8
  2. package/.claude/commands/maestro-amend.md +300 -0
  3. package/.claude/commands/maestro-analyze.md +1 -49
  4. package/.claude/commands/maestro-execute.md +2 -56
  5. package/.claude/commands/maestro-fork.md +3 -50
  6. package/.claude/commands/maestro-merge.md +2 -26
  7. package/.claude/commands/maestro-milestone-audit.md +1 -5
  8. package/.claude/commands/maestro-milestone-complete.md +1 -7
  9. package/.claude/commands/maestro-plan.md +6 -127
  10. package/.claude/commands/maestro-roadmap.md +3 -101
  11. package/.claude/commands/maestro-spec-generate.md +1 -25
  12. package/.claude/commands/maestro-ui-design.md +14 -73
  13. package/.claude/commands/maestro-verify.md +1 -32
  14. package/.claude/commands/maestro.md +13 -30
  15. package/.claude/commands/manage-harvest.md +7 -44
  16. package/.claude/commands/manage-knowhow-capture.md +193 -0
  17. package/.claude/commands/{manage-memory.md → manage-knowhow.md} +77 -88
  18. package/.claude/commands/manage-learn.md +3 -28
  19. package/.claude/commands/manage-status.md +1 -20
  20. package/.claude/commands/manage-wiki.md +1 -1
  21. package/.claude/commands/quality-business-test.md +1 -1
  22. package/.claude/commands/quality-debug.md +3 -18
  23. package/.claude/commands/quality-integration-test.md +3 -23
  24. package/.claude/commands/quality-retrospective.md +1 -28
  25. package/.claude/commands/quality-review.md +3 -52
  26. package/.claude/commands/quality-test-gen.md +1 -10
  27. package/.claude/commands/quality-test.md +3 -25
  28. package/.claude/commands/spec-add.md +1 -21
  29. package/.claude/commands/spec-load.md +1 -16
  30. package/.claude/commands/wiki-connect.md +2 -112
  31. package/.claude/commands/wiki-digest.md +2 -141
  32. package/.codex/skills/learn-decompose/SKILL.md +2 -8
  33. package/.codex/skills/maestro/SKILL.md +60 -146
  34. package/.codex/skills/maestro-analyze/SKILL.md +52 -150
  35. package/.codex/skills/maestro-brainstorm/SKILL.md +36 -91
  36. package/.codex/skills/maestro-composer/SKILL.md +4 -76
  37. package/.codex/skills/maestro-execute/SKILL.md +46 -177
  38. package/.codex/skills/maestro-init/SKILL.md +7 -51
  39. package/.codex/skills/maestro-link-coordinate/SKILL.md +56 -229
  40. package/.codex/skills/maestro-milestone-audit/SKILL.md +7 -36
  41. package/.codex/skills/maestro-milestone-complete/SKILL.md +11 -93
  42. package/.codex/skills/maestro-overlay/SKILL.md +23 -92
  43. package/.codex/skills/maestro-plan/SKILL.md +70 -166
  44. package/.codex/skills/maestro-player/SKILL.md +24 -149
  45. package/.codex/skills/maestro-quick/SKILL.md +5 -48
  46. package/.codex/skills/maestro-roadmap/SKILL.md +21 -66
  47. package/.codex/skills/maestro-spec-generate/SKILL.md +20 -56
  48. package/.codex/skills/maestro-ui-design/SKILL.md +6 -53
  49. package/.codex/skills/maestro-verify/SKILL.md +39 -136
  50. package/.codex/skills/manage-codebase-rebuild/SKILL.md +25 -75
  51. package/.codex/skills/manage-codebase-refresh/SKILL.md +5 -32
  52. package/.codex/skills/manage-issue/SKILL.md +1 -6
  53. package/.codex/skills/manage-issue-discover/SKILL.md +33 -93
  54. package/.codex/skills/{manage-memory → manage-knowhow}/SKILL.md +95 -95
  55. package/.codex/skills/manage-knowhow-capture/SKILL.md +110 -0
  56. package/.codex/skills/manage-learn/SKILL.md +17 -71
  57. package/.codex/skills/manage-status/SKILL.md +4 -35
  58. package/.codex/skills/manage-wiki/SKILL.md +1 -1
  59. package/.codex/skills/quality-business-test/SKILL.md +2 -14
  60. package/.codex/skills/quality-debug/SKILL.md +41 -133
  61. package/.codex/skills/quality-integration-test/SKILL.md +36 -145
  62. package/.codex/skills/quality-refactor/SKILL.md +6 -59
  63. package/.codex/skills/quality-retrospective/SKILL.md +292 -531
  64. package/.codex/skills/quality-review/SKILL.md +30 -65
  65. package/.codex/skills/quality-sync/SKILL.md +2 -11
  66. package/.codex/skills/quality-test/SKILL.md +4 -45
  67. package/.codex/skills/quality-test-gen/SKILL.md +33 -121
  68. package/.codex/skills/spec-add/SKILL.md +2 -9
  69. package/.codex/skills/spec-load/SKILL.md +4 -14
  70. package/.codex/skills/spec-map/SKILL.md +4 -37
  71. package/.codex/skills/spec-remove/SKILL.md +3 -35
  72. package/.codex/skills/spec-setup/SKILL.md +2 -19
  73. package/.codex/skills/team-coordinate/SKILL.md +20 -132
  74. package/.codex/skills/team-coordinate/roles/coordinator/commands/monitor.md +61 -215
  75. package/.codex/skills/team-executor/SKILL.md +7 -66
  76. package/.codex/skills/team-executor/roles/executor/commands/monitor.md +60 -182
  77. package/.codex/skills/team-executor/specs/session-schema.md +22 -56
  78. package/.codex/skills/team-lifecycle-v4/SKILL.md +22 -143
  79. package/.codex/skills/team-lifecycle-v4/roles/coordinator/commands/monitor.md +31 -223
  80. package/.codex/skills/team-quality-assurance/SKILL.md +14 -88
  81. package/.codex/skills/team-quality-assurance/roles/coordinator/commands/monitor.md +46 -186
  82. package/.codex/skills/team-review/SKILL.md +12 -86
  83. package/.codex/skills/team-review/roles/coordinator/commands/monitor.md +49 -187
  84. package/.codex/skills/team-tech-debt/SKILL.md +11 -50
  85. package/.codex/skills/team-tech-debt/roles/coordinator/commands/monitor.md +50 -239
  86. package/.codex/skills/team-testing/SKILL.md +14 -99
  87. package/.codex/skills/team-testing/roles/coordinator/commands/monitor.md +52 -228
  88. package/.codex/skills/wiki-connect/SKILL.md +2 -5
  89. package/README.md +6 -0
  90. package/README.zh-CN.md +6 -0
  91. package/chains/_intent-map.json +7 -7
  92. package/chains/singles/{memory-capture.json → knowhow-capture.json} +5 -5
  93. package/chains/singles/{memory.json → knowhow.json} +6 -6
  94. package/dashboard/dist/assets/{ArtifactsPage-CUrrDGgN.js → ArtifactsPage-iJZtYsmR.js} +6 -6
  95. package/dashboard/dist/assets/ChatInput-DNnDLdQF.js +6 -0
  96. package/dashboard/dist/assets/ChatPage-BjBibfE4.js +22 -0
  97. package/dashboard/dist/assets/{CollabPage-DIUXeazv.js → CollabPage-8lUMUol_.js} +1 -1
  98. package/dashboard/dist/assets/{ExecutionPanel-VmYeADFj.js → ExecutionPanel-BKV3GZ7Q.js} +1 -1
  99. package/dashboard/dist/assets/{KanbanPage-DLq8v7hg.js → KanbanPage-diY3QmGd.js} +2 -2
  100. package/dashboard/dist/assets/{MarkdownRenderer-D7AehrnR.js → MarkdownRenderer-cYFfe1uX.js} +1 -1
  101. package/dashboard/dist/assets/McpPage-COjuIf7U.js +21 -0
  102. package/dashboard/dist/assets/MeetingRoomPage-wnvT7wlB.js +85 -0
  103. package/dashboard/dist/assets/{OutputPanel-B-Rjwgmv.js → OutputPanel-DDL90Idy.js} +1 -1
  104. package/dashboard/dist/assets/{ProblemsPanel-GEpF-oi4.js → ProblemsPanel-zFN9IIs0.js} +1 -1
  105. package/dashboard/dist/assets/{RequirementBoardPage-xs8uDM7I.js → RequirementBoardPage-DOPJoT0I.js} +2 -2
  106. package/dashboard/dist/assets/{RequirementPage-BKDSFwjA.js → RequirementPage-CEVquRgM.js} +1 -1
  107. package/dashboard/dist/assets/RoomsPage-D5USEWDh.js +1 -0
  108. package/dashboard/dist/assets/{SpecsPage-DLFb9ZH0.js → SpecsPage-BOwBin_o.js} +1 -1
  109. package/dashboard/dist/assets/{SupervisorPage-SOki_kgz.js → SupervisorPage-5iRyMU5T.js} +1 -1
  110. package/dashboard/dist/assets/TeamsPage-DlcEmr_Q.js +1 -0
  111. package/dashboard/dist/assets/{TreeBrowser-B9DHdULE.js → TreeBrowser-Y48Wz-QY.js} +1 -1
  112. package/dashboard/dist/assets/WorkflowPage-CmQaRVgL.js +6 -0
  113. package/dashboard/dist/assets/arrow-left-NCUOENvg.js +6 -0
  114. package/dashboard/dist/assets/{check-DJDk3A2a.js → check-o7nfGNHf.js} +1 -1
  115. package/dashboard/dist/assets/{chevron-right-C7bVDreZ.js → chevron-right-BXySK2fn.js} +1 -1
  116. package/dashboard/dist/assets/{circle-alert-Na1vf6qQ.js → circle-alert-DcSBokh4.js} +1 -1
  117. package/dashboard/dist/assets/{circle-check-CEGgy3NV.js → circle-check-Cd-jce4j.js} +1 -1
  118. package/dashboard/dist/assets/{circle-check-big-3JB8zRYj.js → circle-check-big-BN7Mdp4i.js} +1 -1
  119. package/dashboard/dist/assets/{circle-Qfgy4LB_.js → circle-cooAwnAR.js} +1 -1
  120. package/dashboard/dist/assets/{code-Ble63Idz.js → code-BQa9oL1n.js} +1 -1
  121. package/dashboard/dist/assets/{columns-3-BUcKlxve.js → columns-3-BzgxelGx.js} +1 -1
  122. package/dashboard/dist/assets/{download-CMqkfn8x.js → download-swRJnate.js} +1 -1
  123. package/dashboard/dist/assets/en-C_BD3UCD.js +1 -0
  124. package/dashboard/dist/assets/{folder-B9ewx9LL.js → folder-DbGbLNFN.js} +1 -1
  125. package/dashboard/dist/assets/index-BEUaOz_b.css +1 -0
  126. package/dashboard/dist/assets/{index-JTmGteaT.js → index-DIoMBMbv.js} +1 -1
  127. package/dashboard/dist/assets/index-DLBN_7fb.js +44 -0
  128. package/dashboard/dist/assets/index-uIqUCT8y.js +236 -0
  129. package/dashboard/dist/assets/{list-DI8Wn2aT.js → list-BTRAIvDq.js} +1 -1
  130. package/dashboard/dist/assets/loader-NHtB6Mdn.js +6 -0
  131. package/dashboard/dist/assets/{minus-Lp_BfctG.js → minus-BjMxRTET.js} +1 -1
  132. package/dashboard/dist/assets/{pen-line-Ch7sphzZ.js → pen-line-C4_O16H0.js} +1 -1
  133. package/dashboard/dist/assets/{pencil-_yRMHmGT.js → pencil-DTmKhyDY.js} +1 -1
  134. package/dashboard/dist/assets/{proxy-D72Y8a4Y.js → proxy-Dtx5p6IO.js} +1 -1
  135. package/dashboard/dist/assets/rows-2-GR1dZtRu.js +6 -0
  136. package/dashboard/dist/assets/{search-BS6fI6Bg.js → search-DVtgy2W7.js} +1 -1
  137. package/dashboard/dist/assets/{shallow-BXasQBvr.js → shallow-BOmvDNsv.js} +1 -1
  138. package/dashboard/dist/assets/{table-CeGlFjlP.js → table-DCzuJAFh.js} +1 -1
  139. package/dashboard/dist/assets/team-types-BPeOvVdA.js +6 -0
  140. package/dashboard/dist/assets/{terminal-BJic2yW-.js → terminal-CzogW4cl.js} +1 -1
  141. package/dashboard/dist/assets/{trash-2-Czz4X8Fb.js → trash-2-52LATVfW.js} +1 -1
  142. package/dashboard/dist/assets/users-DLFE2voE.js +6 -0
  143. package/dashboard/dist/assets/{zap-C3H0jVFA.js → zap-DhiYlgyZ.js} +1 -1
  144. package/dashboard/dist/assets/zh-CN-DvQKfow3.js +1 -0
  145. package/dashboard/dist/index.html +2 -2
  146. package/dashboard/dist-server/dashboard/src/server/agents/agent-manager.d.ts +2 -0
  147. package/dashboard/dist-server/dashboard/src/server/agents/agent-manager.js +19 -11
  148. package/dashboard/dist-server/dashboard/src/server/agents/agent-manager.js.map +1 -1
  149. package/dashboard/dist-server/dashboard/src/server/agents/agent-sdk-adapter.js +5 -0
  150. package/dashboard/dist-server/dashboard/src/server/agents/agent-sdk-adapter.js.map +1 -1
  151. package/dashboard/dist-server/dashboard/src/server/agents/claude-code-adapter.d.ts +1 -0
  152. package/dashboard/dist-server/dashboard/src/server/agents/claude-code-adapter.js +21 -4
  153. package/dashboard/dist-server/dashboard/src/server/agents/claude-code-adapter.js.map +1 -1
  154. package/dashboard/dist-server/dashboard/src/server/agents/env-cleanup.js +8 -0
  155. package/dashboard/dist-server/dashboard/src/server/agents/env-cleanup.js.map +1 -1
  156. package/dashboard/dist-server/dashboard/src/server/coordinator/chain-map.js +6 -6
  157. package/dashboard/dist-server/dashboard/src/server/coordinator/chain-map.js.map +1 -1
  158. package/dashboard/dist-server/dashboard/src/server/coordinator/chain-map.test.js +2 -2
  159. package/dashboard/dist-server/dashboard/src/server/coordinator/chain-map.test.js.map +1 -1
  160. package/dashboard/dist-server/dashboard/src/server/index.js +14 -3
  161. package/dashboard/dist-server/dashboard/src/server/index.js.map +1 -1
  162. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/mcp-config-builder.d.ts +24 -0
  163. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/mcp-config-builder.js +220 -0
  164. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/mcp-config-builder.js.map +1 -0
  165. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/mcp-config-builder.test.d.ts +1 -0
  166. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/mcp-config-builder.test.js +115 -0
  167. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/mcp-config-builder.test.js.map +1 -0
  168. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/meeting-room-mcp-server.d.ts +44 -0
  169. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/meeting-room-mcp-server.js +260 -0
  170. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/meeting-room-mcp-server.js.map +1 -0
  171. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/meeting-room-mcp-server.test.d.ts +1 -0
  172. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/meeting-room-mcp-server.test.js +194 -0
  173. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/meeting-room-mcp-server.test.js.map +1 -0
  174. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/stdio-bridge.d.ts +2 -0
  175. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/stdio-bridge.js +279 -0
  176. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/stdio-bridge.js.map +1 -0
  177. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/tcp-helpers.d.ts +14 -0
  178. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/tcp-helpers.js +131 -0
  179. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/tcp-helpers.js.map +1 -0
  180. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/tcp-helpers.test.d.ts +1 -0
  181. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/tcp-helpers.test.js +134 -0
  182. package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/tcp-helpers.test.js.map +1 -0
  183. package/dashboard/dist-server/dashboard/src/server/rooms/meeting-room-session.d.ts +51 -0
  184. package/dashboard/dist-server/dashboard/src/server/rooms/meeting-room-session.js +185 -0
  185. package/dashboard/dist-server/dashboard/src/server/rooms/meeting-room-session.js.map +1 -0
  186. package/dashboard/dist-server/dashboard/src/server/rooms/room-agent-registry.d.ts +29 -0
  187. package/dashboard/dist-server/dashboard/src/server/rooms/room-agent-registry.js +125 -0
  188. package/dashboard/dist-server/dashboard/src/server/rooms/room-agent-registry.js.map +1 -0
  189. package/dashboard/dist-server/dashboard/src/server/rooms/room-mailbox.d.ts +18 -0
  190. package/dashboard/dist-server/dashboard/src/server/rooms/room-mailbox.js +63 -0
  191. package/dashboard/dist-server/dashboard/src/server/rooms/room-mailbox.js.map +1 -0
  192. package/dashboard/dist-server/dashboard/src/server/rooms/room-session-manager.d.ts +19 -0
  193. package/dashboard/dist-server/dashboard/src/server/rooms/room-session-manager.js +45 -0
  194. package/dashboard/dist-server/dashboard/src/server/rooms/room-session-manager.js.map +1 -0
  195. package/dashboard/dist-server/dashboard/src/server/rooms/room-task-board.d.ts +25 -0
  196. package/dashboard/dist-server/dashboard/src/server/rooms/room-task-board.js +115 -0
  197. package/dashboard/dist-server/dashboard/src/server/rooms/room-task-board.js.map +1 -0
  198. package/dashboard/dist-server/dashboard/src/server/rooms/room-types.d.ts +53 -0
  199. package/dashboard/dist-server/dashboard/src/server/rooms/room-types.js +5 -0
  200. package/dashboard/dist-server/dashboard/src/server/rooms/room-types.js.map +1 -0
  201. package/dashboard/dist-server/dashboard/src/server/routes/agents.js +6 -0
  202. package/dashboard/dist-server/dashboard/src/server/routes/agents.js.map +1 -1
  203. package/dashboard/dist-server/dashboard/src/server/routes/cli-history.js +20 -1
  204. package/dashboard/dist-server/dashboard/src/server/routes/cli-history.js.map +1 -1
  205. package/dashboard/dist-server/dashboard/src/server/routes/index.d.ts +2 -1
  206. package/dashboard/dist-server/dashboard/src/server/routes/index.js +8 -1
  207. package/dashboard/dist-server/dashboard/src/server/routes/index.js.map +1 -1
  208. package/dashboard/dist-server/dashboard/src/server/routes/install.js +1 -1
  209. package/dashboard/dist-server/dashboard/src/server/routes/install.js.map +1 -1
  210. package/dashboard/dist-server/dashboard/src/server/routes/mcp.js +2 -2
  211. package/dashboard/dist-server/dashboard/src/server/routes/mcp.js.map +1 -1
  212. package/dashboard/dist-server/dashboard/src/server/routes/room-mcp.d.ts +3 -0
  213. package/dashboard/dist-server/dashboard/src/server/routes/room-mcp.js +246 -0
  214. package/dashboard/dist-server/dashboard/src/server/routes/room-mcp.js.map +1 -0
  215. package/dashboard/dist-server/dashboard/src/server/routes/rooms.d.ts +3 -0
  216. package/dashboard/dist-server/dashboard/src/server/routes/rooms.js +38 -0
  217. package/dashboard/dist-server/dashboard/src/server/routes/rooms.js.map +1 -0
  218. package/dashboard/dist-server/dashboard/src/server/routes/wiki.integration.test.js +7 -7
  219. package/dashboard/dist-server/dashboard/src/server/routes/wiki.integration.test.js.map +1 -1
  220. package/dashboard/dist-server/dashboard/src/server/routes/wiki.js +1 -1
  221. package/dashboard/dist-server/dashboard/src/server/routes/wiki.js.map +1 -1
  222. package/dashboard/dist-server/dashboard/src/server/state/event-bus.d.ts +39 -1
  223. package/dashboard/dist-server/dashboard/src/server/state/event-bus.js +12 -0
  224. package/dashboard/dist-server/dashboard/src/server/state/event-bus.js.map +1 -1
  225. package/dashboard/dist-server/dashboard/src/server/wiki/stress.test.js +1 -1
  226. package/dashboard/dist-server/dashboard/src/server/wiki/stress.test.js.map +1 -1
  227. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js +25 -14
  228. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js.map +1 -1
  229. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.test.js +6 -6
  230. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.test.js.map +1 -1
  231. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-types.d.ts +1 -1
  232. package/dashboard/dist-server/dashboard/src/server/wiki/writer-stress.test.js +17 -16
  233. package/dashboard/dist-server/dashboard/src/server/wiki/writer-stress.test.js.map +1 -1
  234. package/dashboard/dist-server/dashboard/src/server/wiki/writer.d.ts +1 -1
  235. package/dashboard/dist-server/dashboard/src/server/wiki/writer.js +18 -7
  236. package/dashboard/dist-server/dashboard/src/server/wiki/writer.js.map +1 -1
  237. package/dashboard/dist-server/dashboard/src/server/ws/handlers/agent-handler.d.ts +3 -1
  238. package/dashboard/dist-server/dashboard/src/server/ws/handlers/agent-handler.js +75 -1
  239. package/dashboard/dist-server/dashboard/src/server/ws/handlers/agent-handler.js.map +1 -1
  240. package/dashboard/dist-server/dashboard/src/server/ws/handlers/room-handler.d.ts +17 -0
  241. package/dashboard/dist-server/dashboard/src/server/ws/handlers/room-handler.js +192 -0
  242. package/dashboard/dist-server/dashboard/src/server/ws/handlers/room-handler.js.map +1 -0
  243. package/dashboard/dist-server/dashboard/src/server/ws/session-scoped-event-filter.d.ts +13 -0
  244. package/dashboard/dist-server/dashboard/src/server/ws/session-scoped-event-filter.js +37 -0
  245. package/dashboard/dist-server/dashboard/src/server/ws/session-scoped-event-filter.js.map +1 -0
  246. package/dashboard/dist-server/dashboard/src/server/ws/ws-manager.d.ts +7 -1
  247. package/dashboard/dist-server/dashboard/src/server/ws/ws-manager.js +39 -2
  248. package/dashboard/dist-server/dashboard/src/server/ws/ws-manager.js.map +1 -1
  249. package/dashboard/dist-server/dashboard/src/shared/constants.js +12 -0
  250. package/dashboard/dist-server/dashboard/src/shared/constants.js.map +1 -1
  251. package/dashboard/dist-server/dashboard/src/shared/room-leader-prompt.d.ts +1 -0
  252. package/dashboard/dist-server/dashboard/src/shared/room-leader-prompt.js +38 -0
  253. package/dashboard/dist-server/dashboard/src/shared/room-leader-prompt.js.map +1 -0
  254. package/dashboard/dist-server/dashboard/src/shared/team-types.d.ts +66 -0
  255. package/dashboard/dist-server/dashboard/src/shared/team-types.js.map +1 -1
  256. package/dashboard/dist-server/dashboard/src/shared/types.d.ts +24 -3
  257. package/dashboard/dist-server/dashboard/src/shared/ws-protocol.d.ts +76 -2
  258. package/dashboard/dist-server/dashboard/src/shared/ws-protocol.js.map +1 -1
  259. package/dashboard/dist-server/shared/agent-types.d.ts +2 -0
  260. package/dashboard/dist-server/src/commands/delegate.js +11 -8
  261. package/dashboard/dist-server/src/commands/delegate.js.map +1 -1
  262. package/dist/shared/agent-types.d.ts +2 -0
  263. package/dist/shared/agent-types.d.ts.map +1 -1
  264. package/dist/src/cli.js +2 -2
  265. package/dist/src/cli.js.map +1 -1
  266. package/dist/src/commands/delegate.d.ts.map +1 -1
  267. package/dist/src/commands/delegate.js +11 -8
  268. package/dist/src/commands/delegate.js.map +1 -1
  269. package/dist/src/commands/install-backend.d.ts +1 -1
  270. package/dist/src/commands/install-backend.d.ts.map +1 -1
  271. package/dist/src/commands/install-backend.js +1 -1
  272. package/dist/src/commands/install-backend.js.map +1 -1
  273. package/dist/src/commands/install-ui/ExecutionView.d.ts.map +1 -1
  274. package/dist/src/commands/install-ui/ExecutionView.js +4 -1
  275. package/dist/src/commands/install-ui/ExecutionView.js.map +1 -1
  276. package/dist/src/commands/install-ui/InstallExecution.d.ts.map +1 -1
  277. package/dist/src/commands/install-ui/InstallExecution.js +4 -1
  278. package/dist/src/commands/install-ui/InstallExecution.js.map +1 -1
  279. package/dist/src/commands/install.js +5 -5
  280. package/dist/src/commands/install.js.map +1 -1
  281. package/dist/src/commands/knowhow.d.ts +10 -0
  282. package/dist/src/commands/knowhow.d.ts.map +1 -0
  283. package/dist/src/commands/knowhow.js +217 -0
  284. package/dist/src/commands/knowhow.js.map +1 -0
  285. package/dist/src/commands/overlay-ui/OverlayList.d.ts +2 -0
  286. package/dist/src/commands/overlay-ui/OverlayList.d.ts.map +1 -1
  287. package/dist/src/commands/overlay-ui/OverlayList.js +6 -3
  288. package/dist/src/commands/overlay-ui/OverlayList.js.map +1 -1
  289. package/dist/src/commands/overlay-ui/index.d.ts.map +1 -1
  290. package/dist/src/commands/overlay-ui/index.js +70 -44
  291. package/dist/src/commands/overlay-ui/index.js.map +1 -1
  292. package/dist/src/commands/overlay.d.ts.map +1 -1
  293. package/dist/src/commands/overlay.js +4 -3
  294. package/dist/src/commands/overlay.js.map +1 -1
  295. package/dist/src/commands/update.d.ts.map +1 -1
  296. package/dist/src/commands/update.js +31 -21
  297. package/dist/src/commands/update.js.map +1 -1
  298. package/dist/src/core/manifest.d.ts +8 -1
  299. package/dist/src/core/manifest.d.ts.map +1 -1
  300. package/dist/src/core/manifest.js +3 -1
  301. package/dist/src/core/manifest.js.map +1 -1
  302. package/dist/src/core/overlay/applier.d.ts +1 -1
  303. package/dist/src/core/overlay/applier.d.ts.map +1 -1
  304. package/dist/src/core/overlay/applier.js +40 -13
  305. package/dist/src/core/overlay/applier.js.map +1 -1
  306. package/dist/src/core/overlay/loader.d.ts.map +1 -1
  307. package/dist/src/core/overlay/loader.js +6 -0
  308. package/dist/src/core/overlay/loader.js.map +1 -1
  309. package/dist/src/core/overlay/types.d.ts +5 -1
  310. package/dist/src/core/overlay/types.d.ts.map +1 -1
  311. package/dist/src/core/overlay/types.js +1 -1
  312. package/dist/src/core/overlay/types.js.map +1 -1
  313. package/dist/src/hooks/context-monitor.js +1 -1
  314. package/dist/src/hooks/context-monitor.js.map +1 -1
  315. package/dist/src/hooks/skill-context.js +1 -1
  316. package/dist/src/hooks/skill-context.js.map +1 -1
  317. package/dist/src/mcp/delegate-channel-relay.d.ts +4 -0
  318. package/dist/src/mcp/delegate-channel-relay.d.ts.map +1 -1
  319. package/dist/src/mcp/delegate-channel-relay.js +73 -4
  320. package/dist/src/mcp/delegate-channel-relay.js.map +1 -1
  321. package/dist/src/tools/index.js +2 -2
  322. package/dist/src/tools/index.js.map +1 -1
  323. package/dist/src/tools/store-knowhow.d.ts +21 -0
  324. package/dist/src/tools/store-knowhow.d.ts.map +1 -0
  325. package/dist/src/tools/store-knowhow.js +295 -0
  326. package/dist/src/tools/store-knowhow.js.map +1 -0
  327. package/package.json +1 -1
  328. package/shared/agent-types.ts +2 -0
  329. package/workflows/analyze.md +61 -185
  330. package/workflows/brainstorm.md +3 -23
  331. package/workflows/codebase-rebuild.md +79 -191
  332. package/workflows/codebase-refresh.md +26 -124
  333. package/workflows/debug.md +21 -141
  334. package/workflows/execute.md +183 -350
  335. package/workflows/fork.md +72 -230
  336. package/workflows/harvest.md +12 -79
  337. package/workflows/init.md +3 -17
  338. package/workflows/integration-test.md +21 -190
  339. package/workflows/issue-analyze.md +35 -153
  340. package/workflows/issue-discover.md +88 -263
  341. package/workflows/issue-execute.md +29 -208
  342. package/workflows/issue-plan.md +33 -154
  343. package/workflows/issue.md +44 -202
  344. package/workflows/knowhow.md +374 -0
  345. package/workflows/learn.md +30 -177
  346. package/workflows/maestro-coordinate.codex.md +77 -362
  347. package/workflows/maestro-link-coordinate.md +12 -61
  348. package/workflows/maestro.codex.md +124 -457
  349. package/workflows/maestro.md +562 -976
  350. package/workflows/map.md +16 -53
  351. package/workflows/merge.md +42 -197
  352. package/workflows/milestone-audit.md +5 -43
  353. package/workflows/milestone-complete.md +11 -60
  354. package/workflows/plan.md +188 -387
  355. package/workflows/quick.md +25 -174
  356. package/workflows/refactor.md +28 -221
  357. package/workflows/retrospective.md +104 -443
  358. package/workflows/review.md +87 -299
  359. package/workflows/roadmap.md +117 -97
  360. package/workflows/spec-generate.md +22 -118
  361. package/workflows/specs-add.md +5 -25
  362. package/workflows/specs-load.md +1 -5
  363. package/workflows/specs-remove.md +0 -11
  364. package/workflows/specs-setup.md +11 -47
  365. package/workflows/status.md +58 -200
  366. package/workflows/sync.md +28 -141
  367. package/workflows/test-gen.md +23 -100
  368. package/workflows/test.md +15 -125
  369. package/workflows/ui-design.md +139 -465
  370. package/workflows/ui-style.md +36 -228
  371. package/workflows/verify.md +52 -273
  372. package/workflows/wiki-connect.md +9 -46
  373. package/workflows/wiki-digest.md +7 -50
  374. package/workflows/wiki-manage.md +11 -108
  375. package/.claude/commands/maestro-coordinate.md +0 -63
  376. package/.claude/commands/manage-memory-capture.md +0 -59
  377. package/.codex/skills/maestro-coordinate/SKILL.md +0 -213
  378. package/.codex/skills/manage-memory-capture/SKILL.md +0 -93
  379. package/dashboard/dist/assets/ChatInput-pUOLJIKE.js +0 -49
  380. package/dashboard/dist/assets/ChatPage-B8Xqkt0v.js +0 -27
  381. package/dashboard/dist/assets/McpPage-BY0SjTgw.js +0 -21
  382. package/dashboard/dist/assets/TeamsPage-BO2kP70F.js +0 -11
  383. package/dashboard/dist/assets/WorkflowPage-C8hWbYim.js +0 -6
  384. package/dashboard/dist/assets/en-ZbRpfzuP.js +0 -1
  385. package/dashboard/dist/assets/index-C2Mcb4TJ.js +0 -231
  386. package/dashboard/dist/assets/index-DyBbPc18.css +0 -1
  387. package/dashboard/dist/assets/loader-B5F6PzFT.js +0 -11
  388. package/dashboard/dist/assets/zh-CN-CoXBFuny.js +0 -1
  389. package/workflows/maestro-coordinate.md +0 -582
  390. 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
  ---