claude-code-workflow 6.0.0

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 (350) hide show
  1. package/.claude/agents/action-planning-agent.md +778 -0
  2. package/.claude/agents/cli-execution-agent.md +270 -0
  3. package/.claude/agents/cli-explore-agent.md +182 -0
  4. package/.claude/agents/cli-lite-planning-agent.md +396 -0
  5. package/.claude/agents/cli-planning-agent.md +558 -0
  6. package/.claude/agents/code-developer.md +310 -0
  7. package/.claude/agents/conceptual-planning-agent.md +308 -0
  8. package/.claude/agents/context-search-agent.md +582 -0
  9. package/.claude/agents/doc-generator.md +330 -0
  10. package/.claude/agents/memory-bridge.md +94 -0
  11. package/.claude/agents/test-context-search-agent.md +399 -0
  12. package/.claude/agents/test-fix-agent.md +343 -0
  13. package/.claude/agents/ui-design-agent.md +593 -0
  14. package/.claude/agents/universal-executor.md +131 -0
  15. package/.claude/commands/cli/cli-init.md +440 -0
  16. package/.claude/commands/enhance-prompt.md +93 -0
  17. package/.claude/commands/memory/code-map-memory.md +687 -0
  18. package/.claude/commands/memory/docs-full-cli.md +471 -0
  19. package/.claude/commands/memory/docs-related-cli.md +386 -0
  20. package/.claude/commands/memory/docs.md +615 -0
  21. package/.claude/commands/memory/load-skill-memory.md +182 -0
  22. package/.claude/commands/memory/load.md +240 -0
  23. package/.claude/commands/memory/skill-memory.md +525 -0
  24. package/.claude/commands/memory/style-skill-memory.md +396 -0
  25. package/.claude/commands/memory/tech-research.md +477 -0
  26. package/.claude/commands/memory/update-full.md +332 -0
  27. package/.claude/commands/memory/update-related.md +332 -0
  28. package/.claude/commands/memory/workflow-skill-memory.md +517 -0
  29. package/.claude/commands/task/breakdown.md +204 -0
  30. package/.claude/commands/task/create.md +152 -0
  31. package/.claude/commands/task/execute.md +270 -0
  32. package/.claude/commands/task/replan.md +437 -0
  33. package/.claude/commands/version.md +254 -0
  34. package/.claude/commands/workflow/action-plan-verify.md +447 -0
  35. package/.claude/commands/workflow/brainstorm/api-designer.md +585 -0
  36. package/.claude/commands/workflow/brainstorm/artifacts.md +452 -0
  37. package/.claude/commands/workflow/brainstorm/auto-parallel.md +443 -0
  38. package/.claude/commands/workflow/brainstorm/data-architect.md +220 -0
  39. package/.claude/commands/workflow/brainstorm/product-manager.md +200 -0
  40. package/.claude/commands/workflow/brainstorm/product-owner.md +200 -0
  41. package/.claude/commands/workflow/brainstorm/scrum-master.md +200 -0
  42. package/.claude/commands/workflow/brainstorm/subject-matter-expert.md +200 -0
  43. package/.claude/commands/workflow/brainstorm/synthesis.md +398 -0
  44. package/.claude/commands/workflow/brainstorm/system-architect.md +387 -0
  45. package/.claude/commands/workflow/brainstorm/ui-designer.md +221 -0
  46. package/.claude/commands/workflow/brainstorm/ux-expert.md +221 -0
  47. package/.claude/commands/workflow/execute.md +460 -0
  48. package/.claude/commands/workflow/init.md +164 -0
  49. package/.claude/commands/workflow/lite-execute.md +686 -0
  50. package/.claude/commands/workflow/lite-fix.md +621 -0
  51. package/.claude/commands/workflow/lite-plan.md +592 -0
  52. package/.claude/commands/workflow/plan.md +551 -0
  53. package/.claude/commands/workflow/replan.md +515 -0
  54. package/.claude/commands/workflow/review-fix.md +646 -0
  55. package/.claude/commands/workflow/review-module-cycle.md +795 -0
  56. package/.claude/commands/workflow/review-session-cycle.md +805 -0
  57. package/.claude/commands/workflow/review.md +291 -0
  58. package/.claude/commands/workflow/session/complete.md +500 -0
  59. package/.claude/commands/workflow/session/list.md +96 -0
  60. package/.claude/commands/workflow/session/resume.md +61 -0
  61. package/.claude/commands/workflow/session/start.md +200 -0
  62. package/.claude/commands/workflow/status.md +352 -0
  63. package/.claude/commands/workflow/tdd-plan.md +460 -0
  64. package/.claude/commands/workflow/tdd-verify.md +386 -0
  65. package/.claude/commands/workflow/test-cycle-execute.md +498 -0
  66. package/.claude/commands/workflow/test-fix-gen.md +699 -0
  67. package/.claude/commands/workflow/test-gen.md +529 -0
  68. package/.claude/commands/workflow/tools/conflict-resolution.md +680 -0
  69. package/.claude/commands/workflow/tools/context-gather.md +434 -0
  70. package/.claude/commands/workflow/tools/task-generate-agent.md +291 -0
  71. package/.claude/commands/workflow/tools/task-generate-tdd.md +518 -0
  72. package/.claude/commands/workflow/tools/tdd-coverage-analysis.md +309 -0
  73. package/.claude/commands/workflow/tools/test-concept-enhanced.md +163 -0
  74. package/.claude/commands/workflow/tools/test-context-gather.md +235 -0
  75. package/.claude/commands/workflow/tools/test-task-generate.md +256 -0
  76. package/.claude/commands/workflow/ui-design/animation-extract.md +1150 -0
  77. package/.claude/commands/workflow/ui-design/codify-style.md +652 -0
  78. package/.claude/commands/workflow/ui-design/design-sync.md +454 -0
  79. package/.claude/commands/workflow/ui-design/explore-auto.md +678 -0
  80. package/.claude/commands/workflow/ui-design/generate.md +504 -0
  81. package/.claude/commands/workflow/ui-design/imitate-auto.md +745 -0
  82. package/.claude/commands/workflow/ui-design/import-from-code.md +537 -0
  83. package/.claude/commands/workflow/ui-design/layout-extract.md +788 -0
  84. package/.claude/commands/workflow/ui-design/reference-page-generator.md +356 -0
  85. package/.claude/commands/workflow/ui-design/style-extract.md +773 -0
  86. package/.claude/scripts/classify-folders.sh +35 -0
  87. package/.claude/scripts/convert_tokens_to_css.sh +225 -0
  88. package/.claude/scripts/detect_changed_modules.sh +157 -0
  89. package/.claude/scripts/discover-design-files.sh +83 -0
  90. package/.claude/scripts/extract-animations.js +243 -0
  91. package/.claude/scripts/extract-computed-styles.js +118 -0
  92. package/.claude/scripts/extract-layout-structure.js +411 -0
  93. package/.claude/scripts/generate_module_docs.sh +713 -0
  94. package/.claude/scripts/get_modules_by_depth.sh +166 -0
  95. package/.claude/scripts/ui-generate-preview.sh +391 -0
  96. package/.claude/scripts/ui-instantiate-prototypes.sh +811 -0
  97. package/.claude/scripts/update_module_claude.sh +333 -0
  98. package/.claude/skills/command-guide/SKILL.md +388 -0
  99. package/.claude/skills/command-guide/UPDATE-GUIDELINE.md +592 -0
  100. package/.claude/skills/command-guide/guides/cli-tools-guide.md +410 -0
  101. package/.claude/skills/command-guide/guides/examples.md +537 -0
  102. package/.claude/skills/command-guide/guides/getting-started.md +242 -0
  103. package/.claude/skills/command-guide/guides/implementation-details.md +1010 -0
  104. package/.claude/skills/command-guide/guides/index-structure.md +326 -0
  105. package/.claude/skills/command-guide/guides/troubleshooting.md +92 -0
  106. package/.claude/skills/command-guide/guides/ui-design-workflow-guide.md +316 -0
  107. package/.claude/skills/command-guide/guides/workflow-patterns.md +662 -0
  108. package/.claude/skills/command-guide/index/all-commands.json +783 -0
  109. package/.claude/skills/command-guide/index/by-category.json +811 -0
  110. package/.claude/skills/command-guide/index/by-use-case.json +797 -0
  111. package/.claude/skills/command-guide/index/command-relationships.json +307 -0
  112. package/.claude/skills/command-guide/index/essential-commands.json +123 -0
  113. package/.claude/skills/command-guide/reference/agents/action-planning-agent.md +722 -0
  114. package/.claude/skills/command-guide/reference/agents/cli-execution-agent.md +270 -0
  115. package/.claude/skills/command-guide/reference/agents/cli-explore-agent.md +182 -0
  116. package/.claude/skills/command-guide/reference/agents/cli-lite-planning-agent.md +396 -0
  117. package/.claude/skills/command-guide/reference/agents/cli-planning-agent.md +558 -0
  118. package/.claude/skills/command-guide/reference/agents/code-developer.md +310 -0
  119. package/.claude/skills/command-guide/reference/agents/conceptual-planning-agent.md +328 -0
  120. package/.claude/skills/command-guide/reference/agents/context-search-agent.md +577 -0
  121. package/.claude/skills/command-guide/reference/agents/doc-generator.md +330 -0
  122. package/.claude/skills/command-guide/reference/agents/memory-bridge.md +94 -0
  123. package/.claude/skills/command-guide/reference/agents/test-context-search-agent.md +399 -0
  124. package/.claude/skills/command-guide/reference/agents/test-fix-agent.md +343 -0
  125. package/.claude/skills/command-guide/reference/agents/ui-design-agent.md +593 -0
  126. package/.claude/skills/command-guide/reference/agents/universal-executor.md +131 -0
  127. package/.claude/skills/command-guide/reference/commands/cli/cli-init.md +440 -0
  128. package/.claude/skills/command-guide/reference/commands/enhance-prompt.md +93 -0
  129. package/.claude/skills/command-guide/reference/commands/memory/code-map-memory.md +687 -0
  130. package/.claude/skills/command-guide/reference/commands/memory/docs-full-cli.md +471 -0
  131. package/.claude/skills/command-guide/reference/commands/memory/docs-related-cli.md +386 -0
  132. package/.claude/skills/command-guide/reference/commands/memory/docs.md +610 -0
  133. package/.claude/skills/command-guide/reference/commands/memory/load-skill-memory.md +182 -0
  134. package/.claude/skills/command-guide/reference/commands/memory/load.md +240 -0
  135. package/.claude/skills/command-guide/reference/commands/memory/skill-memory.md +525 -0
  136. package/.claude/skills/command-guide/reference/commands/memory/style-skill-memory.md +396 -0
  137. package/.claude/skills/command-guide/reference/commands/memory/tech-research.md +477 -0
  138. package/.claude/skills/command-guide/reference/commands/memory/update-full.md +332 -0
  139. package/.claude/skills/command-guide/reference/commands/memory/update-related.md +332 -0
  140. package/.claude/skills/command-guide/reference/commands/memory/workflow-skill-memory.md +517 -0
  141. package/.claude/skills/command-guide/reference/commands/task/breakdown.md +204 -0
  142. package/.claude/skills/command-guide/reference/commands/task/create.md +152 -0
  143. package/.claude/skills/command-guide/reference/commands/task/execute.md +270 -0
  144. package/.claude/skills/command-guide/reference/commands/task/replan.md +437 -0
  145. package/.claude/skills/command-guide/reference/commands/version.md +254 -0
  146. package/.claude/skills/command-guide/reference/commands/workflow/action-plan-verify.md +447 -0
  147. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/api-designer.md +585 -0
  148. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/artifacts.md +604 -0
  149. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/auto-parallel.md +466 -0
  150. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/data-architect.md +220 -0
  151. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/product-manager.md +200 -0
  152. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/product-owner.md +200 -0
  153. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/scrum-master.md +200 -0
  154. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/subject-matter-expert.md +200 -0
  155. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/synthesis.md +496 -0
  156. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/system-architect.md +387 -0
  157. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/ui-designer.md +221 -0
  158. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/ux-expert.md +221 -0
  159. package/.claude/skills/command-guide/reference/commands/workflow/execute.md +460 -0
  160. package/.claude/skills/command-guide/reference/commands/workflow/init.md +164 -0
  161. package/.claude/skills/command-guide/reference/commands/workflow/lite-execute.md +634 -0
  162. package/.claude/skills/command-guide/reference/commands/workflow/lite-fix.md +602 -0
  163. package/.claude/skills/command-guide/reference/commands/workflow/lite-plan.md +582 -0
  164. package/.claude/skills/command-guide/reference/commands/workflow/plan.md +551 -0
  165. package/.claude/skills/command-guide/reference/commands/workflow/replan.md +515 -0
  166. package/.claude/skills/command-guide/reference/commands/workflow/review-fix.md +646 -0
  167. package/.claude/skills/command-guide/reference/commands/workflow/review-module-cycle.md +795 -0
  168. package/.claude/skills/command-guide/reference/commands/workflow/review-session-cycle.md +805 -0
  169. package/.claude/skills/command-guide/reference/commands/workflow/review.md +291 -0
  170. package/.claude/skills/command-guide/reference/commands/workflow/session/complete.md +500 -0
  171. package/.claude/skills/command-guide/reference/commands/workflow/session/list.md +96 -0
  172. package/.claude/skills/command-guide/reference/commands/workflow/session/resume.md +61 -0
  173. package/.claude/skills/command-guide/reference/commands/workflow/session/start.md +180 -0
  174. package/.claude/skills/command-guide/reference/commands/workflow/status.md +352 -0
  175. package/.claude/skills/command-guide/reference/commands/workflow/tdd-plan.md +460 -0
  176. package/.claude/skills/command-guide/reference/commands/workflow/tdd-verify.md +386 -0
  177. package/.claude/skills/command-guide/reference/commands/workflow/test-cycle-execute.md +498 -0
  178. package/.claude/skills/command-guide/reference/commands/workflow/test-fix-gen.md +699 -0
  179. package/.claude/skills/command-guide/reference/commands/workflow/test-gen.md +529 -0
  180. package/.claude/skills/command-guide/reference/commands/workflow/tools/conflict-resolution.md +680 -0
  181. package/.claude/skills/command-guide/reference/commands/workflow/tools/context-gather.md +434 -0
  182. package/.claude/skills/command-guide/reference/commands/workflow/tools/task-generate-agent.md +151 -0
  183. package/.claude/skills/command-guide/reference/commands/workflow/tools/task-generate-tdd.md +518 -0
  184. package/.claude/skills/command-guide/reference/commands/workflow/tools/tdd-coverage-analysis.md +309 -0
  185. package/.claude/skills/command-guide/reference/commands/workflow/tools/test-concept-enhanced.md +163 -0
  186. package/.claude/skills/command-guide/reference/commands/workflow/tools/test-context-gather.md +235 -0
  187. package/.claude/skills/command-guide/reference/commands/workflow/tools/test-task-generate.md +256 -0
  188. package/.claude/skills/command-guide/reference/commands/workflow/ui-design/animation-extract.md +1150 -0
  189. package/.claude/skills/command-guide/reference/commands/workflow/ui-design/codify-style.md +652 -0
  190. package/.claude/skills/command-guide/reference/commands/workflow/ui-design/design-sync.md +454 -0
  191. package/.claude/skills/command-guide/reference/commands/workflow/ui-design/explore-auto.md +678 -0
  192. package/.claude/skills/command-guide/reference/commands/workflow/ui-design/generate.md +504 -0
  193. package/.claude/skills/command-guide/reference/commands/workflow/ui-design/imitate-auto.md +745 -0
  194. package/.claude/skills/command-guide/reference/commands/workflow/ui-design/import-from-code.md +537 -0
  195. package/.claude/skills/command-guide/reference/commands/workflow/ui-design/layout-extract.md +788 -0
  196. package/.claude/skills/command-guide/reference/commands/workflow/ui-design/reference-page-generator.md +356 -0
  197. package/.claude/skills/command-guide/reference/commands/workflow/ui-design/style-extract.md +773 -0
  198. package/.claude/skills/command-guide/scripts/analyze_commands.py +502 -0
  199. package/.claude/skills/command-guide/scripts/update-index.sh +130 -0
  200. package/.claude/skills/command-guide/templates/issue-bug.md +104 -0
  201. package/.claude/skills/command-guide/templates/issue-diagnosis.md +275 -0
  202. package/.claude/skills/command-guide/templates/issue-feature.md +97 -0
  203. package/.claude/skills/command-guide/templates/issue-question.md +141 -0
  204. package/.claude/skills/prompt-enhancer/SKILL.md +124 -0
  205. package/.claude/workflows/_template-compare-matrix.html +692 -0
  206. package/.claude/workflows/cli-templates/fix-plan-template.json +75 -0
  207. package/.claude/workflows/cli-templates/fix-progress-template.json +48 -0
  208. package/.claude/workflows/cli-templates/memory/style-skill-memory/skill-md-template.md +299 -0
  209. package/.claude/workflows/cli-templates/planning-roles/data-architect.md +120 -0
  210. package/.claude/workflows/cli-templates/planning-roles/product-manager.md +119 -0
  211. package/.claude/workflows/cli-templates/planning-roles/product-owner.md +261 -0
  212. package/.claude/workflows/cli-templates/planning-roles/scrum-master.md +186 -0
  213. package/.claude/workflows/cli-templates/planning-roles/subject-matter-expert.md +281 -0
  214. package/.claude/workflows/cli-templates/planning-roles/synthesis-role.md +414 -0
  215. package/.claude/workflows/cli-templates/planning-roles/system-architect.md +106 -0
  216. package/.claude/workflows/cli-templates/planning-roles/test-strategist.md +124 -0
  217. package/.claude/workflows/cli-templates/planning-roles/ui-designer.md +379 -0
  218. package/.claude/workflows/cli-templates/planning-roles/ux-expert.md +240 -0
  219. package/.claude/workflows/cli-templates/prompts/analysis/01-diagnose-bug-root-cause.txt +127 -0
  220. package/.claude/workflows/cli-templates/prompts/analysis/01-trace-code-execution.txt +115 -0
  221. package/.claude/workflows/cli-templates/prompts/analysis/02-analyze-code-patterns.txt +37 -0
  222. package/.claude/workflows/cli-templates/prompts/analysis/02-analyze-technical-document.txt +33 -0
  223. package/.claude/workflows/cli-templates/prompts/analysis/02-review-architecture.txt +29 -0
  224. package/.claude/workflows/cli-templates/prompts/analysis/02-review-code-quality.txt +28 -0
  225. package/.claude/workflows/cli-templates/prompts/analysis/03-analyze-performance.txt +29 -0
  226. package/.claude/workflows/cli-templates/prompts/analysis/03-assess-security-risks.txt +29 -0
  227. package/.claude/workflows/cli-templates/prompts/analysis/03-review-quality-standards.txt +29 -0
  228. package/.claude/workflows/cli-templates/prompts/development/02-generate-tests.txt +70 -0
  229. package/.claude/workflows/cli-templates/prompts/development/02-implement-component-ui.txt +55 -0
  230. package/.claude/workflows/cli-templates/prompts/development/02-implement-feature.txt +58 -0
  231. package/.claude/workflows/cli-templates/prompts/development/02-refactor-codebase.txt +55 -0
  232. package/.claude/workflows/cli-templates/prompts/development/03-debug-runtime-issues.txt +55 -0
  233. package/.claude/workflows/cli-templates/prompts/documentation/api.txt +15 -0
  234. package/.claude/workflows/cli-templates/prompts/documentation/folder-navigation.txt +27 -0
  235. package/.claude/workflows/cli-templates/prompts/documentation/module-readme.txt +49 -0
  236. package/.claude/workflows/cli-templates/prompts/documentation/project-architecture.txt +41 -0
  237. package/.claude/workflows/cli-templates/prompts/documentation/project-examples.txt +35 -0
  238. package/.claude/workflows/cli-templates/prompts/documentation/project-readme.txt +35 -0
  239. package/.claude/workflows/cli-templates/prompts/memory/02-document-module-structure.txt +165 -0
  240. package/.claude/workflows/cli-templates/prompts/planning/01-plan-architecture-design.txt +109 -0
  241. package/.claude/workflows/cli-templates/prompts/planning/02-breakdown-task-steps.txt +30 -0
  242. package/.claude/workflows/cli-templates/prompts/planning/02-design-component-spec.txt +28 -0
  243. package/.claude/workflows/cli-templates/prompts/planning/03-evaluate-concept-feasibility.txt +127 -0
  244. package/.claude/workflows/cli-templates/prompts/planning/03-plan-migration-strategy.txt +30 -0
  245. package/.claude/workflows/cli-templates/prompts/tech/tech-module-format.txt +359 -0
  246. package/.claude/workflows/cli-templates/prompts/tech/tech-skill-index.txt +185 -0
  247. package/.claude/workflows/cli-templates/prompts/test/test-concept-analysis.txt +179 -0
  248. package/.claude/workflows/cli-templates/prompts/universal/00-universal-creative-style.txt +95 -0
  249. package/.claude/workflows/cli-templates/prompts/universal/00-universal-rigorous-style.txt +92 -0
  250. package/.claude/workflows/cli-templates/prompts/verification/codex-technical.txt +28 -0
  251. package/.claude/workflows/cli-templates/prompts/verification/cross-validation.txt +28 -0
  252. package/.claude/workflows/cli-templates/prompts/verification/gemini-strategic.txt +27 -0
  253. package/.claude/workflows/cli-templates/prompts/workflow/analysis-results-structure.txt +224 -0
  254. package/.claude/workflows/cli-templates/prompts/workflow/codex-feasibility-validation.txt +176 -0
  255. package/.claude/workflows/cli-templates/prompts/workflow/gemini-solution-design.txt +131 -0
  256. package/.claude/workflows/cli-templates/prompts/workflow/impl-plan-template.txt +286 -0
  257. package/.claude/workflows/cli-templates/prompts/workflow/skill-aggregation.txt +172 -0
  258. package/.claude/workflows/cli-templates/prompts/workflow/skill-conflict-patterns.txt +98 -0
  259. package/.claude/workflows/cli-templates/prompts/workflow/skill-index.txt +224 -0
  260. package/.claude/workflows/cli-templates/prompts/workflow/skill-lessons-learned.txt +98 -0
  261. package/.claude/workflows/cli-templates/prompts/workflow/skill-sessions-timeline.txt +53 -0
  262. package/.claude/workflows/cli-templates/prompts/workflow/task-json-agent-mode.txt +123 -0
  263. package/.claude/workflows/cli-templates/prompts/workflow/task-json-cli-mode.txt +182 -0
  264. package/.claude/workflows/cli-templates/schemas/diagnosis-json-schema.json +234 -0
  265. package/.claude/workflows/cli-templates/schemas/explore-json-schema.json +124 -0
  266. package/.claude/workflows/cli-templates/schemas/fix-plan-json-schema.json +273 -0
  267. package/.claude/workflows/cli-templates/schemas/plan-json-schema.json +219 -0
  268. package/.claude/workflows/cli-templates/schemas/project-json-schema.json +221 -0
  269. package/.claude/workflows/cli-templates/schemas/review-deep-dive-results-schema.json +82 -0
  270. package/.claude/workflows/cli-templates/schemas/review-dimension-results-schema.json +51 -0
  271. package/.claude/workflows/cli-templates/tech-stacks/go-dev.md +91 -0
  272. package/.claude/workflows/cli-templates/tech-stacks/java-dev.md +107 -0
  273. package/.claude/workflows/cli-templates/tech-stacks/javascript-dev.md +58 -0
  274. package/.claude/workflows/cli-templates/tech-stacks/python-dev.md +79 -0
  275. package/.claude/workflows/cli-templates/tech-stacks/react-dev.md +103 -0
  276. package/.claude/workflows/cli-templates/tech-stacks/typescript-dev.md +83 -0
  277. package/.claude/workflows/cli-templates/ui-design/systems/animation-tokens.json +247 -0
  278. package/.claude/workflows/cli-templates/ui-design/systems/design-tokens.json +342 -0
  279. package/.claude/workflows/cli-templates/ui-design/systems/layout-templates.json +145 -0
  280. package/.claude/workflows/context-search-strategy.md +77 -0
  281. package/.claude/workflows/intelligent-tools-strategy.md +662 -0
  282. package/.claude/workflows/review-directory-specification.md +336 -0
  283. package/.claude/workflows/task-core.md +214 -0
  284. package/.claude/workflows/tool-strategy.md +71 -0
  285. package/.claude/workflows/workflow-architecture.md +942 -0
  286. package/.codex/AGENTS.md +330 -0
  287. package/.gemini/GEMINI.md +164 -0
  288. package/.qwen/QWEN.md +164 -0
  289. package/CLAUDE.md +91 -0
  290. package/LICENSE +21 -0
  291. package/README.md +219 -0
  292. package/ccw/README.md +121 -0
  293. package/ccw/bin/ccw.js +10 -0
  294. package/ccw/src/cli.js +100 -0
  295. package/ccw/src/commands/install.js +324 -0
  296. package/ccw/src/commands/list.js +37 -0
  297. package/ccw/src/commands/serve.js +67 -0
  298. package/ccw/src/commands/uninstall.js +238 -0
  299. package/ccw/src/commands/upgrade.js +307 -0
  300. package/ccw/src/commands/view.js +14 -0
  301. package/ccw/src/core/dashboard-generator-patch.js +29 -0
  302. package/ccw/src/core/dashboard-generator.js +667 -0
  303. package/ccw/src/core/data-aggregator.js +409 -0
  304. package/ccw/src/core/lite-scanner.js +290 -0
  305. package/ccw/src/core/manifest.js +201 -0
  306. package/ccw/src/core/server.js +1327 -0
  307. package/ccw/src/core/server.js.bak +385 -0
  308. package/ccw/src/core/server_original.bak +385 -0
  309. package/ccw/src/core/session-scanner.js +235 -0
  310. package/ccw/src/index.js +9 -0
  311. package/ccw/src/templates/dashboard-js/api.js +200 -0
  312. package/ccw/src/templates/dashboard-js/components/_conflict_tab.js +112 -0
  313. package/ccw/src/templates/dashboard-js/components/_exp_helpers.js +54 -0
  314. package/ccw/src/templates/dashboard-js/components/_review_tab.js +640 -0
  315. package/ccw/src/templates/dashboard-js/components/carousel.js +398 -0
  316. package/ccw/src/templates/dashboard-js/components/flowchart.js +493 -0
  317. package/ccw/src/templates/dashboard-js/components/hook-manager.js +273 -0
  318. package/ccw/src/templates/dashboard-js/components/mcp-manager.js +506 -0
  319. package/ccw/src/templates/dashboard-js/components/modals.js +260 -0
  320. package/ccw/src/templates/dashboard-js/components/navigation.js +239 -0
  321. package/ccw/src/templates/dashboard-js/components/notifications.js +194 -0
  322. package/ccw/src/templates/dashboard-js/components/sidebar.js +31 -0
  323. package/ccw/src/templates/dashboard-js/components/tabs-context.js +1093 -0
  324. package/ccw/src/templates/dashboard-js/components/tabs-other.js +273 -0
  325. package/ccw/src/templates/dashboard-js/components/task-drawer-core.js +477 -0
  326. package/ccw/src/templates/dashboard-js/components/task-drawer-renderers.js +447 -0
  327. package/ccw/src/templates/dashboard-js/components/theme.js +21 -0
  328. package/ccw/src/templates/dashboard-js/main.js +57 -0
  329. package/ccw/src/templates/dashboard-js/state.js +37 -0
  330. package/ccw/src/templates/dashboard-js/utils.js +153 -0
  331. package/ccw/src/templates/dashboard-js/views/fix-session.js +180 -0
  332. package/ccw/src/templates/dashboard-js/views/home.js +193 -0
  333. package/ccw/src/templates/dashboard-js/views/hook-manager.js +387 -0
  334. package/ccw/src/templates/dashboard-js/views/lite-tasks.js +390 -0
  335. package/ccw/src/templates/dashboard-js/views/mcp-manager.js +271 -0
  336. package/ccw/src/templates/dashboard-js/views/project-overview.js +246 -0
  337. package/ccw/src/templates/dashboard-js/views/review-session.js +711 -0
  338. package/ccw/src/templates/dashboard-js/views/session-detail.js +770 -0
  339. package/ccw/src/templates/dashboard.css +7660 -0
  340. package/ccw/src/templates/dashboard.html +630 -0
  341. package/ccw/src/templates/dashboard_tailwind.html +42 -0
  342. package/ccw/src/templates/dashboard_test.html +37 -0
  343. package/ccw/src/templates/review-cycle-dashboard.html +1930 -0
  344. package/ccw/src/templates/tailwind-base.css +212 -0
  345. package/ccw/src/templates/workflow-dashboard.html +401 -0
  346. package/ccw/src/utils/browser-launcher.js +49 -0
  347. package/ccw/src/utils/file-utils.js +48 -0
  348. package/ccw/src/utils/path-resolver.js +279 -0
  349. package/ccw/src/utils/ui.js +148 -0
  350. package/package.json +66 -0
