claude-code-workflow 7.2.10 → 7.2.11

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 (322) 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/skills/review-code/SKILL.md +2 -0
  9. package/.claude/skills/review-cycle/SKILL.md +4 -0
  10. package/.claude/skills/skill-simplify/phases/02-optimize.md +4 -0
  11. package/.claude/skills/spec-generator/phases/05-epics-stories.md +4 -0
  12. package/.claude/skills/team-arch-opt/specs/team-config.json +5 -5
  13. package/.claude/skills/team-frontend-debug/roles/analyzer/role.md +3 -2
  14. package/.claude/skills/team-perf-opt/roles/coordinator/commands/monitor.md +1 -1
  15. package/.claude/skills/team-perf-opt/specs/team-config.json +5 -5
  16. package/.claude/skills/team-quality-assurance/roles/executor/role.md +2 -1
  17. package/.claude/skills/team-review/roles/reviewer/role.md +2 -1
  18. package/.claude/skills/team-tech-debt/roles/scanner/role.md +2 -1
  19. package/.claude/skills/team-testing/roles/executor/role.md +2 -1
  20. package/.claude/skills/team-testing/roles/generator/role.md +2 -1
  21. package/.claude/skills/team-ultra-analyze/roles/explorer/role.md +2 -1
  22. package/.claude/skills/team-ux-improve/specs/team-config.json +6 -6
  23. package/.claude/skills/workflow-execute/phases/06-review.md +4 -4
  24. package/.claude/skills/workflow-lite-test-review/SKILL.md +2 -0
  25. package/.claude/skills/workflow-plan/phases/05-plan-verify.md +4 -0
  26. package/.claude/skills/workflow-tdd-plan/phases/02-context-gathering.md +1 -0
  27. package/.claude/skills/workflow-tdd-plan/phases/05-tdd-task-generation.md +2 -1
  28. package/.claude/skills/workflow-test-fix/phases/02-test-context-gather.md +1 -0
  29. package/.claude/skills/workflow-test-fix/phases/05-test-cycle-execute.md +2 -1
  30. package/.claude/skills/workflow-tune/SKILL.md +487 -0
  31. package/.claude/skills/workflow-tune/phases/01-setup.md +548 -0
  32. package/.claude/skills/workflow-tune/phases/02-step-execute.md +197 -0
  33. package/.claude/skills/workflow-tune/phases/03-step-analyze.md +386 -0
  34. package/.claude/skills/workflow-tune/phases/04-synthesize.md +257 -0
  35. package/.claude/skills/workflow-tune/phases/05-optimize-report.md +246 -0
  36. package/.claude/skills/workflow-tune/specs/workflow-eval-criteria.md +57 -0
  37. package/.claude/skills/workflow-tune/templates/step-analysis-prompt.md +88 -0
  38. package/.claude/skills/workflow-tune/templates/synthesis-prompt.md +90 -0
  39. package/.codex/skills/analyze-with-file/SKILL.md +2 -0
  40. package/.codex/skills/debug-with-file/SKILL.md +4 -0
  41. package/.codex/skills/issue-discover/SKILL.md +1 -0
  42. package/.codex/skills/review-cycle/phases/02-parallel-review.md +3 -0
  43. package/.codex/skills/team-designer/agents/validation-reporter.md +186 -0
  44. package/.codex/skills/team-iterdev/agents/gc-controller.md +193 -0
  45. package/.codex/skills/team-iterdev/agents/task-analyzer.md +206 -0
  46. package/.codex/skills/team-lifecycle-v4/agents/quality-gate.md +165 -0
  47. package/.codex/skills/team-lifecycle-v4/agents/requirement-clarifier.md +163 -0
  48. package/.codex/skills/team-lifecycle-v4/agents/supervisor.md +182 -0
  49. package/.codex/skills/team-uidesign/agents/completion-handler.md +177 -0
  50. package/.codex/skills/team-uidesign/agents/gc-loop-handler.md +162 -0
  51. package/.codex/skills/workflow-test-fix-cycle/phases/01-test-fix-gen.md +4 -0
  52. package/.codex/skills/workflow-test-fix-cycle/phases/02-test-cycle-execute.md +2 -0
  53. package/ccw/dist/commands/spec.d.ts.map +1 -1
  54. package/ccw/dist/commands/spec.js +9 -4
  55. package/ccw/dist/commands/spec.js.map +1 -1
  56. package/ccw/dist/core/routes/codexlens-routes.d.ts.map +1 -1
  57. package/ccw/dist/core/routes/codexlens-routes.js +3 -1
  58. package/ccw/dist/core/routes/codexlens-routes.js.map +1 -1
  59. package/ccw/dist/tools/spec-index-builder.d.ts +8 -4
  60. package/ccw/dist/tools/spec-index-builder.d.ts.map +1 -1
  61. package/ccw/dist/tools/spec-index-builder.js +8 -4
  62. package/ccw/dist/tools/spec-index-builder.js.map +1 -1
  63. package/ccw/dist/tools/spec-init.d.ts +1 -1
  64. package/ccw/dist/tools/spec-init.d.ts.map +1 -1
  65. package/ccw/dist/tools/spec-init.js +127 -0
  66. package/ccw/dist/tools/spec-init.js.map +1 -1
  67. package/ccw/dist/tools/spec-loader.d.ts.map +1 -1
  68. package/ccw/dist/tools/spec-loader.js +2 -1
  69. package/ccw/dist/tools/spec-loader.js.map +1 -1
  70. package/ccw/frontend/dist/assets/{AlertDialog-gTMl4gSG.js → AlertDialog-BW9jiZ-p.js} +2 -2
  71. package/ccw/frontend/dist/assets/{AlertDialog-gTMl4gSG.js.map → AlertDialog-BW9jiZ-p.js.map} +1 -1
  72. package/ccw/frontend/dist/assets/{AnalysisPage-Bc4p4SvJ.js → AnalysisPage-ds-w_nVO.js} +2 -2
  73. package/ccw/frontend/dist/assets/{AnalysisPage-Bc4p4SvJ.js.map → AnalysisPage-ds-w_nVO.js.map} +1 -1
  74. package/ccw/frontend/dist/assets/{ApiSettingsPage-CVK108u2.js → ApiSettingsPage-DlCbXxTz.js} +2 -2
  75. package/ccw/frontend/dist/assets/{ApiSettingsPage-CVK108u2.js.map → ApiSettingsPage-DlCbXxTz.js.map} +1 -1
  76. package/ccw/frontend/dist/assets/{CliModeToggle-34Sjwl05.js → CliModeToggle-Dq3nL4fF.js} +2 -2
  77. package/ccw/frontend/dist/assets/{CliModeToggle-34Sjwl05.js.map → CliModeToggle-Dq3nL4fF.js.map} +1 -1
  78. package/ccw/frontend/dist/assets/{CliSessionSharePage-bJZAYI38.js → CliSessionSharePage-BNDkEE4u.js} +2 -2
  79. package/ccw/frontend/dist/assets/{CliSessionSharePage-bJZAYI38.js.map → CliSessionSharePage-BNDkEE4u.js.map} +1 -1
  80. package/ccw/frontend/dist/assets/{CliViewerPage-VYnQGjxU.js → CliViewerPage-ChM-uNx_.js} +2 -2
  81. package/ccw/frontend/dist/assets/{CliViewerPage-VYnQGjxU.js.map → CliViewerPage-ChM-uNx_.js.map} +1 -1
  82. package/ccw/frontend/dist/assets/CodexLensPage-DOcsYNQk.js +2 -0
  83. package/ccw/frontend/dist/assets/CodexLensPage-DOcsYNQk.js.map +1 -0
  84. package/ccw/frontend/dist/assets/{Collapsible-B_xd1Qbg.js → Collapsible-CRNbykXN.js} +2 -2
  85. package/ccw/frontend/dist/assets/{Collapsible-B_xd1Qbg.js.map → Collapsible-CRNbykXN.js.map} +1 -1
  86. package/ccw/frontend/dist/assets/{CommandsManagerPage-Bjx1bPbH.js → CommandsManagerPage-C2JWcemF.js} +2 -2
  87. package/ccw/frontend/dist/assets/{CommandsManagerPage-Bjx1bPbH.js.map → CommandsManagerPage-C2JWcemF.js.map} +1 -1
  88. package/ccw/frontend/dist/assets/{DeepWikiPage-EgHsHvAH.js → DeepWikiPage-CvleOtJy.js} +2 -2
  89. package/ccw/frontend/dist/assets/{DeepWikiPage-EgHsHvAH.js.map → DeepWikiPage-CvleOtJy.js.map} +1 -1
  90. package/ccw/frontend/dist/assets/{EndpointsPage-CuwpbCzK.js → EndpointsPage-CMOWQG64.js} +2 -2
  91. package/ccw/frontend/dist/assets/{EndpointsPage-CuwpbCzK.js.map → EndpointsPage-CMOWQG64.js.map} +1 -1
  92. package/ccw/frontend/dist/assets/{ExplorerPage-cvlx0Zw0.js → ExplorerPage-DaFPRlNo.js} +2 -2
  93. package/ccw/frontend/dist/assets/{ExplorerPage-cvlx0Zw0.js.map → ExplorerPage-DaFPRlNo.js.map} +1 -1
  94. package/ccw/frontend/dist/assets/{FixSessionPage-C74-MPza.js → FixSessionPage-CC4p04Az.js} +2 -2
  95. package/ccw/frontend/dist/assets/{FixSessionPage-C74-MPza.js.map → FixSessionPage-CC4p04Az.js.map} +1 -1
  96. package/ccw/frontend/dist/assets/{FloatingFileBrowser-x_-6y_n2.js → FloatingFileBrowser-DROn1xZ5.js} +2 -2
  97. package/ccw/frontend/dist/assets/{FloatingFileBrowser-x_-6y_n2.js.map → FloatingFileBrowser-DROn1xZ5.js.map} +1 -1
  98. package/ccw/frontend/dist/assets/{FloatingPanel-BGwmbJR1.js → FloatingPanel-CmL_yhDv.js} +2 -2
  99. package/ccw/frontend/dist/assets/{FloatingPanel-BGwmbJR1.js.map → FloatingPanel-CmL_yhDv.js.map} +1 -1
  100. package/ccw/frontend/dist/assets/{GraphExplorerPage-Bg5-aQxi.js → GraphExplorerPage-DCV5ybKE.js} +2 -2
  101. package/ccw/frontend/dist/assets/{GraphExplorerPage-Bg5-aQxi.js.map → GraphExplorerPage-DCV5ybKE.js.map} +1 -1
  102. package/ccw/frontend/dist/assets/{HistoryPage-C00fh0HE.js → HistoryPage-D0fYQZgc.js} +2 -2
  103. package/ccw/frontend/dist/assets/{HistoryPage-C00fh0HE.js.map → HistoryPage-D0fYQZgc.js.map} +1 -1
  104. package/ccw/frontend/dist/assets/{HookManagerPage-CtVTB_ae.js → HookManagerPage-D2FuJfsM.js} +2 -2
  105. package/ccw/frontend/dist/assets/{HookManagerPage-CtVTB_ae.js.map → HookManagerPage-D2FuJfsM.js.map} +1 -1
  106. package/ccw/frontend/dist/assets/{InstallationsPage-CYuMQDbC.js → InstallationsPage-tjklillZ.js} +2 -2
  107. package/ccw/frontend/dist/assets/{InstallationsPage-CYuMQDbC.js.map → InstallationsPage-tjklillZ.js.map} +1 -1
  108. package/ccw/frontend/dist/assets/{IssueHubPage-T_VSvUMh.js → IssueHubPage-E4JVrhO1.js} +2 -2
  109. package/ccw/frontend/dist/assets/{IssueHubPage-T_VSvUMh.js.map → IssueHubPage-E4JVrhO1.js.map} +1 -1
  110. package/ccw/frontend/dist/assets/{LiteTasksPage-DmcgvIvi.js → LiteTasksPage-aJuRoyLt.js} +2 -2
  111. package/ccw/frontend/dist/assets/{LiteTasksPage-DmcgvIvi.js.map → LiteTasksPage-aJuRoyLt.js.map} +1 -1
  112. package/ccw/frontend/dist/assets/{McpManagerPage-C_a7QSKz.js → McpManagerPage-BJeuWJv1.js} +2 -2
  113. package/ccw/frontend/dist/assets/{McpManagerPage-C_a7QSKz.js.map → McpManagerPage-BJeuWJv1.js.map} +1 -1
  114. package/ccw/frontend/dist/assets/{MemoryPage-CWKmXY5k.js → MemoryPage-BI4FAXhs.js} +2 -2
  115. package/ccw/frontend/dist/assets/{MemoryPage-CWKmXY5k.js.map → MemoryPage-BI4FAXhs.js.map} +1 -1
  116. package/ccw/frontend/dist/assets/{NotFoundPage-B1duXK6r.js → NotFoundPage-DD2svchp.js} +2 -2
  117. package/ccw/frontend/dist/assets/{NotFoundPage-B1duXK6r.js.map → NotFoundPage-DD2svchp.js.map} +1 -1
  118. package/ccw/frontend/dist/assets/{OrchestratorPage-Ib9TM6HE.js → OrchestratorPage-FC__7yYa.js} +2 -2
  119. package/ccw/frontend/dist/assets/{OrchestratorPage-Ib9TM6HE.js.map → OrchestratorPage-FC__7yYa.js.map} +1 -1
  120. package/ccw/frontend/dist/assets/{ProjectOverviewPage-sXSWMbF8.js → ProjectOverviewPage-DBB_-FzV.js} +2 -2
  121. package/ccw/frontend/dist/assets/{ProjectOverviewPage-sXSWMbF8.js.map → ProjectOverviewPage-DBB_-FzV.js.map} +1 -1
  122. package/ccw/frontend/dist/assets/{PromptHistoryPage-B6jaqG12.js → PromptHistoryPage-BwOAvCH8.js} +2 -2
  123. package/ccw/frontend/dist/assets/{PromptHistoryPage-B6jaqG12.js.map → PromptHistoryPage-BwOAvCH8.js.map} +1 -1
  124. package/ccw/frontend/dist/assets/{ReviewSessionPage-D5qJyr3s.js → ReviewSessionPage-Dd1-g_gp.js} +2 -2
  125. package/ccw/frontend/dist/assets/{ReviewSessionPage-D5qJyr3s.js.map → ReviewSessionPage-Dd1-g_gp.js.map} +1 -1
  126. package/ccw/frontend/dist/assets/{RulesManagerPage-DyawK8QE.js → RulesManagerPage-B3RGdsKD.js} +2 -2
  127. package/ccw/frontend/dist/assets/{RulesManagerPage-DyawK8QE.js.map → RulesManagerPage-B3RGdsKD.js.map} +1 -1
  128. package/ccw/frontend/dist/assets/{SessionDetailPage-Cym_RvC9.js → SessionDetailPage-DM-W5R8K.js} +2 -2
  129. package/ccw/frontend/dist/assets/{SessionDetailPage-Cym_RvC9.js.map → SessionDetailPage-DM-W5R8K.js.map} +1 -1
  130. package/ccw/frontend/dist/assets/{SessionsPage-Dkc1Hv8W.js → SessionsPage-BVz1KCc7.js} +2 -2
  131. package/ccw/frontend/dist/assets/{SessionsPage-Dkc1Hv8W.js.map → SessionsPage-BVz1KCc7.js.map} +1 -1
  132. package/ccw/frontend/dist/assets/{SettingsPage-Rik9cUIj.js → SettingsPage-ComW7EZS.js} +4 -4
  133. package/ccw/frontend/dist/assets/{SettingsPage-Rik9cUIj.js.map → SettingsPage-ComW7EZS.js.map} +1 -1
  134. package/ccw/frontend/dist/assets/{SkillsManagerPage-BGDWYAyI.js → SkillsManagerPage-CKom9XwV.js} +2 -2
  135. package/ccw/frontend/dist/assets/{SkillsManagerPage-BGDWYAyI.js.map → SkillsManagerPage-CKom9XwV.js.map} +1 -1
  136. package/ccw/frontend/dist/assets/{SpecsSettingsPage-CTiA1DMP.js → SpecsSettingsPage-DQz7WP2s.js} +2 -2
  137. package/ccw/frontend/dist/assets/{SpecsSettingsPage-CTiA1DMP.js.map → SpecsSettingsPage-DQz7WP2s.js.map} +1 -1
  138. package/ccw/frontend/dist/assets/{Switch-BgAFC-Wk.js → Switch-BPMdND9H.js} +2 -2
  139. package/ccw/frontend/dist/assets/{Switch-BgAFC-Wk.js.map → Switch-BPMdND9H.js.map} +1 -1
  140. package/ccw/frontend/dist/assets/{TabsNavigation-drSnu5jn.js → TabsNavigation-qqt70VYL.js} +2 -2
  141. package/ccw/frontend/dist/assets/{TabsNavigation-drSnu5jn.js.map → TabsNavigation-qqt70VYL.js.map} +1 -1
  142. package/ccw/frontend/dist/assets/{TaskDrawer-ePC__6-P.js → TaskDrawer-BqK_qiHX.js} +2 -2
  143. package/ccw/frontend/dist/assets/{TaskDrawer-ePC__6-P.js.map → TaskDrawer-BqK_qiHX.js.map} +1 -1
  144. package/ccw/frontend/dist/assets/{TeamPage-C6bdFWn8.js → TeamPage-u5_i0Rgh.js} +2 -2
  145. package/ccw/frontend/dist/assets/{TeamPage-C6bdFWn8.js.map → TeamPage-u5_i0Rgh.js.map} +1 -1
  146. package/ccw/frontend/dist/assets/{TerminalDashboardPage-Zofi_DZM.js → TerminalDashboardPage-rUtC9e40.js} +2 -2
  147. package/ccw/frontend/dist/assets/{TerminalDashboardPage-Zofi_DZM.js.map → TerminalDashboardPage-rUtC9e40.js.map} +1 -1
  148. package/ccw/frontend/dist/assets/{archive-Bza1KlB9.js → archive-C3u8YNQF.js} +2 -2
  149. package/ccw/frontend/dist/assets/{archive-Bza1KlB9.js.map → archive-C3u8YNQF.js.map} +1 -1
  150. package/ccw/frontend/dist/assets/{archive-restore-CpsDm-cG.js → archive-restore-DfQ998g5.js} +2 -2
  151. package/ccw/frontend/dist/assets/{archive-restore-CpsDm-cG.js.map → archive-restore-DfQ998g5.js.map} +1 -1
  152. package/ccw/frontend/dist/assets/{arrow-right-CibG_LVO.js → arrow-right-BshJM9Po.js} +2 -2
  153. package/ccw/frontend/dist/assets/{arrow-right-CibG_LVO.js.map → arrow-right-BshJM9Po.js.map} +1 -1
  154. package/ccw/frontend/dist/assets/{bookmark-plus-BheO8EgG.js → bookmark-plus-D03qJyOZ.js} +2 -2
  155. package/ccw/frontend/dist/assets/{bookmark-plus-BheO8EgG.js.map → bookmark-plus-D03qJyOZ.js.map} +1 -1
  156. package/ccw/frontend/dist/assets/{bot-BlhM0Nl0.js → bot-CyzWuwq0.js} +2 -2
  157. package/ccw/frontend/dist/assets/{bot-BlhM0Nl0.js.map → bot-CyzWuwq0.js.map} +1 -1
  158. package/ccw/frontend/dist/assets/{braces-Dqjg_eCO.js → braces-BPgtyjsG.js} +2 -2
  159. package/ccw/frontend/dist/assets/{braces-Dqjg_eCO.js.map → braces-BPgtyjsG.js.map} +1 -1
  160. package/ccw/frontend/dist/assets/{circle-stop-DYZSLYU0.js → circle-stop-Dix1AOmw.js} +2 -2
  161. package/ccw/frontend/dist/assets/{circle-stop-DYZSLYU0.js.map → circle-stop-Dix1AOmw.js.map} +1 -1
  162. package/ccw/frontend/dist/assets/{cpu-DWCyAOAv.js → cpu-CCQ4Q0Zh.js} +2 -2
  163. package/ccw/frontend/dist/assets/{cpu-DWCyAOAv.js.map → cpu-CCQ4Q0Zh.js.map} +1 -1
  164. package/ccw/frontend/dist/assets/{ellipsis-vertical-DIyoSEHx.js → ellipsis-vertical-BpTysg-Y.js} +2 -2
  165. package/ccw/frontend/dist/assets/{ellipsis-vertical-DIyoSEHx.js.map → ellipsis-vertical-BpTysg-Y.js.map} +1 -1
  166. package/ccw/frontend/dist/assets/{eye-DUy7aLEx.js → eye-DGY1rAZs.js} +2 -2
  167. package/ccw/frontend/dist/assets/{eye-DUy7aLEx.js.map → eye-DGY1rAZs.js.map} +1 -1
  168. package/ccw/frontend/dist/assets/{eye-off-CGRUVRDR.js → eye-off-D8t3JfWG.js} +2 -2
  169. package/ccw/frontend/dist/assets/{eye-off-CGRUVRDR.js.map → eye-off-D8t3JfWG.js.map} +1 -1
  170. package/ccw/frontend/dist/assets/{file-json-BxLBtU9d.js → file-json-BAdJb0n8.js} +2 -2
  171. package/ccw/frontend/dist/assets/{file-json-BxLBtU9d.js.map → file-json-BAdJb0n8.js.map} +1 -1
  172. package/ccw/frontend/dist/assets/{file-text-BoHsW2es.js → file-text-DrJFiOUB.js} +2 -2
  173. package/ccw/frontend/dist/assets/{file-text-BoHsW2es.js.map → file-text-DrJFiOUB.js.map} +1 -1
  174. package/ccw/frontend/dist/assets/{filter-B4vOqP6B.js → filter-CKqzYbz7.js} +2 -2
  175. package/ccw/frontend/dist/assets/{filter-B4vOqP6B.js.map → filter-CKqzYbz7.js.map} +1 -1
  176. package/ccw/frontend/dist/assets/{folder-BKhwCNFG.js → folder-CV8511y9.js} +2 -2
  177. package/ccw/frontend/dist/assets/{folder-BKhwCNFG.js.map → folder-CV8511y9.js.map} +1 -1
  178. package/ccw/frontend/dist/assets/{gauge-Dgf64gkT.js → gauge-XKvmu_uU.js} +2 -2
  179. package/ccw/frontend/dist/assets/{gauge-Dgf64gkT.js.map → gauge-XKvmu_uU.js.map} +1 -1
  180. package/ccw/frontend/dist/assets/{globe-Cus_S6Ux.js → globe-C56cDUzX.js} +2 -2
  181. package/ccw/frontend/dist/assets/{globe-Cus_S6Ux.js.map → globe-C56cDUzX.js.map} +1 -1
  182. package/ccw/frontend/dist/assets/{grid-3x3-DM08hpAN.js → grid-3x3-Bya-suFW.js} +2 -2
  183. package/ccw/frontend/dist/assets/{grid-3x3-DM08hpAN.js.map → grid-3x3-Bya-suFW.js.map} +1 -1
  184. package/ccw/frontend/dist/assets/{hard-drive-eCtll84F.js → hard-drive-CmuTZpsB.js} +2 -2
  185. package/ccw/frontend/dist/assets/{hard-drive-eCtll84F.js.map → hard-drive-CmuTZpsB.js.map} +1 -1
  186. package/ccw/frontend/dist/assets/{hash-Bd1RD285.js → hash-CRPT_tJQ.js} +2 -2
  187. package/ccw/frontend/dist/assets/{hash-Bd1RD285.js.map → hash-CRPT_tJQ.js.map} +1 -1
  188. package/ccw/frontend/dist/assets/{history-eyyCQA6b.js → history-C1pJZQCL.js} +2 -2
  189. package/ccw/frontend/dist/assets/{history-eyyCQA6b.js.map → history-C1pJZQCL.js.map} +1 -1
  190. package/ccw/frontend/dist/assets/{index-ZnmWxcZg.js → index-B6TpijCe.js} +2 -2
  191. package/ccw/frontend/dist/assets/{index-ZnmWxcZg.js.map → index-B6TpijCe.js.map} +1 -1
  192. package/ccw/frontend/dist/assets/{index-b2C0iFd1.js → index-Bcq-7r6F.js} +2 -2
  193. package/ccw/frontend/dist/assets/{index-b2C0iFd1.js.map → index-Bcq-7r6F.js.map} +1 -1
  194. package/ccw/frontend/dist/assets/{index-Cs2ShCCy.js → index-CI8-rBff.js} +2 -2
  195. package/ccw/frontend/dist/assets/{index-Cs2ShCCy.js.map → index-CI8-rBff.js.map} +1 -1
  196. package/ccw/frontend/dist/assets/{index-CY6Lueph.js → index-Dmt9OiEf.js} +2 -2
  197. package/ccw/frontend/dist/assets/{index-CY6Lueph.js.map → index-Dmt9OiEf.js.map} +1 -1
  198. package/ccw/frontend/dist/assets/{index-DfeBbFXo.js → index-anSMmEF8.js} +2 -2
  199. package/ccw/frontend/dist/assets/{index-DfeBbFXo.js.map → index-anSMmEF8.js.map} +1 -1
  200. package/ccw/frontend/dist/assets/{index-B6I7GQC5.js → index-dWT2M6Ef.js} +4 -4
  201. package/ccw/frontend/dist/assets/{index-B6I7GQC5.js.map → index-dWT2M6Ef.js.map} +1 -1
  202. package/ccw/frontend/dist/assets/{layout-grid-ChrTrCby.js → layout-grid-TSO0BFQE.js} +2 -2
  203. package/ccw/frontend/dist/assets/{layout-grid-ChrTrCby.js.map → layout-grid-TSO0BFQE.js.map} +1 -1
  204. package/ccw/frontend/dist/assets/{lightbulb-CvXiTlzN.js → lightbulb-Caj6fIQD.js} +2 -2
  205. package/ccw/frontend/dist/assets/{lightbulb-CvXiTlzN.js.map → lightbulb-Caj6fIQD.js.map} +1 -1
  206. package/ccw/frontend/dist/assets/{link-2-W0Nl17ec.js → link-2-DE9lMxa-.js} +2 -2
  207. package/ccw/frontend/dist/assets/{link-2-W0Nl17ec.js.map → link-2-DE9lMxa-.js.map} +1 -1
  208. package/ccw/frontend/dist/assets/{link-CL4JmoHb.js → link-BZtPgLW0.js} +2 -2
  209. package/ccw/frontend/dist/assets/{link-CL4JmoHb.js.map → link-BZtPgLW0.js.map} +1 -1
  210. package/ccw/frontend/dist/assets/{list-CDmYFcio.js → list-DubWyY-U.js} +2 -2
  211. package/ccw/frontend/dist/assets/{list-CDmYFcio.js.map → list-DubWyY-U.js.map} +1 -1
  212. package/ccw/frontend/dist/assets/{map-pin-0Mfsw_3d.js → map-pin-DwN_48AF.js} +2 -2
  213. package/ccw/frontend/dist/assets/{map-pin-0Mfsw_3d.js.map → map-pin-DwN_48AF.js.map} +1 -1
  214. package/ccw/frontend/dist/assets/{messages-square-C6h08ple.js → messages-square-bjxvaiM9.js} +2 -2
  215. package/ccw/frontend/dist/assets/{messages-square-C6h08ple.js.map → messages-square-bjxvaiM9.js.map} +1 -1
  216. package/ccw/frontend/dist/assets/{minimize-2-Cbu2yRzi.js → minimize-2-CGfBKD_V.js} +2 -2
  217. package/ccw/frontend/dist/assets/{minimize-2-Cbu2yRzi.js.map → minimize-2-CGfBKD_V.js.map} +1 -1
  218. package/ccw/frontend/dist/assets/{package-CoLVUZGJ.js → package-nzWY6ilt.js} +2 -2
  219. package/ccw/frontend/dist/assets/{package-CoLVUZGJ.js.map → package-nzWY6ilt.js.map} +1 -1
  220. package/ccw/frontend/dist/assets/{plug-BYTYqsw1.js → plug-CiLce49C.js} +2 -2
  221. package/ccw/frontend/dist/assets/{plug-BYTYqsw1.js.map → plug-CiLce49C.js.map} +1 -1
  222. package/ccw/frontend/dist/assets/{power-DmIojFl-.js → power-CFLmB-U9.js} +2 -2
  223. package/ccw/frontend/dist/assets/{power-DmIojFl-.js.map → power-CFLmB-U9.js.map} +1 -1
  224. package/ccw/frontend/dist/assets/{save-BFa03OnG.js → save-DuO6OF0C.js} +2 -2
  225. package/ccw/frontend/dist/assets/{save-BFa03OnG.js.map → save-DuO6OF0C.js.map} +1 -1
  226. package/ccw/frontend/dist/assets/{send-Vet3sN4J.js → send-CZk9p0mM.js} +2 -2
  227. package/ccw/frontend/dist/assets/{send-Vet3sN4J.js.map → send-CZk9p0mM.js.map} +1 -1
  228. package/ccw/frontend/dist/assets/{square-check-big-B9nzZRfE.js → square-check-big-BY_1YQQg.js} +2 -2
  229. package/ccw/frontend/dist/assets/{square-check-big-B9nzZRfE.js.map → square-check-big-BY_1YQQg.js.map} +1 -1
  230. package/ccw/frontend/dist/assets/{square-pen-C7K13x4Z.js → square-pen-CnZgm6g-.js} +2 -2
  231. package/ccw/frontend/dist/assets/{square-pen-C7K13x4Z.js.map → square-pen-CnZgm6g-.js.map} +1 -1
  232. package/ccw/frontend/dist/assets/{star-BCQHcnSe.js → star-Cn1F0qy7.js} +2 -2
  233. package/ccw/frontend/dist/assets/{star-BCQHcnSe.js.map → star-Cn1F0qy7.js.map} +1 -1
  234. package/ccw/frontend/dist/assets/{style-CJsrp48L.js → style-Dxs1iXCV.js} +2 -2
  235. package/ccw/frontend/dist/assets/{style-CJsrp48L.js.map → style-Dxs1iXCV.js.map} +1 -1
  236. package/ccw/frontend/dist/assets/{target-CBzCJCB1.js → target-Bz1fLRKH.js} +2 -2
  237. package/ccw/frontend/dist/assets/{target-CBzCJCB1.js.map → target-Bz1fLRKH.js.map} +1 -1
  238. package/ccw/frontend/dist/assets/{test-tube-BYTc5mvQ.js → test-tube-C6qCYlDr.js} +2 -2
  239. package/ccw/frontend/dist/assets/{test-tube-BYTc5mvQ.js.map → test-tube-C6qCYlDr.js.map} +1 -1
  240. package/ccw/frontend/dist/assets/{upload-DzyQj7ib.js → upload-C71kd4Qs.js} +2 -2
  241. package/ccw/frontend/dist/assets/{upload-DzyQj7ib.js.map → upload-C71kd4Qs.js.map} +1 -1
  242. package/ccw/frontend/dist/assets/{useApiSettings-CFPww7gU.js → useApiSettings-CqP2BAJ7.js} +2 -2
  243. package/ccw/frontend/dist/assets/{useApiSettings-CFPww7gU.js.map → useApiSettings-CqP2BAJ7.js.map} +1 -1
  244. package/ccw/frontend/dist/assets/{useCli-ByL_a5CD.js → useCli-PCoPoVeM.js} +2 -2
  245. package/ccw/frontend/dist/assets/{useCli-ByL_a5CD.js.map → useCli-PCoPoVeM.js.map} +1 -1
  246. package/ccw/frontend/dist/assets/{useCommands-BvKIoOzB.js → useCommands-3OfPQPw4.js} +2 -2
  247. package/ccw/frontend/dist/assets/{useCommands-BvKIoOzB.js.map → useCommands-3OfPQPw4.js.map} +1 -1
  248. package/ccw/frontend/dist/assets/{useDebounce-CmKmoP7n.js → useDebounce-bXiFhQx9.js} +2 -2
  249. package/ccw/frontend/dist/assets/{useDebounce-CmKmoP7n.js.map → useDebounce-bXiFhQx9.js.map} +1 -1
  250. package/ccw/frontend/dist/assets/{useFileExplorer-G5UoArCU.js → useFileExplorer-DEyUm46_.js} +2 -2
  251. package/ccw/frontend/dist/assets/{useFileExplorer-G5UoArCU.js.map → useFileExplorer-DEyUm46_.js.map} +1 -1
  252. package/ccw/frontend/dist/assets/{useLocale-D2iHK44M.js → useLocale-sXTrdxcJ.js} +2 -2
  253. package/ccw/frontend/dist/assets/{useLocale-D2iHK44M.js.map → useLocale-sXTrdxcJ.js.map} +1 -1
  254. package/ccw/frontend/dist/assets/{useSkills-CYU4zqhm.js → useSkills-D0W0kXYm.js} +3 -3
  255. package/ccw/frontend/dist/assets/{useSkills-CYU4zqhm.js.map → useSkills-D0W0kXYm.js.map} +1 -1
  256. package/ccw/frontend/dist/assets/{useSystemSettings-JznNpij7.js → useSystemSettings-DZ-8lZsG.js} +2 -2
  257. package/ccw/frontend/dist/assets/{useSystemSettings-JznNpij7.js.map → useSystemSettings-DZ-8lZsG.js.map} +1 -1
  258. package/ccw/frontend/dist/assets/{wand-sparkles-DqS0VCeN.js → wand-sparkles-83GmAYuw.js} +2 -2
  259. package/ccw/frontend/dist/assets/{wand-sparkles-DqS0VCeN.js.map → wand-sparkles-83GmAYuw.js.map} +1 -1
  260. package/ccw/frontend/dist/index.html +1 -1
  261. package/package.json +1 -1
  262. package/.claude/skills/team-arch-opt/role-specs/analyzer.md +0 -80
  263. package/.claude/skills/team-arch-opt/role-specs/designer.md +0 -118
  264. package/.claude/skills/team-arch-opt/role-specs/refactorer.md +0 -106
  265. package/.claude/skills/team-arch-opt/role-specs/reviewer.md +0 -116
  266. package/.claude/skills/team-arch-opt/role-specs/validator.md +0 -117
  267. package/.claude/skills/team-brainstorm/role-specs/challenger.md +0 -63
  268. package/.claude/skills/team-brainstorm/role-specs/evaluator.md +0 -58
  269. package/.claude/skills/team-brainstorm/role-specs/ideator.md +0 -71
  270. package/.claude/skills/team-brainstorm/role-specs/synthesizer.md +0 -59
  271. package/.claude/skills/team-frontend/role-specs/analyst.md +0 -91
  272. package/.claude/skills/team-frontend/role-specs/architect.md +0 -85
  273. package/.claude/skills/team-frontend/role-specs/developer.md +0 -92
  274. package/.claude/skills/team-frontend/role-specs/qa.md +0 -78
  275. package/.claude/skills/team-issue/role-specs/explorer.md +0 -95
  276. package/.claude/skills/team-issue/role-specs/implementer.md +0 -89
  277. package/.claude/skills/team-issue/role-specs/integrator.md +0 -86
  278. package/.claude/skills/team-issue/role-specs/planner.md +0 -83
  279. package/.claude/skills/team-issue/role-specs/reviewer.md +0 -89
  280. package/.claude/skills/team-iterdev/role-specs/architect.md +0 -64
  281. package/.claude/skills/team-iterdev/role-specs/developer.md +0 -73
  282. package/.claude/skills/team-iterdev/role-specs/reviewer.md +0 -65
  283. package/.claude/skills/team-iterdev/role-specs/tester.md +0 -87
  284. package/.claude/skills/team-perf-opt/role-specs/benchmarker.md +0 -110
  285. package/.claude/skills/team-perf-opt/role-specs/optimizer.md +0 -102
  286. package/.claude/skills/team-perf-opt/role-specs/profiler.md +0 -73
  287. package/.claude/skills/team-perf-opt/role-specs/reviewer.md +0 -91
  288. package/.claude/skills/team-perf-opt/role-specs/strategist.md +0 -114
  289. package/.claude/skills/team-planex/role-specs/executor.md +0 -90
  290. package/.claude/skills/team-planex/role-specs/planner.md +0 -110
  291. package/.claude/skills/team-quality-assurance/role-specs/analyst.md +0 -79
  292. package/.claude/skills/team-quality-assurance/role-specs/executor.md +0 -64
  293. package/.claude/skills/team-quality-assurance/role-specs/generator.md +0 -67
  294. package/.claude/skills/team-quality-assurance/role-specs/scout.md +0 -66
  295. package/.claude/skills/team-quality-assurance/role-specs/strategist.md +0 -70
  296. package/.claude/skills/team-review/role-specs/fixer.md +0 -75
  297. package/.claude/skills/team-review/role-specs/reviewer.md +0 -66
  298. package/.claude/skills/team-review/role-specs/scanner.md +0 -70
  299. package/.claude/skills/team-roadmap-dev/role-specs/executor.md +0 -71
  300. package/.claude/skills/team-roadmap-dev/role-specs/planner.md +0 -77
  301. package/.claude/skills/team-roadmap-dev/role-specs/verifier.md +0 -73
  302. package/.claude/skills/team-tech-debt/role-specs/assessor.md +0 -70
  303. package/.claude/skills/team-tech-debt/role-specs/executor.md +0 -80
  304. package/.claude/skills/team-tech-debt/role-specs/planner.md +0 -71
  305. package/.claude/skills/team-tech-debt/role-specs/scanner.md +0 -85
  306. package/.claude/skills/team-tech-debt/role-specs/validator.md +0 -83
  307. package/.claude/skills/team-testing/role-specs/analyst.md +0 -94
  308. package/.claude/skills/team-testing/role-specs/executor.md +0 -97
  309. package/.claude/skills/team-testing/role-specs/generator.md +0 -96
  310. package/.claude/skills/team-testing/role-specs/strategist.md +0 -82
  311. package/.claude/skills/team-uidesign/role-specs/designer.md +0 -72
  312. package/.claude/skills/team-uidesign/role-specs/implementer.md +0 -74
  313. package/.claude/skills/team-uidesign/role-specs/researcher.md +0 -84
  314. package/.claude/skills/team-uidesign/role-specs/reviewer.md +0 -70
  315. package/.claude/skills/team-ux-improve/role-specs/designer.md +0 -191
  316. package/.claude/skills/team-ux-improve/role-specs/diagnoser.md +0 -110
  317. package/.claude/skills/team-ux-improve/role-specs/explorer.md +0 -109
  318. package/.claude/skills/team-ux-improve/role-specs/implementer.md +0 -164
  319. package/.claude/skills/team-ux-improve/role-specs/scanner.md +0 -117
  320. package/.claude/skills/team-ux-improve/role-specs/tester.md +0 -163
  321. package/ccw/frontend/dist/assets/CodexLensPage-My6DnfN6.js +0 -2
  322. package/ccw/frontend/dist/assets/CodexLensPage-My6DnfN6.js.map +0 -1
