maestro-flow 0.3.10 → 0.3.12

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 (311) hide show
  1. package/.claude/agents/conceptual-planning-agent.md +1 -0
  2. package/.claude/agents/workflow-analyzer.md +114 -114
  3. package/.claude/agents/workflow-collab-planner.md +144 -144
  4. package/.claude/agents/workflow-debugger.md +102 -103
  5. package/.claude/agents/workflow-executor.md +127 -128
  6. package/.claude/agents/workflow-integration-checker.md +82 -82
  7. package/.claude/agents/workflow-nyquist-auditor.md +85 -84
  8. package/.claude/agents/workflow-phase-researcher.md +85 -85
  9. package/.claude/agents/workflow-plan-checker.md +90 -90
  10. package/.claude/agents/workflow-planner.md +178 -178
  11. package/.claude/agents/workflow-roadmapper.md +81 -83
  12. package/.claude/agents/workflow-verifier.md +119 -119
  13. package/.claude/commands/learn-decompose.md +176 -176
  14. package/.claude/commands/learn-follow.md +167 -167
  15. package/.claude/commands/learn-retro.md +3 -3
  16. package/.claude/commands/learn-second-opinion.md +2 -2
  17. package/.claude/commands/maestro-brainstorm.md +1 -0
  18. package/.claude/commands/maestro-coordinate.md +1 -3
  19. package/.claude/commands/maestro-fork.md +133 -111
  20. package/.claude/commands/maestro-merge.md +85 -77
  21. package/.claude/commands/maestro-plan.md +88 -2
  22. package/.claude/commands/maestro-roadmap.md +113 -2
  23. package/.claude/commands/maestro.md +1 -0
  24. package/.claude/commands/manage-harvest.md +131 -131
  25. package/.claude/commands/manage-issue.md +2 -2
  26. package/.claude/commands/quality-business-test.md +5 -5
  27. package/.claude/commands/quality-debug.md +3 -2
  28. package/.claude/commands/quality-retrospective.md +6 -4
  29. package/.claude/commands/quality-review.md +1 -1
  30. package/.claude/commands/quality-test-gen.md +5 -4
  31. package/.claude/commands/spec-add.md +67 -56
  32. package/.claude/commands/spec-load.md +66 -64
  33. package/.claude/commands/spec-setup.md +5 -9
  34. package/.codex/skills/learn-decompose/SKILL.md +119 -0
  35. package/.codex/skills/learn-follow/SKILL.md +83 -0
  36. package/.codex/skills/learn-investigate/SKILL.md +83 -0
  37. package/.codex/skills/learn-retro/SKILL.md +83 -0
  38. package/.codex/skills/learn-second-opinion/SKILL.md +86 -0
  39. package/.codex/skills/maestro/SKILL.md +151 -279
  40. package/.codex/skills/maestro-analyze/SKILL.md +59 -71
  41. package/.codex/skills/maestro-brainstorm/SKILL.md +452 -463
  42. package/.codex/skills/maestro-chain/SKILL.md +95 -110
  43. package/.codex/skills/maestro-coordinate/SKILL.md +68 -234
  44. package/.codex/skills/maestro-execute/SKILL.md +435 -446
  45. package/.codex/skills/maestro-fork/SKILL.md +98 -0
  46. package/.codex/skills/maestro-init/SKILL.md +172 -167
  47. package/.codex/skills/maestro-learn/SKILL.md +80 -0
  48. package/.codex/skills/maestro-link-coordinate/SKILL.md +224 -220
  49. package/.codex/skills/maestro-merge/SKILL.md +69 -0
  50. package/.codex/skills/maestro-milestone-audit/SKILL.md +108 -103
  51. package/.codex/skills/maestro-milestone-complete/SKILL.md +155 -149
  52. package/.codex/skills/maestro-milestone-release/SKILL.md +70 -0
  53. package/.codex/skills/maestro-overlay/SKILL.md +188 -185
  54. package/.codex/skills/maestro-plan/SKILL.md +58 -69
  55. package/.codex/skills/maestro-quick/SKILL.md +26 -23
  56. package/.codex/skills/maestro-roadmap/SKILL.md +65 -73
  57. package/.codex/skills/maestro-spec-generate/SKILL.md +66 -74
  58. package/.codex/skills/maestro-ui-design/SKILL.md +35 -32
  59. package/.codex/skills/maestro-verify/SKILL.md +556 -566
  60. package/.codex/skills/manage-codebase-rebuild/SKILL.md +397 -405
  61. package/.codex/skills/manage-codebase-refresh/SKILL.md +93 -82
  62. package/.codex/skills/manage-harvest/SKILL.md +82 -0
  63. package/.codex/skills/manage-issue/SKILL.md +80 -65
  64. package/.codex/skills/manage-issue-discover/SKILL.md +491 -503
  65. package/.codex/skills/manage-learn/SKILL.md +190 -186
  66. package/.codex/skills/manage-memory/SKILL.md +95 -72
  67. package/.codex/skills/manage-memory-capture/SKILL.md +99 -86
  68. package/.codex/skills/manage-status/SKILL.md +102 -89
  69. package/.codex/skills/quality-business-test/SKILL.md +228 -223
  70. package/.codex/skills/quality-debug/SKILL.md +54 -66
  71. package/.codex/skills/quality-integration-test/SKILL.md +532 -544
  72. package/.codex/skills/quality-refactor/SKILL.md +197 -191
  73. package/.codex/skills/quality-retrospective/SKILL.md +512 -505
  74. package/.codex/skills/quality-review/SKILL.md +95 -107
  75. package/.codex/skills/quality-sync/SKILL.md +101 -89
  76. package/.codex/skills/quality-test/SKILL.md +202 -198
  77. package/.codex/skills/quality-test-gen/SKILL.md +94 -105
  78. package/.codex/skills/spec-add/SKILL.md +58 -39
  79. package/.codex/skills/spec-load/SKILL.md +45 -40
  80. package/.codex/skills/spec-map/SKILL.md +180 -182
  81. package/.codex/skills/spec-setup/SKILL.md +94 -76
  82. package/.codex/skills/team-coordinate/SKILL.md +346 -357
  83. package/.codex/skills/team-executor/SKILL.md +70 -112
  84. package/.codex/skills/team-lifecycle-v4/SKILL.md +311 -299
  85. package/.codex/skills/team-quality-assurance/SKILL.md +234 -227
  86. package/.codex/skills/team-review/SKILL.md +232 -225
  87. package/.codex/skills/team-tech-debt/SKILL.md +78 -100
  88. package/.codex/skills/team-testing/SKILL.md +242 -235
  89. package/.codex/skills/wiki-connect/SKILL.md +75 -0
  90. package/.codex/skills/wiki-digest/SKILL.md +87 -0
  91. package/README.md +9 -4
  92. package/README.zh-CN.md +9 -4
  93. package/dashboard/dist/assets/{ArtifactsPage-DZNCi6tn.js → ArtifactsPage-CUrrDGgN.js} +1 -1
  94. package/dashboard/dist/assets/ChatInput-pUOLJIKE.js +49 -0
  95. package/dashboard/dist/assets/ChatPage-B8Xqkt0v.js +27 -0
  96. package/dashboard/dist/assets/{CollabPage-B4NAHXS2.js → CollabPage-DIUXeazv.js} +1 -1
  97. package/dashboard/dist/assets/{ExecutionPanel-CFt4LJyq.js → ExecutionPanel-VmYeADFj.js} +1 -1
  98. package/dashboard/dist/assets/KanbanPage-DLq8v7hg.js +21 -0
  99. package/dashboard/dist/assets/{MarkdownRenderer-X4af_WNb.js → MarkdownRenderer-D7AehrnR.js} +1 -1
  100. package/dashboard/dist/assets/{McpPage-BKfCVIyU.js → McpPage-BY0SjTgw.js} +2 -2
  101. package/dashboard/dist/assets/{OutputPanel-BlBQFJSW.js → OutputPanel-B-Rjwgmv.js} +1 -1
  102. package/dashboard/dist/assets/{ProblemsPanel-De3DLvoI.js → ProblemsPanel-GEpF-oi4.js} +1 -1
  103. package/dashboard/dist/assets/RequirementBoardPage-xs8uDM7I.js +6 -0
  104. package/dashboard/dist/assets/{RequirementPage-Bllxe2XI.js → RequirementPage-BKDSFwjA.js} +5 -10
  105. package/dashboard/dist/assets/SpecsPage-DLFb9ZH0.js +36 -0
  106. package/dashboard/dist/assets/SupervisorPage-SOki_kgz.js +6 -0
  107. package/dashboard/dist/assets/TeamsPage-BO2kP70F.js +11 -0
  108. package/dashboard/dist/assets/{TreeBrowser-Q12qobZs.js → TreeBrowser-B9DHdULE.js} +1 -1
  109. package/dashboard/dist/assets/{WorkflowPage-D_Fzdy3_.js → WorkflowPage-C8hWbYim.js} +1 -1
  110. package/dashboard/dist/assets/{check-u6fGOwQO.js → check-DJDk3A2a.js} +1 -1
  111. package/dashboard/dist/assets/{chevron-right-Csu22t58.js → chevron-right-C7bVDreZ.js} +1 -1
  112. package/dashboard/dist/assets/{circle-CMrkbRNg.js → circle-Qfgy4LB_.js} +1 -1
  113. package/dashboard/dist/assets/{circle-alert-c3tH1P4z.js → circle-alert-Na1vf6qQ.js} +1 -1
  114. package/dashboard/dist/assets/{circle-check-gYxxSYuH.js → circle-check-CEGgy3NV.js} +1 -1
  115. package/dashboard/dist/assets/{circle-check-big-TDSeWstm.js → circle-check-big-3JB8zRYj.js} +1 -1
  116. package/dashboard/dist/assets/{code-CFN2uX9V.js → code-Ble63Idz.js} +1 -1
  117. package/dashboard/dist/assets/{columns-3-38xIDlzy.js → columns-3-BUcKlxve.js} +1 -1
  118. package/dashboard/dist/assets/{download-DC7KkKyP.js → download-CMqkfn8x.js} +1 -1
  119. package/dashboard/dist/assets/{folder-CWq_lAnf.js → folder-B9ewx9LL.js} +1 -1
  120. package/dashboard/dist/assets/index-C2Mcb4TJ.js +231 -0
  121. package/dashboard/dist/assets/index-DyBbPc18.css +1 -0
  122. package/dashboard/dist/assets/{index-Do71weNR.js → index-JTmGteaT.js} +1 -1
  123. package/dashboard/dist/assets/{list-CgIP_2A-.js → list-DI8Wn2aT.js} +1 -1
  124. package/dashboard/dist/assets/loader-B5F6PzFT.js +11 -0
  125. package/dashboard/dist/assets/{minus-DYoN5UGk.js → minus-Lp_BfctG.js} +1 -1
  126. package/dashboard/dist/assets/{pen-line-Bh_WKYHm.js → pen-line-Ch7sphzZ.js} +1 -1
  127. package/dashboard/dist/assets/pencil-_yRMHmGT.js +6 -0
  128. package/dashboard/dist/assets/{proxy-BKxDAKTj.js → proxy-D72Y8a4Y.js} +1 -1
  129. package/dashboard/dist/assets/{search-SieXnOgr.js → search-BS6fI6Bg.js} +1 -1
  130. package/dashboard/dist/assets/{shallow-Bme1JY57.js → shallow-BXasQBvr.js} +1 -1
  131. package/dashboard/dist/assets/table-CeGlFjlP.js +6 -0
  132. package/dashboard/dist/assets/{terminal-BB3Xfuv5.js → terminal-BJic2yW-.js} +1 -1
  133. package/dashboard/dist/assets/{trash-2-C8f4vFFM.js → trash-2-Czz4X8Fb.js} +1 -1
  134. package/dashboard/dist/assets/{zap-4uwlzVm0.js → zap-C3H0jVFA.js} +1 -1
  135. package/dashboard/dist/index.html +2 -2
  136. package/dashboard/dist-server/dashboard/src/server/agents/agent-manager.js +16 -1
  137. package/dashboard/dist-server/dashboard/src/server/agents/agent-manager.js.map +1 -1
  138. package/dashboard/dist-server/dashboard/src/server/agents/delegate-broker-monitor.js +1 -2
  139. package/dashboard/dist-server/dashboard/src/server/agents/delegate-broker-monitor.js.map +1 -1
  140. package/dashboard/dist-server/dashboard/src/server/commander/commander-prompts.d.ts +1 -1
  141. package/dashboard/dist-server/dashboard/src/server/commander/commander-prompts.js +2 -1
  142. package/dashboard/dist-server/dashboard/src/server/commander/commander-prompts.js.map +1 -1
  143. package/dashboard/dist-server/dashboard/src/server/index.js +3 -0
  144. package/dashboard/dist-server/dashboard/src/server/index.js.map +1 -1
  145. package/dashboard/dist-server/dashboard/src/server/routes/collab.js +124 -0
  146. package/dashboard/dist-server/dashboard/src/server/routes/collab.js.map +1 -1
  147. package/dashboard/dist-server/dashboard/src/server/routes/specs.d.ts +1 -1
  148. package/dashboard/dist-server/dashboard/src/server/routes/specs.js +75 -30
  149. package/dashboard/dist-server/dashboard/src/server/routes/specs.js.map +1 -1
  150. package/dashboard/dist-server/dashboard/src/server/state/event-bus.d.ts +5 -0
  151. package/dashboard/dist-server/dashboard/src/server/state/event-bus.js +5 -0
  152. package/dashboard/dist-server/dashboard/src/server/state/event-bus.js.map +1 -1
  153. package/dashboard/dist-server/dashboard/src/server/ws/handlers/team-handler.d.ts +10 -0
  154. package/dashboard/dist-server/dashboard/src/server/ws/handlers/team-handler.js +73 -0
  155. package/dashboard/dist-server/dashboard/src/server/ws/handlers/team-handler.js.map +1 -0
  156. package/dashboard/dist-server/dashboard/src/shared/collab-types.d.ts +31 -0
  157. package/dashboard/dist-server/dashboard/src/shared/collab-types.js +28 -0
  158. package/dashboard/dist-server/dashboard/src/shared/collab-types.js.map +1 -1
  159. package/dashboard/dist-server/dashboard/src/shared/constants.js +10 -0
  160. package/dashboard/dist-server/dashboard/src/shared/constants.js.map +1 -1
  161. package/dashboard/dist-server/dashboard/src/shared/coordinate-types.d.ts +22 -0
  162. package/dashboard/dist-server/dashboard/src/shared/issue-types.d.ts +12 -0
  163. package/dashboard/dist-server/dashboard/src/shared/issue-types.js +12 -0
  164. package/dashboard/dist-server/dashboard/src/shared/issue-types.js.map +1 -1
  165. package/dashboard/dist-server/dashboard/src/shared/team-types.d.ts +22 -0
  166. package/dashboard/dist-server/dashboard/src/shared/team-types.js +7 -0
  167. package/dashboard/dist-server/dashboard/src/shared/team-types.js.map +1 -1
  168. package/dashboard/dist-server/dashboard/src/shared/types.d.ts +3 -2
  169. package/dashboard/dist-server/dashboard/src/shared/ws-protocol.d.ts +28 -2
  170. package/dashboard/dist-server/dashboard/src/shared/ws-protocol.js.map +1 -1
  171. package/dashboard/dist-server/shared/agent-types.d.ts +4 -0
  172. package/dashboard/dist-server/src/hooks/constants.d.ts +3 -1
  173. package/dashboard/dist-server/src/hooks/constants.js +4 -2
  174. package/dashboard/dist-server/src/hooks/constants.js.map +1 -1
  175. package/dist/shared/agent-types.d.ts +4 -0
  176. package/dist/shared/agent-types.d.ts.map +1 -1
  177. package/dist/src/commands/collab.js +4 -4
  178. package/dist/src/commands/collab.js.map +1 -1
  179. package/dist/src/commands/hooks.d.ts.map +1 -1
  180. package/dist/src/commands/hooks.js +66 -1
  181. package/dist/src/commands/hooks.js.map +1 -1
  182. package/dist/src/commands/install-backend.d.ts.map +1 -1
  183. package/dist/src/commands/install-backend.js +29 -18
  184. package/dist/src/commands/install-backend.js.map +1 -1
  185. package/dist/src/commands/spec.d.ts.map +1 -1
  186. package/dist/src/commands/spec.js +7 -2
  187. package/dist/src/commands/spec.js.map +1 -1
  188. package/dist/src/hooks/__tests__/statusline-visual-test.js +23 -1
  189. package/dist/src/hooks/__tests__/statusline-visual-test.js.map +1 -1
  190. package/dist/src/hooks/constants.d.ts +3 -1
  191. package/dist/src/hooks/constants.d.ts.map +1 -1
  192. package/dist/src/hooks/constants.js +4 -2
  193. package/dist/src/hooks/constants.js.map +1 -1
  194. package/dist/src/hooks/guards/index.d.ts +1 -0
  195. package/dist/src/hooks/guards/index.d.ts.map +1 -1
  196. package/dist/src/hooks/guards/index.js +1 -0
  197. package/dist/src/hooks/guards/index.js.map +1 -1
  198. package/dist/src/hooks/guards/spec-validator.d.ts +25 -0
  199. package/dist/src/hooks/guards/spec-validator.d.ts.map +1 -0
  200. package/dist/src/hooks/guards/spec-validator.js +66 -0
  201. package/dist/src/hooks/guards/spec-validator.js.map +1 -0
  202. package/dist/src/hooks/keyword-spec-injector.d.ts +21 -0
  203. package/dist/src/hooks/keyword-spec-injector.d.ts.map +1 -0
  204. package/dist/src/hooks/keyword-spec-injector.js +96 -0
  205. package/dist/src/hooks/keyword-spec-injector.js.map +1 -0
  206. package/dist/src/hooks/plugins/spec-injection-plugin.d.ts +2 -1
  207. package/dist/src/hooks/plugins/spec-injection-plugin.d.ts.map +1 -1
  208. package/dist/src/hooks/plugins/spec-injection-plugin.js +21 -12
  209. package/dist/src/hooks/plugins/spec-injection-plugin.js.map +1 -1
  210. package/dist/src/hooks/skill-context.d.ts +3 -0
  211. package/dist/src/hooks/skill-context.d.ts.map +1 -1
  212. package/dist/src/hooks/skill-context.js +95 -9
  213. package/dist/src/hooks/skill-context.js.map +1 -1
  214. package/dist/src/hooks/spec-bridge.d.ts +40 -0
  215. package/dist/src/hooks/spec-bridge.d.ts.map +1 -0
  216. package/dist/src/hooks/spec-bridge.js +97 -0
  217. package/dist/src/hooks/spec-bridge.js.map +1 -0
  218. package/dist/src/hooks/spec-injector.d.ts.map +1 -1
  219. package/dist/src/hooks/spec-injector.js +18 -12
  220. package/dist/src/hooks/spec-injector.js.map +1 -1
  221. package/dist/src/hooks/statusline.d.ts.map +1 -1
  222. package/dist/src/hooks/statusline.js +6 -3
  223. package/dist/src/hooks/statusline.js.map +1 -1
  224. package/dist/src/team/phase-orchestrator.d.ts +52 -0
  225. package/dist/src/team/phase-orchestrator.d.ts.map +1 -0
  226. package/dist/src/team/phase-orchestrator.js +165 -0
  227. package/dist/src/team/phase-orchestrator.js.map +1 -0
  228. package/dist/src/team/phase-types.d.ts +51 -0
  229. package/dist/src/team/phase-types.d.ts.map +1 -0
  230. package/dist/src/team/phase-types.js +41 -0
  231. package/dist/src/team/phase-types.js.map +1 -0
  232. package/dist/src/tools/index.d.ts.map +1 -1
  233. package/dist/src/tools/index.js +6 -0
  234. package/dist/src/tools/index.js.map +1 -1
  235. package/dist/src/tools/merge-validator.d.ts.map +1 -1
  236. package/dist/src/tools/merge-validator.js +114 -16
  237. package/dist/src/tools/merge-validator.js.map +1 -1
  238. package/dist/src/tools/spec-entry-parser.d.ts +56 -0
  239. package/dist/src/tools/spec-entry-parser.d.ts.map +1 -0
  240. package/dist/src/tools/spec-entry-parser.js +196 -0
  241. package/dist/src/tools/spec-entry-parser.js.map +1 -0
  242. package/dist/src/tools/spec-init.d.ts.map +1 -1
  243. package/dist/src/tools/spec-init.js +66 -92
  244. package/dist/src/tools/spec-init.js.map +1 -1
  245. package/dist/src/tools/spec-keyword-index.d.ts +30 -0
  246. package/dist/src/tools/spec-keyword-index.d.ts.map +1 -0
  247. package/dist/src/tools/spec-keyword-index.js +101 -0
  248. package/dist/src/tools/spec-keyword-index.js.map +1 -0
  249. package/dist/src/tools/spec-loader.d.ts +3 -3
  250. package/dist/src/tools/spec-loader.d.ts.map +1 -1
  251. package/dist/src/tools/spec-loader.js +49 -23
  252. package/dist/src/tools/spec-loader.js.map +1 -1
  253. package/dist/src/tools/team-agents.d.ts +27 -0
  254. package/dist/src/tools/team-agents.d.ts.map +1 -0
  255. package/dist/src/tools/team-agents.js +362 -0
  256. package/dist/src/tools/team-agents.js.map +1 -0
  257. package/dist/src/tools/team-mailbox.d.ts +40 -0
  258. package/dist/src/tools/team-mailbox.d.ts.map +1 -0
  259. package/dist/src/tools/team-mailbox.js +384 -0
  260. package/dist/src/tools/team-mailbox.js.map +1 -0
  261. package/dist/src/tools/team-msg.d.ts +17 -8
  262. package/dist/src/tools/team-msg.d.ts.map +1 -1
  263. package/dist/src/tools/team-msg.js +110 -13
  264. package/dist/src/tools/team-msg.js.map +1 -1
  265. package/dist/src/tools/team-tasks-mcp.d.ts +27 -0
  266. package/dist/src/tools/team-tasks-mcp.d.ts.map +1 -0
  267. package/dist/src/tools/team-tasks-mcp.js +408 -0
  268. package/dist/src/tools/team-tasks-mcp.js.map +1 -0
  269. package/package.json +2 -1
  270. package/shared/agent-types.ts +4 -0
  271. package/templates/worktree-scope.json +9 -10
  272. package/templates/worktrees.json +26 -27
  273. package/workflows/analyze.md +816 -816
  274. package/workflows/brainstorm.md +480 -471
  275. package/workflows/codebase-rebuild.md +332 -332
  276. package/workflows/codebase-refresh.md +240 -240
  277. package/workflows/debug.md +16 -6
  278. package/workflows/execute.md +1 -1
  279. package/workflows/fork.md +100 -36
  280. package/workflows/harvest.md +420 -420
  281. package/workflows/integration-test.md +355 -343
  282. package/workflows/issue-discover.md +414 -414
  283. package/workflows/issue.md +14 -4
  284. package/workflows/learn.md +19 -5
  285. package/workflows/maestro.md +1 -0
  286. package/workflows/map.md +111 -111
  287. package/workflows/merge.md +113 -55
  288. package/workflows/milestone-complete.md +176 -176
  289. package/workflows/plan.md +1 -1
  290. package/workflows/quick.md +497 -497
  291. package/workflows/refactor.md +300 -300
  292. package/workflows/retrospective.md +61 -22
  293. package/workflows/review.md +17 -4
  294. package/workflows/roadmap.md +335 -335
  295. package/workflows/spec-generate.md +640 -640
  296. package/workflows/specs-add.md +46 -81
  297. package/workflows/specs-load.md +15 -17
  298. package/workflows/specs-setup.md +40 -161
  299. package/workflows/test.md +12 -2
  300. package/workflows/ui-style.md +9 -2
  301. package/dashboard/dist/assets/ChatInput-Bvr-FeEq.js +0 -49
  302. package/dashboard/dist/assets/ChatPage-D9zTkJZo.js +0 -22
  303. package/dashboard/dist/assets/KanbanPage-C8USth6H.js +0 -21
  304. package/dashboard/dist/assets/RequirementBoardPage-Bf1trzqs.js +0 -11
  305. package/dashboard/dist/assets/SpecsPage-9lwxKT27.js +0 -36
  306. package/dashboard/dist/assets/SupervisorPage-SusdfHFq.js +0 -6
  307. package/dashboard/dist/assets/TeamsPage-DsuM6OwC.js +0 -6
  308. package/dashboard/dist/assets/arrow-left-Bqtb2hle.js +0 -6
  309. package/dashboard/dist/assets/index-DWG-WrzT.js +0 -231
  310. package/dashboard/dist/assets/index-GUNJodSR.css +0 -1
  311. package/dashboard/dist/assets/table-llyEtj-7.js +0 -6
