claude-code-workflow 7.2.9 → 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 (324) 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 +64 -103
  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/roadmap-with-file/SKILL.md +11 -17
  44. package/.codex/skills/team-designer/agents/validation-reporter.md +186 -0
  45. package/.codex/skills/team-iterdev/agents/gc-controller.md +193 -0
  46. package/.codex/skills/team-iterdev/agents/task-analyzer.md +206 -0
  47. package/.codex/skills/team-lifecycle-v4/agents/quality-gate.md +165 -0
  48. package/.codex/skills/team-lifecycle-v4/agents/requirement-clarifier.md +163 -0
  49. package/.codex/skills/team-lifecycle-v4/agents/supervisor.md +182 -0
  50. package/.codex/skills/team-uidesign/agents/completion-handler.md +177 -0
  51. package/.codex/skills/team-uidesign/agents/gc-loop-handler.md +162 -0
  52. package/.codex/skills/workflow-test-fix-cycle/phases/01-test-fix-gen.md +4 -0
  53. package/.codex/skills/workflow-test-fix-cycle/phases/02-test-cycle-execute.md +2 -0
  54. package/ccw/dist/commands/spec.d.ts.map +1 -1
  55. package/ccw/dist/commands/spec.js +9 -4
  56. package/ccw/dist/commands/spec.js.map +1 -1
  57. package/ccw/dist/core/routes/codexlens-routes.d.ts.map +1 -1
  58. package/ccw/dist/core/routes/codexlens-routes.js +3 -1
  59. package/ccw/dist/core/routes/codexlens-routes.js.map +1 -1
  60. package/ccw/dist/tools/spec-index-builder.d.ts +8 -4
  61. package/ccw/dist/tools/spec-index-builder.d.ts.map +1 -1
  62. package/ccw/dist/tools/spec-index-builder.js +8 -4
  63. package/ccw/dist/tools/spec-index-builder.js.map +1 -1
  64. package/ccw/dist/tools/spec-init.d.ts +1 -1
  65. package/ccw/dist/tools/spec-init.d.ts.map +1 -1
  66. package/ccw/dist/tools/spec-init.js +127 -0
  67. package/ccw/dist/tools/spec-init.js.map +1 -1
  68. package/ccw/dist/tools/spec-loader.d.ts.map +1 -1
  69. package/ccw/dist/tools/spec-loader.js +2 -1
  70. package/ccw/dist/tools/spec-loader.js.map +1 -1
  71. package/ccw/frontend/dist/assets/{AlertDialog-gTMl4gSG.js → AlertDialog-BW9jiZ-p.js} +2 -2
  72. package/ccw/frontend/dist/assets/{AlertDialog-gTMl4gSG.js.map → AlertDialog-BW9jiZ-p.js.map} +1 -1
  73. package/ccw/frontend/dist/assets/{AnalysisPage-Bc4p4SvJ.js → AnalysisPage-ds-w_nVO.js} +2 -2
  74. package/ccw/frontend/dist/assets/{AnalysisPage-Bc4p4SvJ.js.map → AnalysisPage-ds-w_nVO.js.map} +1 -1
  75. package/ccw/frontend/dist/assets/{ApiSettingsPage-CVK108u2.js → ApiSettingsPage-DlCbXxTz.js} +2 -2
  76. package/ccw/frontend/dist/assets/{ApiSettingsPage-CVK108u2.js.map → ApiSettingsPage-DlCbXxTz.js.map} +1 -1
  77. package/ccw/frontend/dist/assets/{CliModeToggle-34Sjwl05.js → CliModeToggle-Dq3nL4fF.js} +2 -2
  78. package/ccw/frontend/dist/assets/{CliModeToggle-34Sjwl05.js.map → CliModeToggle-Dq3nL4fF.js.map} +1 -1
  79. package/ccw/frontend/dist/assets/{CliSessionSharePage-bJZAYI38.js → CliSessionSharePage-BNDkEE4u.js} +2 -2
  80. package/ccw/frontend/dist/assets/{CliSessionSharePage-bJZAYI38.js.map → CliSessionSharePage-BNDkEE4u.js.map} +1 -1
  81. package/ccw/frontend/dist/assets/{CliViewerPage-VYnQGjxU.js → CliViewerPage-ChM-uNx_.js} +2 -2
  82. package/ccw/frontend/dist/assets/{CliViewerPage-VYnQGjxU.js.map → CliViewerPage-ChM-uNx_.js.map} +1 -1
  83. package/ccw/frontend/dist/assets/CodexLensPage-DOcsYNQk.js +2 -0
  84. package/ccw/frontend/dist/assets/CodexLensPage-DOcsYNQk.js.map +1 -0
  85. package/ccw/frontend/dist/assets/{Collapsible-B_xd1Qbg.js → Collapsible-CRNbykXN.js} +2 -2
  86. package/ccw/frontend/dist/assets/{Collapsible-B_xd1Qbg.js.map → Collapsible-CRNbykXN.js.map} +1 -1
  87. package/ccw/frontend/dist/assets/{CommandsManagerPage-Bjx1bPbH.js → CommandsManagerPage-C2JWcemF.js} +2 -2
  88. package/ccw/frontend/dist/assets/{CommandsManagerPage-Bjx1bPbH.js.map → CommandsManagerPage-C2JWcemF.js.map} +1 -1
  89. package/ccw/frontend/dist/assets/{DeepWikiPage-EgHsHvAH.js → DeepWikiPage-CvleOtJy.js} +2 -2
  90. package/ccw/frontend/dist/assets/{DeepWikiPage-EgHsHvAH.js.map → DeepWikiPage-CvleOtJy.js.map} +1 -1
  91. package/ccw/frontend/dist/assets/{EndpointsPage-CuwpbCzK.js → EndpointsPage-CMOWQG64.js} +2 -2
  92. package/ccw/frontend/dist/assets/{EndpointsPage-CuwpbCzK.js.map → EndpointsPage-CMOWQG64.js.map} +1 -1
  93. package/ccw/frontend/dist/assets/{ExplorerPage-cvlx0Zw0.js → ExplorerPage-DaFPRlNo.js} +2 -2
  94. package/ccw/frontend/dist/assets/{ExplorerPage-cvlx0Zw0.js.map → ExplorerPage-DaFPRlNo.js.map} +1 -1
  95. package/ccw/frontend/dist/assets/{FixSessionPage-C74-MPza.js → FixSessionPage-CC4p04Az.js} +2 -2
  96. package/ccw/frontend/dist/assets/{FixSessionPage-C74-MPza.js.map → FixSessionPage-CC4p04Az.js.map} +1 -1
  97. package/ccw/frontend/dist/assets/{FloatingFileBrowser-x_-6y_n2.js → FloatingFileBrowser-DROn1xZ5.js} +2 -2
  98. package/ccw/frontend/dist/assets/{FloatingFileBrowser-x_-6y_n2.js.map → FloatingFileBrowser-DROn1xZ5.js.map} +1 -1
  99. package/ccw/frontend/dist/assets/{FloatingPanel-BGwmbJR1.js → FloatingPanel-CmL_yhDv.js} +2 -2
  100. package/ccw/frontend/dist/assets/{FloatingPanel-BGwmbJR1.js.map → FloatingPanel-CmL_yhDv.js.map} +1 -1
  101. package/ccw/frontend/dist/assets/{GraphExplorerPage-Bg5-aQxi.js → GraphExplorerPage-DCV5ybKE.js} +2 -2
  102. package/ccw/frontend/dist/assets/{GraphExplorerPage-Bg5-aQxi.js.map → GraphExplorerPage-DCV5ybKE.js.map} +1 -1
  103. package/ccw/frontend/dist/assets/{HistoryPage-C00fh0HE.js → HistoryPage-D0fYQZgc.js} +2 -2
  104. package/ccw/frontend/dist/assets/{HistoryPage-C00fh0HE.js.map → HistoryPage-D0fYQZgc.js.map} +1 -1
  105. package/ccw/frontend/dist/assets/{HookManagerPage-CtVTB_ae.js → HookManagerPage-D2FuJfsM.js} +2 -2
  106. package/ccw/frontend/dist/assets/{HookManagerPage-CtVTB_ae.js.map → HookManagerPage-D2FuJfsM.js.map} +1 -1
  107. package/ccw/frontend/dist/assets/{InstallationsPage-CYuMQDbC.js → InstallationsPage-tjklillZ.js} +2 -2
  108. package/ccw/frontend/dist/assets/{InstallationsPage-CYuMQDbC.js.map → InstallationsPage-tjklillZ.js.map} +1 -1
  109. package/ccw/frontend/dist/assets/{IssueHubPage-T_VSvUMh.js → IssueHubPage-E4JVrhO1.js} +2 -2
  110. package/ccw/frontend/dist/assets/{IssueHubPage-T_VSvUMh.js.map → IssueHubPage-E4JVrhO1.js.map} +1 -1
  111. package/ccw/frontend/dist/assets/{LiteTasksPage-DmcgvIvi.js → LiteTasksPage-aJuRoyLt.js} +2 -2
  112. package/ccw/frontend/dist/assets/{LiteTasksPage-DmcgvIvi.js.map → LiteTasksPage-aJuRoyLt.js.map} +1 -1
  113. package/ccw/frontend/dist/assets/{McpManagerPage-C_a7QSKz.js → McpManagerPage-BJeuWJv1.js} +2 -2
  114. package/ccw/frontend/dist/assets/{McpManagerPage-C_a7QSKz.js.map → McpManagerPage-BJeuWJv1.js.map} +1 -1
  115. package/ccw/frontend/dist/assets/{MemoryPage-CWKmXY5k.js → MemoryPage-BI4FAXhs.js} +2 -2
  116. package/ccw/frontend/dist/assets/{MemoryPage-CWKmXY5k.js.map → MemoryPage-BI4FAXhs.js.map} +1 -1
  117. package/ccw/frontend/dist/assets/{NotFoundPage-B1duXK6r.js → NotFoundPage-DD2svchp.js} +2 -2
  118. package/ccw/frontend/dist/assets/{NotFoundPage-B1duXK6r.js.map → NotFoundPage-DD2svchp.js.map} +1 -1
  119. package/ccw/frontend/dist/assets/{OrchestratorPage-Ib9TM6HE.js → OrchestratorPage-FC__7yYa.js} +2 -2
  120. package/ccw/frontend/dist/assets/{OrchestratorPage-Ib9TM6HE.js.map → OrchestratorPage-FC__7yYa.js.map} +1 -1
  121. package/ccw/frontend/dist/assets/{ProjectOverviewPage-sXSWMbF8.js → ProjectOverviewPage-DBB_-FzV.js} +2 -2
  122. package/ccw/frontend/dist/assets/{ProjectOverviewPage-sXSWMbF8.js.map → ProjectOverviewPage-DBB_-FzV.js.map} +1 -1
  123. package/ccw/frontend/dist/assets/{PromptHistoryPage-B6jaqG12.js → PromptHistoryPage-BwOAvCH8.js} +2 -2
  124. package/ccw/frontend/dist/assets/{PromptHistoryPage-B6jaqG12.js.map → PromptHistoryPage-BwOAvCH8.js.map} +1 -1
  125. package/ccw/frontend/dist/assets/{ReviewSessionPage-D5qJyr3s.js → ReviewSessionPage-Dd1-g_gp.js} +2 -2
  126. package/ccw/frontend/dist/assets/{ReviewSessionPage-D5qJyr3s.js.map → ReviewSessionPage-Dd1-g_gp.js.map} +1 -1
  127. package/ccw/frontend/dist/assets/{RulesManagerPage-DyawK8QE.js → RulesManagerPage-B3RGdsKD.js} +2 -2
  128. package/ccw/frontend/dist/assets/{RulesManagerPage-DyawK8QE.js.map → RulesManagerPage-B3RGdsKD.js.map} +1 -1
  129. package/ccw/frontend/dist/assets/{SessionDetailPage-Cym_RvC9.js → SessionDetailPage-DM-W5R8K.js} +2 -2
  130. package/ccw/frontend/dist/assets/{SessionDetailPage-Cym_RvC9.js.map → SessionDetailPage-DM-W5R8K.js.map} +1 -1
  131. package/ccw/frontend/dist/assets/{SessionsPage-Dkc1Hv8W.js → SessionsPage-BVz1KCc7.js} +2 -2
  132. package/ccw/frontend/dist/assets/{SessionsPage-Dkc1Hv8W.js.map → SessionsPage-BVz1KCc7.js.map} +1 -1
  133. package/ccw/frontend/dist/assets/{SettingsPage-Rik9cUIj.js → SettingsPage-ComW7EZS.js} +4 -4
  134. package/ccw/frontend/dist/assets/{SettingsPage-Rik9cUIj.js.map → SettingsPage-ComW7EZS.js.map} +1 -1
  135. package/ccw/frontend/dist/assets/{SkillsManagerPage-BGDWYAyI.js → SkillsManagerPage-CKom9XwV.js} +2 -2
  136. package/ccw/frontend/dist/assets/{SkillsManagerPage-BGDWYAyI.js.map → SkillsManagerPage-CKom9XwV.js.map} +1 -1
  137. package/ccw/frontend/dist/assets/{SpecsSettingsPage-CTiA1DMP.js → SpecsSettingsPage-DQz7WP2s.js} +2 -2
  138. package/ccw/frontend/dist/assets/{SpecsSettingsPage-CTiA1DMP.js.map → SpecsSettingsPage-DQz7WP2s.js.map} +1 -1
  139. package/ccw/frontend/dist/assets/{Switch-BgAFC-Wk.js → Switch-BPMdND9H.js} +2 -2
  140. package/ccw/frontend/dist/assets/{Switch-BgAFC-Wk.js.map → Switch-BPMdND9H.js.map} +1 -1
  141. package/ccw/frontend/dist/assets/{TabsNavigation-drSnu5jn.js → TabsNavigation-qqt70VYL.js} +2 -2
  142. package/ccw/frontend/dist/assets/{TabsNavigation-drSnu5jn.js.map → TabsNavigation-qqt70VYL.js.map} +1 -1
  143. package/ccw/frontend/dist/assets/{TaskDrawer-ePC__6-P.js → TaskDrawer-BqK_qiHX.js} +2 -2
  144. package/ccw/frontend/dist/assets/{TaskDrawer-ePC__6-P.js.map → TaskDrawer-BqK_qiHX.js.map} +1 -1
  145. package/ccw/frontend/dist/assets/{TeamPage-C6bdFWn8.js → TeamPage-u5_i0Rgh.js} +2 -2
  146. package/ccw/frontend/dist/assets/{TeamPage-C6bdFWn8.js.map → TeamPage-u5_i0Rgh.js.map} +1 -1
  147. package/ccw/frontend/dist/assets/{TerminalDashboardPage-Zofi_DZM.js → TerminalDashboardPage-rUtC9e40.js} +2 -2
  148. package/ccw/frontend/dist/assets/{TerminalDashboardPage-Zofi_DZM.js.map → TerminalDashboardPage-rUtC9e40.js.map} +1 -1
  149. package/ccw/frontend/dist/assets/{archive-Bza1KlB9.js → archive-C3u8YNQF.js} +2 -2
  150. package/ccw/frontend/dist/assets/{archive-Bza1KlB9.js.map → archive-C3u8YNQF.js.map} +1 -1
  151. package/ccw/frontend/dist/assets/{archive-restore-CpsDm-cG.js → archive-restore-DfQ998g5.js} +2 -2
  152. package/ccw/frontend/dist/assets/{archive-restore-CpsDm-cG.js.map → archive-restore-DfQ998g5.js.map} +1 -1
  153. package/ccw/frontend/dist/assets/{arrow-right-CibG_LVO.js → arrow-right-BshJM9Po.js} +2 -2
  154. package/ccw/frontend/dist/assets/{arrow-right-CibG_LVO.js.map → arrow-right-BshJM9Po.js.map} +1 -1
  155. package/ccw/frontend/dist/assets/{bookmark-plus-BheO8EgG.js → bookmark-plus-D03qJyOZ.js} +2 -2
  156. package/ccw/frontend/dist/assets/{bookmark-plus-BheO8EgG.js.map → bookmark-plus-D03qJyOZ.js.map} +1 -1
  157. package/ccw/frontend/dist/assets/{bot-BlhM0Nl0.js → bot-CyzWuwq0.js} +2 -2
  158. package/ccw/frontend/dist/assets/{bot-BlhM0Nl0.js.map → bot-CyzWuwq0.js.map} +1 -1
  159. package/ccw/frontend/dist/assets/{braces-Dqjg_eCO.js → braces-BPgtyjsG.js} +2 -2
  160. package/ccw/frontend/dist/assets/{braces-Dqjg_eCO.js.map → braces-BPgtyjsG.js.map} +1 -1
  161. package/ccw/frontend/dist/assets/{circle-stop-DYZSLYU0.js → circle-stop-Dix1AOmw.js} +2 -2
  162. package/ccw/frontend/dist/assets/{circle-stop-DYZSLYU0.js.map → circle-stop-Dix1AOmw.js.map} +1 -1
  163. package/ccw/frontend/dist/assets/{cpu-DWCyAOAv.js → cpu-CCQ4Q0Zh.js} +2 -2
  164. package/ccw/frontend/dist/assets/{cpu-DWCyAOAv.js.map → cpu-CCQ4Q0Zh.js.map} +1 -1
  165. package/ccw/frontend/dist/assets/{ellipsis-vertical-DIyoSEHx.js → ellipsis-vertical-BpTysg-Y.js} +2 -2
  166. package/ccw/frontend/dist/assets/{ellipsis-vertical-DIyoSEHx.js.map → ellipsis-vertical-BpTysg-Y.js.map} +1 -1
  167. package/ccw/frontend/dist/assets/{eye-DUy7aLEx.js → eye-DGY1rAZs.js} +2 -2
  168. package/ccw/frontend/dist/assets/{eye-DUy7aLEx.js.map → eye-DGY1rAZs.js.map} +1 -1
  169. package/ccw/frontend/dist/assets/{eye-off-CGRUVRDR.js → eye-off-D8t3JfWG.js} +2 -2
  170. package/ccw/frontend/dist/assets/{eye-off-CGRUVRDR.js.map → eye-off-D8t3JfWG.js.map} +1 -1
  171. package/ccw/frontend/dist/assets/{file-json-BxLBtU9d.js → file-json-BAdJb0n8.js} +2 -2
  172. package/ccw/frontend/dist/assets/{file-json-BxLBtU9d.js.map → file-json-BAdJb0n8.js.map} +1 -1
  173. package/ccw/frontend/dist/assets/{file-text-BoHsW2es.js → file-text-DrJFiOUB.js} +2 -2
  174. package/ccw/frontend/dist/assets/{file-text-BoHsW2es.js.map → file-text-DrJFiOUB.js.map} +1 -1
  175. package/ccw/frontend/dist/assets/{filter-B4vOqP6B.js → filter-CKqzYbz7.js} +2 -2
  176. package/ccw/frontend/dist/assets/{filter-B4vOqP6B.js.map → filter-CKqzYbz7.js.map} +1 -1
  177. package/ccw/frontend/dist/assets/{folder-BKhwCNFG.js → folder-CV8511y9.js} +2 -2
  178. package/ccw/frontend/dist/assets/{folder-BKhwCNFG.js.map → folder-CV8511y9.js.map} +1 -1
  179. package/ccw/frontend/dist/assets/{gauge-Dgf64gkT.js → gauge-XKvmu_uU.js} +2 -2
  180. package/ccw/frontend/dist/assets/{gauge-Dgf64gkT.js.map → gauge-XKvmu_uU.js.map} +1 -1
  181. package/ccw/frontend/dist/assets/{globe-Cus_S6Ux.js → globe-C56cDUzX.js} +2 -2
  182. package/ccw/frontend/dist/assets/{globe-Cus_S6Ux.js.map → globe-C56cDUzX.js.map} +1 -1
  183. package/ccw/frontend/dist/assets/{grid-3x3-DM08hpAN.js → grid-3x3-Bya-suFW.js} +2 -2
  184. package/ccw/frontend/dist/assets/{grid-3x3-DM08hpAN.js.map → grid-3x3-Bya-suFW.js.map} +1 -1
  185. package/ccw/frontend/dist/assets/{hard-drive-eCtll84F.js → hard-drive-CmuTZpsB.js} +2 -2
  186. package/ccw/frontend/dist/assets/{hard-drive-eCtll84F.js.map → hard-drive-CmuTZpsB.js.map} +1 -1
  187. package/ccw/frontend/dist/assets/{hash-Bd1RD285.js → hash-CRPT_tJQ.js} +2 -2
  188. package/ccw/frontend/dist/assets/{hash-Bd1RD285.js.map → hash-CRPT_tJQ.js.map} +1 -1
  189. package/ccw/frontend/dist/assets/{history-eyyCQA6b.js → history-C1pJZQCL.js} +2 -2
  190. package/ccw/frontend/dist/assets/{history-eyyCQA6b.js.map → history-C1pJZQCL.js.map} +1 -1
  191. package/ccw/frontend/dist/assets/{index-ZnmWxcZg.js → index-B6TpijCe.js} +2 -2
  192. package/ccw/frontend/dist/assets/{index-ZnmWxcZg.js.map → index-B6TpijCe.js.map} +1 -1
  193. package/ccw/frontend/dist/assets/{index-b2C0iFd1.js → index-Bcq-7r6F.js} +2 -2
  194. package/ccw/frontend/dist/assets/{index-b2C0iFd1.js.map → index-Bcq-7r6F.js.map} +1 -1
  195. package/ccw/frontend/dist/assets/{index-Cs2ShCCy.js → index-CI8-rBff.js} +2 -2
  196. package/ccw/frontend/dist/assets/{index-Cs2ShCCy.js.map → index-CI8-rBff.js.map} +1 -1
  197. package/ccw/frontend/dist/assets/{index-CY6Lueph.js → index-Dmt9OiEf.js} +2 -2
  198. package/ccw/frontend/dist/assets/{index-CY6Lueph.js.map → index-Dmt9OiEf.js.map} +1 -1
  199. package/ccw/frontend/dist/assets/{index-DfeBbFXo.js → index-anSMmEF8.js} +2 -2
  200. package/ccw/frontend/dist/assets/{index-DfeBbFXo.js.map → index-anSMmEF8.js.map} +1 -1
  201. package/ccw/frontend/dist/assets/{index-B6I7GQC5.js → index-dWT2M6Ef.js} +4 -4
  202. package/ccw/frontend/dist/assets/{index-B6I7GQC5.js.map → index-dWT2M6Ef.js.map} +1 -1
  203. package/ccw/frontend/dist/assets/{layout-grid-ChrTrCby.js → layout-grid-TSO0BFQE.js} +2 -2
  204. package/ccw/frontend/dist/assets/{layout-grid-ChrTrCby.js.map → layout-grid-TSO0BFQE.js.map} +1 -1
  205. package/ccw/frontend/dist/assets/{lightbulb-CvXiTlzN.js → lightbulb-Caj6fIQD.js} +2 -2
  206. package/ccw/frontend/dist/assets/{lightbulb-CvXiTlzN.js.map → lightbulb-Caj6fIQD.js.map} +1 -1
  207. package/ccw/frontend/dist/assets/{link-2-W0Nl17ec.js → link-2-DE9lMxa-.js} +2 -2
  208. package/ccw/frontend/dist/assets/{link-2-W0Nl17ec.js.map → link-2-DE9lMxa-.js.map} +1 -1
  209. package/ccw/frontend/dist/assets/{link-CL4JmoHb.js → link-BZtPgLW0.js} +2 -2
  210. package/ccw/frontend/dist/assets/{link-CL4JmoHb.js.map → link-BZtPgLW0.js.map} +1 -1
  211. package/ccw/frontend/dist/assets/{list-CDmYFcio.js → list-DubWyY-U.js} +2 -2
  212. package/ccw/frontend/dist/assets/{list-CDmYFcio.js.map → list-DubWyY-U.js.map} +1 -1
  213. package/ccw/frontend/dist/assets/{map-pin-0Mfsw_3d.js → map-pin-DwN_48AF.js} +2 -2
  214. package/ccw/frontend/dist/assets/{map-pin-0Mfsw_3d.js.map → map-pin-DwN_48AF.js.map} +1 -1
  215. package/ccw/frontend/dist/assets/{messages-square-C6h08ple.js → messages-square-bjxvaiM9.js} +2 -2
  216. package/ccw/frontend/dist/assets/{messages-square-C6h08ple.js.map → messages-square-bjxvaiM9.js.map} +1 -1
  217. package/ccw/frontend/dist/assets/{minimize-2-Cbu2yRzi.js → minimize-2-CGfBKD_V.js} +2 -2
  218. package/ccw/frontend/dist/assets/{minimize-2-Cbu2yRzi.js.map → minimize-2-CGfBKD_V.js.map} +1 -1
  219. package/ccw/frontend/dist/assets/{package-CoLVUZGJ.js → package-nzWY6ilt.js} +2 -2
  220. package/ccw/frontend/dist/assets/{package-CoLVUZGJ.js.map → package-nzWY6ilt.js.map} +1 -1
  221. package/ccw/frontend/dist/assets/{plug-BYTYqsw1.js → plug-CiLce49C.js} +2 -2
  222. package/ccw/frontend/dist/assets/{plug-BYTYqsw1.js.map → plug-CiLce49C.js.map} +1 -1
  223. package/ccw/frontend/dist/assets/{power-DmIojFl-.js → power-CFLmB-U9.js} +2 -2
  224. package/ccw/frontend/dist/assets/{power-DmIojFl-.js.map → power-CFLmB-U9.js.map} +1 -1
  225. package/ccw/frontend/dist/assets/{save-BFa03OnG.js → save-DuO6OF0C.js} +2 -2
  226. package/ccw/frontend/dist/assets/{save-BFa03OnG.js.map → save-DuO6OF0C.js.map} +1 -1
  227. package/ccw/frontend/dist/assets/{send-Vet3sN4J.js → send-CZk9p0mM.js} +2 -2
  228. package/ccw/frontend/dist/assets/{send-Vet3sN4J.js.map → send-CZk9p0mM.js.map} +1 -1
  229. package/ccw/frontend/dist/assets/{square-check-big-B9nzZRfE.js → square-check-big-BY_1YQQg.js} +2 -2
  230. package/ccw/frontend/dist/assets/{square-check-big-B9nzZRfE.js.map → square-check-big-BY_1YQQg.js.map} +1 -1
  231. package/ccw/frontend/dist/assets/{square-pen-C7K13x4Z.js → square-pen-CnZgm6g-.js} +2 -2
  232. package/ccw/frontend/dist/assets/{square-pen-C7K13x4Z.js.map → square-pen-CnZgm6g-.js.map} +1 -1
  233. package/ccw/frontend/dist/assets/{star-BCQHcnSe.js → star-Cn1F0qy7.js} +2 -2
  234. package/ccw/frontend/dist/assets/{star-BCQHcnSe.js.map → star-Cn1F0qy7.js.map} +1 -1
  235. package/ccw/frontend/dist/assets/{style-CJsrp48L.js → style-Dxs1iXCV.js} +2 -2
  236. package/ccw/frontend/dist/assets/{style-CJsrp48L.js.map → style-Dxs1iXCV.js.map} +1 -1
  237. package/ccw/frontend/dist/assets/{target-CBzCJCB1.js → target-Bz1fLRKH.js} +2 -2
  238. package/ccw/frontend/dist/assets/{target-CBzCJCB1.js.map → target-Bz1fLRKH.js.map} +1 -1
  239. package/ccw/frontend/dist/assets/{test-tube-BYTc5mvQ.js → test-tube-C6qCYlDr.js} +2 -2
  240. package/ccw/frontend/dist/assets/{test-tube-BYTc5mvQ.js.map → test-tube-C6qCYlDr.js.map} +1 -1
  241. package/ccw/frontend/dist/assets/{upload-DzyQj7ib.js → upload-C71kd4Qs.js} +2 -2
  242. package/ccw/frontend/dist/assets/{upload-DzyQj7ib.js.map → upload-C71kd4Qs.js.map} +1 -1
  243. package/ccw/frontend/dist/assets/{useApiSettings-CFPww7gU.js → useApiSettings-CqP2BAJ7.js} +2 -2
  244. package/ccw/frontend/dist/assets/{useApiSettings-CFPww7gU.js.map → useApiSettings-CqP2BAJ7.js.map} +1 -1
  245. package/ccw/frontend/dist/assets/{useCli-ByL_a5CD.js → useCli-PCoPoVeM.js} +2 -2
  246. package/ccw/frontend/dist/assets/{useCli-ByL_a5CD.js.map → useCli-PCoPoVeM.js.map} +1 -1
  247. package/ccw/frontend/dist/assets/{useCommands-BvKIoOzB.js → useCommands-3OfPQPw4.js} +2 -2
  248. package/ccw/frontend/dist/assets/{useCommands-BvKIoOzB.js.map → useCommands-3OfPQPw4.js.map} +1 -1
  249. package/ccw/frontend/dist/assets/{useDebounce-CmKmoP7n.js → useDebounce-bXiFhQx9.js} +2 -2
  250. package/ccw/frontend/dist/assets/{useDebounce-CmKmoP7n.js.map → useDebounce-bXiFhQx9.js.map} +1 -1
  251. package/ccw/frontend/dist/assets/{useFileExplorer-G5UoArCU.js → useFileExplorer-DEyUm46_.js} +2 -2
  252. package/ccw/frontend/dist/assets/{useFileExplorer-G5UoArCU.js.map → useFileExplorer-DEyUm46_.js.map} +1 -1
  253. package/ccw/frontend/dist/assets/{useLocale-D2iHK44M.js → useLocale-sXTrdxcJ.js} +2 -2
  254. package/ccw/frontend/dist/assets/{useLocale-D2iHK44M.js.map → useLocale-sXTrdxcJ.js.map} +1 -1
  255. package/ccw/frontend/dist/assets/{useSkills-CYU4zqhm.js → useSkills-D0W0kXYm.js} +3 -3
  256. package/ccw/frontend/dist/assets/{useSkills-CYU4zqhm.js.map → useSkills-D0W0kXYm.js.map} +1 -1
  257. package/ccw/frontend/dist/assets/{useSystemSettings-JznNpij7.js → useSystemSettings-DZ-8lZsG.js} +2 -2
  258. package/ccw/frontend/dist/assets/{useSystemSettings-JznNpij7.js.map → useSystemSettings-DZ-8lZsG.js.map} +1 -1
  259. package/ccw/frontend/dist/assets/{wand-sparkles-DqS0VCeN.js → wand-sparkles-83GmAYuw.js} +2 -2
  260. package/ccw/frontend/dist/assets/{wand-sparkles-DqS0VCeN.js.map → wand-sparkles-83GmAYuw.js.map} +1 -1
  261. package/ccw/frontend/dist/index.html +1 -1
  262. package/package.json +1 -1
  263. package/.claude/skills/team-arch-opt/role-specs/analyzer.md +0 -80
  264. package/.claude/skills/team-arch-opt/role-specs/designer.md +0 -118
  265. package/.claude/skills/team-arch-opt/role-specs/refactorer.md +0 -106
  266. package/.claude/skills/team-arch-opt/role-specs/reviewer.md +0 -116
  267. package/.claude/skills/team-arch-opt/role-specs/validator.md +0 -117
  268. package/.claude/skills/team-brainstorm/role-specs/challenger.md +0 -63
  269. package/.claude/skills/team-brainstorm/role-specs/evaluator.md +0 -58
  270. package/.claude/skills/team-brainstorm/role-specs/ideator.md +0 -71
  271. package/.claude/skills/team-brainstorm/role-specs/synthesizer.md +0 -59
  272. package/.claude/skills/team-frontend/role-specs/analyst.md +0 -91
  273. package/.claude/skills/team-frontend/role-specs/architect.md +0 -85
  274. package/.claude/skills/team-frontend/role-specs/developer.md +0 -92
  275. package/.claude/skills/team-frontend/role-specs/qa.md +0 -78
  276. package/.claude/skills/team-issue/role-specs/explorer.md +0 -95
  277. package/.claude/skills/team-issue/role-specs/implementer.md +0 -89
  278. package/.claude/skills/team-issue/role-specs/integrator.md +0 -86
  279. package/.claude/skills/team-issue/role-specs/planner.md +0 -83
  280. package/.claude/skills/team-issue/role-specs/reviewer.md +0 -89
  281. package/.claude/skills/team-iterdev/role-specs/architect.md +0 -64
  282. package/.claude/skills/team-iterdev/role-specs/developer.md +0 -73
  283. package/.claude/skills/team-iterdev/role-specs/reviewer.md +0 -65
  284. package/.claude/skills/team-iterdev/role-specs/tester.md +0 -87
  285. package/.claude/skills/team-perf-opt/role-specs/benchmarker.md +0 -110
  286. package/.claude/skills/team-perf-opt/role-specs/optimizer.md +0 -102
  287. package/.claude/skills/team-perf-opt/role-specs/profiler.md +0 -73
  288. package/.claude/skills/team-perf-opt/role-specs/reviewer.md +0 -91
  289. package/.claude/skills/team-perf-opt/role-specs/strategist.md +0 -114
  290. package/.claude/skills/team-planex/role-specs/executor.md +0 -90
  291. package/.claude/skills/team-planex/role-specs/planner.md +0 -110
  292. package/.claude/skills/team-quality-assurance/role-specs/analyst.md +0 -79
  293. package/.claude/skills/team-quality-assurance/role-specs/executor.md +0 -64
  294. package/.claude/skills/team-quality-assurance/role-specs/generator.md +0 -67
  295. package/.claude/skills/team-quality-assurance/role-specs/scout.md +0 -66
  296. package/.claude/skills/team-quality-assurance/role-specs/strategist.md +0 -70
  297. package/.claude/skills/team-review/role-specs/fixer.md +0 -75
  298. package/.claude/skills/team-review/role-specs/reviewer.md +0 -66
  299. package/.claude/skills/team-review/role-specs/scanner.md +0 -70
  300. package/.claude/skills/team-roadmap-dev/role-specs/executor.md +0 -71
  301. package/.claude/skills/team-roadmap-dev/role-specs/planner.md +0 -77
  302. package/.claude/skills/team-roadmap-dev/role-specs/verifier.md +0 -73
  303. package/.claude/skills/team-tech-debt/role-specs/assessor.md +0 -70
  304. package/.claude/skills/team-tech-debt/role-specs/executor.md +0 -80
  305. package/.claude/skills/team-tech-debt/role-specs/planner.md +0 -71
  306. package/.claude/skills/team-tech-debt/role-specs/scanner.md +0 -85
  307. package/.claude/skills/team-tech-debt/role-specs/validator.md +0 -83
  308. package/.claude/skills/team-testing/role-specs/analyst.md +0 -94
  309. package/.claude/skills/team-testing/role-specs/executor.md +0 -97
  310. package/.claude/skills/team-testing/role-specs/generator.md +0 -96
  311. package/.claude/skills/team-testing/role-specs/strategist.md +0 -82
  312. package/.claude/skills/team-uidesign/role-specs/designer.md +0 -72
  313. package/.claude/skills/team-uidesign/role-specs/implementer.md +0 -74
  314. package/.claude/skills/team-uidesign/role-specs/researcher.md +0 -84
  315. package/.claude/skills/team-uidesign/role-specs/reviewer.md +0 -70
  316. package/.claude/skills/team-ux-improve/role-specs/designer.md +0 -191
  317. package/.claude/skills/team-ux-improve/role-specs/diagnoser.md +0 -110
  318. package/.claude/skills/team-ux-improve/role-specs/explorer.md +0 -109
  319. package/.claude/skills/team-ux-improve/role-specs/implementer.md +0 -164
  320. package/.claude/skills/team-ux-improve/role-specs/scanner.md +0 -117
  321. package/.claude/skills/team-ux-improve/role-specs/tester.md +0 -163
  322. package/.codex/skills/analyze-with-file/EXECUTE.md +0 -716
  323. package/ccw/frontend/dist/assets/CodexLensPage-My6DnfN6.js +0 -2
  324. package/ccw/frontend/dist/assets/CodexLensPage-My6DnfN6.js.map +0 -1