@@ -0,0 +1,90 @@
1
+ # Synthesis Prompt Template
2
+
3
+ Phase 04 使用此模板构造 ccw cli 提示词,让 Gemini 综合所有步骤分析,产出跨步骤优化建议。
4
+
5
+ ## Template
6
+
7
+ ```
8
+ PURPOSE: Synthesize all step analyses into a holistic workflow optimization assessment. Evaluate cross-step concerns: ordering, handoff quality, redundancy, bottlenecks, and overall workflow coherence.
9
+
10
+ WORKFLOW OVERVIEW:
11
+ Name: ${workflowName}
12
+ Goal: ${workflowContext}
13
+ Steps: ${stepCount}
14
+ Average Quality: ${avgScore}/100
15
+ Weakest Step: ${minScore}/100
16
+ Total Issues: ${totalIssues} (${totalHighIssues} high severity)
17
+
18
+ SCORE SUMMARY:
19
+ ${scoreSummary}
20
+
21
+ COMPLETE PROCESS LOG:
22
+ ${processLog}
23
+
24
+ DETAILED STEP ANALYSES:
25
+ ${stepAnalyses}
26
+
27
+ TASK:
28
+ 1. **Workflow Coherence**: Do steps form a logical sequence? Any missing steps?
29
+ 2. **Handoff Quality**: Are step outputs well-consumed by subsequent steps? Data format mismatches?
30
+ 3. **Redundancy Detection**: Do any steps duplicate work? Overlapping concerns?
31
+ 4. **Bottleneck Identification**: Which steps are bottlenecks (lowest quality, longest duration)?
32
+ 5. **Step Ordering**: Would reordering steps improve outcomes?
33
+ 6. **Missing Steps**: Are there gaps in the pipeline that need additional steps?
34
+ 7. **Per-Step Optimization**: Top 3 improvements per underperforming step
35
+ 8. **Workflow-Level Optimization**: Structural changes to the overall pipeline
36
+
37
+ EXPECTED OUTPUT (strict JSON, no markdown):
38
+ {
39
+ "workflow_score": <0-100>,
40
+ "coherence": {
41
+ "score": <0-100>,
42
+ "assessment": "<logical flow evaluation>",
43
+ "gaps": ["<missing step or transition>"]
44
+ },
45
+ "handoff_quality": {
46
+ "score": <0-100>,
47
+ "issues": [
48
+ { "from_step": "<step name>", "to_step": "<step name>", "issue": "<description>", "fix": "<suggestion>" }
49
+ ]
50
+ },
51
+ "redundancy": {
52
+ "found": <true|false>,
53
+ "items": [
54
+ { "steps": ["<step1>", "<step2>"], "description": "<what overlaps>", "recommendation": "<merge or remove>" }
55
+ ]
56
+ },
57
+ "bottlenecks": [
58
+ { "step": "<step name>", "reason": "<why it's a bottleneck>", "impact": "high|medium|low", "fix": "<suggestion>" }
59
+ ],
60
+ "ordering_suggestions": [
61
+ { "current": "<current order description>", "proposed": "<new order>", "rationale": "<why>" }
62
+ ],
63
+ "per_step_improvements": [
64
+ { "step": "<step name>", "improvements": [
65
+ { "priority": "high|medium|low", "description": "<what to change>", "rationale": "<why>" }
66
+ ]}
67
+ ],
68
+ "workflow_improvements": [
69
+ { "priority": "high|medium|low", "category": "structure|handoff|performance|quality", "description": "<change>", "rationale": "<why>", "affected_steps": ["<step names>"] }
70
+ ],
71
+ "summary": "<2-3 sentence executive summary of workflow health and top recommendations>"
72
+ }
73
+
74
+ CONSTRAINTS: Be specific, reference step names and artifact details, output ONLY JSON
75
+ ```
76
+
77
+ ## Variable Substitution
78
+
79
+ | Variable | Source | Description |
80
+ |----------|--------|-------------|
81
+ | `${workflowName}` | workflow-state.json | Workflow 名称 |
82
+ | `${workflowContext}` | workflow-state.json | Workflow 目标 |
83
+ | `${stepCount}` | workflow-state.json | 总步骤数 |
84
+ | `${avgScore}` | Phase 04 computes | 所有步骤平均分 |
85
+ | `${minScore}` | Phase 04 computes | 最低步骤分 |
86
+ | `${totalIssues}` | Phase 04 computes | 总问题数 |
87
+ | `${totalHighIssues}` | Phase 04 computes | 高优先级问题数 |
88
+ | `${scoreSummary}` | Phase 04 builds | 每步分数一行 |
89
+ | `${processLog}` | process-log.md | 完整过程日志 |
90
+ | `${stepAnalyses}` | Phase 04 reads | 所有 step-N-analysis.md 内容 |
@@ -96,6 +96,7 @@ Step 1: Topic Understanding
96
96
  Step 2: Exploration (Inline, No Agents)