@@ -1,497 +1,497 @@
1
- # Quick Task Workflow
2
-
3
- Execute small, ad-hoc tasks with workflow guarantees (atomic commits, state tracking). Quick mode spawns workflow-planner (quick mode) + workflow-executor(s), tracks tasks in `.workflow/scratch/`, and updates state.json.
4
-
5
- With `--discuss`: lightweight decision extraction before planning. Identifies gray areas, conducts interactive discussion, classifies decisions as Locked/Free/Deferred in context.md so the planner treats Locked decisions as constraints and Free decisions as implementer discretion.
6
-
7
- With `--full`: enables plan-checking (max 2 iterations) and post-execution verification.
8
-
9
- Flags are composable: `--discuss --full` gives discussion + plan-checking + verification.
10
-
11
- ---
12
-
13
- ## Prerequisites
14
-
15
- - `.workflow/state.json` must exist (project initialized)
16
- - Quick tasks can run mid-phase -- validation only checks project exists, not phase status
17
-
18
- ---
19
-
20
- ### Step 1: Parse Arguments
21
-
22
- **Parse $ARGUMENTS for flags and description:**
23
-
24
- Extract:
25
- - `--full` flag -> store as `$FULL_MODE` (true/false)
26
- - `--discuss` flag -> store as `$DISCUSS_MODE` (true/false)
27
- - Remaining text -> use as `$DESCRIPTION`
28
-
29
- If `$DESCRIPTION` is empty after parsing:
30
- ```
31
- AskUserQuestion(
32
- header: "Quick Task",
33
- question: "What do you want to do?",
34
- followUp: null
35
- )
36
- ```
37
-
38
- Store response as `$DESCRIPTION`.
39
- If still empty, re-prompt: "Please provide a task description."
40
-
41
- Display banner based on active flags:
42
-
43
- If `$DISCUSS_MODE` and `$FULL_MODE`:
44
- ```
45
- ------------------------------------------------------------
46
- WORKFLOW > QUICK TASK (DISCUSS + FULL)
47
- ------------------------------------------------------------
48
- Discussion + plan checking + verification enabled
49
- ```
50
-
51
- If `$DISCUSS_MODE` only:
52
- ```
53
- ------------------------------------------------------------
54
- WORKFLOW > QUICK TASK (DISCUSS)
55
- ------------------------------------------------------------
56
- Discussion phase enabled -- surfacing gray areas before planning
57
- ```
58
-
59
- If `$FULL_MODE` only:
60
- ```
61
- ------------------------------------------------------------
62
- WORKFLOW > QUICK TASK (FULL MODE)
63
- ------------------------------------------------------------
64
- Plan checking + verification enabled
65
- ```
66
-
67
- Default (no flags):
68
- ```
69
- ------------------------------------------------------------
70
- WORKFLOW > QUICK TASK
71
- ------------------------------------------------------------
72
- ```
73
-
74
- ---
75
-
76
- ### Step 2: Validate Project
77
-
78
- **Validate project state:**
79
-
80
- Check .workflow/ exists and has state.json:
81
- ```bash
82
- test -f .workflow/state.json && echo "exists" || echo "missing"
83
- ```
84
-
85
- If missing: Error -- "Quick mode requires an initialized project. Run /workflow:init first."
86
-
87
- Quick tasks can run mid-phase -- validation only checks project exists, not phase status.
88
-
89
- ---
90
-
91
- ### Step 3: Create Scratch Directory
92
-
93
- **Create scratch directory:**
94
-
95
- Generate slug from $DESCRIPTION (lowercase, hyphens, max 40 chars).
96
- Set date to current date (YYYY-MM-DD).
97
-
98
- ```bash
99
- QUICK_DIR=".workflow/scratch/quick-${slug}-${date}"
100
- mkdir -p "$QUICK_DIR/.task"
101
- mkdir -p "$QUICK_DIR/.summaries"
102
- ```
103
-
104
- Write index.json:
105
- ```json
106
- {
107
- "id": "quick-{slug}-{date}",
108
- "type": "quick",
109
- "title": "{$DESCRIPTION}",
110
- "status": "active",
111
- "created_at": "{ISO timestamp}",
112
- "updated_at": "{ISO timestamp}",
113
- "flags": {
114
- "discuss": {$DISCUSS_MODE},
115
- "full": {$FULL_MODE}
116
- },
117
- "plan": {
118
- "task_ids": [],
119
- "task_count": 0
120
- },
121
- "execution": {
122
- "method": "agent",
123
- "tasks_completed": 0,
124
- "tasks_total": 0
125
- }
126
- }
127
- ```
128
-
129
- Report: "Creating quick task: {$DESCRIPTION}\nDirectory: {$QUICK_DIR}"
130
-
131
- ---
132
-
133
- ### Step 4: Discussion Phase (only when $DISCUSS_MODE)
134
-
135
- **Lightweight discussion:**
136
-
137
- Skip entirely if NOT $DISCUSS_MODE.
138
-
139
- ```
140
- ------------------------------------------------------------
141
- WORKFLOW > DISCUSSING QUICK TASK
142
- ------------------------------------------------------------
143
- Surfacing gray areas for: {$DESCRIPTION}
144
- ```
145
-
146
- **4a. Identify gray areas:**
147
-
148
- Analyze $DESCRIPTION to identify 2-4 gray areas -- implementation decisions that would change the outcome. Use domain-aware heuristic:
149
- - Something users **SEE** -> layout, density, interactions, states
150
- - Something users **CALL** -> responses, errors, auth, versioning
151
- - Something users **RUN** -> output format, flags, modes, error handling
152
- - Something users **READ** -> structure, tone, depth, flow
153
- - Something being **ORGANIZED** -> criteria, grouping, naming, exceptions
154
-
155
- **4b. Present gray areas:**
156
-
157
- ```
158
- AskUserQuestion(
159
- header: "Gray Areas",
160
- question: "Which areas need clarification before planning?",
161
- options: [
162
- { label: "{area_1}", description: "{why_it_matters}" },
163
- { label: "{area_2}", description: "{why_it_matters}" },
164
- { label: "{area_3}", description: "{why_it_matters}" },
165
- { label: "All clear", description: "Skip discussion -- I know what I want" }
166
- ],
167
- multiSelect: true
168
- )
169
- ```
170
-
171
- If user selects "All clear" -> skip to Step 5 (no context.md written).
172
-
173
- **4c. Discuss selected areas:**
174
-
175
- For each selected area, ask 1-2 focused questions:
176
- ```
177
- AskUserQuestion(
178
- header: "{area_name}",
179
- question: "{specific question}",
180
- options: [
181
- { label: "{choice_1}", description: "{what this means}" },
182
- { label: "{choice_2}", description: "{what this means}" },
183
- { label: "You decide", description: "Claude's discretion" }
184
- ]
185
- )
186
- ```
187
-
188
- Max 2 questions per area. Collect all decisions.
189
-
190
- **4d. Classify decisions:**
191
-
192
- - **Locked**: firm decisions that cannot be changed during implementation
193
- - **Free**: open for implementation discretion (implementer can choose)
194
- - **Deferred**: postponed (captured but not acted on in this quick task)
195
-
196
- **4e. Write context.md:**
197
-
198
- ```markdown
199
- # Quick Task: {$DESCRIPTION} - Context
200
-
201
- **Gathered:** {date}
202
- **Status:** Ready for planning
203
-
204
- ## Task Boundary
205
-
206
- {$DESCRIPTION}
207
-
208
- ## Constraints
209
-
210
- ### Locked
211
- {decisions that are final and must be followed}
212
-
213
- ### Free
214
- {decisions left to implementer discretion, including "You decide" areas}
215
-
216
- ### Deferred
217
- {ideas captured but out of scope for this quick task}
218
-
219
- ## Code Context
220
- {relevant code references from discussion, if any}
221
- ```
222
-
223
- Write to `${QUICK_DIR}/context.md`.
224
- Report: "Context captured: ${QUICK_DIR}/context.md"
225
-
226
- ---
227
-
228
- ### Step 4.5: Load Project Specs
229
-
230
- ```
231
- specs_content = maestro spec load --category execution
232
- ```
233
-
234
- Passed inline to planner agent in Step 5.
235
-
236
- ---
237
-
238
- ### Step 5: Spawn Planner
239
-
240
- **Spawn workflow-planner in quick mode:**
241
-
242
- ```
243
- Task(
244
- prompt="
245
- <planning_context>
246
-
247
- **Mode:** ${FULL_MODE ? 'quick-full' : 'quick'}
248
- **Directory:** ${QUICK_DIR}
249
- **Description:** ${DESCRIPTION}
250
-
251
- Read these files:
252
- - .workflow/state.json (Project state)
253
- - ./CLAUDE.md (Project instructions, if exists)
254
-
255
- Project specs (pre-loaded in Step 4.5):
256
- ${specs_content || 'No specs found.'}
257
- ${DISCUSS_MODE ? '- ' + QUICK_DIR + '/context.md (User decisions -- locked)' : ''}
258
-
259
- </planning_context>
260
-
261
- <constraints>
262
- - Create a SINGLE plan with 1-3 focused tasks
263
- - Quick tasks should be atomic and self-contained
264
- - No research phase
265
- ${FULL_MODE ? '- Target ~40% context usage (structured for verification)' : '- Target ~30% context usage (simple, focused)'}
266
- ${FULL_MODE ? '- Each task MUST have files, action, convergence.criteria, implementation fields' : ''}
267
- </constraints>
268
-
269
- <output>
270
- Write plan to: ${QUICK_DIR}/plan.json
271
- Write tasks to: ${QUICK_DIR}/.task/TASK-{NNN}.json
272
- Return: ## PLANNING COMPLETE with plan path
273
- </output>
274
- ",
275
- subagent_type="workflow-planner",
276
- description="Quick plan: ${DESCRIPTION}"
277
- )
278
- ```
279
-
280
- After planner returns:
281
- 1. Verify plan.json exists at `${QUICK_DIR}/plan.json`
282
- 2. Update index.json plan fields
283
- 3. Report: "Plan created: ${QUICK_DIR}/plan.json"
284
-
285
- If plan not found: "Planner failed to create plan.json"
286
-
287
- ---
288
-
289
- ### Step 6: Plan Checker (only when $FULL_MODE)
290
-
291
- **Plan-checker loop:**
292
-
293
- Skip entirely if NOT $FULL_MODE.
294
-
295
- ```
296
- ------------------------------------------------------------
297
- WORKFLOW > CHECKING PLAN
298
- ------------------------------------------------------------
299
- Spawning plan checker...
300
- ```
301
-
302
- ```
303
- Task(
304
- prompt="
305
- Verify quick task plan.
306
-
307
- Read: ${QUICK_DIR}/plan.json and ${QUICK_DIR}/.task/TASK-*.json
308
-
309
- Check dimensions:
310
- - Requirement coverage: Does the plan address the task description?
311
- - Task completeness: Do tasks have files, action, convergence.criteria, implementation?
312
- - Scope sanity: Appropriately sized for quick task (1-3 tasks)?
313
- ${DISCUSS_MODE ? '- Context compliance: Does plan honor decisions from context.md?' : ''}
314
-
315
- Return one of:
316
- - ## VERIFICATION PASSED
317
- - ## ISSUES FOUND -- structured issue list
318
- ",
319
- subagent_type="workflow-plan-checker",
320
- description="Check quick plan: ${DESCRIPTION}"
321
- )
322
- ```
323
-
324
- **Handle checker return:**
325
-
326
- - **VERIFICATION PASSED:** Continue to Step 7.
327
- - **ISSUES FOUND:** Enter revision loop.
328
-
329
- **Revision loop (max 2 iterations):**
330
-
331
- If iteration_count < 2:
332
- - Display: "Sending back to planner for revision... (iteration {N}/2)"
333
- - Spawn planner with revision context + checker issues
334
- - Re-check with checker
335
- - Increment iteration_count
336
-
337
- If iteration_count >= 2:
338
- - Display: "Max iterations reached. {N} issues remain."
339
- - Offer: 1) Force proceed, 2) Abort
340
-
341
- ---
342
-
343
- ### Step 7: Spawn Executor
344
-
345
- **Spawn workflow-executor:**
346
-
347
- ```
348
- Task(
349
- prompt="
350
- Execute quick task.
351
-
352
- Read:
353
- - ${QUICK_DIR}/plan.json (Plan)
354
- - ${QUICK_DIR}/.task/TASK-*.json (Tasks)
355
- - .workflow/state.json (Project state)
356
- - ./CLAUDE.md (Project instructions, if exists)
357
-
358
- Constraints:
359
- - Execute all tasks in the plan
360
- - Commit each task atomically
361
- - Create summary for each task at: ${QUICK_DIR}/.summaries/TASK-{NNN}-summary.md
362
- ",
363
- subagent_type="workflow-executor",
364
- description="Execute: ${DESCRIPTION}"
365
- )
366
- ```
367
-
368
- After executor returns:
369
- 1. Verify summaries exist
370
- 2. Update index.json execution fields
371
- 3. Report completion status
372
-
373
- ---
374
-
375
- ### Step 8: Verification (only when $FULL_MODE)
376
-
377
- **Post-execution verification:**
378
-
379
- Skip entirely if NOT $FULL_MODE.
380
-
381
- ```
382
- ------------------------------------------------------------
383
- WORKFLOW > VERIFYING RESULTS
384
- ------------------------------------------------------------
385
- Spawning verifier...
386
- ```
387
-
388
- ```
389
- Task(
390
- prompt="
391
- Verify quick task goal achievement.
392
- Task directory: ${QUICK_DIR}
393
- Task goal: ${DESCRIPTION}
394
-
395
- Read: ${QUICK_DIR}/plan.json and ${QUICK_DIR}/.summaries/
396
-
397
- Check plan objectives against actual codebase.
398
- Write verification result to: ${QUICK_DIR}/verification.json
399
- ",
400
- subagent_type="workflow-verifier",
401
- description="Verify: ${DESCRIPTION}"
402
- )
403
- ```
404
-
405
- Read verification result:
406
- | Status | Action |
407
- |--------|--------|
408
- | passed | Store "Verified", continue |
409
- | gaps_found | Display gaps, offer: 1) Re-run executor, 2) Accept as-is |
410
-
411
- ---
412
-
413
- ### Step 9: Update State
414
-
415
- **Update state.json:**
416
-
417
- Read state.json. Add quick task to accumulated_context or quick_tasks array.
418
-
419
- Record:
420
- ```json
421
- {
422
- "id": "quick-{slug}-{date}",
423
- "description": "{$DESCRIPTION}",
424
- "completed_at": "{ISO timestamp}",
425
- "directory": "{$QUICK_DIR}",
426
- "verified": {$FULL_MODE ? verification_status : "skipped"}
427
- }
428
- ```
429
-
430
- Update last_updated timestamp.
431
-
432
- ---
433
-
434
- ### Step 10: Commit and Complete
435
-
436
- **Final commit and completion:**
437
-
438
- Update index.json status to "completed".
439
-
440
- Commit quick task artifacts:
441
- ```bash
442
- git add "${QUICK_DIR}/" .workflow/state.json
443
- git commit -m "quick({slug}): ${DESCRIPTION}"
444
- ```
445
-
446
- Display completion:
447
-
448
- If $FULL_MODE:
449
- ```
450
- ------------------------------------------------------------
451
- WORKFLOW > QUICK TASK COMPLETE (FULL MODE)
452
- ------------------------------------------------------------
453
-
454
- Quick Task: {$DESCRIPTION}
455
-
456
- Summary: ${QUICK_DIR}/.summaries/
457
- Verification: ${QUICK_DIR}/verification.json ({status})
458
- Directory: ${QUICK_DIR}
459
-
460
- ------------------------------------------------------------
461
- Ready for next task: /workflow:quick
462
- ```
463
-
464
- If NOT $FULL_MODE:
465
- ```
466
- ------------------------------------------------------------
467
- WORKFLOW > QUICK TASK COMPLETE
468
- ------------------------------------------------------------
469
-
470
- Quick Task: {$DESCRIPTION}
471
-
472
- Summary: ${QUICK_DIR}/.summaries/
473
- Directory: ${QUICK_DIR}
474
-
475
- ------------------------------------------------------------
476
- Ready for next task: /workflow:quick
477
- ```
478
-
479
- ---
480
-
481
- ## Success Criteria
482
-
483
- - [ ] --full and --discuss flags parsed from arguments when present
484
- - [ ] Flags are composable (--discuss --full works)
485
- - [ ] User provides task description (prompted if missing)
486
- - [ ] Project validated (state.json exists)
487
- - [ ] Scratch directory created at .workflow/scratch/quick-{slug}-{date}/
488
- - [ ] index.json created in scratch dir
489
- - [ ] (--discuss) Gray areas identified, decisions captured in context.md
490
- - [ ] (--discuss) context.md honors "All clear" skip and "You decide" discretion
491
- - [ ] plan.json + .task/TASK-*.json created by planner
492
- - [ ] (--full) Plan checker validates plan, revision loop capped at 2
493
- - [ ] .summaries/TASK-*-summary.md created by executor
494
- - [ ] (--full) verification.json created by verifier
495
- - [ ] state.json updated with quick task record
496
- - [ ] Artifacts committed
497
- - [ ] index.json status set to "completed"
1
+ # Quick Task Workflow
2
+
3
+ Execute small, ad-hoc tasks with workflow guarantees (atomic commits, state tracking). Quick mode spawns workflow-planner (quick mode) + workflow-executor(s), tracks tasks in `.workflow/scratch/`, and updates state.json.
4
+
5
+ With `--discuss`: lightweight decision extraction before planning. Identifies gray areas, conducts interactive discussion, classifies decisions as Locked/Free/Deferred in context.md so the planner treats Locked decisions as constraints and Free decisions as implementer discretion.
6
+
7
+ With `--full`: enables plan-checking (max 2 iterations) and post-execution verification.
8
+
9
+ Flags are composable: `--discuss --full` gives discussion + plan-checking + verification.
10
+
11
+ ---
12
+
13
+ ## Prerequisites
14
+
15
+ - `.workflow/state.json` must exist (project initialized)
16
+ - Quick tasks can run mid-phase -- validation only checks project exists, not phase status
17
+
18
+ ---
19
+
20
+ ### Step 1: Parse Arguments
21
+
22
+ **Parse $ARGUMENTS for flags and description:**
23
+
24
+ Extract:
25
+ - `--full` flag -> store as `$FULL_MODE` (true/false)
26
+ - `--discuss` flag -> store as `$DISCUSS_MODE` (true/false)
27
+ - Remaining text -> use as `$DESCRIPTION`
28
+
29
+ If `$DESCRIPTION` is empty after parsing:
30
+ ```
31
+ AskUserQuestion(
32
+ header: "Quick Task",
33
+ question: "What do you want to do?",
34
+ followUp: null
35
+ )
36
+ ```
37
+
38
+ Store response as `$DESCRIPTION`.
39
+ If still empty, re-prompt: "Please provide a task description."
40
+
41
+ Display banner based on active flags:
42
+
43
+ If `$DISCUSS_MODE` and `$FULL_MODE`:
44
+ ```
45
+ ------------------------------------------------------------
46
+ WORKFLOW > QUICK TASK (DISCUSS + FULL)
47
+ ------------------------------------------------------------
48
+ Discussion + plan checking + verification enabled
49
+ ```
50
+
51
+ If `$DISCUSS_MODE` only:
52
+ ```
53
+ ------------------------------------------------------------
54
+ WORKFLOW > QUICK TASK (DISCUSS)
55
+ ------------------------------------------------------------
56
+ Discussion phase enabled -- surfacing gray areas before planning
57
+ ```
58
+
59
+ If `$FULL_MODE` only:
60
+ ```
61
+ ------------------------------------------------------------
62
+ WORKFLOW > QUICK TASK (FULL MODE)
63
+ ------------------------------------------------------------
64
+ Plan checking + verification enabled
65
+ ```
66
+
67
+ Default (no flags):
68
+ ```
69
+ ------------------------------------------------------------
70
+ WORKFLOW > QUICK TASK
71
+ ------------------------------------------------------------
72
+ ```
73
+
74
+ ---
75
+
76
+ ### Step 2: Validate Project
77
+
78
+ **Validate project state:**
79
+
80
+ Check .workflow/ exists and has state.json:
81
+ ```bash
82
+ test -f .workflow/state.json && echo "exists" || echo "missing"
83
+ ```
84
+
85
+ If missing: Error -- "Quick mode requires an initialized project. Run /workflow:init first."
86
+
87
+ Quick tasks can run mid-phase -- validation only checks project exists, not phase status.
88
+
89
+ ---
90
+
91
+ ### Step 3: Create Scratch Directory
92
+
93
+ **Create scratch directory:**
94
+
95
+ Generate slug from $DESCRIPTION (lowercase, hyphens, max 40 chars).
96
+ Set date to current date (YYYY-MM-DD).
97
+
98
+ ```bash
99
+ QUICK_DIR=".workflow/scratch/quick-${slug}-${date}"
100
+ mkdir -p "$QUICK_DIR/.task"
101
+ mkdir -p "$QUICK_DIR/.summaries"
102
+ ```
103
+
104
+ Write index.json:
105
+ ```json
106
+ {
107
+ "id": "quick-{slug}-{date}",
108
+ "type": "quick",
109
+ "title": "{$DESCRIPTION}",
110
+ "status": "active",
111
+ "created_at": "{ISO timestamp}",
112
+ "updated_at": "{ISO timestamp}",
113
+ "flags": {
114
+ "discuss": {$DISCUSS_MODE},
115
+ "full": {$FULL_MODE}
116
+ },
117
+ "plan": {
118
+ "task_ids": [],
119
+ "task_count": 0
120
+ },
121
+ "execution": {
122
+ "method": "agent",
123
+ "tasks_completed": 0,
124
+ "tasks_total": 0
125
+ }
126
+ }
127
+ ```
128
+
129
+ Report: "Creating quick task: {$DESCRIPTION}\nDirectory: {$QUICK_DIR}"
130
+
131
+ ---
132
+
133
+ ### Step 4: Discussion Phase (only when $DISCUSS_MODE)
134
+
135
+ **Lightweight discussion:**
136
+
137
+ Skip entirely if NOT $DISCUSS_MODE.
138
+
139
+ ```
140
+ ------------------------------------------------------------
141
+ WORKFLOW > DISCUSSING QUICK TASK
142
+ ------------------------------------------------------------
143
+ Surfacing gray areas for: {$DESCRIPTION}
144
+ ```
145
+
146
+ **4a. Identify gray areas:**
147
+
148
+ Analyze $DESCRIPTION to identify 2-4 gray areas -- implementation decisions that would change the outcome. Use domain-aware heuristic:
149
+ - Something users **SEE** -> layout, density, interactions, states
150
+ - Something users **CALL** -> responses, errors, auth, versioning
151
+ - Something users **RUN** -> output format, flags, modes, error handling
152
+ - Something users **READ** -> structure, tone, depth, flow
153
+ - Something being **ORGANIZED** -> criteria, grouping, naming, exceptions
154
+
155
+ **4b. Present gray areas:**
156
+
157
+ ```
158
+ AskUserQuestion(
159
+ header: "Gray Areas",
160
+ question: "Which areas need clarification before planning?",
161
+ options: [
162
+ { label: "{area_1}", description: "{why_it_matters}" },
163
+ { label: "{area_2}", description: "{why_it_matters}" },
164
+ { label: "{area_3}", description: "{why_it_matters}" },
165
+ { label: "All clear", description: "Skip discussion -- I know what I want" }
166
+ ],
167
+ multiSelect: true
168
+ )
169
+ ```
170
+
171
+ If user selects "All clear" -> skip to Step 5 (no context.md written).
172
+
173
+ **4c. Discuss selected areas:**
174
+
175
+ For each selected area, ask 1-2 focused questions:
176
+ ```
177
+ AskUserQuestion(
178
+ header: "{area_name}",
179
+ question: "{specific question}",
180
+ options: [
181
+ { label: "{choice_1}", description: "{what this means}" },
182
+ { label: "{choice_2}", description: "{what this means}" },
183
+ { label: "You decide", description: "Claude's discretion" }
184
+ ]
185
+ )
186
+ ```
187
+
188
+ Max 2 questions per area. Collect all decisions.
189
+
190
+ **4d. Classify decisions:**
191
+
192
+ - **Locked**: firm decisions that cannot be changed during implementation
193
+ - **Free**: open for implementation discretion (implementer can choose)
194
+ - **Deferred**: postponed (captured but not acted on in this quick task)
195
+
196
+ **4e. Write context.md:**
197
+
198
+ ```markdown
199
+ # Quick Task: {$DESCRIPTION} - Context
200
+
201
+ **Gathered:** {date}
202
+ **Status:** Ready for planning
203
+
204
+ ## Task Boundary
205
+
206
+ {$DESCRIPTION}
207
+
208
+ ## Constraints
209
+
210
+ ### Locked
211
+ {decisions that are final and must be followed}
212
+
213
+ ### Free
214
+ {decisions left to implementer discretion, including "You decide" areas}
215
+
216
+ ### Deferred
217
+ {ideas captured but out of scope for this quick task}
218
+
219
+ ## Code Context
220
+ {relevant code references from discussion, if any}
221
+ ```
222
+
223
+ Write to `${QUICK_DIR}/context.md`.
224
+ Report: "Context captured: ${QUICK_DIR}/context.md"
225
+
226
+ ---
227
+
228
+ ### Step 4.5: Load Project Specs
229
+
230
+ ```
231
+ specs_content = maestro spec load --category coding
232
+ ```
233
+
234
+ Passed inline to planner agent in Step 5.
235
+
236
+ ---
237
+
238
+ ### Step 5: Spawn Planner
239
+
240
+ **Spawn workflow-planner in quick mode:**
241
+
242
+ ```
243
+ Task(
244
+ prompt="
245
+ <planning_context>
246
+
247
+ **Mode:** ${FULL_MODE ? 'quick-full' : 'quick'}
248
+ **Directory:** ${QUICK_DIR}
249
+ **Description:** ${DESCRIPTION}
250
+
251
+ Read these files:
252
+ - .workflow/state.json (Project state)
253
+ - ./CLAUDE.md (Project instructions, if exists)
254
+
255
+ Project specs (pre-loaded in Step 4.5):
256
+ ${specs_content || 'No specs found.'}
257
+ ${DISCUSS_MODE ? '- ' + QUICK_DIR + '/context.md (User decisions -- locked)' : ''}
258
+
259
+ </planning_context>
260
+
261
+ <constraints>
262
+ - Create a SINGLE plan with 1-3 focused tasks
263
+ - Quick tasks should be atomic and self-contained
264
+ - No research phase
265
+ ${FULL_MODE ? '- Target ~40% context usage (structured for verification)' : '- Target ~30% context usage (simple, focused)'}
266
+ ${FULL_MODE ? '- Each task MUST have files, action, convergence.criteria, implementation fields' : ''}
267
+ </constraints>
268
+
269
+ <output>
270
+ Write plan to: ${QUICK_DIR}/plan.json
271
+ Write tasks to: ${QUICK_DIR}/.task/TASK-{NNN}.json
272
+ Return: ## PLANNING COMPLETE with plan path
273
+ </output>
274
+ ",
275
+ subagent_type="workflow-planner",
276
+ description="Quick plan: ${DESCRIPTION}"
277
+ )
278
+ ```
279
+
280
+ After planner returns:
281
+ 1. Verify plan.json exists at `${QUICK_DIR}/plan.json`
282
+ 2. Update index.json plan fields
283
+ 3. Report: "Plan created: ${QUICK_DIR}/plan.json"
284
+
285
+ If plan not found: "Planner failed to create plan.json"
286
+
287
+ ---
288
+
289
+ ### Step 6: Plan Checker (only when $FULL_MODE)
290
+
291
+ **Plan-checker loop:**
292
+
293
+ Skip entirely if NOT $FULL_MODE.
294
+
295
+ ```
296
+ ------------------------------------------------------------
297
+ WORKFLOW > CHECKING PLAN
298
+ ------------------------------------------------------------
299
+ Spawning plan checker...
300
+ ```
301
+
302
+ ```
303
+ Task(
304
+ prompt="
305
+ Verify quick task plan.
306
+
307
+ Read: ${QUICK_DIR}/plan.json and ${QUICK_DIR}/.task/TASK-*.json
308
+
309
+ Check dimensions:
310
+ - Requirement coverage: Does the plan address the task description?
311
+ - Task completeness: Do tasks have files, action, convergence.criteria, implementation?
312
+ - Scope sanity: Appropriately sized for quick task (1-3 tasks)?
313
+ ${DISCUSS_MODE ? '- Context compliance: Does plan honor decisions from context.md?' : ''}
314
+
315
+ Return one of:
316
+ - ## VERIFICATION PASSED
317
+ - ## ISSUES FOUND -- structured issue list
318
+ ",
319
+ subagent_type="workflow-plan-checker",
320
+ description="Check quick plan: ${DESCRIPTION}"
321
+ )
322
+ ```
323
+
324
+ **Handle checker return:**
325
+
326
+ - **VERIFICATION PASSED:** Continue to Step 7.
327
+ - **ISSUES FOUND:** Enter revision loop.
328
+
329
+ **Revision loop (max 2 iterations):**
330
+
331
+ If iteration_count < 2:
332
+ - Display: "Sending back to planner for revision... (iteration {N}/2)"
333
+ - Spawn planner with revision context + checker issues
334
+ - Re-check with checker
335
+ - Increment iteration_count
336
+
337
+ If iteration_count >= 2:
338
+ - Display: "Max iterations reached. {N} issues remain."
339
+ - Offer: 1) Force proceed, 2) Abort
340
+
341
+ ---
342
+
343
+ ### Step 7: Spawn Executor
344
+
345
+ **Spawn workflow-executor:**
346
+
347
+ ```
348
+ Task(
349
+ prompt="
350
+ Execute quick task.
351
+
352
+ Read:
353
+ - ${QUICK_DIR}/plan.json (Plan)
354
+ - ${QUICK_DIR}/.task/TASK-*.json (Tasks)
355
+ - .workflow/state.json (Project state)
356
+ - ./CLAUDE.md (Project instructions, if exists)
357
+
358
+ Constraints:
359
+ - Execute all tasks in the plan
360
+ - Commit each task atomically
361
+ - Create summary for each task at: ${QUICK_DIR}/.summaries/TASK-{NNN}-summary.md
362
+ ",
363
+ subagent_type="workflow-executor",
364
+ description="Execute: ${DESCRIPTION}"
365
+ )
366
+ ```
367
+
368
+ After executor returns:
369
+ 1. Verify summaries exist
370
+ 2. Update index.json execution fields
371
+ 3. Report completion status
372
+
373
+ ---
374
+
375
+ ### Step 8: Verification (only when $FULL_MODE)
376
+
377
+ **Post-execution verification:**
378
+
379
+ Skip entirely if NOT $FULL_MODE.
380
+
381
+ ```
382
+ ------------------------------------------------------------
383
+ WORKFLOW > VERIFYING RESULTS
384
+ ------------------------------------------------------------
385
+ Spawning verifier...
386
+ ```
387
+
388
+ ```
389
+ Task(
390
+ prompt="
391
+ Verify quick task goal achievement.
392
+ Task directory: ${QUICK_DIR}
393
+ Task goal: ${DESCRIPTION}
394
+
395
+ Read: ${QUICK_DIR}/plan.json and ${QUICK_DIR}/.summaries/
396
+
397
+ Check plan objectives against actual codebase.
398
+ Write verification result to: ${QUICK_DIR}/verification.json
399
+ ",
400
+ subagent_type="workflow-verifier",
401
+ description="Verify: ${DESCRIPTION}"
402
+ )
403
+ ```
404
+
405
+ Read verification result:
406
+ | Status | Action |
407
+ |--------|--------|
408
+ | passed | Store "Verified", continue |
409
+ | gaps_found | Display gaps, offer: 1) Re-run executor, 2) Accept as-is |
410
+
411
+ ---
412
+
413
+ ### Step 9: Update State
414
+
415
+ **Update state.json:**
416
+
417
+ Read state.json. Add quick task to accumulated_context or quick_tasks array.
418
+
419
+ Record:
420
+ ```json
421
+ {
422
+ "id": "quick-{slug}-{date}",
423
+ "description": "{$DESCRIPTION}",
424
+ "completed_at": "{ISO timestamp}",
425
+ "directory": "{$QUICK_DIR}",
426
+ "verified": {$FULL_MODE ? verification_status : "skipped"}
427
+ }
428
+ ```
429
+
430
+ Update last_updated timestamp.
431
+
432
+ ---
433
+
434
+ ### Step 10: Commit and Complete
435
+
436
+ **Final commit and completion:**
437
+
438
+ Update index.json status to "completed".
439
+
440
+ Commit quick task artifacts:
441
+ ```bash
442
+ git add "${QUICK_DIR}/" .workflow/state.json
443
+ git commit -m "quick({slug}): ${DESCRIPTION}"
444
+ ```
445
+
446
+ Display completion:
447
+
448
+ If $FULL_MODE:
449
+ ```
450
+ ------------------------------------------------------------
451
+ WORKFLOW > QUICK TASK COMPLETE (FULL MODE)
452
+ ------------------------------------------------------------
453
+
454
+ Quick Task: {$DESCRIPTION}
455
+
456
+ Summary: ${QUICK_DIR}/.summaries/
457
+ Verification: ${QUICK_DIR}/verification.json ({status})
458
+ Directory: ${QUICK_DIR}
459
+
460
+ ------------------------------------------------------------
461
+ Ready for next task: /workflow:quick
462
+ ```
463
+
464
+ If NOT $FULL_MODE:
465
+ ```
466
+ ------------------------------------------------------------
467
+ WORKFLOW > QUICK TASK COMPLETE
468
+ ------------------------------------------------------------
469
+
470
+ Quick Task: {$DESCRIPTION}
471
+
472
+ Summary: ${QUICK_DIR}/.summaries/
473
+ Directory: ${QUICK_DIR}
474
+
475
+ ------------------------------------------------------------
476
+ Ready for next task: /workflow:quick
477
+ ```
478
+
479
+ ---
480
+
481
+ ## Success Criteria
482
+
483
+ - [ ] --full and --discuss flags parsed from arguments when present
484
+ - [ ] Flags are composable (--discuss --full works)
485
+ - [ ] User provides task description (prompted if missing)
486
+ - [ ] Project validated (state.json exists)
487
+ - [ ] Scratch directory created at .workflow/scratch/quick-{slug}-{date}/
488
+ - [ ] index.json created in scratch dir
489
+ - [ ] (--discuss) Gray areas identified, decisions captured in context.md
490
+ - [ ] (--discuss) context.md honors "All clear" skip and "You decide" discretion
491
+ - [ ] plan.json + .task/TASK-*.json created by planner
492
+ - [ ] (--full) Plan checker validates plan, revision loop capped at 2
493
+ - [ ] .summaries/TASK-*-summary.md created by executor
494
+ - [ ] (--full) verification.json created by verifier
495
+ - [ ] state.json updated with quick task record
496
+ - [ ] Artifacts committed
497
+ - [ ] index.json status set to "completed"