claude-code-workflow 7.2.10 → 7.2.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 (331) hide show
  1. package/.claude/agents/cli-planning-agent.md +3 -0
  2. package/.claude/agents/debug-explore-agent.md +1 -0
  3. package/.claude/agents/tdd-developer.md +1 -0
  4. package/.claude/agents/team-worker.md +1 -1
  5. package/.claude/agents/test-action-planning-agent.md +3 -0
  6. package/.claude/agents/test-context-search-agent.md +1 -0
  7. package/.claude/agents/test-fix-agent.md +3 -0
  8. package/.claude/commands/workflow/analyze-with-file.md +108 -54
  9. package/.claude/commands/workflow-tune.md +811 -0
  10. package/.claude/skills/review-code/SKILL.md +2 -0
  11. package/.claude/skills/review-cycle/SKILL.md +4 -0
  12. package/.claude/skills/skill-simplify/phases/02-optimize.md +4 -0
  13. package/.claude/skills/spec-generator/phases/05-epics-stories.md +4 -0
  14. package/.claude/skills/team-arch-opt/specs/team-config.json +5 -5
  15. package/.claude/skills/team-frontend-debug/roles/analyzer/role.md +3 -2
  16. package/.claude/skills/team-perf-opt/roles/coordinator/commands/monitor.md +1 -1
  17. package/.claude/skills/team-perf-opt/specs/team-config.json +5 -5
  18. package/.claude/skills/team-quality-assurance/roles/executor/role.md +2 -1
  19. package/.claude/skills/team-review/roles/reviewer/role.md +2 -1
  20. package/.claude/skills/team-tech-debt/roles/scanner/role.md +2 -1
  21. package/.claude/skills/team-testing/roles/executor/role.md +2 -1
  22. package/.claude/skills/team-testing/roles/generator/role.md +2 -1
  23. package/.claude/skills/team-ultra-analyze/roles/explorer/role.md +2 -1
  24. package/.claude/skills/team-ux-improve/specs/team-config.json +6 -6
  25. package/.claude/skills/workflow-execute/phases/06-review.md +4 -4
  26. package/.claude/skills/workflow-lite-execute/SKILL.md +106 -14
  27. package/.claude/skills/workflow-lite-plan/SKILL.md +34 -72
  28. package/.claude/skills/workflow-lite-test-review/SKILL.md +41 -26
  29. package/.claude/skills/workflow-plan/phases/05-plan-verify.md +4 -0
  30. package/.claude/skills/workflow-tdd-plan/phases/02-context-gathering.md +1 -0
  31. package/.claude/skills/workflow-tdd-plan/phases/05-tdd-task-generation.md +2 -1
  32. package/.claude/skills/workflow-test-fix/phases/02-test-context-gather.md +1 -0
  33. package/.claude/skills/workflow-test-fix/phases/05-test-cycle-execute.md +2 -1
  34. package/.codex/skills/analyze-with-file/SKILL.md +2 -0
  35. package/.codex/skills/debug-with-file/SKILL.md +4 -0
  36. package/.codex/skills/issue-discover/SKILL.md +1 -0
  37. package/.codex/skills/review-cycle/phases/02-parallel-review.md +3 -0
  38. package/.codex/skills/team-designer/agents/validation-reporter.md +186 -0
  39. package/.codex/skills/team-iterdev/agents/gc-controller.md +193 -0
  40. package/.codex/skills/team-iterdev/agents/task-analyzer.md +206 -0
  41. package/.codex/skills/team-lifecycle-v4/agents/quality-gate.md +165 -0
  42. package/.codex/skills/team-lifecycle-v4/agents/requirement-clarifier.md +163 -0
  43. package/.codex/skills/team-lifecycle-v4/agents/supervisor.md +182 -0
  44. package/.codex/skills/team-uidesign/agents/completion-handler.md +177 -0
  45. package/.codex/skills/team-uidesign/agents/gc-loop-handler.md +162 -0
  46. package/.codex/skills/workflow-test-fix-cycle/phases/01-test-fix-gen.md +4 -0
  47. package/.codex/skills/workflow-test-fix-cycle/phases/02-test-cycle-execute.md +2 -0
  48. package/ccw/dist/commands/spec.d.ts.map +1 -1
  49. package/ccw/dist/commands/spec.js +9 -4
  50. package/ccw/dist/commands/spec.js.map +1 -1
  51. package/ccw/dist/core/routes/codexlens-routes.d.ts.map +1 -1
  52. package/ccw/dist/core/routes/codexlens-routes.js +3 -1
  53. package/ccw/dist/core/routes/codexlens-routes.js.map +1 -1
  54. package/ccw/dist/tools/spec-index-builder.d.ts +8 -4
  55. package/ccw/dist/tools/spec-index-builder.d.ts.map +1 -1
  56. package/ccw/dist/tools/spec-index-builder.js +8 -4
  57. package/ccw/dist/tools/spec-index-builder.js.map +1 -1
  58. package/ccw/dist/tools/spec-init.d.ts +1 -1
  59. package/ccw/dist/tools/spec-init.d.ts.map +1 -1
  60. package/ccw/dist/tools/spec-init.js +127 -0
  61. package/ccw/dist/tools/spec-init.js.map +1 -1
  62. package/ccw/dist/tools/spec-loader.d.ts.map +1 -1
  63. package/ccw/dist/tools/spec-loader.js +2 -1
  64. package/ccw/dist/tools/spec-loader.js.map +1 -1
  65. package/ccw/frontend/dist/assets/{AlertDialog-gTMl4gSG.js → AlertDialog-BW9jiZ-p.js} +2 -2
  66. package/ccw/frontend/dist/assets/{AlertDialog-gTMl4gSG.js.map → AlertDialog-BW9jiZ-p.js.map} +1 -1
  67. package/ccw/frontend/dist/assets/{AnalysisPage-Bc4p4SvJ.js → AnalysisPage-ds-w_nVO.js} +2 -2
  68. package/ccw/frontend/dist/assets/{AnalysisPage-Bc4p4SvJ.js.map → AnalysisPage-ds-w_nVO.js.map} +1 -1
  69. package/ccw/frontend/dist/assets/{ApiSettingsPage-CVK108u2.js → ApiSettingsPage-DlCbXxTz.js} +2 -2
  70. package/ccw/frontend/dist/assets/{ApiSettingsPage-CVK108u2.js.map → ApiSettingsPage-DlCbXxTz.js.map} +1 -1
  71. package/ccw/frontend/dist/assets/{CliModeToggle-34Sjwl05.js → CliModeToggle-Dq3nL4fF.js} +2 -2
  72. package/ccw/frontend/dist/assets/{CliModeToggle-34Sjwl05.js.map → CliModeToggle-Dq3nL4fF.js.map} +1 -1
  73. package/ccw/frontend/dist/assets/{CliSessionSharePage-bJZAYI38.js → CliSessionSharePage-BNDkEE4u.js} +2 -2
  74. package/ccw/frontend/dist/assets/{CliSessionSharePage-bJZAYI38.js.map → CliSessionSharePage-BNDkEE4u.js.map} +1 -1
  75. package/ccw/frontend/dist/assets/{CliViewerPage-VYnQGjxU.js → CliViewerPage-ChM-uNx_.js} +2 -2
  76. package/ccw/frontend/dist/assets/{CliViewerPage-VYnQGjxU.js.map → CliViewerPage-ChM-uNx_.js.map} +1 -1
  77. package/ccw/frontend/dist/assets/CodexLensPage-DOcsYNQk.js +2 -0
  78. package/ccw/frontend/dist/assets/CodexLensPage-DOcsYNQk.js.map +1 -0
  79. package/ccw/frontend/dist/assets/{Collapsible-B_xd1Qbg.js → Collapsible-CRNbykXN.js} +2 -2
  80. package/ccw/frontend/dist/assets/{Collapsible-B_xd1Qbg.js.map → Collapsible-CRNbykXN.js.map} +1 -1
  81. package/ccw/frontend/dist/assets/{CommandsManagerPage-Bjx1bPbH.js → CommandsManagerPage-C2JWcemF.js} +2 -2
  82. package/ccw/frontend/dist/assets/{CommandsManagerPage-Bjx1bPbH.js.map → CommandsManagerPage-C2JWcemF.js.map} +1 -1
  83. package/ccw/frontend/dist/assets/{DeepWikiPage-EgHsHvAH.js → DeepWikiPage-CvleOtJy.js} +2 -2
  84. package/ccw/frontend/dist/assets/{DeepWikiPage-EgHsHvAH.js.map → DeepWikiPage-CvleOtJy.js.map} +1 -1
  85. package/ccw/frontend/dist/assets/{EndpointsPage-CuwpbCzK.js → EndpointsPage-CMOWQG64.js} +2 -2
  86. package/ccw/frontend/dist/assets/{EndpointsPage-CuwpbCzK.js.map → EndpointsPage-CMOWQG64.js.map} +1 -1
  87. package/ccw/frontend/dist/assets/{ExplorerPage-cvlx0Zw0.js → ExplorerPage-DaFPRlNo.js} +2 -2
  88. package/ccw/frontend/dist/assets/{ExplorerPage-cvlx0Zw0.js.map → ExplorerPage-DaFPRlNo.js.map} +1 -1
  89. package/ccw/frontend/dist/assets/{FixSessionPage-C74-MPza.js → FixSessionPage-CC4p04Az.js} +2 -2
  90. package/ccw/frontend/dist/assets/{FixSessionPage-C74-MPza.js.map → FixSessionPage-CC4p04Az.js.map} +1 -1
  91. package/ccw/frontend/dist/assets/{FloatingFileBrowser-x_-6y_n2.js → FloatingFileBrowser-DROn1xZ5.js} +2 -2
  92. package/ccw/frontend/dist/assets/{FloatingFileBrowser-x_-6y_n2.js.map → FloatingFileBrowser-DROn1xZ5.js.map} +1 -1
  93. package/ccw/frontend/dist/assets/{FloatingPanel-BGwmbJR1.js → FloatingPanel-CmL_yhDv.js} +2 -2
  94. package/ccw/frontend/dist/assets/{FloatingPanel-BGwmbJR1.js.map → FloatingPanel-CmL_yhDv.js.map} +1 -1
  95. package/ccw/frontend/dist/assets/{GraphExplorerPage-Bg5-aQxi.js → GraphExplorerPage-DCV5ybKE.js} +2 -2
  96. package/ccw/frontend/dist/assets/{GraphExplorerPage-Bg5-aQxi.js.map → GraphExplorerPage-DCV5ybKE.js.map} +1 -1
  97. package/ccw/frontend/dist/assets/{HistoryPage-C00fh0HE.js → HistoryPage-D0fYQZgc.js} +2 -2
  98. package/ccw/frontend/dist/assets/{HistoryPage-C00fh0HE.js.map → HistoryPage-D0fYQZgc.js.map} +1 -1
  99. package/ccw/frontend/dist/assets/{HookManagerPage-CtVTB_ae.js → HookManagerPage-D2FuJfsM.js} +2 -2
  100. package/ccw/frontend/dist/assets/{HookManagerPage-CtVTB_ae.js.map → HookManagerPage-D2FuJfsM.js.map} +1 -1
  101. package/ccw/frontend/dist/assets/{InstallationsPage-CYuMQDbC.js → InstallationsPage-tjklillZ.js} +2 -2
  102. package/ccw/frontend/dist/assets/{InstallationsPage-CYuMQDbC.js.map → InstallationsPage-tjklillZ.js.map} +1 -1
  103. package/ccw/frontend/dist/assets/{IssueHubPage-T_VSvUMh.js → IssueHubPage-E4JVrhO1.js} +2 -2
  104. package/ccw/frontend/dist/assets/{IssueHubPage-T_VSvUMh.js.map → IssueHubPage-E4JVrhO1.js.map} +1 -1
  105. package/ccw/frontend/dist/assets/{LiteTasksPage-DmcgvIvi.js → LiteTasksPage-aJuRoyLt.js} +2 -2
  106. package/ccw/frontend/dist/assets/{LiteTasksPage-DmcgvIvi.js.map → LiteTasksPage-aJuRoyLt.js.map} +1 -1
  107. package/ccw/frontend/dist/assets/{McpManagerPage-C_a7QSKz.js → McpManagerPage-BJeuWJv1.js} +2 -2
  108. package/ccw/frontend/dist/assets/{McpManagerPage-C_a7QSKz.js.map → McpManagerPage-BJeuWJv1.js.map} +1 -1
  109. package/ccw/frontend/dist/assets/{MemoryPage-CWKmXY5k.js → MemoryPage-BI4FAXhs.js} +2 -2
  110. package/ccw/frontend/dist/assets/{MemoryPage-CWKmXY5k.js.map → MemoryPage-BI4FAXhs.js.map} +1 -1
  111. package/ccw/frontend/dist/assets/{NotFoundPage-B1duXK6r.js → NotFoundPage-DD2svchp.js} +2 -2
  112. package/ccw/frontend/dist/assets/{NotFoundPage-B1duXK6r.js.map → NotFoundPage-DD2svchp.js.map} +1 -1
  113. package/ccw/frontend/dist/assets/{OrchestratorPage-Ib9TM6HE.js → OrchestratorPage-FC__7yYa.js} +2 -2
  114. package/ccw/frontend/dist/assets/{OrchestratorPage-Ib9TM6HE.js.map → OrchestratorPage-FC__7yYa.js.map} +1 -1
  115. package/ccw/frontend/dist/assets/{ProjectOverviewPage-sXSWMbF8.js → ProjectOverviewPage-DBB_-FzV.js} +2 -2
  116. package/ccw/frontend/dist/assets/{ProjectOverviewPage-sXSWMbF8.js.map → ProjectOverviewPage-DBB_-FzV.js.map} +1 -1
  117. package/ccw/frontend/dist/assets/{PromptHistoryPage-B6jaqG12.js → PromptHistoryPage-BwOAvCH8.js} +2 -2
  118. package/ccw/frontend/dist/assets/{PromptHistoryPage-B6jaqG12.js.map → PromptHistoryPage-BwOAvCH8.js.map} +1 -1
  119. package/ccw/frontend/dist/assets/{ReviewSessionPage-D5qJyr3s.js → ReviewSessionPage-Dd1-g_gp.js} +2 -2
  120. package/ccw/frontend/dist/assets/{ReviewSessionPage-D5qJyr3s.js.map → ReviewSessionPage-Dd1-g_gp.js.map} +1 -1
  121. package/ccw/frontend/dist/assets/{RulesManagerPage-DyawK8QE.js → RulesManagerPage-B3RGdsKD.js} +2 -2
  122. package/ccw/frontend/dist/assets/{RulesManagerPage-DyawK8QE.js.map → RulesManagerPage-B3RGdsKD.js.map} +1 -1
  123. package/ccw/frontend/dist/assets/{SessionDetailPage-Cym_RvC9.js → SessionDetailPage-DM-W5R8K.js} +2 -2
  124. package/ccw/frontend/dist/assets/{SessionDetailPage-Cym_RvC9.js.map → SessionDetailPage-DM-W5R8K.js.map} +1 -1
  125. package/ccw/frontend/dist/assets/{SessionsPage-Dkc1Hv8W.js → SessionsPage-BVz1KCc7.js} +2 -2
  126. package/ccw/frontend/dist/assets/{SessionsPage-Dkc1Hv8W.js.map → SessionsPage-BVz1KCc7.js.map} +1 -1
  127. package/ccw/frontend/dist/assets/{SettingsPage-Rik9cUIj.js → SettingsPage-ComW7EZS.js} +4 -4
  128. package/ccw/frontend/dist/assets/{SettingsPage-Rik9cUIj.js.map → SettingsPage-ComW7EZS.js.map} +1 -1
  129. package/ccw/frontend/dist/assets/{SkillsManagerPage-BGDWYAyI.js → SkillsManagerPage-CKom9XwV.js} +2 -2
  130. package/ccw/frontend/dist/assets/{SkillsManagerPage-BGDWYAyI.js.map → SkillsManagerPage-CKom9XwV.js.map} +1 -1
  131. package/ccw/frontend/dist/assets/{SpecsSettingsPage-CTiA1DMP.js → SpecsSettingsPage-DQz7WP2s.js} +2 -2
  132. package/ccw/frontend/dist/assets/{SpecsSettingsPage-CTiA1DMP.js.map → SpecsSettingsPage-DQz7WP2s.js.map} +1 -1
  133. package/ccw/frontend/dist/assets/{Switch-BgAFC-Wk.js → Switch-BPMdND9H.js} +2 -2
  134. package/ccw/frontend/dist/assets/{Switch-BgAFC-Wk.js.map → Switch-BPMdND9H.js.map} +1 -1
  135. package/ccw/frontend/dist/assets/{TabsNavigation-drSnu5jn.js → TabsNavigation-qqt70VYL.js} +2 -2
  136. package/ccw/frontend/dist/assets/{TabsNavigation-drSnu5jn.js.map → TabsNavigation-qqt70VYL.js.map} +1 -1
  137. package/ccw/frontend/dist/assets/{TaskDrawer-ePC__6-P.js → TaskDrawer-BqK_qiHX.js} +2 -2
  138. package/ccw/frontend/dist/assets/{TaskDrawer-ePC__6-P.js.map → TaskDrawer-BqK_qiHX.js.map} +1 -1
  139. package/ccw/frontend/dist/assets/{TeamPage-C6bdFWn8.js → TeamPage-u5_i0Rgh.js} +2 -2
  140. package/ccw/frontend/dist/assets/{TeamPage-C6bdFWn8.js.map → TeamPage-u5_i0Rgh.js.map} +1 -1
  141. package/ccw/frontend/dist/assets/{TerminalDashboardPage-Zofi_DZM.js → TerminalDashboardPage-rUtC9e40.js} +2 -2
  142. package/ccw/frontend/dist/assets/{TerminalDashboardPage-Zofi_DZM.js.map → TerminalDashboardPage-rUtC9e40.js.map} +1 -1
  143. package/ccw/frontend/dist/assets/{archive-Bza1KlB9.js → archive-C3u8YNQF.js} +2 -2
  144. package/ccw/frontend/dist/assets/{archive-Bza1KlB9.js.map → archive-C3u8YNQF.js.map} +1 -1
  145. package/ccw/frontend/dist/assets/{archive-restore-CpsDm-cG.js → archive-restore-DfQ998g5.js} +2 -2
  146. package/ccw/frontend/dist/assets/{archive-restore-CpsDm-cG.js.map → archive-restore-DfQ998g5.js.map} +1 -1
  147. package/ccw/frontend/dist/assets/{arrow-right-CibG_LVO.js → arrow-right-BshJM9Po.js} +2 -2
  148. package/ccw/frontend/dist/assets/{arrow-right-CibG_LVO.js.map → arrow-right-BshJM9Po.js.map} +1 -1
  149. package/ccw/frontend/dist/assets/{bookmark-plus-BheO8EgG.js → bookmark-plus-D03qJyOZ.js} +2 -2
  150. package/ccw/frontend/dist/assets/{bookmark-plus-BheO8EgG.js.map → bookmark-plus-D03qJyOZ.js.map} +1 -1
  151. package/ccw/frontend/dist/assets/{bot-BlhM0Nl0.js → bot-CyzWuwq0.js} +2 -2
  152. package/ccw/frontend/dist/assets/{bot-BlhM0Nl0.js.map → bot-CyzWuwq0.js.map} +1 -1
  153. package/ccw/frontend/dist/assets/{braces-Dqjg_eCO.js → braces-BPgtyjsG.js} +2 -2
  154. package/ccw/frontend/dist/assets/{braces-Dqjg_eCO.js.map → braces-BPgtyjsG.js.map} +1 -1
  155. package/ccw/frontend/dist/assets/{circle-stop-DYZSLYU0.js → circle-stop-Dix1AOmw.js} +2 -2
  156. package/ccw/frontend/dist/assets/{circle-stop-DYZSLYU0.js.map → circle-stop-Dix1AOmw.js.map} +1 -1
  157. package/ccw/frontend/dist/assets/{cpu-DWCyAOAv.js → cpu-CCQ4Q0Zh.js} +2 -2
  158. package/ccw/frontend/dist/assets/{cpu-DWCyAOAv.js.map → cpu-CCQ4Q0Zh.js.map} +1 -1
  159. package/ccw/frontend/dist/assets/{ellipsis-vertical-DIyoSEHx.js → ellipsis-vertical-BpTysg-Y.js} +2 -2
  160. package/ccw/frontend/dist/assets/{ellipsis-vertical-DIyoSEHx.js.map → ellipsis-vertical-BpTysg-Y.js.map} +1 -1
  161. package/ccw/frontend/dist/assets/{eye-DUy7aLEx.js → eye-DGY1rAZs.js} +2 -2
  162. package/ccw/frontend/dist/assets/{eye-DUy7aLEx.js.map → eye-DGY1rAZs.js.map} +1 -1
  163. package/ccw/frontend/dist/assets/{eye-off-CGRUVRDR.js → eye-off-D8t3JfWG.js} +2 -2
  164. package/ccw/frontend/dist/assets/{eye-off-CGRUVRDR.js.map → eye-off-D8t3JfWG.js.map} +1 -1
  165. package/ccw/frontend/dist/assets/{file-json-BxLBtU9d.js → file-json-BAdJb0n8.js} +2 -2
  166. package/ccw/frontend/dist/assets/{file-json-BxLBtU9d.js.map → file-json-BAdJb0n8.js.map} +1 -1
  167. package/ccw/frontend/dist/assets/{file-text-BoHsW2es.js → file-text-DrJFiOUB.js} +2 -2
  168. package/ccw/frontend/dist/assets/{file-text-BoHsW2es.js.map → file-text-DrJFiOUB.js.map} +1 -1
  169. package/ccw/frontend/dist/assets/{filter-B4vOqP6B.js → filter-CKqzYbz7.js} +2 -2
  170. package/ccw/frontend/dist/assets/{filter-B4vOqP6B.js.map → filter-CKqzYbz7.js.map} +1 -1
  171. package/ccw/frontend/dist/assets/{folder-BKhwCNFG.js → folder-CV8511y9.js} +2 -2
  172. package/ccw/frontend/dist/assets/{folder-BKhwCNFG.js.map → folder-CV8511y9.js.map} +1 -1
  173. package/ccw/frontend/dist/assets/{gauge-Dgf64gkT.js → gauge-XKvmu_uU.js} +2 -2
  174. package/ccw/frontend/dist/assets/{gauge-Dgf64gkT.js.map → gauge-XKvmu_uU.js.map} +1 -1
  175. package/ccw/frontend/dist/assets/{globe-Cus_S6Ux.js → globe-C56cDUzX.js} +2 -2
  176. package/ccw/frontend/dist/assets/{globe-Cus_S6Ux.js.map → globe-C56cDUzX.js.map} +1 -1
  177. package/ccw/frontend/dist/assets/{grid-3x3-DM08hpAN.js → grid-3x3-Bya-suFW.js} +2 -2
  178. package/ccw/frontend/dist/assets/{grid-3x3-DM08hpAN.js.map → grid-3x3-Bya-suFW.js.map} +1 -1
  179. package/ccw/frontend/dist/assets/{hard-drive-eCtll84F.js → hard-drive-CmuTZpsB.js} +2 -2
  180. package/ccw/frontend/dist/assets/{hard-drive-eCtll84F.js.map → hard-drive-CmuTZpsB.js.map} +1 -1
  181. package/ccw/frontend/dist/assets/{hash-Bd1RD285.js → hash-CRPT_tJQ.js} +2 -2
  182. package/ccw/frontend/dist/assets/{hash-Bd1RD285.js.map → hash-CRPT_tJQ.js.map} +1 -1
  183. package/ccw/frontend/dist/assets/{history-eyyCQA6b.js → history-C1pJZQCL.js} +2 -2
  184. package/ccw/frontend/dist/assets/{history-eyyCQA6b.js.map → history-C1pJZQCL.js.map} +1 -1
  185. package/ccw/frontend/dist/assets/{index-ZnmWxcZg.js → index-B6TpijCe.js} +2 -2
  186. package/ccw/frontend/dist/assets/{index-ZnmWxcZg.js.map → index-B6TpijCe.js.map} +1 -1
  187. package/ccw/frontend/dist/assets/{index-b2C0iFd1.js → index-Bcq-7r6F.js} +2 -2
  188. package/ccw/frontend/dist/assets/{index-b2C0iFd1.js.map → index-Bcq-7r6F.js.map} +1 -1
  189. package/ccw/frontend/dist/assets/{index-Cs2ShCCy.js → index-CI8-rBff.js} +2 -2
  190. package/ccw/frontend/dist/assets/{index-Cs2ShCCy.js.map → index-CI8-rBff.js.map} +1 -1
  191. package/ccw/frontend/dist/assets/{index-CY6Lueph.js → index-Dmt9OiEf.js} +2 -2
  192. package/ccw/frontend/dist/assets/{index-CY6Lueph.js.map → index-Dmt9OiEf.js.map} +1 -1
  193. package/ccw/frontend/dist/assets/{index-DfeBbFXo.js → index-anSMmEF8.js} +2 -2
  194. package/ccw/frontend/dist/assets/{index-DfeBbFXo.js.map → index-anSMmEF8.js.map} +1 -1
  195. package/ccw/frontend/dist/assets/{index-B6I7GQC5.js → index-dWT2M6Ef.js} +4 -4
  196. package/ccw/frontend/dist/assets/{index-B6I7GQC5.js.map → index-dWT2M6Ef.js.map} +1 -1
  197. package/ccw/frontend/dist/assets/{layout-grid-ChrTrCby.js → layout-grid-TSO0BFQE.js} +2 -2
  198. package/ccw/frontend/dist/assets/{layout-grid-ChrTrCby.js.map → layout-grid-TSO0BFQE.js.map} +1 -1
  199. package/ccw/frontend/dist/assets/{lightbulb-CvXiTlzN.js → lightbulb-Caj6fIQD.js} +2 -2
  200. package/ccw/frontend/dist/assets/{lightbulb-CvXiTlzN.js.map → lightbulb-Caj6fIQD.js.map} +1 -1
  201. package/ccw/frontend/dist/assets/{link-2-W0Nl17ec.js → link-2-DE9lMxa-.js} +2 -2
  202. package/ccw/frontend/dist/assets/{link-2-W0Nl17ec.js.map → link-2-DE9lMxa-.js.map} +1 -1
  203. package/ccw/frontend/dist/assets/{link-CL4JmoHb.js → link-BZtPgLW0.js} +2 -2
  204. package/ccw/frontend/dist/assets/{link-CL4JmoHb.js.map → link-BZtPgLW0.js.map} +1 -1
  205. package/ccw/frontend/dist/assets/{list-CDmYFcio.js → list-DubWyY-U.js} +2 -2
  206. package/ccw/frontend/dist/assets/{list-CDmYFcio.js.map → list-DubWyY-U.js.map} +1 -1
  207. package/ccw/frontend/dist/assets/{map-pin-0Mfsw_3d.js → map-pin-DwN_48AF.js} +2 -2
  208. package/ccw/frontend/dist/assets/{map-pin-0Mfsw_3d.js.map → map-pin-DwN_48AF.js.map} +1 -1
  209. package/ccw/frontend/dist/assets/{messages-square-C6h08ple.js → messages-square-bjxvaiM9.js} +2 -2
  210. package/ccw/frontend/dist/assets/{messages-square-C6h08ple.js.map → messages-square-bjxvaiM9.js.map} +1 -1
  211. package/ccw/frontend/dist/assets/{minimize-2-Cbu2yRzi.js → minimize-2-CGfBKD_V.js} +2 -2
  212. package/ccw/frontend/dist/assets/{minimize-2-Cbu2yRzi.js.map → minimize-2-CGfBKD_V.js.map} +1 -1
  213. package/ccw/frontend/dist/assets/{package-CoLVUZGJ.js → package-nzWY6ilt.js} +2 -2
  214. package/ccw/frontend/dist/assets/{package-CoLVUZGJ.js.map → package-nzWY6ilt.js.map} +1 -1
  215. package/ccw/frontend/dist/assets/{plug-BYTYqsw1.js → plug-CiLce49C.js} +2 -2
  216. package/ccw/frontend/dist/assets/{plug-BYTYqsw1.js.map → plug-CiLce49C.js.map} +1 -1
  217. package/ccw/frontend/dist/assets/{power-DmIojFl-.js → power-CFLmB-U9.js} +2 -2
  218. package/ccw/frontend/dist/assets/{power-DmIojFl-.js.map → power-CFLmB-U9.js.map} +1 -1
  219. package/ccw/frontend/dist/assets/{save-BFa03OnG.js → save-DuO6OF0C.js} +2 -2
  220. package/ccw/frontend/dist/assets/{save-BFa03OnG.js.map → save-DuO6OF0C.js.map} +1 -1
  221. package/ccw/frontend/dist/assets/{send-Vet3sN4J.js → send-CZk9p0mM.js} +2 -2
  222. package/ccw/frontend/dist/assets/{send-Vet3sN4J.js.map → send-CZk9p0mM.js.map} +1 -1
  223. package/ccw/frontend/dist/assets/{square-check-big-B9nzZRfE.js → square-check-big-BY_1YQQg.js} +2 -2
  224. package/ccw/frontend/dist/assets/{square-check-big-B9nzZRfE.js.map → square-check-big-BY_1YQQg.js.map} +1 -1
  225. package/ccw/frontend/dist/assets/{square-pen-C7K13x4Z.js → square-pen-CnZgm6g-.js} +2 -2
  226. package/ccw/frontend/dist/assets/{square-pen-C7K13x4Z.js.map → square-pen-CnZgm6g-.js.map} +1 -1
  227. package/ccw/frontend/dist/assets/{star-BCQHcnSe.js → star-Cn1F0qy7.js} +2 -2
  228. package/ccw/frontend/dist/assets/{star-BCQHcnSe.js.map → star-Cn1F0qy7.js.map} +1 -1
  229. package/ccw/frontend/dist/assets/{style-CJsrp48L.js → style-Dxs1iXCV.js} +2 -2
  230. package/ccw/frontend/dist/assets/{style-CJsrp48L.js.map → style-Dxs1iXCV.js.map} +1 -1
  231. package/ccw/frontend/dist/assets/{target-CBzCJCB1.js → target-Bz1fLRKH.js} +2 -2
  232. package/ccw/frontend/dist/assets/{target-CBzCJCB1.js.map → target-Bz1fLRKH.js.map} +1 -1
  233. package/ccw/frontend/dist/assets/{test-tube-BYTc5mvQ.js → test-tube-C6qCYlDr.js} +2 -2
  234. package/ccw/frontend/dist/assets/{test-tube-BYTc5mvQ.js.map → test-tube-C6qCYlDr.js.map} +1 -1
  235. package/ccw/frontend/dist/assets/{upload-DzyQj7ib.js → upload-C71kd4Qs.js} +2 -2
  236. package/ccw/frontend/dist/assets/{upload-DzyQj7ib.js.map → upload-C71kd4Qs.js.map} +1 -1
  237. package/ccw/frontend/dist/assets/{useApiSettings-CFPww7gU.js → useApiSettings-CqP2BAJ7.js} +2 -2
  238. package/ccw/frontend/dist/assets/{useApiSettings-CFPww7gU.js.map → useApiSettings-CqP2BAJ7.js.map} +1 -1
  239. package/ccw/frontend/dist/assets/{useCli-ByL_a5CD.js → useCli-PCoPoVeM.js} +2 -2
  240. package/ccw/frontend/dist/assets/{useCli-ByL_a5CD.js.map → useCli-PCoPoVeM.js.map} +1 -1
  241. package/ccw/frontend/dist/assets/{useCommands-BvKIoOzB.js → useCommands-3OfPQPw4.js} +2 -2
  242. package/ccw/frontend/dist/assets/{useCommands-BvKIoOzB.js.map → useCommands-3OfPQPw4.js.map} +1 -1
  243. package/ccw/frontend/dist/assets/{useDebounce-CmKmoP7n.js → useDebounce-bXiFhQx9.js} +2 -2
  244. package/ccw/frontend/dist/assets/{useDebounce-CmKmoP7n.js.map → useDebounce-bXiFhQx9.js.map} +1 -1
  245. package/ccw/frontend/dist/assets/{useFileExplorer-G5UoArCU.js → useFileExplorer-DEyUm46_.js} +2 -2
  246. package/ccw/frontend/dist/assets/{useFileExplorer-G5UoArCU.js.map → useFileExplorer-DEyUm46_.js.map} +1 -1
  247. package/ccw/frontend/dist/assets/{useLocale-D2iHK44M.js → useLocale-sXTrdxcJ.js} +2 -2
  248. package/ccw/frontend/dist/assets/{useLocale-D2iHK44M.js.map → useLocale-sXTrdxcJ.js.map} +1 -1
  249. package/ccw/frontend/dist/assets/{useSkills-CYU4zqhm.js → useSkills-D0W0kXYm.js} +3 -3
  250. package/ccw/frontend/dist/assets/{useSkills-CYU4zqhm.js.map → useSkills-D0W0kXYm.js.map} +1 -1
  251. package/ccw/frontend/dist/assets/{useSystemSettings-JznNpij7.js → useSystemSettings-DZ-8lZsG.js} +2 -2
  252. package/ccw/frontend/dist/assets/{useSystemSettings-JznNpij7.js.map → useSystemSettings-DZ-8lZsG.js.map} +1 -1
  253. package/ccw/frontend/dist/assets/{wand-sparkles-DqS0VCeN.js → wand-sparkles-83GmAYuw.js} +2 -2
  254. package/ccw/frontend/dist/assets/{wand-sparkles-DqS0VCeN.js.map → wand-sparkles-83GmAYuw.js.map} +1 -1
  255. package/ccw/frontend/dist/index.html +1 -1
  256. package/package.json +1 -1
  257. package/.claude/commands/ddd/auto.md +0 -359
  258. package/.claude/commands/ddd/doc-generate.md +0 -222
  259. package/.claude/commands/ddd/doc-refresh.md +0 -218
  260. package/.claude/commands/ddd/execute.md +0 -416
  261. package/.claude/commands/ddd/index-build.md +0 -212
  262. package/.claude/commands/ddd/plan.md +0 -611
  263. package/.claude/commands/ddd/scan.md +0 -365
  264. package/.claude/commands/ddd/sync.md +0 -353
  265. package/.claude/commands/ddd/update.md +0 -160
  266. package/.claude/commands/idaw/add.md +0 -287
  267. package/.claude/commands/idaw/resume.md +0 -442
  268. package/.claude/commands/idaw/run-coordinate.md +0 -648
  269. package/.claude/commands/idaw/run.md +0 -539
  270. package/.claude/commands/idaw/status.md +0 -182
  271. package/.claude/skills/team-arch-opt/role-specs/analyzer.md +0 -80
  272. package/.claude/skills/team-arch-opt/role-specs/designer.md +0 -118
  273. package/.claude/skills/team-arch-opt/role-specs/refactorer.md +0 -106
  274. package/.claude/skills/team-arch-opt/role-specs/reviewer.md +0 -116
  275. package/.claude/skills/team-arch-opt/role-specs/validator.md +0 -117
  276. package/.claude/skills/team-brainstorm/role-specs/challenger.md +0 -63
  277. package/.claude/skills/team-brainstorm/role-specs/evaluator.md +0 -58
  278. package/.claude/skills/team-brainstorm/role-specs/ideator.md +0 -71
  279. package/.claude/skills/team-brainstorm/role-specs/synthesizer.md +0 -59
  280. package/.claude/skills/team-frontend/role-specs/analyst.md +0 -91
  281. package/.claude/skills/team-frontend/role-specs/architect.md +0 -85
  282. package/.claude/skills/team-frontend/role-specs/developer.md +0 -92
  283. package/.claude/skills/team-frontend/role-specs/qa.md +0 -78
  284. package/.claude/skills/team-issue/role-specs/explorer.md +0 -95
  285. package/.claude/skills/team-issue/role-specs/implementer.md +0 -89
  286. package/.claude/skills/team-issue/role-specs/integrator.md +0 -86
  287. package/.claude/skills/team-issue/role-specs/planner.md +0 -83
  288. package/.claude/skills/team-issue/role-specs/reviewer.md +0 -89
  289. package/.claude/skills/team-iterdev/role-specs/architect.md +0 -64
  290. package/.claude/skills/team-iterdev/role-specs/developer.md +0 -73
  291. package/.claude/skills/team-iterdev/role-specs/reviewer.md +0 -65
  292. package/.claude/skills/team-iterdev/role-specs/tester.md +0 -87
  293. package/.claude/skills/team-perf-opt/role-specs/benchmarker.md +0 -110
  294. package/.claude/skills/team-perf-opt/role-specs/optimizer.md +0 -102
  295. package/.claude/skills/team-perf-opt/role-specs/profiler.md +0 -73
  296. package/.claude/skills/team-perf-opt/role-specs/reviewer.md +0 -91
  297. package/.claude/skills/team-perf-opt/role-specs/strategist.md +0 -114
  298. package/.claude/skills/team-planex/role-specs/executor.md +0 -90
  299. package/.claude/skills/team-planex/role-specs/planner.md +0 -110
  300. package/.claude/skills/team-quality-assurance/role-specs/analyst.md +0 -79
  301. package/.claude/skills/team-quality-assurance/role-specs/executor.md +0 -64
  302. package/.claude/skills/team-quality-assurance/role-specs/generator.md +0 -67
  303. package/.claude/skills/team-quality-assurance/role-specs/scout.md +0 -66
  304. package/.claude/skills/team-quality-assurance/role-specs/strategist.md +0 -70
  305. package/.claude/skills/team-review/role-specs/fixer.md +0 -75
  306. package/.claude/skills/team-review/role-specs/reviewer.md +0 -66
  307. package/.claude/skills/team-review/role-specs/scanner.md +0 -70
  308. package/.claude/skills/team-roadmap-dev/role-specs/executor.md +0 -71
  309. package/.claude/skills/team-roadmap-dev/role-specs/planner.md +0 -77
  310. package/.claude/skills/team-roadmap-dev/role-specs/verifier.md +0 -73
  311. package/.claude/skills/team-tech-debt/role-specs/assessor.md +0 -70
  312. package/.claude/skills/team-tech-debt/role-specs/executor.md +0 -80
  313. package/.claude/skills/team-tech-debt/role-specs/planner.md +0 -71
  314. package/.claude/skills/team-tech-debt/role-specs/scanner.md +0 -85
  315. package/.claude/skills/team-tech-debt/role-specs/validator.md +0 -83
  316. package/.claude/skills/team-testing/role-specs/analyst.md +0 -94
  317. package/.claude/skills/team-testing/role-specs/executor.md +0 -97
  318. package/.claude/skills/team-testing/role-specs/generator.md +0 -96
  319. package/.claude/skills/team-testing/role-specs/strategist.md +0 -82
  320. package/.claude/skills/team-uidesign/role-specs/designer.md +0 -72
  321. package/.claude/skills/team-uidesign/role-specs/implementer.md +0 -74
  322. package/.claude/skills/team-uidesign/role-specs/researcher.md +0 -84
  323. package/.claude/skills/team-uidesign/role-specs/reviewer.md +0 -70
  324. package/.claude/skills/team-ux-improve/role-specs/designer.md +0 -191
  325. package/.claude/skills/team-ux-improve/role-specs/diagnoser.md +0 -110
  326. package/.claude/skills/team-ux-improve/role-specs/explorer.md +0 -109
  327. package/.claude/skills/team-ux-improve/role-specs/implementer.md +0 -164
  328. package/.claude/skills/team-ux-improve/role-specs/scanner.md +0 -117
  329. package/.claude/skills/team-ux-improve/role-specs/tester.md +0 -163
  330. package/ccw/frontend/dist/assets/CodexLensPage-My6DnfN6.js +0 -2
  331. package/ccw/frontend/dist/assets/CodexLensPage-My6DnfN6.js.map +0 -1