97
97
  ├─ Detect codebase → search relevant modules, patterns
98
98
  │ ├─ Run `ccw spec load --category exploration` (if spec system available)
99
+ │ ├─ Run `ccw spec load --category debug` (known issues and root-cause notes)
99
100
  │ └─ Use Grep, Glob, Read, mcp__ace-tool__search_context
100
101
  ├─ Multi-perspective analysis (if selected, serial)
101
102
  │ ├─ Single: Comprehensive analysis
@@ -320,6 +321,7 @@ const hasCodebase = Bash(`
320
321
  if (hasCodebase !== 'none') {
321
322
  // 1. Read project metadata (if exists)
322
323
  // - Run `ccw spec load --category exploration` (load project specs)
324
+ // - Run `ccw spec load --category debug` (known issues and root-cause notes)
323
325
  // - .workflow/specs/*.md (project conventions)
324
326
 
325
327
  // 2. Search codebase for relevant content
@@ -22,6 +22,10 @@ Enhanced evidence-based debugging with **documented exploration process**. Recor
22
22
 
23
23
  **$BUG**
24
24
 
25
+ ## Project Context
26
+
27
+ Run `ccw spec load --category debug` for known issues, workarounds, and root-cause notes.
28
+
25
29
  ## Execution Process
26
30
 
27
31
  ```
@@ -232,6 +232,7 @@ const agentId = spawn_agent({
232
232
  ### MANDATORY FIRST STEPS (Agent Execute)
233
233
  1. **Read role definition**: ~/.codex/agents/{agent-type}.md (MUST read first)
234
234
  2. Execute: ccw spec load --category exploration
235
+ 3. Execute: ccw spec load --category debug (known issues cross-reference)
235
236
 
236
237
  ## TASK CONTEXT
237
238
  ${taskContext}
@@ -95,6 +95,7 @@ dimensions.forEach(dimension => {
95
95
  4. Validate file access: bash(ls -la ${targetFiles.join(' ')})
96
96
  5. Execute: cat ~/.ccw/workflows/cli-templates/schemas/review-dimension-results-schema.json (get output schema reference)
97
97
  6. Execute: ccw spec load --category "exploration execution" (technology stack and constraints)
98
+ 7. Execute: ccw spec load --category review (review standards and checklists)
98
99
 
99
100
  ---
100
101
 
@@ -217,6 +218,7 @@ dimensions.forEach(dimension => {
217
218
  5. Read review state: ${reviewStateJsonPath}
218
219
  6. Execute: cat ~/.ccw/workflows/cli-templates/schemas/review-dimension-results-schema.json (get output schema reference)
219
220
  7. Execute: ccw spec load --category "exploration execution" (technology stack and constraints)
221
+ 8. Execute: ccw spec load --category review (review standards and checklists)
220
222
 
221
223
  ---
222
224
 
@@ -335,6 +337,7 @@ const deepDiveAgentId = spawn_agent({
335
337
  5. Read test files: bash(find ${projectDir}/tests -name "*${basename(file, '.ts')}*" -type f)
336
338
  6. Execute: cat ~/.ccw/workflows/cli-templates/schemas/review-deep-dive-results-schema.json (get output schema reference)
337
339
  7. Execute: ccw spec load --category "exploration execution" (technology stack and constraints for remediation)
340
+ 8. Execute: ccw spec load --category review (review standards and checklists)
338
341
 
339
342
  ---
340
343
 
@@ -0,0 +1,186 @@
1
+ # Validation Reporter Agent
2
+
3
+ Validate generated skill package structure and content, reporting results with PASS/WARN/FAIL verdict.
4
+
5
+ ## Identity
6
+
7
+ - **Type**: `interactive`
8
+ - **Role File**: `agents/validation-reporter.md`
9
+ - **Responsibility**: Validate generated skill package structure and content, report results
10
+
11
+ ## Boundaries
12
+
13
+ ### MUST
14
+
15
+ - Load role definition via MANDATORY FIRST STEPS pattern
16
+ - Load the generated skill package from session artifacts
17
+ - Validate all structural integrity checks
18
+ - Produce structured output with clear PASS/WARN/FAIL verdict
19
+ - Include specific file references in findings
20
+
21
+ ### MUST NOT
22
+
23
+ - Skip the MANDATORY FIRST STEPS role loading
24
+ - Modify generated skill files
25
+ - Produce unstructured output
26
+ - Report PASS without actually validating all checks
27
+
28
+ ---
29
+
30
+ ## Toolbox
31
+
32
+ ### Available Tools
33
+
34
+ | Tool | Type | Purpose |
35
+ |------|------|---------|
36
+ | `Read` | builtin | Load generated skill files and verify content |
37
+ | `Glob` | builtin | Find files by pattern in skill package |
38
+ | `Grep` | builtin | Search for cross-references and patterns |
39
+ | `Bash` | builtin | Run validation commands, check JSON syntax |
40
+
41
+ ### Tool Usage Patterns
42
+
43
+ **Read Pattern**: Load skill package files for validation
44
+ ```
45
+ Read("{session_folder}/artifacts/<skill-name>/SKILL.md")
46
+ Read("{session_folder}/artifacts/<skill-name>/team-config.json")
47
+ ```
48
+
49
+ **Glob Pattern**: Discover actual role files
50
+ ```
51
+ Glob("{session_folder}/artifacts/<skill-name>/roles/*.md")
52
+ Glob("{session_folder}/artifacts/<skill-name>/commands/*.md")
53
+ ```
54
+
55
+ **Grep Pattern**: Check cross-references
56
+ ```
57
+ Grep("role:", "{session_folder}/artifacts/<skill-name>/SKILL.md")
58
+ ```
59
+
60
+ ---
61
+
62
+ ## Execution
63
+
64
+ ### Phase 1: Package Loading
65
+
66
+ **Objective**: Load the generated skill package from session artifacts.
67
+
68
+ **Input**:
69
+
70
+ | Source | Required | Description |
71
+ |--------|----------|-------------|
72
+ | Skill package path | Yes | Path to generated skill directory in artifacts/ |
73
+ | teamConfig.json | Yes | Original configuration used for generation |
74
+
75
+ **Steps**:
76
+
77
+ 1. Read SKILL.md from the generated package
78
+ 2. Read team-config.json from the generated package
79
+ 3. Enumerate all files in the package using Glob
80
+ 4. Read teamConfig.json from session folder for comparison
81
+
82
+ **Output**: Loaded skill package contents and file inventory
83
+
84
+ ---
85
+
86
+ ### Phase 2: Structural Validation
87
+
88
+ **Objective**: Validate structural integrity of the generated skill package.
89
+
90
+ **Steps**:
91
+
92
+ 1. **SKILL.md validation**:
93
+ - Verify file exists
94
+ - Verify valid frontmatter (name, description, allowed-tools)
95
+ - Verify Role Registry table is present
96
+
97
+ 2. **Role Registry consistency**:
98
+ - Extract roles listed in SKILL.md Role Registry table
99
+ - Glob actual files in roles/ directory
100
+ - Compare: every registry entry has a matching file, every file has a registry entry
101
+
102
+ 3. **Role file validation**:
103
+ - Read each role.md in roles/ directory
104
+ - Verify valid frontmatter (prefix, inner_loop, message_types)
105
+ - Check frontmatter values are non-empty
106
+
107
+ 4. **Pipeline validation**:
108
+ - Extract pipeline stages from SKILL.md or specs/pipelines.md
109
+ - Verify each stage references an existing role
110
+
111
+ 5. **team-config.json validation**:
112
+ - Verify file exists and is valid JSON
113
+ - Verify roles listed match SKILL.md Role Registry
114
+
115
+ 6. **Cross-reference validation**:
116
+ - Check coordinator commands/ files exist if referenced in SKILL.md
117
+ - Verify no broken file paths in cross-references
118
+
119
+ 7. **Issue classification**:
120
+
121
+ | Finding Severity | Condition | Impact |
122
+ |------------------|-----------|--------|
123
+ | FAIL | Missing required file or broken structure | Package unusable |
124
+ | WARN | Inconsistency between files or missing optional content | Package may have issues |
125
+ | INFO | Style or formatting suggestions | Non-blocking |
126
+
127
+ **Output**: Validation findings with severity classifications
128
+
129
+ ---
130
+
131
+ ### Phase 3: Verdict Report
132
+
133
+ **Objective**: Report validation results with overall verdict.
134
+
135
+ | Verdict | Condition | Action |
136
+ |---------|-----------|--------|
137
+ | PASS | No FAIL findings, zero or few WARN | Package is ready for use |
138
+ | WARN | No FAIL findings, but multiple WARN issues | Package usable with noted issues |
139
+ | FAIL | One or more FAIL findings | Package requires regeneration or manual fix |
140
+
141
+ **Output**: Verdict with detailed findings
142
+
143
+ ---
144
+
145
+ ## Structured Output Template
146
+
147
+ ```
148
+ ## Summary
149
+ - Verdict: PASS | WARN | FAIL
150
+ - Skill: <skill-name>
151
+ - Files checked: <count>
152
+
153
+ ## Findings
154
+ - [FAIL] description with file reference (if any)
155
+ - [WARN] description with file reference (if any)
156
+ - [INFO] description with file reference (if any)
157
+
158
+ ## Validation Details
159
+ - SKILL.md frontmatter: OK | MISSING | INVALID
160
+ - Role Registry vs roles/: OK | MISMATCH (<details>)
161
+ - Role frontmatter: OK | INVALID (<which files>)
162
+ - Pipeline references: OK | BROKEN (<which stages>)
163
+ - team-config.json: OK | MISSING | INVALID
164
+ - Cross-references: OK | BROKEN (<which paths>)
165
+
166
+ ## Verdict
167
+ - PASS: Package is structurally valid and ready for use
168
+ OR
169
+ - WARN: Package is usable but has noted issues
170
+ 1. Issue description
171
+ OR
172
+ - FAIL: Package requires fixes before use
173
+ 1. Issue description + suggested resolution
174
+ ```
175
+
176
+ ---
177
+
178
+ ## Error Handling
179
+
180
+ | Scenario | Resolution |
181
+ |----------|------------|
182
+ | Skill package directory not found | Report as FAIL, request correct path |
183
+ | SKILL.md missing | Report as FAIL finding, cannot proceed with full validation |
184
+ | team-config.json invalid JSON | Report as FAIL, include parse error |
185
+ | Role file unreadable | Report as WARN, note which file |
186
+ | Timeout approaching | Output current findings with "PARTIAL" status |
@@ -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 |