@@ -0,0 +1,200 @@
1
+ // ========================================
2
+ // API and Data Loading
3
+ // ========================================
4
+ // Server communication and data loading functions
5
+ // Note: Some functions are only available in server mode
6
+
7
+ // ========== Data Loading ==========
8
+
9
+ /**
10
+ * Load dashboard data from API (server mode only)
11
+ * @param {string} path - Project path to load data for
12
+ * @returns {Promise<Object|null>} Dashboard data object or null if failed
13
+ */
14
+ async function loadDashboardData(path) {
15
+ if (!window.SERVER_MODE) {
16
+ console.warn('loadDashboardData called in static mode');
17
+ return null;
18
+ }
19
+
20
+ try {
21
+ const response = await fetch(`/api/data?path=${encodeURIComponent(path)}`);
22
+ if (!response.ok) {
23
+ throw new Error(`HTTP ${response.status}: ${response.statusText}`);
24
+ }
25
+ return await response.json();
26
+ } catch (err) {
27
+ console.error('Failed to load dashboard data:', err);
28
+ return null;
29
+ }
30
+ }
31
+
32
+ // ========== Path Management ==========
33
+
34
+ /**
35
+ * Switch to a new project path (server mode only)
36
+ * Loads dashboard data and updates UI
37
+ * @param {string} path - Project path to switch to
38
+ */
39
+ async function switchToPath(path) {
40
+ // Show loading state
41
+ const container = document.getElementById('mainContent');
42
+ container.innerHTML = '<div class="loading">Loading...</div>';
43
+
44
+ try {
45
+ const data = await loadDashboardData(path);
46
+ if (data) {
47
+ // Update global data
48
+ workflowData = data;
49
+ projectPath = data.projectPath;
50
+ recentPaths = data.recentPaths || [];
51
+
52
+ // Update UI
53
+ document.getElementById('currentPath').textContent = projectPath;
54
+ renderDashboard();
55
+ refreshRecentPaths();
56
+ }
57
+ } catch (err) {
58
+ console.error('Failed to switch path:', err);
59
+ container.innerHTML = '<div class="error">Failed to load project data</div>';
60
+ }
61
+ }
62
+
63
+ /**
64
+ * Select a path from recent paths list
65
+ * @param {string} path - Path to select
66
+ */
67
+ async function selectPath(path) {
68
+ localStorage.setItem('selectedPath', path);
69
+
70
+ // Server mode: load data dynamically
71
+ if (window.SERVER_MODE) {
72
+ await switchToPath(path);
73
+ return;
74
+ }
75
+
76
+ // Static mode: show command to run
77
+ const modal = document.createElement('div');
78
+ modal.className = 'path-modal-overlay';
79
+ modal.innerHTML = `
80
+ <div class="path-modal">
81
+ <div class="path-modal-header">
82
+ <span class="path-modal-icon">${icons.terminal}</span>
83
+ <h3>Run Command</h3>
84
+ </div>
85
+ <div class="path-modal-body">
86
+ <p>To view the dashboard for this project, run:</p>
87
+ <div class="path-modal-command">
88
+ <code>ccw view -p "${path}"</code>
89
+ <button class="copy-btn" id="copyCommandBtn">${icons.copy} <span>Copy</span></button>
90
+ </div>
91
+ <p class="path-modal-note" style="margin-top: 12px;">
92
+ Or use <code>ccw serve</code> for live path switching.
93
+ </p>
94
+ </div>
95
+ <div class="path-modal-footer">
96
+ <button class="path-modal-close" onclick="this.closest('.path-modal-overlay').remove()">OK</button>
97
+ </div>
98
+ </div>
99
+ `;
100
+ document.body.appendChild(modal);
101
+
102
+ // Add copy handler
103
+ document.getElementById('copyCommandBtn').addEventListener('click', function() {
104
+ navigator.clipboard.writeText('ccw view -p "' + path + '"').then(() => {
105
+ this.innerHTML = icons.check + ' <span>Copied!</span>';
106
+ setTimeout(() => { this.innerHTML = icons.copy + ' <span>Copy</span>'; }, 2000);
107
+ });
108
+ });
109
+ }
110
+
111
+ /**
112
+ * Refresh recent paths dropdown UI
113
+ */
114
+ function refreshRecentPaths() {
115
+ const recentContainer = document.getElementById('recentPaths');
116
+ recentContainer.innerHTML = '';
117
+
118
+ recentPaths.forEach(path => {
119
+ const item = document.createElement('div');
120
+ item.className = 'path-item' + (path === projectPath ? ' active' : '');
121
+ item.dataset.path = path;
122
+
123
+ // Path text
124
+ const pathText = document.createElement('span');
125
+ pathText.className = 'path-text';
126
+ pathText.textContent = path;
127
+ pathText.addEventListener('click', () => selectPath(path));
128
+ item.appendChild(pathText);
129
+
130
+ // Delete button (only for non-current paths)
131
+ if (path !== projectPath) {
132
+ const deleteBtn = document.createElement('button');
133
+ deleteBtn.className = 'path-delete-btn';
134
+ deleteBtn.innerHTML = '×';
135
+ deleteBtn.title = 'Remove from recent';
136
+ deleteBtn.addEventListener('click', async (e) => {
137
+ e.stopPropagation();
138
+ await removeRecentPathFromList(path);
139
+ });
140
+ item.appendChild(deleteBtn);
141
+ }
142
+
143
+ recentContainer.appendChild(item);
144
+ });
145
+ }
146
+
147
+ /**
148
+ * Remove a path from recent paths list
149
+ */
150
+ async function removeRecentPathFromList(path) {
151
+ try {
152
+ const response = await fetch('/api/remove-recent-path', {
153
+ method: 'POST',
154
+ headers: { 'Content-Type': 'application/json' },
155
+ body: JSON.stringify({ path })
156
+ });
157
+
158
+ if (response.ok) {
159
+ const data = await response.json();
160
+ if (data.success) {
161
+ recentPaths = data.paths;
162
+ refreshRecentPaths();
163
+ showRefreshToast('Path removed', 'success');
164
+ }
165
+ }
166
+ } catch (err) {
167
+ console.error('Failed to remove path:', err);
168
+ showRefreshToast('Failed to remove path', 'error');
169
+ }
170
+ }
171
+
172
+ // ========== File System Access ==========
173
+
174
+ /**
175
+ * Browse for folder using File System Access API or fallback to input dialog
176
+ */
177
+ async function browseForFolder() {
178
+ // Try modern File System Access API first
179
+ if ('showDirectoryPicker' in window) {
180
+ try {
181
+ const dirHandle = await window.showDirectoryPicker({
182
+ mode: 'read',
183
+ startIn: 'documents'
184
+ });
185
+ // Get the directory name (we can't get full path for security reasons)
186
+ const dirName = dirHandle.name;
187
+ showPathSelectedModal(dirName, dirHandle);
188
+ return;
189
+ } catch (err) {
190
+ if (err.name === 'AbortError') {
191
+ // User cancelled
192
+ return;
193
+ }
194
+ console.warn('Directory picker failed:', err);
195
+ }
196
+ }
197
+
198
+ // Fallback: show input dialog
199
+ showPathInputModal();
200
+ }
@@ -0,0 +1,112 @@
1
+ // ==========================================
2
+ // Conflict Resolution Tab
3
+ // ==========================================
4
+
5
+ async function loadAndRenderConflictTab(session, contentArea) {
6
+ contentArea.innerHTML = '<div class="tab-loading">Loading conflict resolution...</div>';
7
+
8
+ try {
9
+ if (window.SERVER_MODE && session.path) {
10
+ const response = await fetch(`/api/session-detail?path=${encodeURIComponent(session.path)}&type=conflict`);
11
+ if (response.ok) {
12
+ const data = await response.json();
13
+ contentArea.innerHTML = renderConflictCards(data.conflictResolution);
14
+ return;
15
+ }
16
+ }
17
+ contentArea.innerHTML = `
18
+ <div class="tab-empty-state">
19
+ <div class="empty-icon">⚖️</div>
20
+ <div class="empty-title">No Conflict Resolution</div>
21
+ <div class="empty-text">No conflict-resolution-decisions.json found for this session.</div>
22
+ </div>
23
+ `;
24
+ } catch (err) {
25
+ contentArea.innerHTML = `<div class="tab-error">Failed to load conflict resolution: ${err.message}</div>`;
26
+ }
27
+ }
28
+
29
+ function renderConflictCards(conflictResolution) {
30
+ if (!conflictResolution) {
31
+ return `
32
+ <div class="tab-empty-state">
33
+ <div class="empty-icon">⚖️</div>
34
+ <div class="empty-title">No Conflict Resolution</div>
35
+ <div class="empty-text">No conflict decisions found for this session.</div>
36
+ </div>
37
+ `;
38
+ }
39
+
40
+ let cards = [];
41
+
42
+ // Header info
43
+ cards.push(`
44
+ <div class="conflict-tab-header">
45
+ <h3>⚖️ Conflict Resolution Decisions</h3>
46
+ <div class="conflict-meta-info">
47
+ <span>Session: <strong>${escapeHtml(conflictResolution.session_id || 'N/A')}</strong></span>
48
+ ${conflictResolution.resolved_at ? `<span>Resolved: <strong>${formatDate(conflictResolution.resolved_at)}</strong></span>` : ''}
49
+ </div>
50
+ </div>
51
+ `);
52
+
53
+ // User Decisions as cards
54
+ if (conflictResolution.user_decisions && Object.keys(conflictResolution.user_decisions).length > 0) {
55
+ const decisions = Object.entries(conflictResolution.user_decisions);
56
+
57
+ cards.push(`<div class="conflict-section-title">🎯 User Decisions (${decisions.length})</div>`);
58
+ cards.push('<div class="conflict-cards-grid">');
59
+
60
+ for (const [key, decision] of decisions) {
61
+ const label = key.replace(/_/g, ' ').replace(/\b\w/g, c => c.toUpperCase());
62
+ cards.push(`
63
+ <div class="conflict-card decision-card">
64
+ <div class="conflict-card-header">
65
+ <span class="conflict-card-label">${escapeHtml(label)}</span>
66
+ </div>
67
+ <div class="conflict-card-choice">
68
+ <span class="choice-label">Choice:</span>
69
+ <span class="choice-value">${escapeHtml(decision.choice || 'N/A')}</span>
70
+ </div>
71
+ ${decision.description ? `
72
+ <div class="conflict-card-desc">${escapeHtml(decision.description)}</div>
73
+ ` : ''}
74
+ ${decision.implications && decision.implications.length > 0 ? `
75
+ <div class="conflict-card-implications">
76
+ <span class="impl-label">Implications:</span>
77
+ <ul>
78
+ ${decision.implications.map(impl => `<li>${escapeHtml(impl)}</li>`).join('')}
79
+ </ul>
80
+ </div>
81
+ ` : ''}
82
+ </div>
83
+ `);
84
+ }
85
+ cards.push('</div>');
86
+ }
87
+
88
+ // Resolved Conflicts as cards
89
+ if (conflictResolution.resolved_conflicts && conflictResolution.resolved_conflicts.length > 0) {
90
+ cards.push(`<div class="conflict-section-title">✅ Resolved Conflicts (${conflictResolution.resolved_conflicts.length})</div>`);
91
+ cards.push('<div class="conflict-cards-grid">');
92
+
93
+ for (const conflict of conflictResolution.resolved_conflicts) {
94
+ cards.push(`
95
+ <div class="conflict-card resolved-card">
96
+ <div class="conflict-card-header">
97
+ <span class="conflict-card-id">${escapeHtml(conflict.id || 'N/A')}</span>
98
+ <span class="conflict-category-tag">${escapeHtml(conflict.category || 'General')}</span>
99
+ </div>
100
+ <div class="conflict-card-brief">${escapeHtml(conflict.brief || '')}</div>
101
+ <div class="conflict-card-strategy">
102
+ <span class="strategy-label">Strategy:</span>
103
+ <span class="strategy-tag">${escapeHtml(conflict.strategy || 'N/A')}</span>
104
+ </div>
105
+ </div>
106
+ `);
107
+ }
108
+ cards.push('</div>');
109
+ }
110
+
111
+ return `<div class="conflict-tab-content">${cards.join('')}</div>`;
112
+ }
@@ -0,0 +1,54 @@
1
+ // Exploration helpers loaded
2
+
3
+ // Helper: Render exploration field with smart type detection
4
+ function renderExpField(label, value) {
5
+ if (value === null || value === undefined) return '';
6
+ let rendered;
7
+ if (typeof value === 'string') {
8
+ rendered = `<p>${escapeHtml(value)}</p>`;
9
+ } else if (Array.isArray(value)) {
10
+ rendered = renderExpArray(value);
11
+ } else if (typeof value === 'object') {
12
+ rendered = renderExpObject(value);
13
+ } else {
14
+ rendered = `<p>${escapeHtml(String(value))}</p>`;
15
+ }
16
+ return `<div class="exp-field"><label>${escapeHtml(label)}</label>${rendered}</div>`;
17
+ }
18
+
19
+ // Helper: Render array values
20
+ function renderExpArray(arr) {
21
+ if (!arr.length) return '<p>-</p>';
22
+ if (typeof arr[0] === 'object' && arr[0] !== null) {
23
+ return `<div class="exp-array-objects">${arr.map(item => {
24
+ if (item.question) {
25
+ return `<div class="clarification-item">
26
+ <div class="clarification-question">${escapeHtml(item.question)}</div>
27
+ ${item.impact ? `<div class="clarification-impact">Impact: ${escapeHtml(item.impact)}</div>` : ''}
28
+ ${item.priority ? `<span class="priority-badge priority-${item.priority}">${item.priority}</span>` : ''}
29
+ </div>`;
30
+ }
31
+ return `<div class="exp-object-item">${renderExpObject(item)}</div>`;
32
+ }).join('')}</div>`;
33
+ }
34
+ return `<ul class="exp-list">${arr.map(item => `<li>${escapeHtml(String(item))}</li>`).join('')}</ul>`;
35
+ }
36
+
37
+ // Helper: Render object values recursively
38
+ function renderExpObject(obj) {
39
+ if (!obj || typeof obj !== 'object') return '';
40
+ const entries = Object.entries(obj).filter(([k]) => !k.startsWith('_'));
41
+ if (!entries.length) return '<p>-</p>';
42
+ return `<div class="exp-object">${entries.map(([key, val]) => {
43
+ const label = key.replace(/_/g, ' ').replace(/\b\w/g, c => c.toUpperCase());
44
+ if (val === null || val === undefined) return '';
45
+ if (typeof val === 'string') {
46
+ return `<div class="exp-obj-field"><span class="exp-obj-key">${escapeHtml(label)}:</span> <span class="exp-obj-val">${escapeHtml(val)}</span></div>`;
47
+ } else if (Array.isArray(val)) {
48
+ return `<div class="exp-obj-field"><span class="exp-obj-key">${escapeHtml(label)}:</span>${renderExpArray(val)}</div>`;
49
+ } else if (typeof val === 'object') {
50
+ return `<div class="exp-obj-nested"><span class="exp-obj-key">${escapeHtml(label)}</span>${renderExpObject(val)}</div>`;
51
+ }
52
+ return `<div class="exp-obj-field"><span class="exp-obj-key">${escapeHtml(label)}:</span> <span class="exp-obj-val">${escapeHtml(String(val))}</span></div>`;
53
+ }).join('')}</div>`;
54
+ }