@@ -0,0 +1,193 @@
1
+ # GC Controller Agent
2
+
3
+ Evaluate review severity after REVIEW wave and decide whether to trigger a DEV-fix iteration or converge the pipeline.
4
+
5
+ ## Identity
6
+
7
+ - **Type**: `interactive`
8
+ - **Role File**: `agents/gc-controller.md`
9
+ - **Responsibility**: Evaluate review severity, decide DEV-fix vs convergence
10
+
11
+ ## Boundaries
12
+
13
+ ### MUST
14
+
15
+ - Load role definition via MANDATORY FIRST STEPS pattern
16
+ - Load review results from completed REVIEW tasks
17
+ - Evaluate gc_signal and review_score to determine decision
18
+ - Respect max iteration count to prevent infinite loops
19
+ - Produce structured output with clear CONVERGE/FIX/ESCALATE decision
20
+
21
+ ### MUST NOT
22
+
23
+ - Skip the MANDATORY FIRST STEPS role loading
24
+ - Modify source code directly
25
+ - Produce unstructured output
26
+ - Exceed max iteration count without escalating
27
+ - Ignore Critical findings in review results
28
+
29
+ ---
30
+
31
+ ## Toolbox
32
+
33
+ ### Available Tools
34
+
35
+ | Tool | Type | Purpose |
36
+ |------|------|---------|
37
+ | `Read` | builtin | Load review results and session state |
38
+ | `Write` | builtin | Create FIX task definitions for next wave |
39
+ | `Bash` | builtin | Query session state, count iterations |
40
+
41
+ ### Tool Usage Patterns
42
+
43
+ **Read Pattern**: Load review results
44
+ ```
45
+ Read("{session_folder}/artifacts/review-results.json")
46
+ Read("{session_folder}/session-state.json")
47
+ ```
48
+
49
+ **Write Pattern**: Create FIX tasks for next iteration
50
+ ```
51
+ Write("{session_folder}/tasks/FIX-<iteration>-<N>.json", <task>)
52
+ ```
53
+
54
+ ---
55
+
56
+ ## Execution
57
+
58
+ ### Phase 1: Review Loading
59
+
60
+ **Objective**: Load review results from completed REVIEW tasks.
61
+
62
+ **Input**:
63
+
64
+ | Source | Required | Description |
65
+ |--------|----------|-------------|
66
+ | Review results | Yes | review_score, gc_signal, findings from REVIEW tasks |
67
+ | Session state | Yes | Current iteration count, max iterations |
68
+ | Task analysis | No | Original task-analysis.json for context |
69
+
70
+ **Steps**:
71
+
72
+ 1. Read review results from session artifacts (review_score, gc_signal, findings)
73
+ 2. Read session state to determine current iteration number
74
+ 3. Read max_iterations from task-analysis.json or default to 3
75
+
76
+ **Output**: Loaded review context with iteration state
77
+
78
+ ---
79
+
80
+ ### Phase 2: Severity Evaluation
81
+
82
+ **Objective**: Evaluate review severity and determine pipeline decision.
83
+
84
+ **Steps**:
85
+
86
+ 1. **Signal evaluation**:
87
+
88
+ | gc_signal | review_score | Iteration | Decision |
89
+ |-----------|-------------|-----------|----------|
90
+ | CONVERGED | >= 7 | Any | CONVERGE |
91
+ | CONVERGED | < 7 | Any | CONVERGE (score noted) |
92
+ | REVISION_NEEDED | >= 7 | Any | CONVERGE (minor issues) |
93
+ | REVISION_NEEDED | < 7 | < max | FIX |
94
+ | REVISION_NEEDED | < 7 | >= max | ESCALATE |
95
+
96
+ 2. **Finding analysis** (when FIX decision):
97
+ - Group findings by severity (Critical, High, Medium, Low)
98
+ - Critical or High findings drive FIX task creation
99
+ - Medium and Low findings are noted but do not block convergence alone
100
+
101
+ 3. **Iteration guard**:
102
+ - Track current iteration count
103
+ - If iteration >= max_iterations (default 3): force ESCALATE regardless of score
104
+ - Include iteration history in decision reasoning
105
+
106
+ **Output**: GC decision with reasoning
107
+
108
+ ---
109
+
110
+ ### Phase 3: Decision Execution
111
+
112
+ **Objective**: Execute the GC decision.
113
+
114
+ | Decision | Action |
115
+ |----------|--------|
116
+ | CONVERGE | Report pipeline complete, no further iterations needed |
117
+ | FIX | Create FIX task definitions targeting specific findings |
118
+ | ESCALATE | Report to user with iteration history and unresolved findings |
119
+
120
+ **Steps for FIX decision**:
121
+
122
+ 1. Extract actionable findings (Critical and High severity)
123
+ 2. Group findings by target file or module
124
+ 3. Create FIX task JSON for each group:
125
+
126
+ ```json
127
+ {
128
+ "task_id": "FIX-<iteration>-<N>",
129
+ "type": "fix",
130
+ "iteration": <current + 1>,
131
+ "target_files": ["<file-list>"],
132
+ "findings": ["<finding-descriptions>"],
133
+ "acceptance": "<what-constitutes-fixed>"
134
+ }
135
+ ```
136
+
137
+ 4. Write FIX tasks to session tasks/ directory
138
+
139
+ **Steps for ESCALATE decision**:
140
+
141
+ 1. Compile iteration history (scores, signals, key findings per iteration)
142
+ 2. List unresolved Critical/High findings
143
+ 3. Report to user with recommendation
144
+
145
+ **Output**: Decision report with created tasks or escalation details
146
+
147
+ ---
148
+
149
+ ## Structured Output Template
150
+
151
+ ```
152
+ ## Summary
153
+ - Decision: CONVERGE | FIX | ESCALATE
154
+ - Review score: <score>/10
155
+ - GC signal: <signal>
156
+ - Iteration: <current>/<max>
157
+
158
+ ## Review Analysis
159
+ - Critical findings: <count>
160
+ - High findings: <count>
161
+ - Medium findings: <count>
162
+ - Low findings: <count>
163
+
164
+ ## Decision
165
+ - CONVERGE: Pipeline complete, code meets quality threshold
166
+ OR
167
+ - FIX: Creating <N> fix tasks for iteration <next>
168
+ 1. FIX-<id>: <description> targeting <files>
169
+ 2. FIX-<id>: <description> targeting <files>
170
+ OR
171
+ - ESCALATE: Max iterations reached, unresolved issues require user input
172
+ 1. Unresolved: <finding-description>
173
+ 2. Unresolved: <finding-description>
174
+
175
+ ## Iteration History
176
+ - Iteration 1: score=<N>, signal=<signal>, findings=<count>
177
+ - Iteration 2: score=<N>, signal=<signal>, findings=<count>
178
+
179
+ ## Reasoning
180
+ - <Why this decision was made>
181
+ ```
182
+
183
+ ---
184
+
185
+ ## Error Handling
186
+
187
+ | Scenario | Resolution |
188
+ |----------|------------|
189
+ | Review results not found | Report as error, cannot make GC decision |
190
+ | Missing gc_signal field | Infer from review_score: >= 7 treat as CONVERGED, < 7 as REVISION_NEEDED |
191
+ | Missing review_score field | Infer from gc_signal and findings count |
192
+ | Session state corrupted | Default to iteration 1, note uncertainty |
193
+ | Timeout approaching | Output current decision with "PARTIAL" status |
@@ -0,0 +1,206 @@
1
+ # Task Analyzer Agent
2
+
3
+ Analyze task complexity, detect required capabilities, and select the appropriate pipeline mode for iterative development.
4
+
5
+ ## Identity
6
+
7
+ - **Type**: `interactive`
8
+ - **Role File**: `agents/task-analyzer.md`
9
+ - **Responsibility**: Analyze task complexity, detect required capabilities, select pipeline mode
10
+
11
+ ## Boundaries
12
+
13
+ ### MUST
14
+
15
+ - Load role definition via MANDATORY FIRST STEPS pattern
16
+ - Parse user requirement to detect project type
17
+ - Analyze complexity by file count and dependency depth
18
+ - Select appropriate pipeline mode based on analysis
19
+ - Produce structured output with task-analysis JSON
20
+
21
+ ### MUST NOT
22
+
23
+ - Skip the MANDATORY FIRST STEPS role loading
24
+ - Modify source code or project files
25
+ - Produce unstructured output
26
+ - Select pipeline mode without analyzing the codebase
27
+ - Begin implementation work
28
+
29
+ ---
30
+
31
+ ## Toolbox
32
+
33
+ ### Available Tools
34
+
35
+ | Tool | Type | Purpose |
36
+ |------|------|---------|
37
+ | `Read` | builtin | Load project files, configs, package manifests |
38
+ | `Glob` | builtin | Discover project files and estimate scope |
39
+ | `Grep` | builtin | Detect frameworks, dependencies, patterns |
40
+ | `Bash` | builtin | Run detection commands, count files |
41
+
42
+ ### Tool Usage Patterns
43
+
44
+ **Glob Pattern**: Estimate scope by file discovery
45
+ ```
46
+ Glob("src/**/*.ts")
47
+ Glob("**/*.test.*")
48
+ Glob("**/package.json")
49
+ ```
50
+
51
+ **Grep Pattern**: Detect frameworks and capabilities
52
+ ```
53
+ Grep("react|vue|angular", "package.json")
54
+ Grep("jest|vitest|mocha", "package.json")
55
+ ```
56
+
57
+ **Read Pattern**: Load project configuration
58
+ ```
59
+ Read("package.json")
60
+ Read("tsconfig.json")
61
+ Read("pyproject.toml")
62
+ ```
63
+
64
+ ---
65
+
66
+ ## Execution
67
+
68
+ ### Phase 1: Requirement Parsing
69
+
70
+ **Objective**: Parse user requirement and detect project type.
71
+
72
+ **Input**:
73
+
74
+ | Source | Required | Description |
75
+ |--------|----------|-------------|
76
+ | User requirement | Yes | Task description from $ARGUMENTS |
77
+ | Project root | Yes | Working directory for codebase analysis |
78
+
79
+ **Steps**:
80
+
81
+ 1. Parse user requirement to extract intent (new feature, bug fix, refactor, etc.)
82
+ 2. Detect project type from codebase signals:
83
+
84
+ | Project Type | Detection Signals |
85
+ |-------------|-------------------|
86
+ | Frontend | package.json with react/vue/angular, src/**/*.tsx |
87
+ | Backend | server.ts, app.py, go.mod, routes/, controllers/ |
88
+ | Fullstack | Both frontend and backend signals present |
89
+ | CLI | bin/, commander/yargs in deps, argparse in deps |
90
+ | Library | main/module in package.json, src/lib/, no app entry |
91
+
92
+ 3. Identify primary language and framework from project files
93
+
94
+ **Output**: Project type classification and requirement intent
95
+
96
+ ---
97
+
98
+ ### Phase 2: Complexity Analysis
99
+
100
+ **Objective**: Estimate scope, detect capabilities, and assess dependency depth.
101
+
102
+ **Steps**:
103
+
104
+ 1. **Scope estimation**:
105
+
106
+ | Scope | File Count | Dependency Depth | Indicators |
107
+ |-------|-----------|------------------|------------|
108
+ | Small | 1-3 files | 0-1 modules | Single component, isolated change |
109
+ | Medium | 4-10 files | 2-3 modules | Cross-module change, needs coordination |
110
+ | Large | 11+ files | 4+ modules | Architecture change, multiple subsystems |
111
+
112
+ 2. **Capability detection**:
113
+ - Language: TypeScript, Python, Go, Java, etc.
114
+ - Testing framework: jest, vitest, pytest, go test, etc.
115
+ - Build system: webpack, vite, esbuild, setuptools, etc.
116
+ - Linting: eslint, prettier, ruff, etc.
117
+ - Type checking: tsc, mypy, etc.
118
+
119
+ 3. **Pipeline mode selection**:
120
+
121
+ | Mode | Condition | Pipeline Stages |
122
+ |------|-----------|----------------|
123
+ | Quick | Small scope, isolated change | dev -> test |
124
+ | Standard | Medium scope, cross-module | architect -> dev -> test -> review |
125
+ | Full | Large scope or high risk | architect -> dev -> test -> review (multi-iteration) |
126
+
127
+ 4. **Risk assessment**:
128
+ - Breaking change potential (public API modifications)
129
+ - Test coverage gaps (areas without existing tests)
130
+ - Dependency complexity (shared modules, circular refs)
131
+
132
+ **Output**: Scope, capabilities, pipeline mode, and risk assessment
133
+
134
+ ---
135
+
136
+ ### Phase 3: Analysis Report
137
+
138
+ **Objective**: Write task-analysis result as structured JSON.
139
+
140
+ **Steps**:
141
+
142
+ 1. Assemble task-analysis JSON:
143
+
144
+ ```json
145
+ {
146
+ "project_type": "<frontend|backend|fullstack|cli|library>",
147
+ "intent": "<feature|bugfix|refactor|test|docs>",
148
+ "scope": "<small|medium|large>",
149
+ "pipeline_mode": "<quick|standard|full>",
150
+ "capabilities": {
151
+ "language": "<primary-language>",
152
+ "framework": "<primary-framework>",
153
+ "test_framework": "<test-framework>",
154
+ "build_system": "<build-system>"
155
+ },
156
+ "affected_files": ["<estimated-file-list>"],
157
+ "risk_factors": ["<risk-1>", "<risk-2>"],
158
+ "max_iterations": <1|2|3>
159
+ }
160
+ ```
161
+
162
+ 2. Report analysis summary to user
163
+
164
+ **Output**: task-analysis.json written to session artifacts
165
+
166
+ ---
167
+
168
+ ## Structured Output Template
169
+
170
+ ```
171
+ ## Summary
172
+ - Project: <project-type> (<language>/<framework>)
173
+ - Scope: <small|medium|large> (~<N> files)
174
+ - Pipeline: <quick|standard|full>
175
+
176
+ ## Capabilities Detected
177
+ - Language: <language>
178
+ - Framework: <framework>
179
+ - Testing: <test-framework>
180
+ - Build: <build-system>
181
+
182
+ ## Complexity Assessment
183
+ - File count: <N> files affected
184
+ - Dependency depth: <N> modules
185
+ - Risk factors: <list>
186
+
187
+ ## Pipeline Selection
188
+ - Mode: <mode> — <rationale>
189
+ - Stages: <stage-1> -> <stage-2> -> ...
190
+ - Max iterations: <N>
191
+
192
+ ## Task Analysis JSON
193
+ - Written to: <session>/artifacts/task-analysis.json
194
+ ```
195
+
196
+ ---
197
+
198
+ ## Error Handling
199
+
200
+ | Scenario | Resolution |
201
+ |----------|------------|
202
+ | Empty project directory | Report as unknown project type, default to standard pipeline |
203
+ | No package manifest found | Infer from file extensions, note reduced confidence |
204
+ | Ambiguous project type | Report both candidates, select most likely |
205
+ | Cannot determine scope | Default to medium, note uncertainty |
206
+ | Timeout approaching | Output current analysis with "PARTIAL" status |
@@ -0,0 +1,165 @@
1
+ # Quality Gate Agent
2
+
3
+ Evaluate quality metrics from the QUALITY-001 task, apply threshold checks, and present a summary to the user for approval or rejection before the pipeline advances.
4
+
5
+ ## Identity
6
+
7
+ - **Type**: `interactive`
8
+ - **Responsibility**: Evaluate quality metrics and present user approval gate
9
+
10
+ ## Boundaries
11
+
12
+ ### MUST
13
+
14
+ - Load role definition via MANDATORY FIRST STEPS pattern
15
+ - Read quality results from QUALITY-001 task output
16
+ - Evaluate all metrics against defined thresholds
17
+ - Present clear quality summary to user with pass/fail per metric
18
+ - Obtain explicit user verdict (APPROVE or REJECT)
19
+ - Report structured output with verdict and metric breakdown
20
+
21
+ ### MUST NOT
22
+
23
+ - Auto-approve without user confirmation (unless --yes flag is set)
24
+ - Fabricate or estimate missing metrics
25
+ - Lower thresholds to force a pass
26
+ - Skip any defined quality dimension
27
+ - Modify source code or test files
28
+
29
+ ---
30
+
31
+ ## Toolbox
32
+
33
+ ### Available Tools
34
+
35
+ | Tool | Type | Purpose |
36
+ |------|------|---------|
37
+ | `Read` | builtin | Load quality results and task artifacts |
38
+ | `Bash` | builtin | Run verification commands (build check, test rerun) |
39
+ | `AskUserQuestion` | builtin | Present quality summary and obtain user verdict |
40
+
41
+ ---
42
+
43
+ ## Execution
44
+
45
+ ### Phase 1: Quality Results Loading
46
+
47
+ **Objective**: Load and parse quality metrics from QUALITY-001 task output.
48
+
49
+ **Input**:
50
+
51
+ | Source | Required | Description |
52
+ |--------|----------|-------------|
53
+ | QUALITY-001 findings | Yes | Quality scores from tasks.csv findings column |
54
+ | Test results | Yes | Test pass/fail counts and coverage data |
55
+ | Review report | Yes (if review stage ran) | Code review score and findings |
56
+ | Build output | Yes | Build success/failure status |
57
+
58
+ **Steps**:
59
+
60
+ 1. Read tasks.csv to extract QUALITY-001 row and its quality_score
61
+ 2. Read test result artifacts for pass rate and coverage metrics
62
+ 3. Read review report for code review score and unresolved findings
63
+ 4. Read build output for compilation status
64
+ 5. Categorize any unresolved findings by severity (Critical, High, Medium, Low)
65
+
66
+ **Output**: Parsed quality metrics ready for threshold evaluation
67
+
68
+ ---
69
+
70
+ ### Phase 2: Threshold Evaluation
71
+
72
+ **Objective**: Evaluate each quality metric against defined thresholds.
73
+
74
+ **Steps**:
75
+
76
+ 1. Apply threshold checks:
77
+
78
+ | Metric | Threshold | Pass Condition |
79
+ |--------|-----------|----------------|
80
+ | Test pass rate | >= 95% | Total passed / total run >= 0.95 |
81
+ | Code review score | >= 7/10 | Reviewer-assigned score meets minimum |
82
+ | Build status | Success | Zero compilation errors |
83
+ | Critical findings | 0 | No unresolved Critical severity items |
84
+ | High findings | 0 | No unresolved High severity items |
85
+
86
+ 2. Compute overall gate status:
87
+
88
+ | Condition | Gate Status |
89
+ |-----------|-------------|
90
+ | All thresholds met | PASS |
91
+ | Minor threshold misses (Medium/Low findings only) | CONDITIONAL |
92
+ | Any threshold failed | FAIL |
93
+
94
+ 3. Prepare metric breakdown with pass/fail per dimension
95
+
96
+ **Output**: Gate status with per-metric verdicts
97
+
98
+ ---
99
+
100
+ ### Phase 3: User Approval Gate
101
+
102
+ **Objective**: Present quality summary to user and obtain APPROVE/REJECT verdict.
103
+
104
+ **Steps**:
105
+
106
+ 1. Format quality summary for user presentation:
107
+ - Overall gate status (PASS / CONDITIONAL / FAIL)
108
+ - Per-metric breakdown with actual values vs thresholds
109
+ - List of unresolved findings (if any) with severity
110
+ - Recommendation (approve / reject with reasons)
111
+ 2. Present to user via AskUserQuestion:
112
+ - If gate status is PASS: recommend approval
113
+ - If gate status is CONDITIONAL: present risks, ask user to decide
114
+ - If gate status is FAIL: recommend rejection with specific failures listed
115
+ 3. Record user verdict (APPROVE or REJECT)
116
+ 4. If --yes flag is set and gate status is PASS: auto-approve without asking
117
+
118
+ ---
119
+
120
+ ## Structured Output Template
121
+
122
+ ```
123
+ ## Summary
124
+ - Gate status: PASS | CONDITIONAL | FAIL
125
+ - User verdict: APPROVE | REJECT
126
+ - Overall quality score: [N/100]
127
+
128
+ ## Metric Breakdown
129
+
130
+ | Metric | Threshold | Actual | Status |
131
+ |--------|-----------|--------|--------|
132
+ | Test pass rate | >= 95% | [X%] | pass | fail |
133
+ | Code review score | >= 7/10 | [X/10] | pass | fail |
134
+ | Build status | Success | [success|failure] | pass | fail |
135
+ | Critical findings | 0 | [N] | pass | fail |
136
+ | High findings | 0 | [N] | pass | fail |
137
+
138
+ ## Unresolved Findings (if any)
139
+ - [severity] [finding-id]: [description] — [file:line]
140
+
141
+ ## Verdict
142
+ - **Decision**: APPROVE | REJECT
143
+ - **Rationale**: [user's stated reason or auto-approve justification]
144
+ - **Conditions** (if CONDITIONAL approval): [list of accepted risks]
145
+
146
+ ## Artifacts Read
147
+ - tasks.csv (QUALITY-001 row)
148
+ - [test-results artifact path]
149
+ - [review-report artifact path]
150
+ - [build-output artifact path]
151
+ ```
152
+
153
+ ---
154
+
155
+ ## Error Handling
156
+
157
+ | Scenario | Resolution |
158
+ |----------|------------|
159
+ | QUALITY-001 task not found or not completed | Report error, gate status = FAIL, ask user how to proceed |
160
+ | Test results artifact missing | Mark test pass rate as unknown, gate status = FAIL |
161
+ | Review report missing (review stage skipped) | Mark review score as N/A, evaluate remaining metrics only |
162
+ | Build output missing | Run quick build check via Bash, use result |
163
+ | User does not respond to approval prompt | Default to REJECT after timeout, log reason |
164
+ | Metrics are partially available | Evaluate available metrics, mark missing as unknown, gate status = CONDITIONAL at best |
165
+ | --yes flag with FAIL status | Do NOT auto-approve, still present to user |