@@ -1,96 +0,0 @@
1
- ---
2
- prefix: TESTGEN
3
- inner_loop: true
4
- message_types:
5
- success: tests_generated
6
- revision: tests_revised
7
- error: error
8
- ---
9
-
10
- # Test Generator
11
-
12
- Generate test code by layer (L1 unit / L2 integration / L3 E2E). Acts as the Generator in the Generator-Critic loop. Supports revision mode for GC loop iterations.
13
-
14
- ## Phase 2: Context Loading
15
-
16
- | Input | Source | Required |
17
- |-------|--------|----------|
18
- | Task description | From task subject/description | Yes |
19
- | Session path | Extracted from task description | Yes |
20
- | Test strategy | <session>/strategy/test-strategy.md | Yes |
21
- | .msg/meta.json | <session>/wisdom/.msg/meta.json | No |
22
-
23
- 1. Extract session path and layer from task description
24
- 2. Read test strategy:
25
-
26
- ```
27
- Read("<session>/strategy/test-strategy.md")
28
- ```
29
-
30
- 3. Read source files to test (from strategy priority_files, limit 20)
31
- 4. Read .msg/meta.json for framework and scope context
32
-
33
- 5. Detect revision mode:
34
-
35
- | Condition | Mode |
36
- |-----------|------|
37
- | Task subject contains "fix" or "revised" | Revision -- load previous failures |
38
- | Otherwise | Fresh generation |
39
-
40
- For revision mode:
41
- - Read latest result file for failure details
42
- - Read effective test patterns from .msg/meta.json
43
-
44
- 6. Read wisdom files if available
45
-
46
- ## Phase 3: Test Generation
47
-
48
- **Strategy selection by complexity**:
49
-
50
- | File Count | Strategy |
51
- |------------|----------|
52
- | <= 3 files | Direct: inline Write/Edit |
53
- | 3-5 files | Single code-developer agent |
54
- | > 5 files | Batch: group by module, one agent per batch |
55
-
56
- **Direct generation** (per source file):
57
- 1. Generate test path: `<session>/tests/<layer>/<test-file>`
58
- 2. Generate test code: happy path, edge cases, error handling
59
- 3. Write test file
60
-
61
- **CLI delegation** (medium/high complexity):
62
-
63
- ```
64
- Bash({
65
- command: `ccw cli -p "PURPOSE: Generate <layer> tests using <framework> to achieve coverage target; success = all priority files covered with quality tests
66
- TASK: • Analyze source files • Generate test cases (happy path, edge cases, errors) • Write test files with proper structure • Ensure import resolution
67
- MODE: write
68
- CONTEXT: @<source-files> @<session>/strategy/test-strategy.md | Memory: Framework: <framework>, Layer: <layer>, Round: <round>
69
- <if-revision: Previous failures: <failure-details>
70
- Effective patterns: <patterns-from-meta>>
71
- EXPECTED: Test files in <session>/tests/<layer>/ with: proper test structure, comprehensive coverage, correct imports, framework conventions
72
- CONSTRAINTS: Follow test strategy priorities | Use framework best practices | <layer>-appropriate assertions
73
- Source files to test:
74
- <file-list-with-content>" --tool gemini --mode write --cd <session>`,
75
- run_in_background: false
76
- })
77
- ```
78
-
79
- **Output verification**:
80
-
81
- ```
82
- Glob("<session>/tests/<layer>/**/*")
83
- ```
84
-
85
- ## Phase 4: Self-Validation & State Update
86
-
87
- **Validation checks**:
88
-
89
- | Check | Method | Action on Fail |
90
- |-------|--------|----------------|
91
- | Syntax | `tsc --noEmit` or equivalent | Auto-fix imports/types |
92
- | File count | Count generated files | Report issue |
93
- | Import resolution | Check broken imports | Fix import paths |
94
-
95
- Update `<session>/wisdom/.msg/meta.json` under `generator` namespace:
96
- - Merge `{ "generator": { test_files, layer, round, is_revision } }`
@@ -1,82 +0,0 @@
1
- ---
2
- prefix: STRATEGY
3
- inner_loop: false
4
- message_types:
5
- success: strategy_ready
6
- error: error
7
- ---
8
-
9
- # Test Strategist
10
-
11
- Analyze git diff, determine test layers, define coverage targets, and formulate test strategy with prioritized execution order.
12
-
13
- ## Phase 2: Context & Environment Detection
14
-
15
- | Input | Source | Required |
16
- |-------|--------|----------|
17
- | Task description | From task subject/description | Yes |
18
- | Session path | Extracted from task description | Yes |
19
- | .msg/meta.json | <session>/wisdom/.msg/meta.json | No |
20
-
21
- 1. Extract session path and scope from task description
22
- 2. Get git diff for change analysis:
23
-
24
- ```
25
- Bash("git diff HEAD~1 --name-only 2>/dev/null || git diff --cached --name-only")
26
- Bash("git diff HEAD~1 -- <changed-files> 2>/dev/null || git diff --cached -- <changed-files>")
27
- ```
28
-
29
- 3. Detect test framework from project files:
30
-
31
- | Signal File | Framework | Test Pattern |
32
- |-------------|-----------|-------------|
33
- | jest.config.js/ts | Jest | `**/*.test.{ts,tsx,js}` |
34
- | vitest.config.ts/js | Vitest | `**/*.test.{ts,tsx}` |
35
- | pytest.ini / pyproject.toml | Pytest | `**/test_*.py` |
36
- | No detection | Default | Jest patterns |
37
-
38
- 4. Scan existing test patterns:
39
-
40
- ```
41
- Glob("**/*.test.*")
42
- Glob("**/*.spec.*")
43
- ```
44
-
45
- 5. Read .msg/meta.json if exists for session context
46
-
47
- ## Phase 3: Strategy Formulation
48
-
49
- **Change analysis dimensions**:
50
-
51
- | Change Type | Analysis | Priority |
52
- |-------------|----------|----------|
53
- | New files | Need new tests | High |
54
- | Modified functions | Need updated tests | Medium |
55
- | Deleted files | Need test cleanup | Low |
56
- | Config changes | May need integration tests | Variable |
57
-
58
- **Strategy output structure**:
59
-
60
- 1. **Change Analysis Table**: File, Change Type, Impact, Priority
61
- 2. **Test Layer Recommendations**:
62
- - L1 Unit: Scope, Coverage Target, Priority Files, Patterns
63
- - L2 Integration: Scope, Coverage Target, Integration Points
64
- - L3 E2E: Scope, Coverage Target, User Scenarios
65
- 3. **Risk Assessment**: Risk, Probability, Impact, Mitigation
66
- 4. **Test Execution Order**: Prioritized sequence
67
-
68
- Write strategy to `<session>/strategy/test-strategy.md`
69
-
70
- **Self-validation**:
71
-
72
- | Check | Criteria | Fallback |
73
- |-------|----------|----------|
74
- | Has L1 scope | L1 scope not empty | Default to all changed files |
75
- | Has coverage targets | L1 target > 0 | Use defaults (80/60/40) |
76
- | Has priority files | List not empty | Use all changed files |
77
-
78
- ## Phase 4: Wisdom & State Update
79
-
80
- 1. Write discoveries to `<session>/wisdom/conventions.md` (detected framework, patterns)
81
- 2. Update `<session>/wisdom/.msg/meta.json` under `strategist` namespace:
82
- - Read existing -> merge `{ "strategist": { framework, layers, coverage_targets, priority_files, risks } }` -> write back
@@ -1,72 +0,0 @@
1
- ---
2
- prefix: DESIGN
3
- inner_loop: false
4
- message_types:
5
- success: design_ready
6
- revision: design_revision
7
- progress: design_progress
8
- error: error
9
- ---
10
-
11
- # Design Token & Component Spec Author
12
-
13
- Define visual language through design tokens (W3C Design Tokens Format) and component specifications. Consume design intelligence from researcher. Act as Generator in the designer<->reviewer Generator-Critic loop.
14
-
15
- ## Phase 2: Context & Artifact Loading
16
-
17
- | Input | Source | Required |
18
- |-------|--------|----------|
19
- | Research artifacts | <session>/research/*.json | Yes |
20
- | Design intelligence | <session>/research/design-intelligence.json | Yes |
21
- | .msg/meta.json | <session>/wisdom/.msg/meta.json | Yes |
22
- | Audit feedback | <session>/audit/audit-*.md | Only for GC fix tasks |
23
-
24
- 1. Extract session path from task description
25
- 2. Read research findings: design-system-analysis.json, component-inventory.json, accessibility-audit.json
26
- 3. Read design intelligence: recommended colors/typography/style, anti-patterns, ux_guidelines
27
- 4. Detect task type from subject: "token" -> Token design, "component" -> Component spec, "fix"/"revision" -> GC fix
28
- 5. If GC fix task: read latest audit feedback from audit files
29
-
30
- ## Phase 3: Design Execution
31
-
32
- **Token System Design (DESIGN-001)**:
33
- - Define complete token system following W3C Design Tokens Format
34
- - Categories: Color (primary, secondary, background, surface, text, semantic), Typography (font-family, font-size, font-weight, line-height), Spacing (xs-2xl), Shadow (sm/md/lg), Border (radius, width), Breakpoint (mobile/tablet/desktop/wide)
35
- - All color tokens must have light/dark variants using `$value: { light: ..., dark: ... }`
36
- - Integrate design intelligence: recommended.colors -> color tokens, recommended.typography -> font stacks
37
- - Document anti-patterns from design intelligence for implementer reference
38
- - Output: `<session>/design/design-tokens.json`
39
-
40
- **Component Specification (DESIGN-002)**:
41
- - Define component specs consuming design tokens
42
- - Each spec contains: Overview (type: atom/molecule/organism, purpose), Design Tokens Consumed (token -> usage -> value reference), States (default/hover/focus/active/disabled), Responsive Behavior (changes per breakpoint), Accessibility (role, ARIA, keyboard, focus indicator, contrast), Variants, Anti-Patterns, Implementation Hints
43
- - All interactive states required: default, hover (background/opacity change), focus (outline 2px solid, offset 2px), active (pressed), disabled (opacity 0.5, cursor not-allowed)
44
- - Output: `<session>/design/component-specs/{component-name}.md`
45
-
46
- **GC Fix Mode (DESIGN-fix-N)**:
47
- - Parse audit feedback for specific issues
48
- - Re-read affected design artifacts; apply fixes (token value adjustments, missing states, accessibility gaps, naming fixes)
49
- - Re-write affected files; signal `design_revision` instead of `design_ready`
50
-
51
- ## Phase 4: Self-Validation & Output
52
-
53
- 1. Token integrity checks:
54
-
55
- | Check | Pass Criteria |
56
- |-------|---------------|
57
- | tokens_valid | All $value fields non-empty |
58
- | theme_complete | Light/dark values for all color tokens |
59
- | values_parseable | Valid CSS-parseable values |
60
- | no_duplicates | No duplicate token definitions |
61
-
62
- 2. Component spec checks:
63
-
64
- | Check | Pass Criteria |
65
- |-------|---------------|
66
- | states_complete | All 5 states (default/hover/focus/active/disabled) defined |
67
- | a11y_specified | Role, ARIA, keyboard behavior defined |
68
- | responsive_defined | At least mobile/desktop breakpoints |
69
- | token_refs_valid | All `{token.path}` references resolve to defined tokens |
70
-
71
- 3. Update `<session>/wisdom/.msg/meta.json` under `designer` namespace:
72
- - Read existing -> merge `{ "designer": { task_type, token_categories, component_count, style_decisions } }` -> write back
@@ -1,74 +0,0 @@
1
- ---
2
- prefix: BUILD
3
- inner_loop: false
4
- message_types:
5
- success: build_complete
6
- progress: build_progress
7
- error: error
8
- ---
9
-
10
- # Component Code Builder
11
-
12
- Translate design tokens and component specifications into production code. Generate CSS custom properties, TypeScript/JavaScript components, and accessibility implementations. Consume design intelligence stack guidelines for tech-specific patterns.
13
-
14
- ## Phase 2: Context & Artifact Loading
15
-
16
- | Input | Source | Required |
17
- |-------|--------|----------|
18
- | Design tokens | <session>/design/design-tokens.json | Yes (token build) |
19
- | Component specs | <session>/design/component-specs/*.md | Yes (component build) |
20
- | Design intelligence | <session>/research/design-intelligence.json | Yes |
21
- | Latest audit report | <session>/audit/audit-*.md | No |
22
- | .msg/meta.json | <session>/wisdom/.msg/meta.json | Yes |
23
-
24
- 1. Extract session path from task description
25
- 2. Detect build type from subject: "token" -> Token implementation, "component" -> Component implementation
26
- 3. Read design artifacts: design-tokens.json (token build), component-specs/*.md (component build)
27
- 4. Read design intelligence: stack_guidelines (tech-specific patterns), anti_patterns (patterns to avoid), ux_guidelines
28
- 5. Read latest audit report for approved changes and feedback
29
- 6. Detect project tech stack from package.json
30
-
31
- ## Phase 3: Implementation Execution
32
-
33
- **Token Implementation (BUILD-001)**:
34
- - Convert design tokens to production code
35
- - Output files in `<session>/build/token-files/`:
36
- - `tokens.css`: CSS custom properties with `:root` (light) and `[data-theme="dark"]` selectors, plus `@media (prefers-color-scheme: dark)` fallback
37
- - `tokens.ts`: TypeScript constants and types for programmatic access with autocomplete support
38
- - `README.md`: Token usage guide
39
- - All color tokens must have both light and dark values
40
- - Semantic token names must match design token definitions
41
-
42
- **Component Implementation (BUILD-002)**:
43
- - Implement component code from design specifications
44
- - Per-component output in `<session>/build/component-files/`:
45
- - `{ComponentName}.tsx`: React/Vue/Svelte component (match detected stack)
46
- - `{ComponentName}.css`: Styles consuming tokens via `var(--token-name)` only
47
- - `{ComponentName}.test.tsx`: Basic render + state tests
48
- - `index.ts`: Re-export
49
- - Requirements: no hardcoded colors/spacing (use design tokens), implement all 5 states, add ARIA attributes per spec, support responsive breakpoints, follow project component patterns
50
- - Accessibility: keyboard navigation, screen reader support, visible focus indicators, WCAG AA contrast
51
- - Check implementation against design intelligence anti_patterns
52
-
53
- ## Phase 4: Validation & Output
54
-
55
- 1. Token build validation:
56
-
57
- | Check | Pass Criteria |
58
- |-------|---------------|
59
- | File existence | tokens.css and tokens.ts exist |
60
- | Token coverage | All defined tokens present in CSS |
61
- | Theme support | Light/dark variants exist |
62
-
63
- 2. Component build validation:
64
-
65
- | Check | Pass Criteria |
66
- |-------|---------------|
67
- | File existence | At least 3 files per component (component, style, index) |
68
- | No hardcoded values | No `#xxx` or `rgb()` in component CSS (only in tokens.css) |
69
- | Focus styles | `:focus` or `:focus-visible` defined |
70
- | Responsive | `@media` queries present |
71
- | Anti-pattern clean | No violations of design intelligence anti_patterns |
72
-
73
- 3. Update `<session>/wisdom/.msg/meta.json` under `implementer` namespace:
74
- - Read existing -> merge `{ "implementer": { build_type, file_count, output_dir, components_built } }` -> write back
@@ -1,84 +0,0 @@
1
- ---
2
- prefix: RESEARCH
3
- inner_loop: false
4
- message_types:
5
- success: research_ready
6
- progress: research_progress
7
- error: error
8
- ---
9
-
10
- # Design System Researcher
11
-
12
- Analyze existing design system, build component inventory, assess accessibility baseline, and retrieve industry-specific design intelligence via ui-ux-pro-max. Produce foundation data for downstream designer, reviewer, and implementer roles.
13
-
14
- ## Phase 2: Context & Environment Detection
15
-
16
- | Input | Source | Required |
17
- |-------|--------|----------|
18
- | Task description | From task subject/description | Yes |
19
- | Session path | Extracted from task description | Yes |
20
- | .msg/meta.json | <session>/wisdom/.msg/meta.json | No |
21
-
22
- 1. Extract session path and target scope from task description
23
- 2. Detect project type and tech stack from package.json or equivalent:
24
-
25
- | Package | Detected Stack |
26
- |---------|---------------|
27
- | next | nextjs |
28
- | react | react |
29
- | vue | vue |
30
- | svelte | svelte |
31
- | @shadcn/ui | shadcn |
32
- | (default) | html-tailwind |
33
-
34
- 3. Use CLI tools (e.g., `ccw cli -p "..." --tool gemini --mode analysis`) or direct tools (Glob, Grep, mcp__ace-tool__search_context) to scan for existing design tokens, component files, styling patterns
35
- 4. Read industry context from session config (industry, strictness, must-have features)
36
-
37
- ## Phase 3: Research Execution
38
-
39
- Execute 4 analysis streams:
40
-
41
- **Stream 1 -- Design System Analysis**:
42
- - Search for existing design tokens (CSS variables, theme configs, token files)
43
- - Identify styling patterns (CSS-in-JS, CSS modules, utility classes, SCSS)
44
- - Map color palette, typography scale, spacing system
45
- - Find component library usage (MUI, Ant Design, shadcn, custom)
46
- - Output: `<session>/research/design-system-analysis.json`
47
-
48
- **Stream 2 -- Component Inventory**:
49
- - Find all UI component files; identify props/API surface
50
- - Identify states supported (hover, focus, disabled, etc.)
51
- - Check accessibility attributes (ARIA labels, roles)
52
- - Map inter-component dependencies and usage counts
53
- - Output: `<session>/research/component-inventory.json`
54
-
55
- **Stream 3 -- Accessibility Baseline**:
56
- - Check ARIA attribute usage patterns, keyboard navigation support
57
- - Assess color contrast ratios (if design tokens found)
58
- - Find focus management and semantic HTML patterns
59
- - Output: `<session>/research/accessibility-audit.json`
60
-
61
- **Stream 4 -- Design Intelligence (ui-ux-pro-max)**:
62
- - Call `Skill(skill="ui-ux-pro-max", args="<industry> <keywords> --design-system")` for design system recommendations
63
- - Call `Skill(skill="ui-ux-pro-max", args="accessibility animation responsive --domain ux")` for UX guidelines
64
- - Call `Skill(skill="ui-ux-pro-max", args="<keywords> --stack <detected-stack>")` for stack guidelines
65
- - Degradation: when unavailable, use LLM general knowledge, mark `_source: "llm-general-knowledge"`
66
- - Output: `<session>/research/design-intelligence.json`
67
-
68
- Compile research summary metrics: design_system_exists, styling_approach, total_components, accessibility_level, design_intelligence_source, anti_patterns_count.
69
-
70
- ## Phase 4: Validation & Output
71
-
72
- 1. Verify all 4 output files exist and contain valid JSON with required fields:
73
-
74
- | File | Required Fields |
75
- |------|----------------|
76
- | design-system-analysis.json | existing_tokens, styling_approach |
77
- | component-inventory.json | components array |
78
- | accessibility-audit.json | wcag_level |
79
- | design-intelligence.json | _source, design_system |
80
-
81
- 2. If any file missing or invalid, re-run corresponding stream
82
-
83
- 3. Update `<session>/wisdom/.msg/meta.json` under `researcher` namespace:
84
- - Read existing -> merge `{ "researcher": { detected_stack, component_count, wcag_level, di_source, scope } }` -> write back
@@ -1,70 +0,0 @@
1
- ---
2
- prefix: AUDIT
3
- inner_loop: false
4
- message_types:
5
- success: audit_passed
6
- result: audit_result
7
- fix: fix_required
8
- error: error
9
- ---
10
-
11
- # Design Auditor
12
-
13
- Audit design tokens and component specs for consistency, accessibility compliance, completeness, quality, and industry best-practice adherence. Act as Critic in the designer<->reviewer Generator-Critic loop. Serve as sync point gatekeeper in dual-track pipelines.
14
-
15
- ## Phase 2: Context & Artifact Loading
16
-
17
- | Input | Source | Required |
18
- |-------|--------|----------|
19
- | Design artifacts | <session>/design/*.json, <session>/design/component-specs/*.md | Yes |
20
- | Design intelligence | <session>/research/design-intelligence.json | Yes |
21
- | Audit history | .msg/meta.json -> reviewer namespace | No |
22
- | Build artifacts | <session>/build/**/* | Only for final audit |
23
- | .msg/meta.json | <session>/wisdom/.msg/meta.json | Yes |
24
-
25
- 1. Extract session path from task description
26
- 2. Detect audit type from subject: "token" -> Token audit, "component" -> Component audit, "final" -> Final audit, "sync" -> Sync point audit
27
- 3. Read design intelligence for anti-patterns and ux_guidelines
28
- 4. Read design artifacts: design-tokens.json (token/component audit), component-specs/*.md (component/final audit), build/**/* (final audit only)
29
- 5. Load audit_history from meta.json for trend analysis
30
-
31
- ## Phase 3: Audit Execution
32
-
33
- Score 5 dimensions on 1-10 scale:
34
-
35
- | Dimension | Weight | Focus |
36
- |-----------|--------|-------|
37
- | Consistency | 20% | Token usage, naming conventions, visual uniformity |
38
- | Accessibility | 25% | WCAG AA compliance, ARIA attributes, keyboard nav, contrast |
39
- | Completeness | 20% | All states defined, responsive specs, edge cases |
40
- | Quality | 15% | Token reference integrity, documentation clarity, maintainability |
41
- | Industry Compliance | 20% | Anti-pattern avoidance, UX best practices, design intelligence adherence |
42
-
43
- **Token Audit**: Naming convention (kebab-case, semantic names), value patterns (consistent units), theme completeness (light+dark for all colors), contrast ratios (text on background >= 4.5:1), minimum font sizes (>= 12px), all categories present, W3C $type metadata, no duplicates.
44
-
45
- **Component Audit**: Token references resolve, naming matches convention, ARIA roles defined, keyboard behavior specified, focus indicator defined, all 5 states present, responsive breakpoints specified, variants documented, clear descriptions.
46
-
47
- **Final Audit (cross-cutting)**: Token<->Component consistency (no hardcoded values), Code<->Design consistency (CSS variables match tokens, ARIA implemented as specified), cross-component consistency (spacing, color, interaction patterns).
48
-
49
- **Score calculation**: `overallScore = round(consistency*0.20 + accessibility*0.25 + completeness*0.20 + quality*0.15 + industryCompliance*0.20)`
50
-
51
- **Signal determination**:
52
-
53
- | Condition | Signal |
54
- |-----------|--------|
55
- | Score >= 8 AND critical_count === 0 | `audit_passed` (GC CONVERGED) |
56
- | Score >= 6 AND critical_count === 0 | `audit_result` (GC REVISION NEEDED) |
57
- | Score < 6 OR critical_count > 0 | `fix_required` (CRITICAL FIX NEEDED) |
58
-
59
- ## Phase 4: Report & Output
60
-
61
- 1. Write audit report to `<session>/audit/audit-{NNN}.md`:
62
- - Summary: overall score, signal, critical/high/medium counts
63
- - Sync Point Status (if applicable): PASSED/BLOCKED
64
- - Dimension Scores table (score/weight/weighted per dimension)
65
- - Critical/High/Medium issues with descriptions, locations, fix suggestions
66
- - GC Loop Status: signal, action required
67
- - Trend analysis (if audit_history exists): improving/stable/declining
68
-
69
- 2. Update `<session>/wisdom/.msg/meta.json` under `reviewer` namespace:
70
- - Read existing -> merge `{ "reviewer": { audit_id, score, critical_count, signal, is_sync_point, audit_type, timestamp } }` -> write back
@@ -1,191 +0,0 @@
1
- ---
2
- prefix: DESIGN
3
- inner_loop: false
4
- message_types:
5
- success: design_complete
6
- error: error
7
- ---
8
-
9
- # UX Designer
10
-
11
- Design feedback mechanisms (loading/error/success states) and state management patterns (React/Vue reactive updates).
12
-
13
- ## Phase 2: Context & Pattern Loading
14
-
15
- 1. Load diagnosis report from `<session>/artifacts/diagnosis.md`
16
- 2. Load diagnoser state via `team_msg(operation="get_state", session_id=<session-id>, role="diagnoser")`
17
- 3. Detect framework from project structure
18
- 4. Load framework-specific patterns:
19
-
20
- | Framework | State Pattern | Event Pattern |
21
- |-----------|---------------|---------------|
22
- | React | useState, useRef | onClick, onChange |
23
- | Vue | ref, reactive | @click, @change |
24
-
25
- ### Wisdom Input
26
-
27
- 1. Read `<session>/wisdom/patterns/ui-feedback.md` for established feedback design patterns
28
- 2. Read `<session>/wisdom/patterns/state-management.md` for state handling patterns
29
- 3. Read `<session>/wisdom/principles/general-ux.md` for UX design principles
30
- 4. Apply patterns when designing solutions for identified issues
31
-
32
- ### Complex Design (use CLI)
33
-
34
- For complex multi-component solutions:
35
-
36
- ```
37
- Bash(`ccw cli -p "PURPOSE: Design comprehensive feedback mechanism for multi-step form
38
- CONTEXT: @<component-files>
39
- EXPECTED: Complete design with state flow diagram and code patterns
40
- CONSTRAINTS: Must support React hooks" --tool gemini --mode analysis`)
41
- ```
42
-
43
- ## Phase 3: Solution Design
44
-
45
- For each diagnosed issue, design solution:
46
-
47
- ### Feedback Mechanism Design
48
-
49
- | Issue Type | Solution Design |
50
- |------------|-----------------|
51
- | Missing loading | Add loading state + UI indicator (spinner, disabled button) |
52
- | Missing error | Add error state + error message display |
53
- | Missing success | Add success state + confirmation toast/message |
54
- | No empty state | Add conditional rendering for empty data |
55
-
56
- ### State Management Design
57
-
58
- **React Pattern**:
59
- ```typescript
60
- // Add state variables
61
- const [isLoading, setIsLoading] = useState(false);
62
- const [error, setError] = useState<string | null>(null);
63
-
64
- // Wrap async operation
65
- const handleSubmit = async (event: React.FormEvent) => {
66
- event.preventDefault();
67
- setIsLoading(true);
68
- setError(null);
69
-
70
- try {
71
- const response = await fetch('/api/upload', { method: 'POST', body: formData });
72
- if (!response.ok) throw new Error('Upload failed');
73
- // Success handling
74
- } catch (err: any) {
75
- setError(err.message || 'An error occurred');
76
- } finally {
77
- setIsLoading(false);
78
- }
79
- };
80
-
81
- // UI binding
82
- <button type="submit" disabled={isLoading}>
83
- {isLoading ? 'Uploading...' : 'Upload File'}
84
- </button>
85
- {error && <p style={{ color: 'red' }}>{error}</p>}
86
- ```
87
-
88
- **Vue Pattern**:
89
- ```typescript
90
- // Add reactive state
91
- const isLoading = ref(false);
92
- const error = ref<string | null>(null);
93
-
94
- // Wrap async operation
95
- const handleSubmit = async () => {
96
- isLoading.value = true;
97
- error.value = null;
98
-
99
- try {
100
- const response = await fetch('/api/upload', { method: 'POST', body: formData });
101
- if (!response.ok) throw new Error('Upload failed');
102
- // Success handling
103
- } catch (err: any) {
104
- error.value = err.message || 'An error occurred';
105
- } finally {
106
- isLoading.value = false;
107
- }
108
- };
109
-
110
- // UI binding
111
- <button @click="handleSubmit" :disabled="isLoading">
112
- {{ isLoading ? 'Uploading...' : 'Upload File' }}
113
- </button>
114
- <p v-if="error" style="color: red">{{ error }}</p>
115
- ```
116
-
117
- ### Input Control Design
118
-
119
- | Issue | Solution |
120
- |-------|----------|
121
- | Text input for file path | Add file picker: `<input type="file" />` |
122
- | Text input for folder path | Add directory picker: `<input type="file" webkitdirectory />` |
123
- | No validation | Add validation rules and error messages |
124
-
125
- ## Phase 4: Design Document Generation
126
-
127
- 1. Generate implementation guide for each issue:
128
-
129
- ```markdown
130
- # Design Guide
131
-
132
- ## Issue #1: Upload form no loading state
133
-
134
- ### Solution Design
135
- Add loading state with UI feedback and error handling.
136
-
137
- ### State Variables (React)
138
- ```typescript
139
- const [isLoading, setIsLoading] = useState(false);
140
- const [error, setError] = useState<string | null>(null);
141
- ```
142
-
143
- ### Event Handler
144
- ```typescript
145
- const handleUpload = async (event: React.FormEvent) => {
146
- event.preventDefault();
147
- setIsLoading(true);
148
- setError(null);
149
-
150
- try {
151
- // API call
152
- } catch (err: any) {
153
- setError(err.message);
154
- } finally {
155
- setIsLoading(false);
156
- }
157
- };
158
- ```
159
-
160
- ### UI Binding
161
- ```tsx
162
- <button type="submit" disabled={isLoading}>
163
- {isLoading ? 'Uploading...' : 'Upload File'}
164
- </button>
165
- {error && <p className="error">{error}</p>}
166
- ```
167
-
168
- ### Acceptance Criteria
169
- - Loading state shows during upload
170
- - Button disabled during upload
171
- - Error message displays on failure
172
- - Success confirmation on completion
173
- ```
174
-
175
- 2. Write guide to `<session>/artifacts/design-guide.md`
176
-
177
- ### Wisdom Contribution
178
-
179
- If novel design patterns created:
180
- 1. Write new patterns to `<session>/wisdom/contributions/designer-pattern-<timestamp>.md`
181
- 2. Format: Problem context, solution design, implementation hints, trade-offs
182
-
183
- 3. Share state via team_msg:
184
- ```
185
- team_msg(operation="log", session_id=<session-id>, from="designer",
186
- type="state_update", data={
187
- designed_solutions: <count>,
188
- framework: <framework>,
189
- patterns_used: [<pattern-list>]
190
- })
191
- ```