claude-code-workflow 6.2.3 → 6.2.5

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 (930) hide show
  1. package/README.md +145 -294
  2. package/{ccw/dist → dist}/core/routes/codexlens-routes.d.ts.map +1 -1
  3. package/{ccw/dist → dist}/core/routes/codexlens-routes.js +31 -6
  4. package/dist/core/routes/codexlens-routes.js.map +1 -0
  5. package/{ccw/dist → dist}/tools/codex-lens.d.ts +20 -3
  6. package/dist/tools/codex-lens.d.ts.map +1 -0
  7. package/{ccw/dist → dist}/tools/codex-lens.js +166 -37
  8. package/dist/tools/codex-lens.js.map +1 -0
  9. package/package.json +32 -37
  10. package/{ccw/src → src}/core/routes/codexlens-routes.ts +34 -6
  11. package/{ccw/src → src}/templates/dashboard-js/components/mcp-manager.js +7 -12
  12. package/{ccw/src → src}/templates/dashboard-js/i18n.js +157 -1
  13. package/{ccw/src → src}/templates/dashboard-js/views/codexlens-manager.js +790 -25
  14. package/{ccw/src → src}/tools/codex-lens.ts +183 -35
  15. package/.claude/CLAUDE.md +0 -10
  16. package/.claude/agents/action-planning-agent.md +0 -857
  17. package/.claude/agents/cli-execution-agent.md +0 -267
  18. package/.claude/agents/cli-explore-agent.md +0 -182
  19. package/.claude/agents/cli-lite-planning-agent.md +0 -446
  20. package/.claude/agents/cli-planning-agent.md +0 -558
  21. package/.claude/agents/code-developer.md +0 -311
  22. package/.claude/agents/conceptual-planning-agent.md +0 -308
  23. package/.claude/agents/context-search-agent.md +0 -581
  24. package/.claude/agents/doc-generator.md +0 -330
  25. package/.claude/agents/memory-bridge.md +0 -94
  26. package/.claude/agents/test-context-search-agent.md +0 -400
  27. package/.claude/agents/test-fix-agent.md +0 -344
  28. package/.claude/agents/ui-design-agent.md +0 -593
  29. package/.claude/agents/universal-executor.md +0 -131
  30. package/.claude/commands/clean.md +0 -516
  31. package/.claude/commands/cli/cli-init.md +0 -440
  32. package/.claude/commands/enhance-prompt.md +0 -93
  33. package/.claude/commands/memory/code-map-memory.md +0 -687
  34. package/.claude/commands/memory/compact.md +0 -383
  35. package/.claude/commands/memory/docs-full-cli.md +0 -471
  36. package/.claude/commands/memory/docs-related-cli.md +0 -386
  37. package/.claude/commands/memory/docs.md +0 -615
  38. package/.claude/commands/memory/load-skill-memory.md +0 -182
  39. package/.claude/commands/memory/load.md +0 -240
  40. package/.claude/commands/memory/skill-memory.md +0 -525
  41. package/.claude/commands/memory/style-skill-memory.md +0 -396
  42. package/.claude/commands/memory/tech-research-rules.md +0 -310
  43. package/.claude/commands/memory/update-full.md +0 -332
  44. package/.claude/commands/memory/update-related.md +0 -332
  45. package/.claude/commands/memory/workflow-skill-memory.md +0 -517
  46. package/.claude/commands/task/breakdown.md +0 -204
  47. package/.claude/commands/task/create.md +0 -152
  48. package/.claude/commands/task/execute.md +0 -270
  49. package/.claude/commands/task/replan.md +0 -437
  50. package/.claude/commands/version.md +0 -254
  51. package/.claude/commands/workflow/action-plan-verify.md +0 -447
  52. package/.claude/commands/workflow/brainstorm/api-designer.md +0 -587
  53. package/.claude/commands/workflow/brainstorm/artifacts.md +0 -453
  54. package/.claude/commands/workflow/brainstorm/auto-parallel.md +0 -443
  55. package/.claude/commands/workflow/brainstorm/data-architect.md +0 -220
  56. package/.claude/commands/workflow/brainstorm/product-manager.md +0 -200
  57. package/.claude/commands/workflow/brainstorm/product-owner.md +0 -200
  58. package/.claude/commands/workflow/brainstorm/scrum-master.md +0 -200
  59. package/.claude/commands/workflow/brainstorm/subject-matter-expert.md +0 -200
  60. package/.claude/commands/workflow/brainstorm/synthesis.md +0 -398
  61. package/.claude/commands/workflow/brainstorm/system-architect.md +0 -389
  62. package/.claude/commands/workflow/brainstorm/ui-designer.md +0 -221
  63. package/.claude/commands/workflow/brainstorm/ux-expert.md +0 -221
  64. package/.claude/commands/workflow/debug.md +0 -321
  65. package/.claude/commands/workflow/execute.md +0 -475
  66. package/.claude/commands/workflow/init.md +0 -165
  67. package/.claude/commands/workflow/lite-execute.md +0 -792
  68. package/.claude/commands/workflow/lite-fix.md +0 -623
  69. package/.claude/commands/workflow/lite-plan.md +0 -610
  70. package/.claude/commands/workflow/plan.md +0 -551
  71. package/.claude/commands/workflow/replan.md +0 -515
  72. package/.claude/commands/workflow/review-fix.md +0 -606
  73. package/.claude/commands/workflow/review-module-cycle.md +0 -767
  74. package/.claude/commands/workflow/review-session-cycle.md +0 -778
  75. package/.claude/commands/workflow/review.md +0 -297
  76. package/.claude/commands/workflow/session/complete.md +0 -153
  77. package/.claude/commands/workflow/session/list.md +0 -96
  78. package/.claude/commands/workflow/session/resume.md +0 -61
  79. package/.claude/commands/workflow/session/start.md +0 -200
  80. package/.claude/commands/workflow/tdd-plan.md +0 -460
  81. package/.claude/commands/workflow/tdd-verify.md +0 -400
  82. package/.claude/commands/workflow/test-cycle-execute.md +0 -500
  83. package/.claude/commands/workflow/test-fix-gen.md +0 -699
  84. package/.claude/commands/workflow/test-gen.md +0 -529
  85. package/.claude/commands/workflow/tools/conflict-resolution.md +0 -766
  86. package/.claude/commands/workflow/tools/context-gather.md +0 -436
  87. package/.claude/commands/workflow/tools/task-generate-agent.md +0 -490
  88. package/.claude/commands/workflow/tools/task-generate-tdd.md +0 -526
  89. package/.claude/commands/workflow/tools/tdd-coverage-analysis.md +0 -309
  90. package/.claude/commands/workflow/tools/test-concept-enhanced.md +0 -164
  91. package/.claude/commands/workflow/tools/test-context-gather.md +0 -236
  92. package/.claude/commands/workflow/tools/test-task-generate.md +0 -257
  93. package/.claude/commands/workflow/ui-design/animation-extract.md +0 -1150
  94. package/.claude/commands/workflow/ui-design/codify-style.md +0 -652
  95. package/.claude/commands/workflow/ui-design/design-sync.md +0 -454
  96. package/.claude/commands/workflow/ui-design/explore-auto.md +0 -678
  97. package/.claude/commands/workflow/ui-design/generate.md +0 -504
  98. package/.claude/commands/workflow/ui-design/imitate-auto.md +0 -745
  99. package/.claude/commands/workflow/ui-design/import-from-code.md +0 -540
  100. package/.claude/commands/workflow/ui-design/layout-extract.md +0 -788
  101. package/.claude/commands/workflow/ui-design/reference-page-generator.md +0 -356
  102. package/.claude/commands/workflow/ui-design/style-extract.md +0 -773
  103. package/.claude/skills/command-guide/SKILL.md +0 -388
  104. package/.claude/skills/command-guide/UPDATE-GUIDELINE.md +0 -592
  105. package/.claude/skills/command-guide/guides/cli-tools-guide.md +0 -410
  106. package/.claude/skills/command-guide/guides/examples.md +0 -537
  107. package/.claude/skills/command-guide/guides/getting-started.md +0 -242
  108. package/.claude/skills/command-guide/guides/implementation-details.md +0 -1010
  109. package/.claude/skills/command-guide/guides/index-structure.md +0 -326
  110. package/.claude/skills/command-guide/guides/troubleshooting.md +0 -92
  111. package/.claude/skills/command-guide/guides/ui-design-workflow-guide.md +0 -316
  112. package/.claude/skills/command-guide/guides/workflow-patterns.md +0 -662
  113. package/.claude/skills/command-guide/index/all-commands.json +0 -772
  114. package/.claude/skills/command-guide/index/by-category.json +0 -800
  115. package/.claude/skills/command-guide/index/by-use-case.json +0 -786
  116. package/.claude/skills/command-guide/index/command-relationships.json +0 -307
  117. package/.claude/skills/command-guide/index/essential-commands.json +0 -112
  118. package/.claude/skills/command-guide/reference/agents/action-planning-agent.md +0 -857
  119. package/.claude/skills/command-guide/reference/agents/cli-execution-agent.md +0 -267
  120. package/.claude/skills/command-guide/reference/agents/cli-explore-agent.md +0 -182
  121. package/.claude/skills/command-guide/reference/agents/cli-lite-planning-agent.md +0 -446
  122. package/.claude/skills/command-guide/reference/agents/cli-planning-agent.md +0 -558
  123. package/.claude/skills/command-guide/reference/agents/code-developer.md +0 -311
  124. package/.claude/skills/command-guide/reference/agents/conceptual-planning-agent.md +0 -308
  125. package/.claude/skills/command-guide/reference/agents/context-search-agent.md +0 -581
  126. package/.claude/skills/command-guide/reference/agents/doc-generator.md +0 -330
  127. package/.claude/skills/command-guide/reference/agents/memory-bridge.md +0 -94
  128. package/.claude/skills/command-guide/reference/agents/test-context-search-agent.md +0 -400
  129. package/.claude/skills/command-guide/reference/agents/test-fix-agent.md +0 -344
  130. package/.claude/skills/command-guide/reference/agents/ui-design-agent.md +0 -593
  131. package/.claude/skills/command-guide/reference/agents/universal-executor.md +0 -131
  132. package/.claude/skills/command-guide/reference/commands/cli/cli-init.md +0 -440
  133. package/.claude/skills/command-guide/reference/commands/enhance-prompt.md +0 -93
  134. package/.claude/skills/command-guide/reference/commands/memory/code-map-memory.md +0 -687
  135. package/.claude/skills/command-guide/reference/commands/memory/docs-full-cli.md +0 -471
  136. package/.claude/skills/command-guide/reference/commands/memory/docs-related-cli.md +0 -386
  137. package/.claude/skills/command-guide/reference/commands/memory/docs.md +0 -616
  138. package/.claude/skills/command-guide/reference/commands/memory/load-skill-memory.md +0 -182
  139. package/.claude/skills/command-guide/reference/commands/memory/load.md +0 -240
  140. package/.claude/skills/command-guide/reference/commands/memory/skill-memory.md +0 -525
  141. package/.claude/skills/command-guide/reference/commands/memory/style-skill-memory.md +0 -396
  142. package/.claude/skills/command-guide/reference/commands/memory/tech-research.md +0 -314
  143. package/.claude/skills/command-guide/reference/commands/memory/update-full.md +0 -332
  144. package/.claude/skills/command-guide/reference/commands/memory/update-related.md +0 -332
  145. package/.claude/skills/command-guide/reference/commands/memory/workflow-skill-memory.md +0 -517
  146. package/.claude/skills/command-guide/reference/commands/task/breakdown.md +0 -204
  147. package/.claude/skills/command-guide/reference/commands/task/create.md +0 -152
  148. package/.claude/skills/command-guide/reference/commands/task/execute.md +0 -270
  149. package/.claude/skills/command-guide/reference/commands/task/replan.md +0 -437
  150. package/.claude/skills/command-guide/reference/commands/version.md +0 -254
  151. package/.claude/skills/command-guide/reference/commands/workflow/action-plan-verify.md +0 -447
  152. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/api-designer.md +0 -585
  153. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/artifacts.md +0 -452
  154. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/auto-parallel.md +0 -443
  155. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/data-architect.md +0 -220
  156. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/product-manager.md +0 -200
  157. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/product-owner.md +0 -200
  158. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/scrum-master.md +0 -200
  159. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/subject-matter-expert.md +0 -200
  160. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/synthesis.md +0 -398
  161. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/system-architect.md +0 -387
  162. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/ui-designer.md +0 -221
  163. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/ux-expert.md +0 -221
  164. package/.claude/skills/command-guide/reference/commands/workflow/execute.md +0 -465
  165. package/.claude/skills/command-guide/reference/commands/workflow/init.md +0 -164
  166. package/.claude/skills/command-guide/reference/commands/workflow/lite-execute.md +0 -748
  167. package/.claude/skills/command-guide/reference/commands/workflow/lite-fix.md +0 -664
  168. package/.claude/skills/command-guide/reference/commands/workflow/lite-plan.md +0 -645
  169. package/.claude/skills/command-guide/reference/commands/workflow/plan.md +0 -551
  170. package/.claude/skills/command-guide/reference/commands/workflow/replan.md +0 -515
  171. package/.claude/skills/command-guide/reference/commands/workflow/review-fix.md +0 -606
  172. package/.claude/skills/command-guide/reference/commands/workflow/review-module-cycle.md +0 -765
  173. package/.claude/skills/command-guide/reference/commands/workflow/review-session-cycle.md +0 -776
  174. package/.claude/skills/command-guide/reference/commands/workflow/review.md +0 -298
  175. package/.claude/skills/command-guide/reference/commands/workflow/session/complete.md +0 -547
  176. package/.claude/skills/command-guide/reference/commands/workflow/session/list.md +0 -114
  177. package/.claude/skills/command-guide/reference/commands/workflow/session/resume.md +0 -77
  178. package/.claude/skills/command-guide/reference/commands/workflow/session/start.md +0 -257
  179. package/.claude/skills/command-guide/reference/commands/workflow/tdd-plan.md +0 -460
  180. package/.claude/skills/command-guide/reference/commands/workflow/tdd-verify.md +0 -400
  181. package/.claude/skills/command-guide/reference/commands/workflow/test-cycle-execute.md +0 -498
  182. package/.claude/skills/command-guide/reference/commands/workflow/test-fix-gen.md +0 -699
  183. package/.claude/skills/command-guide/reference/commands/workflow/test-gen.md +0 -529
  184. package/.claude/skills/command-guide/reference/commands/workflow/tools/conflict-resolution.md +0 -766
  185. package/.claude/skills/command-guide/reference/commands/workflow/tools/context-gather.md +0 -434
  186. package/.claude/skills/command-guide/reference/commands/workflow/tools/task-generate-agent.md +0 -487
  187. package/.claude/skills/command-guide/reference/commands/workflow/tools/task-generate-tdd.md +0 -525
  188. package/.claude/skills/command-guide/reference/commands/workflow/tools/tdd-coverage-analysis.md +0 -309
  189. package/.claude/skills/command-guide/reference/commands/workflow/tools/test-concept-enhanced.md +0 -163
  190. package/.claude/skills/command-guide/reference/commands/workflow/tools/test-context-gather.md +0 -235
  191. package/.claude/skills/command-guide/reference/commands/workflow/tools/test-task-generate.md +0 -256
  192. package/.claude/skills/command-guide/reference/commands/workflow/ui-design/animation-extract.md +0 -1150
  193. package/.claude/skills/command-guide/reference/commands/workflow/ui-design/codify-style.md +0 -652
  194. package/.claude/skills/command-guide/reference/commands/workflow/ui-design/design-sync.md +0 -454
  195. package/.claude/skills/command-guide/reference/commands/workflow/ui-design/explore-auto.md +0 -678
  196. package/.claude/skills/command-guide/reference/commands/workflow/ui-design/generate.md +0 -504
  197. package/.claude/skills/command-guide/reference/commands/workflow/ui-design/imitate-auto.md +0 -745
  198. package/.claude/skills/command-guide/reference/commands/workflow/ui-design/import-from-code.md +0 -537
  199. package/.claude/skills/command-guide/reference/commands/workflow/ui-design/layout-extract.md +0 -788
  200. package/.claude/skills/command-guide/reference/commands/workflow/ui-design/reference-page-generator.md +0 -356
  201. package/.claude/skills/command-guide/reference/commands/workflow/ui-design/style-extract.md +0 -773
  202. package/.claude/skills/command-guide/scripts/analyze_commands.py +0 -502
  203. package/.claude/skills/command-guide/scripts/update-index.sh +0 -130
  204. package/.claude/skills/command-guide/templates/issue-bug.md +0 -104
  205. package/.claude/skills/command-guide/templates/issue-diagnosis.md +0 -275
  206. package/.claude/skills/command-guide/templates/issue-feature.md +0 -97
  207. package/.claude/skills/command-guide/templates/issue-question.md +0 -141
  208. package/.claude/skills/prompt-enhancer/SKILL.md +0 -124
  209. package/.claude/workflows/_template-compare-matrix.html +0 -692
  210. package/.claude/workflows/chinese-response.md +0 -38
  211. package/.claude/workflows/cli-templates/fix-plan-template.json +0 -75
  212. package/.claude/workflows/cli-templates/fix-progress-template.json +0 -48
  213. package/.claude/workflows/cli-templates/memory/style-skill-memory/skill-md-template.md +0 -299
  214. package/.claude/workflows/cli-templates/planning-roles/data-architect.md +0 -120
  215. package/.claude/workflows/cli-templates/planning-roles/product-manager.md +0 -119
  216. package/.claude/workflows/cli-templates/planning-roles/product-owner.md +0 -261
  217. package/.claude/workflows/cli-templates/planning-roles/scrum-master.md +0 -186
  218. package/.claude/workflows/cli-templates/planning-roles/subject-matter-expert.md +0 -281
  219. package/.claude/workflows/cli-templates/planning-roles/synthesis-role.md +0 -414
  220. package/.claude/workflows/cli-templates/planning-roles/system-architect.md +0 -106
  221. package/.claude/workflows/cli-templates/planning-roles/test-strategist.md +0 -124
  222. package/.claude/workflows/cli-templates/planning-roles/ui-designer.md +0 -379
  223. package/.claude/workflows/cli-templates/planning-roles/ux-expert.md +0 -240
  224. package/.claude/workflows/cli-templates/prompts/analysis/01-diagnose-bug-root-cause.txt +0 -127
  225. package/.claude/workflows/cli-templates/prompts/analysis/01-trace-code-execution.txt +0 -115
  226. package/.claude/workflows/cli-templates/prompts/analysis/02-analyze-code-patterns.txt +0 -37
  227. package/.claude/workflows/cli-templates/prompts/analysis/02-analyze-technical-document.txt +0 -33
  228. package/.claude/workflows/cli-templates/prompts/analysis/02-review-architecture.txt +0 -29
  229. package/.claude/workflows/cli-templates/prompts/analysis/02-review-code-quality.txt +0 -28
  230. package/.claude/workflows/cli-templates/prompts/analysis/03-analyze-performance.txt +0 -29
  231. package/.claude/workflows/cli-templates/prompts/analysis/03-assess-security-risks.txt +0 -29
  232. package/.claude/workflows/cli-templates/prompts/analysis/03-review-quality-standards.txt +0 -29
  233. package/.claude/workflows/cli-templates/prompts/development/02-generate-tests.txt +0 -70
  234. package/.claude/workflows/cli-templates/prompts/development/02-implement-component-ui.txt +0 -55
  235. package/.claude/workflows/cli-templates/prompts/development/02-implement-feature.txt +0 -58
  236. package/.claude/workflows/cli-templates/prompts/development/02-refactor-codebase.txt +0 -55
  237. package/.claude/workflows/cli-templates/prompts/development/03-debug-runtime-issues.txt +0 -55
  238. package/.claude/workflows/cli-templates/prompts/documentation/api.txt +0 -15
  239. package/.claude/workflows/cli-templates/prompts/documentation/folder-navigation.txt +0 -27
  240. package/.claude/workflows/cli-templates/prompts/documentation/module-readme.txt +0 -49
  241. package/.claude/workflows/cli-templates/prompts/documentation/project-architecture.txt +0 -41
  242. package/.claude/workflows/cli-templates/prompts/documentation/project-examples.txt +0 -35
  243. package/.claude/workflows/cli-templates/prompts/documentation/project-readme.txt +0 -35
  244. package/.claude/workflows/cli-templates/prompts/memory/02-document-module-structure.txt +0 -165
  245. package/.claude/workflows/cli-templates/prompts/planning/01-plan-architecture-design.txt +0 -109
  246. package/.claude/workflows/cli-templates/prompts/planning/02-breakdown-task-steps.txt +0 -30
  247. package/.claude/workflows/cli-templates/prompts/planning/02-design-component-spec.txt +0 -28
  248. package/.claude/workflows/cli-templates/prompts/planning/03-evaluate-concept-feasibility.txt +0 -127
  249. package/.claude/workflows/cli-templates/prompts/planning/03-plan-migration-strategy.txt +0 -30
  250. package/.claude/workflows/cli-templates/prompts/rules/rule-api.txt +0 -122
  251. package/.claude/workflows/cli-templates/prompts/rules/rule-components.txt +0 -122
  252. package/.claude/workflows/cli-templates/prompts/rules/rule-config.txt +0 -89
  253. package/.claude/workflows/cli-templates/prompts/rules/rule-core.txt +0 -60
  254. package/.claude/workflows/cli-templates/prompts/rules/rule-patterns.txt +0 -70
  255. package/.claude/workflows/cli-templates/prompts/rules/rule-testing.txt +0 -81
  256. package/.claude/workflows/cli-templates/prompts/rules/tech-rules-agent-prompt.txt +0 -89
  257. package/.claude/workflows/cli-templates/prompts/tech/tech-module-format.txt +0 -359
  258. package/.claude/workflows/cli-templates/prompts/tech/tech-skill-index.txt +0 -185
  259. package/.claude/workflows/cli-templates/prompts/test/test-concept-analysis.txt +0 -179
  260. package/.claude/workflows/cli-templates/prompts/universal/00-universal-creative-style.txt +0 -95
  261. package/.claude/workflows/cli-templates/prompts/universal/00-universal-rigorous-style.txt +0 -92
  262. package/.claude/workflows/cli-templates/prompts/verification/codex-technical.txt +0 -28
  263. package/.claude/workflows/cli-templates/prompts/verification/cross-validation.txt +0 -28
  264. package/.claude/workflows/cli-templates/prompts/verification/gemini-strategic.txt +0 -27
  265. package/.claude/workflows/cli-templates/prompts/workflow/analysis-results-structure.txt +0 -224
  266. package/.claude/workflows/cli-templates/prompts/workflow/codex-feasibility-validation.txt +0 -176
  267. package/.claude/workflows/cli-templates/prompts/workflow/gemini-solution-design.txt +0 -131
  268. package/.claude/workflows/cli-templates/prompts/workflow/impl-plan-template.txt +0 -286
  269. package/.claude/workflows/cli-templates/prompts/workflow/skill-aggregation.txt +0 -172
  270. package/.claude/workflows/cli-templates/prompts/workflow/skill-conflict-patterns.txt +0 -94
  271. package/.claude/workflows/cli-templates/prompts/workflow/skill-index.txt +0 -224
  272. package/.claude/workflows/cli-templates/prompts/workflow/skill-lessons-learned.txt +0 -94
  273. package/.claude/workflows/cli-templates/prompts/workflow/skill-sessions-timeline.txt +0 -53
  274. package/.claude/workflows/cli-templates/prompts/workflow/task-json-agent-mode.txt +0 -123
  275. package/.claude/workflows/cli-templates/prompts/workflow/task-json-cli-mode.txt +0 -182
  276. package/.claude/workflows/cli-templates/protocols/analysis-protocol.md +0 -112
  277. package/.claude/workflows/cli-templates/protocols/write-protocol.md +0 -201
  278. package/.claude/workflows/cli-templates/schemas/conflict-resolution-schema.json +0 -137
  279. package/.claude/workflows/cli-templates/schemas/debug-log-json-schema.json +0 -127
  280. package/.claude/workflows/cli-templates/schemas/diagnosis-json-schema.json +0 -234
  281. package/.claude/workflows/cli-templates/schemas/explore-json-schema.json +0 -124
  282. package/.claude/workflows/cli-templates/schemas/fix-plan-json-schema.json +0 -298
  283. package/.claude/workflows/cli-templates/schemas/plan-json-schema.json +0 -244
  284. package/.claude/workflows/cli-templates/schemas/project-json-schema.json +0 -221
  285. package/.claude/workflows/cli-templates/schemas/review-deep-dive-results-schema.json +0 -82
  286. package/.claude/workflows/cli-templates/schemas/review-dimension-results-schema.json +0 -51
  287. package/.claude/workflows/cli-templates/tech-stacks/go-dev.md +0 -91
  288. package/.claude/workflows/cli-templates/tech-stacks/java-dev.md +0 -107
  289. package/.claude/workflows/cli-templates/tech-stacks/javascript-dev.md +0 -58
  290. package/.claude/workflows/cli-templates/tech-stacks/python-dev.md +0 -79
  291. package/.claude/workflows/cli-templates/tech-stacks/react-dev.md +0 -103
  292. package/.claude/workflows/cli-templates/tech-stacks/typescript-dev.md +0 -83
  293. package/.claude/workflows/cli-templates/ui-design/systems/animation-tokens.json +0 -247
  294. package/.claude/workflows/cli-templates/ui-design/systems/design-tokens.json +0 -342
  295. package/.claude/workflows/cli-templates/ui-design/systems/layout-templates.json +0 -145
  296. package/.claude/workflows/cli-tools-usage.md +0 -526
  297. package/.claude/workflows/coding-philosophy.md +0 -70
  298. package/.claude/workflows/context-tools.md +0 -84
  299. package/.claude/workflows/file-modification.md +0 -64
  300. package/.claude/workflows/review-directory-specification.md +0 -336
  301. package/.claude/workflows/task-core.md +0 -214
  302. package/.claude/workflows/tool-strategy.md +0 -216
  303. package/.claude/workflows/windows-platform.md +0 -16
  304. package/.claude/workflows/workflow-architecture.md +0 -942
  305. package/.codex/AGENTS.md +0 -63
  306. package/.codex/prompts/debug.md +0 -318
  307. package/.codex/prompts/execute.md +0 -273
  308. package/.codex/prompts/lite-execute.md +0 -164
  309. package/.codex/prompts/lite-plan.md +0 -469
  310. package/.codex/prompts.zip +0 -0
  311. package/.gemini/GEMINI.md +0 -25
  312. package/.qwen/QWEN.md +0 -25
  313. package/LICENSE +0 -21
  314. package/ccw/README.md +0 -145
  315. package/ccw/dist/core/routes/codexlens-routes.js.map +0 -1
  316. package/ccw/dist/tools/codex-lens.d.ts.map +0 -1
  317. package/ccw/dist/tools/codex-lens.js.map +0 -1
  318. package/ccw/package.json +0 -65
  319. package/codex-lens/pyproject.toml +0 -48
  320. package/codex-lens/src/codexlens/.workflow/.cli-history/history.db +0 -0
  321. package/codex-lens/src/codexlens/__init__.py +0 -28
  322. package/codex-lens/src/codexlens/__main__.py +0 -14
  323. package/codex-lens/src/codexlens/__pycache__/__init__.cpython-313.pyc +0 -0
  324. package/codex-lens/src/codexlens/__pycache__/__main__.cpython-313.pyc +0 -0
  325. package/codex-lens/src/codexlens/__pycache__/config.cpython-313.pyc +0 -0
  326. package/codex-lens/src/codexlens/__pycache__/entities.cpython-313.pyc +0 -0
  327. package/codex-lens/src/codexlens/__pycache__/errors.cpython-313.pyc +0 -0
  328. package/codex-lens/src/codexlens/cli/__init__.py +0 -27
  329. package/codex-lens/src/codexlens/cli/__pycache__/__init__.cpython-313.pyc +0 -0
  330. package/codex-lens/src/codexlens/cli/__pycache__/commands.cpython-313.pyc +0 -0
  331. package/codex-lens/src/codexlens/cli/__pycache__/embedding_manager.cpython-313.pyc +0 -0
  332. package/codex-lens/src/codexlens/cli/__pycache__/model_manager.cpython-313.pyc +0 -0
  333. package/codex-lens/src/codexlens/cli/__pycache__/output.cpython-313.pyc +0 -0
  334. package/codex-lens/src/codexlens/cli/commands.py +0 -1931
  335. package/codex-lens/src/codexlens/cli/embedding_manager.py +0 -620
  336. package/codex-lens/src/codexlens/cli/model_manager.py +0 -289
  337. package/codex-lens/src/codexlens/cli/output.py +0 -124
  338. package/codex-lens/src/codexlens/config.py +0 -201
  339. package/codex-lens/src/codexlens/entities.py +0 -121
  340. package/codex-lens/src/codexlens/errors.py +0 -55
  341. package/codex-lens/src/codexlens/indexing/README.md +0 -77
  342. package/codex-lens/src/codexlens/indexing/__init__.py +0 -4
  343. package/codex-lens/src/codexlens/indexing/__pycache__/__init__.cpython-313.pyc +0 -0
  344. package/codex-lens/src/codexlens/indexing/__pycache__/symbol_extractor.cpython-313.pyc +0 -0
  345. package/codex-lens/src/codexlens/indexing/symbol_extractor.py +0 -243
  346. package/codex-lens/src/codexlens/parsers/__init__.py +0 -8
  347. package/codex-lens/src/codexlens/parsers/__pycache__/__init__.cpython-313.pyc +0 -0
  348. package/codex-lens/src/codexlens/parsers/__pycache__/encoding.cpython-313.pyc +0 -0
  349. package/codex-lens/src/codexlens/parsers/__pycache__/factory.cpython-313.pyc +0 -0
  350. package/codex-lens/src/codexlens/parsers/__pycache__/tokenizer.cpython-313.pyc +0 -0
  351. package/codex-lens/src/codexlens/parsers/__pycache__/treesitter_parser.cpython-313.pyc +0 -0
  352. package/codex-lens/src/codexlens/parsers/encoding.py +0 -202
  353. package/codex-lens/src/codexlens/parsers/factory.py +0 -256
  354. package/codex-lens/src/codexlens/parsers/tokenizer.py +0 -98
  355. package/codex-lens/src/codexlens/parsers/treesitter_parser.py +0 -335
  356. package/codex-lens/src/codexlens/search/__init__.py +0 -15
  357. package/codex-lens/src/codexlens/search/__pycache__/__init__.cpython-313.pyc +0 -0
  358. package/codex-lens/src/codexlens/search/__pycache__/chain_search.cpython-313.pyc +0 -0
  359. package/codex-lens/src/codexlens/search/__pycache__/enrichment.cpython-313.pyc +0 -0
  360. package/codex-lens/src/codexlens/search/__pycache__/hybrid_search.cpython-313.pyc +0 -0
  361. package/codex-lens/src/codexlens/search/__pycache__/query_parser.cpython-313.pyc +0 -0
  362. package/codex-lens/src/codexlens/search/__pycache__/ranking.cpython-313.pyc +0 -0
  363. package/codex-lens/src/codexlens/search/chain_search.py +0 -647
  364. package/codex-lens/src/codexlens/search/enrichment.py +0 -150
  365. package/codex-lens/src/codexlens/search/hybrid_search.py +0 -313
  366. package/codex-lens/src/codexlens/search/query_parser.py +0 -242
  367. package/codex-lens/src/codexlens/search/ranking.py +0 -274
  368. package/codex-lens/src/codexlens/semantic/__init__.py +0 -39
  369. package/codex-lens/src/codexlens/semantic/__pycache__/__init__.cpython-313.pyc +0 -0
  370. package/codex-lens/src/codexlens/semantic/__pycache__/ann_index.cpython-313.pyc +0 -0
  371. package/codex-lens/src/codexlens/semantic/__pycache__/chunker.cpython-313.pyc +0 -0
  372. package/codex-lens/src/codexlens/semantic/__pycache__/code_extractor.cpython-313.pyc +0 -0
  373. package/codex-lens/src/codexlens/semantic/__pycache__/embedder.cpython-313.pyc +0 -0
  374. package/codex-lens/src/codexlens/semantic/__pycache__/graph_analyzer.cpython-313.pyc +0 -0
  375. package/codex-lens/src/codexlens/semantic/__pycache__/llm_enhancer.cpython-313.pyc +0 -0
  376. package/codex-lens/src/codexlens/semantic/__pycache__/vector_store.cpython-313.pyc +0 -0
  377. package/codex-lens/src/codexlens/semantic/ann_index.py +0 -414
  378. package/codex-lens/src/codexlens/semantic/chunker.py +0 -448
  379. package/codex-lens/src/codexlens/semantic/code_extractor.py +0 -274
  380. package/codex-lens/src/codexlens/semantic/embedder.py +0 -185
  381. package/codex-lens/src/codexlens/semantic/vector_store.py +0 -955
  382. package/codex-lens/src/codexlens/storage/__init__.py +0 -29
  383. package/codex-lens/src/codexlens/storage/__pycache__/__init__.cpython-313.pyc +0 -0
  384. package/codex-lens/src/codexlens/storage/__pycache__/dir_index.cpython-313.pyc +0 -0
  385. package/codex-lens/src/codexlens/storage/__pycache__/file_cache.cpython-313.pyc +0 -0
  386. package/codex-lens/src/codexlens/storage/__pycache__/index_tree.cpython-313.pyc +0 -0
  387. package/codex-lens/src/codexlens/storage/__pycache__/migration_manager.cpython-313.pyc +0 -0
  388. package/codex-lens/src/codexlens/storage/__pycache__/path_mapper.cpython-313.pyc +0 -0
  389. package/codex-lens/src/codexlens/storage/__pycache__/registry.cpython-313.pyc +0 -0
  390. package/codex-lens/src/codexlens/storage/__pycache__/sqlite_store.cpython-313.pyc +0 -0
  391. package/codex-lens/src/codexlens/storage/__pycache__/sqlite_utils.cpython-313.pyc +0 -0
  392. package/codex-lens/src/codexlens/storage/dir_index.py +0 -1850
  393. package/codex-lens/src/codexlens/storage/file_cache.py +0 -32
  394. package/codex-lens/src/codexlens/storage/index_tree.py +0 -776
  395. package/codex-lens/src/codexlens/storage/migration_manager.py +0 -154
  396. package/codex-lens/src/codexlens/storage/migrations/__init__.py +0 -1
  397. package/codex-lens/src/codexlens/storage/migrations/__pycache__/__init__.cpython-313.pyc +0 -0
  398. package/codex-lens/src/codexlens/storage/migrations/__pycache__/migration_001_normalize_keywords.cpython-313.pyc +0 -0
  399. package/codex-lens/src/codexlens/storage/migrations/__pycache__/migration_002_add_token_metadata.cpython-313.pyc +0 -0
  400. package/codex-lens/src/codexlens/storage/migrations/__pycache__/migration_003_code_relationships.cpython-313.pyc +0 -0
  401. package/codex-lens/src/codexlens/storage/migrations/__pycache__/migration_004_dual_fts.cpython-313.pyc +0 -0
  402. package/codex-lens/src/codexlens/storage/migrations/__pycache__/migration_005_cleanup_unused_fields.cpython-313.pyc +0 -0
  403. package/codex-lens/src/codexlens/storage/migrations/migration_001_normalize_keywords.py +0 -123
  404. package/codex-lens/src/codexlens/storage/migrations/migration_002_add_token_metadata.py +0 -48
  405. package/codex-lens/src/codexlens/storage/migrations/migration_004_dual_fts.py +0 -232
  406. package/codex-lens/src/codexlens/storage/migrations/migration_005_cleanup_unused_fields.py +0 -196
  407. package/codex-lens/src/codexlens/storage/path_mapper.py +0 -274
  408. package/codex-lens/src/codexlens/storage/registry.py +0 -670
  409. package/codex-lens/src/codexlens/storage/sqlite_store.py +0 -576
  410. package/codex-lens/src/codexlens/storage/sqlite_utils.py +0 -64
  411. /package/{ccw/bin → bin}/ccw-mcp.js +0 -0
  412. /package/{ccw/bin → bin}/ccw.js +0 -0
  413. /package/{ccw/dist → dist}/cli.d.ts +0 -0
  414. /package/{ccw/dist → dist}/cli.d.ts.map +0 -0
  415. /package/{ccw/dist → dist}/cli.js +0 -0
  416. /package/{ccw/dist → dist}/cli.js.map +0 -0
  417. /package/{ccw/dist → dist}/commands/cli.d.ts +0 -0
  418. /package/{ccw/dist → dist}/commands/cli.d.ts.map +0 -0
  419. /package/{ccw/dist → dist}/commands/cli.js +0 -0
  420. /package/{ccw/dist → dist}/commands/cli.js.map +0 -0
  421. /package/{ccw/dist → dist}/commands/core-memory.d.ts +0 -0
  422. /package/{ccw/dist → dist}/commands/core-memory.d.ts.map +0 -0
  423. /package/{ccw/dist → dist}/commands/core-memory.js +0 -0
  424. /package/{ccw/dist → dist}/commands/core-memory.js.map +0 -0
  425. /package/{ccw/dist → dist}/commands/hook.d.ts +0 -0
  426. /package/{ccw/dist → dist}/commands/hook.d.ts.map +0 -0
  427. /package/{ccw/dist → dist}/commands/hook.js +0 -0
  428. /package/{ccw/dist → dist}/commands/hook.js.map +0 -0
  429. /package/{ccw/dist → dist}/commands/install.d.ts +0 -0
  430. /package/{ccw/dist → dist}/commands/install.d.ts.map +0 -0
  431. /package/{ccw/dist → dist}/commands/install.js +0 -0
  432. /package/{ccw/dist → dist}/commands/install.js.map +0 -0
  433. /package/{ccw/dist → dist}/commands/list.d.ts +0 -0
  434. /package/{ccw/dist → dist}/commands/list.d.ts.map +0 -0
  435. /package/{ccw/dist → dist}/commands/list.js +0 -0
  436. /package/{ccw/dist → dist}/commands/list.js.map +0 -0
  437. /package/{ccw/dist → dist}/commands/memory.d.ts +0 -0
  438. /package/{ccw/dist → dist}/commands/memory.d.ts.map +0 -0
  439. /package/{ccw/dist → dist}/commands/memory.js +0 -0
  440. /package/{ccw/dist → dist}/commands/memory.js.map +0 -0
  441. /package/{ccw/dist → dist}/commands/serve.d.ts +0 -0
  442. /package/{ccw/dist → dist}/commands/serve.d.ts.map +0 -0
  443. /package/{ccw/dist → dist}/commands/serve.js +0 -0
  444. /package/{ccw/dist → dist}/commands/serve.js.map +0 -0
  445. /package/{ccw/dist → dist}/commands/session-path-resolver.d.ts +0 -0
  446. /package/{ccw/dist → dist}/commands/session-path-resolver.d.ts.map +0 -0
  447. /package/{ccw/dist → dist}/commands/session-path-resolver.js +0 -0
  448. /package/{ccw/dist → dist}/commands/session-path-resolver.js.map +0 -0
  449. /package/{ccw/dist → dist}/commands/session.d.ts +0 -0
  450. /package/{ccw/dist → dist}/commands/session.d.ts.map +0 -0
  451. /package/{ccw/dist → dist}/commands/session.js +0 -0
  452. /package/{ccw/dist → dist}/commands/session.js.map +0 -0
  453. /package/{ccw/dist → dist}/commands/stop.d.ts +0 -0
  454. /package/{ccw/dist → dist}/commands/stop.d.ts.map +0 -0
  455. /package/{ccw/dist → dist}/commands/stop.js +0 -0
  456. /package/{ccw/dist → dist}/commands/stop.js.map +0 -0
  457. /package/{ccw/dist → dist}/commands/tool.d.ts +0 -0
  458. /package/{ccw/dist → dist}/commands/tool.d.ts.map +0 -0
  459. /package/{ccw/dist → dist}/commands/tool.js +0 -0
  460. /package/{ccw/dist → dist}/commands/tool.js.map +0 -0
  461. /package/{ccw/dist → dist}/commands/uninstall.d.ts +0 -0
  462. /package/{ccw/dist → dist}/commands/uninstall.d.ts.map +0 -0
  463. /package/{ccw/dist → dist}/commands/uninstall.js +0 -0
  464. /package/{ccw/dist → dist}/commands/uninstall.js.map +0 -0
  465. /package/{ccw/dist → dist}/commands/upgrade.d.ts +0 -0
  466. /package/{ccw/dist → dist}/commands/upgrade.d.ts.map +0 -0
  467. /package/{ccw/dist → dist}/commands/upgrade.js +0 -0
  468. /package/{ccw/dist → dist}/commands/upgrade.js.map +0 -0
  469. /package/{ccw/dist → dist}/commands/view.d.ts +0 -0
  470. /package/{ccw/dist → dist}/commands/view.d.ts.map +0 -0
  471. /package/{ccw/dist → dist}/commands/view.js +0 -0
  472. /package/{ccw/dist → dist}/commands/view.js.map +0 -0
  473. /package/{ccw/dist → dist}/config/storage-paths.d.ts +0 -0
  474. /package/{ccw/dist → dist}/config/storage-paths.d.ts.map +0 -0
  475. /package/{ccw/dist → dist}/config/storage-paths.js +0 -0
  476. /package/{ccw/dist → dist}/config/storage-paths.js.map +0 -0
  477. /package/{ccw/dist → dist}/core/cache-manager.d.ts +0 -0
  478. /package/{ccw/dist → dist}/core/cache-manager.d.ts.map +0 -0
  479. /package/{ccw/dist → dist}/core/cache-manager.js +0 -0
  480. /package/{ccw/dist → dist}/core/cache-manager.js.map +0 -0
  481. /package/{ccw/dist → dist}/core/claude-freshness.d.ts +0 -0
  482. /package/{ccw/dist → dist}/core/claude-freshness.d.ts.map +0 -0
  483. /package/{ccw/dist → dist}/core/claude-freshness.js +0 -0
  484. /package/{ccw/dist → dist}/core/claude-freshness.js.map +0 -0
  485. /package/{ccw/dist → dist}/core/core-memory-store.d.ts +0 -0
  486. /package/{ccw/dist → dist}/core/core-memory-store.d.ts.map +0 -0
  487. /package/{ccw/dist → dist}/core/core-memory-store.js +0 -0
  488. /package/{ccw/dist → dist}/core/core-memory-store.js.map +0 -0
  489. /package/{ccw/dist → dist}/core/dashboard-generator-patch.d.ts +0 -0
  490. /package/{ccw/dist → dist}/core/dashboard-generator-patch.d.ts.map +0 -0
  491. /package/{ccw/dist → dist}/core/dashboard-generator-patch.js +0 -0
  492. /package/{ccw/dist → dist}/core/dashboard-generator-patch.js.map +0 -0
  493. /package/{ccw/dist → dist}/core/dashboard-generator.d.ts +0 -0
  494. /package/{ccw/dist → dist}/core/dashboard-generator.d.ts.map +0 -0
  495. /package/{ccw/dist → dist}/core/dashboard-generator.js +0 -0
  496. /package/{ccw/dist → dist}/core/dashboard-generator.js.map +0 -0
  497. /package/{ccw/dist → dist}/core/data-aggregator.d.ts +0 -0
  498. /package/{ccw/dist → dist}/core/data-aggregator.d.ts.map +0 -0
  499. /package/{ccw/dist → dist}/core/data-aggregator.js +0 -0
  500. /package/{ccw/dist → dist}/core/data-aggregator.js.map +0 -0
  501. /package/{ccw/dist → dist}/core/history-importer.d.ts +0 -0
  502. /package/{ccw/dist → dist}/core/history-importer.d.ts.map +0 -0
  503. /package/{ccw/dist → dist}/core/history-importer.js +0 -0
  504. /package/{ccw/dist → dist}/core/history-importer.js.map +0 -0
  505. /package/{ccw/dist → dist}/core/lite-scanner-complete.d.ts +0 -0
  506. /package/{ccw/dist → dist}/core/lite-scanner-complete.d.ts.map +0 -0
  507. /package/{ccw/dist → dist}/core/lite-scanner-complete.js +0 -0
  508. /package/{ccw/dist → dist}/core/lite-scanner-complete.js.map +0 -0
  509. /package/{ccw/dist → dist}/core/lite-scanner.d.ts +0 -0
  510. /package/{ccw/dist → dist}/core/lite-scanner.d.ts.map +0 -0
  511. /package/{ccw/dist → dist}/core/lite-scanner.js +0 -0
  512. /package/{ccw/dist → dist}/core/lite-scanner.js.map +0 -0
  513. /package/{ccw/dist → dist}/core/manifest.d.ts +0 -0
  514. /package/{ccw/dist → dist}/core/manifest.d.ts.map +0 -0
  515. /package/{ccw/dist → dist}/core/manifest.js +0 -0
  516. /package/{ccw/dist → dist}/core/manifest.js.map +0 -0
  517. /package/{ccw/dist → dist}/core/memory-embedder-bridge.d.ts +0 -0
  518. /package/{ccw/dist → dist}/core/memory-embedder-bridge.d.ts.map +0 -0
  519. /package/{ccw/dist → dist}/core/memory-embedder-bridge.js +0 -0
  520. /package/{ccw/dist → dist}/core/memory-embedder-bridge.js.map +0 -0
  521. /package/{ccw/dist → dist}/core/memory-store.d.ts +0 -0
  522. /package/{ccw/dist → dist}/core/memory-store.d.ts.map +0 -0
  523. /package/{ccw/dist → dist}/core/memory-store.js +0 -0
  524. /package/{ccw/dist → dist}/core/memory-store.js.map +0 -0
  525. /package/{ccw/dist → dist}/core/routes/ccw-routes.d.ts +0 -0
  526. /package/{ccw/dist → dist}/core/routes/ccw-routes.d.ts.map +0 -0
  527. /package/{ccw/dist → dist}/core/routes/ccw-routes.js +0 -0
  528. /package/{ccw/dist → dist}/core/routes/ccw-routes.js.map +0 -0
  529. /package/{ccw/dist → dist}/core/routes/claude-routes.d.ts +0 -0
  530. /package/{ccw/dist → dist}/core/routes/claude-routes.d.ts.map +0 -0
  531. /package/{ccw/dist → dist}/core/routes/claude-routes.js +0 -0
  532. /package/{ccw/dist → dist}/core/routes/claude-routes.js.map +0 -0
  533. /package/{ccw/dist → dist}/core/routes/cli-routes.d.ts +0 -0
  534. /package/{ccw/dist → dist}/core/routes/cli-routes.d.ts.map +0 -0
  535. /package/{ccw/dist → dist}/core/routes/cli-routes.js +0 -0
  536. /package/{ccw/dist → dist}/core/routes/cli-routes.js.map +0 -0
  537. /package/{ccw/dist → dist}/core/routes/codexlens-routes.d.ts +0 -0
  538. /package/{ccw/dist → dist}/core/routes/core-memory-routes.d.ts +0 -0
  539. /package/{ccw/dist → dist}/core/routes/core-memory-routes.d.ts.map +0 -0
  540. /package/{ccw/dist → dist}/core/routes/core-memory-routes.js +0 -0
  541. /package/{ccw/dist → dist}/core/routes/core-memory-routes.js.map +0 -0
  542. /package/{ccw/dist → dist}/core/routes/files-routes.d.ts +0 -0
  543. /package/{ccw/dist → dist}/core/routes/files-routes.d.ts.map +0 -0
  544. /package/{ccw/dist → dist}/core/routes/files-routes.js +0 -0
  545. /package/{ccw/dist → dist}/core/routes/files-routes.js.map +0 -0
  546. /package/{ccw/dist → dist}/core/routes/graph-routes.d.ts +0 -0
  547. /package/{ccw/dist → dist}/core/routes/graph-routes.d.ts.map +0 -0
  548. /package/{ccw/dist → dist}/core/routes/graph-routes.js +0 -0
  549. /package/{ccw/dist → dist}/core/routes/graph-routes.js.map +0 -0
  550. /package/{ccw/dist → dist}/core/routes/help-routes.d.ts +0 -0
  551. /package/{ccw/dist → dist}/core/routes/help-routes.d.ts.map +0 -0
  552. /package/{ccw/dist → dist}/core/routes/help-routes.js +0 -0
  553. /package/{ccw/dist → dist}/core/routes/help-routes.js.map +0 -0
  554. /package/{ccw/dist → dist}/core/routes/hooks-routes.d.ts +0 -0
  555. /package/{ccw/dist → dist}/core/routes/hooks-routes.d.ts.map +0 -0
  556. /package/{ccw/dist → dist}/core/routes/hooks-routes.js +0 -0
  557. /package/{ccw/dist → dist}/core/routes/hooks-routes.js.map +0 -0
  558. /package/{ccw/dist → dist}/core/routes/mcp-routes.d.ts +0 -0
  559. /package/{ccw/dist → dist}/core/routes/mcp-routes.d.ts.map +0 -0
  560. /package/{ccw/dist → dist}/core/routes/mcp-routes.js +0 -0
  561. /package/{ccw/dist → dist}/core/routes/mcp-routes.js.map +0 -0
  562. /package/{ccw/dist → dist}/core/routes/mcp-templates-db.d.ts +0 -0
  563. /package/{ccw/dist → dist}/core/routes/mcp-templates-db.d.ts.map +0 -0
  564. /package/{ccw/dist → dist}/core/routes/mcp-templates-db.js +0 -0
  565. /package/{ccw/dist → dist}/core/routes/mcp-templates-db.js.map +0 -0
  566. /package/{ccw/dist → dist}/core/routes/memory-routes.d.ts +0 -0
  567. /package/{ccw/dist → dist}/core/routes/memory-routes.d.ts.map +0 -0
  568. /package/{ccw/dist → dist}/core/routes/memory-routes.js +0 -0
  569. /package/{ccw/dist → dist}/core/routes/memory-routes.js.map +0 -0
  570. /package/{ccw/dist → dist}/core/routes/rules-routes.d.ts +0 -0
  571. /package/{ccw/dist → dist}/core/routes/rules-routes.d.ts.map +0 -0
  572. /package/{ccw/dist → dist}/core/routes/rules-routes.js +0 -0
  573. /package/{ccw/dist → dist}/core/routes/rules-routes.js.map +0 -0
  574. /package/{ccw/dist → dist}/core/routes/session-routes.d.ts +0 -0
  575. /package/{ccw/dist → dist}/core/routes/session-routes.d.ts.map +0 -0
  576. /package/{ccw/dist → dist}/core/routes/session-routes.js +0 -0
  577. /package/{ccw/dist → dist}/core/routes/session-routes.js.map +0 -0
  578. /package/{ccw/dist → dist}/core/routes/skills-routes.d.ts +0 -0
  579. /package/{ccw/dist → dist}/core/routes/skills-routes.d.ts.map +0 -0
  580. /package/{ccw/dist → dist}/core/routes/skills-routes.js +0 -0
  581. /package/{ccw/dist → dist}/core/routes/skills-routes.js.map +0 -0
  582. /package/{ccw/dist → dist}/core/routes/status-routes.d.ts +0 -0
  583. /package/{ccw/dist → dist}/core/routes/status-routes.d.ts.map +0 -0
  584. /package/{ccw/dist → dist}/core/routes/status-routes.js +0 -0
  585. /package/{ccw/dist → dist}/core/routes/status-routes.js.map +0 -0
  586. /package/{ccw/dist → dist}/core/routes/system-routes.d.ts +0 -0
  587. /package/{ccw/dist → dist}/core/routes/system-routes.d.ts.map +0 -0
  588. /package/{ccw/dist → dist}/core/routes/system-routes.js +0 -0
  589. /package/{ccw/dist → dist}/core/routes/system-routes.js.map +0 -0
  590. /package/{ccw/dist → dist}/core/server.d.ts +0 -0
  591. /package/{ccw/dist → dist}/core/server.d.ts.map +0 -0
  592. /package/{ccw/dist → dist}/core/server.js +0 -0
  593. /package/{ccw/dist → dist}/core/server.js.map +0 -0
  594. /package/{ccw/dist → dist}/core/session-clustering-service.d.ts +0 -0
  595. /package/{ccw/dist → dist}/core/session-clustering-service.d.ts.map +0 -0
  596. /package/{ccw/dist → dist}/core/session-clustering-service.js +0 -0
  597. /package/{ccw/dist → dist}/core/session-clustering-service.js.map +0 -0
  598. /package/{ccw/dist → dist}/core/session-scanner.d.ts +0 -0
  599. /package/{ccw/dist → dist}/core/session-scanner.d.ts.map +0 -0
  600. /package/{ccw/dist → dist}/core/session-scanner.js +0 -0
  601. /package/{ccw/dist → dist}/core/session-scanner.js.map +0 -0
  602. /package/{ccw/dist → dist}/core/websocket.d.ts +0 -0
  603. /package/{ccw/dist → dist}/core/websocket.d.ts.map +0 -0
  604. /package/{ccw/dist → dist}/core/websocket.js +0 -0
  605. /package/{ccw/dist → dist}/core/websocket.js.map +0 -0
  606. /package/{ccw/dist → dist}/index.d.ts +0 -0
  607. /package/{ccw/dist → dist}/index.d.ts.map +0 -0
  608. /package/{ccw/dist → dist}/index.js +0 -0
  609. /package/{ccw/dist → dist}/index.js.map +0 -0
  610. /package/{ccw/dist → dist}/mcp-server/index.d.ts +0 -0
  611. /package/{ccw/dist → dist}/mcp-server/index.d.ts.map +0 -0
  612. /package/{ccw/dist → dist}/mcp-server/index.js +0 -0
  613. /package/{ccw/dist → dist}/mcp-server/index.js.map +0 -0
  614. /package/{ccw/dist → dist}/tools/classify-folders.d.ts +0 -0
  615. /package/{ccw/dist → dist}/tools/classify-folders.d.ts.map +0 -0
  616. /package/{ccw/dist → dist}/tools/classify-folders.js +0 -0
  617. /package/{ccw/dist → dist}/tools/classify-folders.js.map +0 -0
  618. /package/{ccw/dist → dist}/tools/cli-config-manager.d.ts +0 -0
  619. /package/{ccw/dist → dist}/tools/cli-config-manager.d.ts.map +0 -0
  620. /package/{ccw/dist → dist}/tools/cli-config-manager.js +0 -0
  621. /package/{ccw/dist → dist}/tools/cli-config-manager.js.map +0 -0
  622. /package/{ccw/dist → dist}/tools/cli-executor.d.ts +0 -0
  623. /package/{ccw/dist → dist}/tools/cli-executor.d.ts.map +0 -0
  624. /package/{ccw/dist → dist}/tools/cli-executor.js +0 -0
  625. /package/{ccw/dist → dist}/tools/cli-executor.js.map +0 -0
  626. /package/{ccw/dist → dist}/tools/cli-history-store.d.ts +0 -0
  627. /package/{ccw/dist → dist}/tools/cli-history-store.d.ts.map +0 -0
  628. /package/{ccw/dist → dist}/tools/cli-history-store.js +0 -0
  629. /package/{ccw/dist → dist}/tools/cli-history-store.js.map +0 -0
  630. /package/{ccw/dist → dist}/tools/convert-tokens-to-css.d.ts +0 -0
  631. /package/{ccw/dist → dist}/tools/convert-tokens-to-css.d.ts.map +0 -0
  632. /package/{ccw/dist → dist}/tools/convert-tokens-to-css.js +0 -0
  633. /package/{ccw/dist → dist}/tools/convert-tokens-to-css.js.map +0 -0
  634. /package/{ccw/dist → dist}/tools/core-memory.d.ts +0 -0
  635. /package/{ccw/dist → dist}/tools/core-memory.d.ts.map +0 -0
  636. /package/{ccw/dist → dist}/tools/core-memory.js +0 -0
  637. /package/{ccw/dist → dist}/tools/core-memory.js.map +0 -0
  638. /package/{ccw/dist → dist}/tools/detect-changed-modules.d.ts +0 -0
  639. /package/{ccw/dist → dist}/tools/detect-changed-modules.d.ts.map +0 -0
  640. /package/{ccw/dist → dist}/tools/detect-changed-modules.js +0 -0
  641. /package/{ccw/dist → dist}/tools/detect-changed-modules.js.map +0 -0
  642. /package/{ccw/dist → dist}/tools/discover-design-files.d.ts +0 -0
  643. /package/{ccw/dist → dist}/tools/discover-design-files.d.ts.map +0 -0
  644. /package/{ccw/dist → dist}/tools/discover-design-files.js +0 -0
  645. /package/{ccw/dist → dist}/tools/discover-design-files.js.map +0 -0
  646. /package/{ccw/dist → dist}/tools/edit-file.d.ts +0 -0
  647. /package/{ccw/dist → dist}/tools/edit-file.d.ts.map +0 -0
  648. /package/{ccw/dist → dist}/tools/edit-file.js +0 -0
  649. /package/{ccw/dist → dist}/tools/edit-file.js.map +0 -0
  650. /package/{ccw/dist → dist}/tools/generate-module-docs.d.ts +0 -0
  651. /package/{ccw/dist → dist}/tools/generate-module-docs.d.ts.map +0 -0
  652. /package/{ccw/dist → dist}/tools/generate-module-docs.js +0 -0
  653. /package/{ccw/dist → dist}/tools/generate-module-docs.js.map +0 -0
  654. /package/{ccw/dist → dist}/tools/get-modules-by-depth.d.ts +0 -0
  655. /package/{ccw/dist → dist}/tools/get-modules-by-depth.d.ts.map +0 -0
  656. /package/{ccw/dist → dist}/tools/get-modules-by-depth.js +0 -0
  657. /package/{ccw/dist → dist}/tools/get-modules-by-depth.js.map +0 -0
  658. /package/{ccw/dist → dist}/tools/index.d.ts +0 -0
  659. /package/{ccw/dist → dist}/tools/index.d.ts.map +0 -0
  660. /package/{ccw/dist → dist}/tools/index.js +0 -0
  661. /package/{ccw/dist → dist}/tools/index.js.map +0 -0
  662. /package/{ccw/dist → dist}/tools/native-session-discovery.d.ts +0 -0
  663. /package/{ccw/dist → dist}/tools/native-session-discovery.d.ts.map +0 -0
  664. /package/{ccw/dist → dist}/tools/native-session-discovery.js +0 -0
  665. /package/{ccw/dist → dist}/tools/native-session-discovery.js.map +0 -0
  666. /package/{ccw/dist → dist}/tools/notifier.d.ts +0 -0
  667. /package/{ccw/dist → dist}/tools/notifier.d.ts.map +0 -0
  668. /package/{ccw/dist → dist}/tools/notifier.js +0 -0
  669. /package/{ccw/dist → dist}/tools/notifier.js.map +0 -0
  670. /package/{ccw/dist → dist}/tools/read-file.d.ts +0 -0
  671. /package/{ccw/dist → dist}/tools/read-file.d.ts.map +0 -0
  672. /package/{ccw/dist → dist}/tools/read-file.js +0 -0
  673. /package/{ccw/dist → dist}/tools/read-file.js.map +0 -0
  674. /package/{ccw/dist → dist}/tools/resume-strategy.d.ts +0 -0
  675. /package/{ccw/dist → dist}/tools/resume-strategy.d.ts.map +0 -0
  676. /package/{ccw/dist → dist}/tools/resume-strategy.js +0 -0
  677. /package/{ccw/dist → dist}/tools/resume-strategy.js.map +0 -0
  678. /package/{ccw/dist → dist}/tools/session-content-parser.d.ts +0 -0
  679. /package/{ccw/dist → dist}/tools/session-content-parser.d.ts.map +0 -0
  680. /package/{ccw/dist → dist}/tools/session-content-parser.js +0 -0
  681. /package/{ccw/dist → dist}/tools/session-content-parser.js.map +0 -0
  682. /package/{ccw/dist → dist}/tools/session-manager.d.ts +0 -0
  683. /package/{ccw/dist → dist}/tools/session-manager.d.ts.map +0 -0
  684. /package/{ccw/dist → dist}/tools/session-manager.js +0 -0
  685. /package/{ccw/dist → dist}/tools/session-manager.js.map +0 -0
  686. /package/{ccw/dist → dist}/tools/smart-context.d.ts +0 -0
  687. /package/{ccw/dist → dist}/tools/smart-context.d.ts.map +0 -0
  688. /package/{ccw/dist → dist}/tools/smart-context.js +0 -0
  689. /package/{ccw/dist → dist}/tools/smart-context.js.map +0 -0
  690. /package/{ccw/dist → dist}/tools/smart-search.d.ts +0 -0
  691. /package/{ccw/dist → dist}/tools/smart-search.d.ts.map +0 -0
  692. /package/{ccw/dist → dist}/tools/smart-search.js +0 -0
  693. /package/{ccw/dist → dist}/tools/smart-search.js.map +0 -0
  694. /package/{ccw/dist → dist}/tools/storage-manager.d.ts +0 -0
  695. /package/{ccw/dist → dist}/tools/storage-manager.d.ts.map +0 -0
  696. /package/{ccw/dist → dist}/tools/storage-manager.js +0 -0
  697. /package/{ccw/dist → dist}/tools/storage-manager.js.map +0 -0
  698. /package/{ccw/dist → dist}/tools/ui-generate-preview.d.ts +0 -0
  699. /package/{ccw/dist → dist}/tools/ui-generate-preview.d.ts.map +0 -0
  700. /package/{ccw/dist → dist}/tools/ui-generate-preview.js +0 -0
  701. /package/{ccw/dist → dist}/tools/ui-generate-preview.js.map +0 -0
  702. /package/{ccw/dist → dist}/tools/ui-instantiate-prototypes.d.ts +0 -0
  703. /package/{ccw/dist → dist}/tools/ui-instantiate-prototypes.d.ts.map +0 -0
  704. /package/{ccw/dist → dist}/tools/ui-instantiate-prototypes.js +0 -0
  705. /package/{ccw/dist → dist}/tools/ui-instantiate-prototypes.js.map +0 -0
  706. /package/{ccw/dist → dist}/tools/update-module-claude.d.ts +0 -0
  707. /package/{ccw/dist → dist}/tools/update-module-claude.d.ts.map +0 -0
  708. /package/{ccw/dist → dist}/tools/update-module-claude.js +0 -0
  709. /package/{ccw/dist → dist}/tools/update-module-claude.js.map +0 -0
  710. /package/{ccw/dist → dist}/tools/write-file.d.ts +0 -0
  711. /package/{ccw/dist → dist}/tools/write-file.d.ts.map +0 -0
  712. /package/{ccw/dist → dist}/tools/write-file.js +0 -0
  713. /package/{ccw/dist → dist}/tools/write-file.js.map +0 -0
  714. /package/{ccw/dist → dist}/types/config.d.ts +0 -0
  715. /package/{ccw/dist → dist}/types/config.d.ts.map +0 -0
  716. /package/{ccw/dist → dist}/types/config.js +0 -0
  717. /package/{ccw/dist → dist}/types/config.js.map +0 -0
  718. /package/{ccw/dist → dist}/types/index.d.ts +0 -0
  719. /package/{ccw/dist → dist}/types/index.d.ts.map +0 -0
  720. /package/{ccw/dist → dist}/types/index.js +0 -0
  721. /package/{ccw/dist → dist}/types/index.js.map +0 -0
  722. /package/{ccw/dist → dist}/types/session.d.ts +0 -0
  723. /package/{ccw/dist → dist}/types/session.d.ts.map +0 -0
  724. /package/{ccw/dist → dist}/types/session.js +0 -0
  725. /package/{ccw/dist → dist}/types/session.js.map +0 -0
  726. /package/{ccw/dist → dist}/types/tool.d.ts +0 -0
  727. /package/{ccw/dist → dist}/types/tool.d.ts.map +0 -0
  728. /package/{ccw/dist → dist}/types/tool.js +0 -0
  729. /package/{ccw/dist → dist}/types/tool.js.map +0 -0
  730. /package/{ccw/dist → dist}/utils/browser-launcher.d.ts +0 -0
  731. /package/{ccw/dist → dist}/utils/browser-launcher.d.ts.map +0 -0
  732. /package/{ccw/dist → dist}/utils/browser-launcher.js +0 -0
  733. /package/{ccw/dist → dist}/utils/browser-launcher.js.map +0 -0
  734. /package/{ccw/dist → dist}/utils/file-utils.d.ts +0 -0
  735. /package/{ccw/dist → dist}/utils/file-utils.d.ts.map +0 -0
  736. /package/{ccw/dist → dist}/utils/file-utils.js +0 -0
  737. /package/{ccw/dist → dist}/utils/file-utils.js.map +0 -0
  738. /package/{ccw/dist → dist}/utils/path-resolver.d.ts +0 -0
  739. /package/{ccw/dist → dist}/utils/path-resolver.d.ts.map +0 -0
  740. /package/{ccw/dist → dist}/utils/path-resolver.js +0 -0
  741. /package/{ccw/dist → dist}/utils/path-resolver.js.map +0 -0
  742. /package/{ccw/dist → dist}/utils/path-validator.d.ts +0 -0
  743. /package/{ccw/dist → dist}/utils/path-validator.d.ts.map +0 -0
  744. /package/{ccw/dist → dist}/utils/path-validator.js +0 -0
  745. /package/{ccw/dist → dist}/utils/path-validator.js.map +0 -0
  746. /package/{ccw/dist → dist}/utils/ui.d.ts +0 -0
  747. /package/{ccw/dist → dist}/utils/ui.d.ts.map +0 -0
  748. /package/{ccw/dist → dist}/utils/ui.js +0 -0
  749. /package/{ccw/dist → dist}/utils/ui.js.map +0 -0
  750. /package/{ccw/src → src}/.workflow/.cli-history/history.db +0 -0
  751. /package/{ccw/src → src}/.workflow/.cli-history/history.db-shm +0 -0
  752. /package/{ccw/src → src}/.workflow/.cli-history/history.db-wal +0 -0
  753. /package/{ccw/src → src}/cli.ts +0 -0
  754. /package/{ccw/src → src}/commands/cli.ts +0 -0
  755. /package/{ccw/src → src}/commands/core-memory.ts +0 -0
  756. /package/{ccw/src → src}/commands/hook.ts +0 -0
  757. /package/{ccw/src → src}/commands/install.ts +0 -0
  758. /package/{ccw/src → src}/commands/list.ts +0 -0
  759. /package/{ccw/src → src}/commands/memory.ts +0 -0
  760. /package/{ccw/src → src}/commands/serve.ts +0 -0
  761. /package/{ccw/src → src}/commands/session-path-resolver.ts +0 -0
  762. /package/{ccw/src → src}/commands/session.ts +0 -0
  763. /package/{ccw/src → src}/commands/stop.ts +0 -0
  764. /package/{ccw/src → src}/commands/tool.ts +0 -0
  765. /package/{ccw/src → src}/commands/uninstall.ts +0 -0
  766. /package/{ccw/src → src}/commands/upgrade.ts +0 -0
  767. /package/{ccw/src → src}/commands/view.ts +0 -0
  768. /package/{ccw/src → src}/config/storage-paths.ts +0 -0
  769. /package/{ccw/src → src}/core/cache-manager.ts +0 -0
  770. /package/{ccw/src → src}/core/claude-freshness.ts +0 -0
  771. /package/{ccw/src → src}/core/core-memory-store.ts +0 -0
  772. /package/{ccw/src → src}/core/dashboard-generator-patch.ts +0 -0
  773. /package/{ccw/src → src}/core/dashboard-generator.ts +0 -0
  774. /package/{ccw/src → src}/core/data-aggregator.ts +0 -0
  775. /package/{ccw/src → src}/core/history-importer.ts +0 -0
  776. /package/{ccw/src → src}/core/lite-scanner-complete.ts +0 -0
  777. /package/{ccw/src → src}/core/lite-scanner.ts +0 -0
  778. /package/{ccw/src → src}/core/manifest.ts +0 -0
  779. /package/{ccw/src → src}/core/memory-embedder-bridge.ts +0 -0
  780. /package/{ccw/src → src}/core/memory-store.ts +0 -0
  781. /package/{ccw/src → src}/core/routes/ccw-routes.ts +0 -0
  782. /package/{ccw/src → src}/core/routes/claude-routes.ts +0 -0
  783. /package/{ccw/src → src}/core/routes/cli-routes.ts +0 -0
  784. /package/{ccw/src → src}/core/routes/core-memory-routes.ts +0 -0
  785. /package/{ccw/src → src}/core/routes/files-routes.ts +0 -0
  786. /package/{ccw/src → src}/core/routes/graph-routes.md +0 -0
  787. /package/{ccw/src → src}/core/routes/graph-routes.ts +0 -0
  788. /package/{ccw/src → src}/core/routes/help-routes.ts +0 -0
  789. /package/{ccw/src → src}/core/routes/hooks-routes.ts +0 -0
  790. /package/{ccw/src → src}/core/routes/mcp-routes.ts +0 -0
  791. /package/{ccw/src → src}/core/routes/mcp-routes.ts.backup +0 -0
  792. /package/{ccw/src → src}/core/routes/mcp-templates-db.ts +0 -0
  793. /package/{ccw/src → src}/core/routes/memory-routes.ts +0 -0
  794. /package/{ccw/src → src}/core/routes/rules-routes.ts +0 -0
  795. /package/{ccw/src → src}/core/routes/session-routes.ts +0 -0
  796. /package/{ccw/src → src}/core/routes/skills-routes.ts +0 -0
  797. /package/{ccw/src → src}/core/routes/status-routes.ts +0 -0
  798. /package/{ccw/src → src}/core/routes/system-routes.ts +0 -0
  799. /package/{ccw/src → src}/core/server.ts +0 -0
  800. /package/{ccw/src → src}/core/session-clustering-service.ts +0 -0
  801. /package/{ccw/src → src}/core/session-scanner.ts +0 -0
  802. /package/{ccw/src → src}/core/websocket.ts +0 -0
  803. /package/{ccw/src → src}/index.ts +0 -0
  804. /package/{ccw/src → src}/mcp-server/index.ts +0 -0
  805. /package/{ccw/src → src}/templates/assets/css/github-dark.min.css +0 -0
  806. /package/{ccw/src → src}/templates/assets/css/github.min.css +0 -0
  807. /package/{ccw/src → src}/templates/assets/js/cytoscape.min.js +0 -0
  808. /package/{ccw/src → src}/templates/assets/js/d3.min.js +0 -0
  809. /package/{ccw/src → src}/templates/assets/js/highlight.min.js +0 -0
  810. /package/{ccw/src → src}/templates/assets/js/lucide.min.js +0 -0
  811. /package/{ccw/src → src}/templates/assets/js/marked.min.js +0 -0
  812. /package/{ccw/src → src}/templates/assets/js/tailwind.js +0 -0
  813. /package/{ccw/src → src}/templates/dashboard-css/01-base.css +0 -0
  814. /package/{ccw/src → src}/templates/dashboard-css/02-session.css +0 -0
  815. /package/{ccw/src → src}/templates/dashboard-css/03-tasks.css +0 -0
  816. /package/{ccw/src → src}/templates/dashboard-css/04-lite-tasks.css +0 -0
  817. /package/{ccw/src → src}/templates/dashboard-css/05-context.css +0 -0
  818. /package/{ccw/src → src}/templates/dashboard-css/06-cards.css +0 -0
  819. /package/{ccw/src → src}/templates/dashboard-css/07-managers.css +0 -0
  820. /package/{ccw/src → src}/templates/dashboard-css/08-review.css +0 -0
  821. /package/{ccw/src → src}/templates/dashboard-css/09-explorer.css +0 -0
  822. /package/{ccw/src → src}/templates/dashboard-css/10-cli-status.css +0 -0
  823. /package/{ccw/src → src}/templates/dashboard-css/11-cli-history.css +0 -0
  824. /package/{ccw/src → src}/templates/dashboard-css/12-cli-legacy.css +0 -0
  825. /package/{ccw/src → src}/templates/dashboard-css/13-cli-ccw.css +0 -0
  826. /package/{ccw/src → src}/templates/dashboard-css/14-cli-modals.css +0 -0
  827. /package/{ccw/src → src}/templates/dashboard-css/15-cli-endpoints.css +0 -0
  828. /package/{ccw/src → src}/templates/dashboard-css/16-cli-session.css +0 -0
  829. /package/{ccw/src → src}/templates/dashboard-css/17-cli-conversation.css +0 -0
  830. /package/{ccw/src → src}/templates/dashboard-css/18-cli-settings.css +0 -0
  831. /package/{ccw/src → src}/templates/dashboard-css/19-cli-native-session.css +0 -0
  832. /package/{ccw/src → src}/templates/dashboard-css/20-cli-taskqueue.css +0 -0
  833. /package/{ccw/src → src}/templates/dashboard-css/21-cli-toolmgmt.css +0 -0
  834. /package/{ccw/src → src}/templates/dashboard-css/22-cli-semantic.css +0 -0
  835. /package/{ccw/src → src}/templates/dashboard-css/23-memory.css +0 -0
  836. /package/{ccw/src → src}/templates/dashboard-css/24-prompt-history.css +0 -0
  837. /package/{ccw/src → src}/templates/dashboard-css/25-skills-rules.css +0 -0
  838. /package/{ccw/src → src}/templates/dashboard-css/26-claude-manager.css +0 -0
  839. /package/{ccw/src → src}/templates/dashboard-css/27-graph-explorer.css +0 -0
  840. /package/{ccw/src → src}/templates/dashboard-css/28-mcp-manager.css +0 -0
  841. /package/{ccw/src → src}/templates/dashboard-css/29-help.css +0 -0
  842. /package/{ccw/src → src}/templates/dashboard-css/30-core-memory.css +0 -0
  843. /package/{ccw/src → src}/templates/dashboard-js/api.js +0 -0
  844. /package/{ccw/src → src}/templates/dashboard-js/components/_conflict_tab.js +0 -0
  845. /package/{ccw/src → src}/templates/dashboard-js/components/_exp_helpers.js +0 -0
  846. /package/{ccw/src → src}/templates/dashboard-js/components/_review_tab.js +0 -0
  847. /package/{ccw/src → src}/templates/dashboard-js/components/carousel.js +0 -0
  848. /package/{ccw/src → src}/templates/dashboard-js/components/cli-history.js +0 -0
  849. /package/{ccw/src → src}/templates/dashboard-js/components/cli-status.js +0 -0
  850. /package/{ccw/src → src}/templates/dashboard-js/components/flowchart.js +0 -0
  851. /package/{ccw/src → src}/templates/dashboard-js/components/global-notifications.js +0 -0
  852. /package/{ccw/src → src}/templates/dashboard-js/components/hook-manager.js +0 -0
  853. /package/{ccw/src → src}/templates/dashboard-js/components/index-manager.js +0 -0
  854. /package/{ccw/src → src}/templates/dashboard-js/components/modals.js +0 -0
  855. /package/{ccw/src → src}/templates/dashboard-js/components/navigation.js +0 -0
  856. /package/{ccw/src → src}/templates/dashboard-js/components/notifications.js +0 -0
  857. /package/{ccw/src → src}/templates/dashboard-js/components/sidebar.js +0 -0
  858. /package/{ccw/src → src}/templates/dashboard-js/components/storage-manager.js +0 -0
  859. /package/{ccw/src → src}/templates/dashboard-js/components/tabs-context.js +0 -0
  860. /package/{ccw/src → src}/templates/dashboard-js/components/tabs-other.js +0 -0
  861. /package/{ccw/src → src}/templates/dashboard-js/components/task-drawer-core.js +0 -0
  862. /package/{ccw/src → src}/templates/dashboard-js/components/task-drawer-renderers.js +0 -0
  863. /package/{ccw/src → src}/templates/dashboard-js/components/task-queue-sidebar.js +0 -0
  864. /package/{ccw/src → src}/templates/dashboard-js/components/theme.js +0 -0
  865. /package/{ccw/src → src}/templates/dashboard-js/components/version-check.js +0 -0
  866. /package/{ccw/src → src}/templates/dashboard-js/help-i18n.js +0 -0
  867. /package/{ccw/src → src}/templates/dashboard-js/main.js +0 -0
  868. /package/{ccw/src → src}/templates/dashboard-js/state.js +0 -0
  869. /package/{ccw/src → src}/templates/dashboard-js/utils.js +0 -0
  870. /package/{ccw/src → src}/templates/dashboard-js/views/claude-manager.js +0 -0
  871. /package/{ccw/src → src}/templates/dashboard-js/views/cli-manager.js +0 -0
  872. /package/{ccw/src → src}/templates/dashboard-js/views/core-memory-clusters.js +0 -0
  873. /package/{ccw/src → src}/templates/dashboard-js/views/core-memory.js +0 -0
  874. /package/{ccw/src → src}/templates/dashboard-js/views/explorer.js +0 -0
  875. /package/{ccw/src → src}/templates/dashboard-js/views/fix-session.js +0 -0
  876. /package/{ccw/src → src}/templates/dashboard-js/views/graph-explorer.js +0 -0
  877. /package/{ccw/src → src}/templates/dashboard-js/views/help.js +0 -0
  878. /package/{ccw/src → src}/templates/dashboard-js/views/history.js +0 -0
  879. /package/{ccw/src → src}/templates/dashboard-js/views/home.js +0 -0
  880. /package/{ccw/src → src}/templates/dashboard-js/views/hook-manager.js +0 -0
  881. /package/{ccw/src → src}/templates/dashboard-js/views/lite-tasks.js +0 -0
  882. /package/{ccw/src → src}/templates/dashboard-js/views/mcp-manager.js +0 -0
  883. /package/{ccw/src → src}/templates/dashboard-js/views/mcp-manager.js.backup +0 -0
  884. /package/{ccw/src → src}/templates/dashboard-js/views/mcp-manager.js.new +0 -0
  885. /package/{ccw/src → src}/templates/dashboard-js/views/memory.js +0 -0
  886. /package/{ccw/src → src}/templates/dashboard-js/views/project-overview.js +0 -0
  887. /package/{ccw/src → src}/templates/dashboard-js/views/prompt-history.js +0 -0
  888. /package/{ccw/src → src}/templates/dashboard-js/views/review-session.js +0 -0
  889. /package/{ccw/src → src}/templates/dashboard-js/views/rules-manager.js +0 -0
  890. /package/{ccw/src → src}/templates/dashboard-js/views/session-detail.js +0 -0
  891. /package/{ccw/src → src}/templates/dashboard-js/views/skills-manager.js +0 -0
  892. /package/{ccw/src → src}/templates/dashboard.html +0 -0
  893. /package/{ccw/src → src}/templates/hooks-config-example.json +0 -0
  894. /package/{ccw/src → src}/templates/review-cycle-dashboard.html +0 -0
  895. /package/{ccw/src → src}/templates/workflow-dashboard.html +0 -0
  896. /package/{ccw/src → src}/tools/classify-folders.ts +0 -0
  897. /package/{ccw/src → src}/tools/cli-config-manager.ts +0 -0
  898. /package/{ccw/src → src}/tools/cli-executor.ts +0 -0
  899. /package/{ccw/src → src}/tools/cli-history-store.ts +0 -0
  900. /package/{ccw/src → src}/tools/convert-tokens-to-css.ts +0 -0
  901. /package/{ccw/src → src}/tools/core-memory.ts +0 -0
  902. /package/{ccw/src → src}/tools/detect-changed-modules.ts +0 -0
  903. /package/{ccw/src → src}/tools/discover-design-files.ts +0 -0
  904. /package/{ccw/src → src}/tools/edit-file.ts +0 -0
  905. /package/{ccw/src → src}/tools/generate-module-docs.ts +0 -0
  906. /package/{ccw/src → src}/tools/get-modules-by-depth.ts +0 -0
  907. /package/{ccw/src → src}/tools/index.ts +0 -0
  908. /package/{ccw/src → src}/tools/native-session-discovery.ts +0 -0
  909. /package/{ccw/src → src}/tools/notifier.ts +0 -0
  910. /package/{ccw/src → src}/tools/read-file.ts +0 -0
  911. /package/{ccw/src → src}/tools/resume-strategy.ts +0 -0
  912. /package/{ccw/src → src}/tools/session-content-parser.ts +0 -0
  913. /package/{ccw/src → src}/tools/session-manager.ts +0 -0
  914. /package/{ccw/src → src}/tools/smart-context.ts +0 -0
  915. /package/{ccw/src → src}/tools/smart-search.ts +0 -0
  916. /package/{ccw/src → src}/tools/smart-search.ts.backup +0 -0
  917. /package/{ccw/src → src}/tools/storage-manager.ts +0 -0
  918. /package/{ccw/src → src}/tools/ui-generate-preview.js +0 -0
  919. /package/{ccw/src → src}/tools/ui-instantiate-prototypes.js +0 -0
  920. /package/{ccw/src → src}/tools/update-module-claude.js +0 -0
  921. /package/{ccw/src → src}/tools/write-file.ts +0 -0
  922. /package/{ccw/src → src}/types/config.ts +0 -0
  923. /package/{ccw/src → src}/types/index.ts +0 -0
  924. /package/{ccw/src → src}/types/session.ts +0 -0
  925. /package/{ccw/src → src}/types/tool.ts +0 -0
  926. /package/{ccw/src → src}/utils/browser-launcher.ts +0 -0
  927. /package/{ccw/src → src}/utils/file-utils.ts +0 -0
  928. /package/{ccw/src → src}/utils/path-resolver.ts +0 -0
  929. /package/{ccw/src → src}/utils/path-validator.ts +0 -0
  930. /package/{ccw/src → src}/utils/ui.ts +0 -0
@@ -1,1150 +0,0 @@
1
- ---
2
- name: animation-extract
3
- description: Extract animation and transition patterns from prompt inference and image references for design system documentation
4
- argument-hint: "[--design-id <id>] [--session <id>] [--images "<glob>"] [--focus "<types>"] [--interactive] [--refine]"
5
- allowed-tools: TodoWrite(*), Read(*), Write(*), Glob(*), Bash(*), AskUserQuestion(*), Task(ui-design-agent)
6
- ---
7
-
8
- # Animation Extraction Command
9
-
10
- ## Overview
11
-
12
- Extract animation and transition patterns from prompt inference and image references using AI analysis. Directly generates production-ready animation systems with complete `animation-tokens.json`.
13
-
14
- **Strategy**: AI-Driven Animation Specification with Visual Previews
15
-
16
- - **Dual Modes**: Exploration mode (generate from scratch) or Refinement mode (fine-tune existing)
17
- - **Prompt Inference**: AI analyzes design intent from textual descriptions and image references
18
- - **Question Generation**: Agent generates context-aware specification questions with visual previews
19
- - **Refinement Options**: Fine-tune timing, easing, context variations, and interaction intensity
20
- - **Visual Previews**: Timeline representations, easing curve ASCII art, and animation sequence diagrams
21
- - **Flexible Input**: Image references and prompts for animation specification
22
- - **Optional Interaction**: User answers questions only when `--interactive` flag present
23
- - **Production-Ready**: CSS var() format, WCAG-compliant, semantic naming
24
- - **Default Behavior**: Non-interactive mode uses inferred patterns + best practices
25
-
26
- ## Execution Process
27
-
28
- ```
29
- Input Parsing:
30
- ├─ Parse flags: --design-id, --session, --images, --focus, --interactive, --refine
31
- └─ Decision (mode detection):
32
- ├─ --refine flag → Refinement Mode
33
- └─ No --refine → Exploration Mode
34
-
35
- Phase 0: Setup & Input Validation
36
- ├─ Step 1: Detect input mode & base path
37
- ├─ Step 2: Prepare image references (if available)
38
- ├─ Step 3: Load design tokens context
39
- └─ Step 4: Memory check (skip if exists)
40
-
41
- Phase 1: Animation Specification Generation
42
- ├─ Step 1: Load project context
43
- ├─ Step 2: Generate animation specification options (Agent Task 1)
44
- │ └─ Decision:
45
- │ ├─ Exploration Mode → Generate specification questions
46
- │ └─ Refinement Mode → Generate refinement options
47
- └─ Step 3: Verify options file created
48
-
49
- Phase 1.5: User Confirmation (Optional)
50
- └─ Decision (--interactive flag):
51
- ├─ --interactive present → Present options, capture selection
52
- └─ No --interactive → Skip to Phase 2
53
-
54
- Phase 2: Animation System Generation
55
- ├─ Step 1: Load user selection or use defaults
56
- ├─ Step 2: Create output directory
57
- └─ Step 3: Launch animation generation task (Agent Task 2)
58
-
59
- Phase 3: Verify Output
60
- ├─ Step 1: Check files created
61
- └─ Step 2: Verify file sizes
62
- ```
63
-
64
- ## Phase 0: Setup & Input Validation
65
-
66
- ### Step 1: Detect Input Mode & Base Path
67
-
68
- ```bash
69
- # Detect input source
70
- # Priority: --images → visual references available | no --images → prompt-only mode
71
-
72
- # Parse images if provided (glob pattern)
73
- IF --images:
74
- # Check if glob pattern matches any files
75
- image_files = bash(find . -path "{--images}" -type f 2>/dev/null | head -10)
76
- IF image_files:
77
- has_images = true
78
- image_count = bash(find . -path "{--images}" -type f 2>/dev/null | wc -l)
79
- ELSE:
80
- has_images = false
81
- REPORT: "⚠️ No image files found matching pattern: {--images}"
82
- ELSE:
83
- has_images = false
84
-
85
- # Parse animation focus (if provided)
86
- IF --focus:
87
- focus_types = split(--focus, ",") # e.g., "transitions,hover,scroll"
88
- ELSE:
89
- focus_types = ["all"] # Extract all animation types
90
-
91
- # Check interactive mode flag
92
- interactive_mode = --interactive OR false
93
-
94
- # Check refinement mode flag
95
- refine_mode = --refine OR false
96
-
97
- IF refine_mode:
98
- REPORT: "🔧 Refinement mode enabled: Will refine existing animation system"
99
- ELSE:
100
- REPORT: "✨ Exploration mode: Will generate animation system from scratch"
101
-
102
- # Determine base path with priority: --design-id > --session > auto-detect
103
- if [ -n "$DESIGN_ID" ]; then
104
- # Exact match by design ID
105
- relative_path=$(find .workflow -name "${DESIGN_ID}" -type d -print -quit)
106
- elif [ -n "$SESSION_ID" ]; then
107
- # Latest in session
108
- relative_path=$(find .workflow/active/WFS-$SESSION_ID -name "design-run-*" -type d -printf "%T@ %p\n" 2>/dev/null | sort -nr | head -1 | cut -d' ' -f2)
109
- else
110
- # Latest globally
111
- relative_path=$(find .workflow -name "design-run-*" -type d -printf "%T@ %p\n" 2>/dev/null | sort -nr | head -1 | cut -d' ' -f2)
112
- fi
113
-
114
- # Validate and convert to absolute path
115
- if [ -z "$relative_path" ] || [ ! -d "$relative_path" ]; then
116
- echo "❌ ERROR: Design run not found"
117
- echo "💡 HINT: Run '/workflow:ui-design:list' to see available design runs"
118
- exit 1
119
- fi
120
-
121
- base_path=$(cd "$relative_path" && pwd)
122
- bash(echo "✓ Base path: $base_path")
123
- ```
124
-
125
- ### Step 2: Prepare Image References (If Available)
126
-
127
- ```bash
128
- # Load image references if provided
129
- IF has_images:
130
- REPORT: "🔍 Loading image references for animation analysis"
131
- REPORT: " Pattern: {--images}"
132
- REPORT: " Found: {image_count} image(s)"
133
-
134
- bash(mkdir -p {base_path}/.intermediates/animation-analysis)
135
-
136
- # Store image paths for agent reference
137
- image_list = []
138
- FOR image_file IN image_files:
139
- image_list.append(image_file)
140
- REPORT: " • {image_file}"
141
-
142
- # Save image references metadata
143
- image_metadata = {
144
- "pattern": --images,
145
- "count": image_count,
146
- "files": image_list,
147
- "timestamp": current_timestamp()
148
- }
149
- Write({base_path}/.intermediates/animation-analysis/image-references.json, JSON.stringify(image_metadata, indent=2))
150
-
151
- REPORT: " ✅ Image references prepared for AI analysis"
152
- ELSE:
153
- REPORT: "ℹ️ No image references provided - using prompt-only mode"
154
- ```
155
-
156
- **Image Analysis Strategy**:
157
- - Agent analyzes visual motion cues from reference images
158
- - Infers animation patterns from UI element positioning and design style
159
- - Generates context-aware animation specifications based on visual analysis
160
-
161
-
162
-
163
- ### Step 3: Load Design Tokens Context
164
-
165
- ```bash
166
- # Load existing design tokens for duration/easing alignment
167
- IF exists({base_path}/style-extraction/style-1/design-tokens.json):
168
- design_tokens = Read({base_path}/style-extraction/style-1/design-tokens.json)
169
- has_design_context = true
170
- ELSE:
171
- has_design_context = false
172
- REPORT: "ℹ️ No design tokens found - animation tokens will use standalone values"
173
-
174
- # Create output directory
175
- bash(mkdir -p {base_path}/animation-extraction)
176
- ```
177
-
178
- ### Step 4: Memory Check
179
-
180
- ```bash
181
- # Check if output already exists
182
- bash(test -f {base_path}/animation-extraction/animation-tokens.json && echo "exists")
183
- IF exists: SKIP to completion
184
- ```
185
-
186
- ---
187
-
188
- **Phase 0 Output**: `input_mode`, `base_path`, `has_images`, `image_list[]`, `focus_types[]`, `has_design_context`, `interactive_mode`, `refine_mode`
189
-
190
- ## Phase 1: Animation Specification Generation
191
-
192
- ### Step 1: Load Project Context
193
-
194
- ```bash
195
- # Load brainstorming context if available
196
- bash(test -f {base_path}/.brainstorming/role-analysis.md && cat it)
197
-
198
- # Load image references if available
199
- IF has_images:
200
- image_references = Read({base_path}/.intermediates/animation-analysis/image-references.json)
201
- REPORT: "📸 Image references loaded: {image_references.count} file(s)"
202
- ```
203
-
204
- ### Step 2: Generate Animation Specification Options (Agent Task 1)
205
-
206
- **Executor**: `Task(ui-design-agent)`
207
-
208
- **Conditional Logic**: Branch based on `refine_mode` flag
209
-
210
- ```javascript
211
- IF NOT refine_mode:
212
- // EXPLORATION MODE (default)
213
- Task(ui-design-agent): `
214
- [ANIMATION_SPECIFICATION_GENERATION_TASK]
215
- Generate context-aware animation specification questions
216
-
217
- SESSION: {session_id} | MODE: explore | BASE_PATH: {base_path}
218
-
219
- ## Input Analysis
220
- - Focus types: {focus_types.join(", ")}
221
- - Design context: {has_design_context ? "Available" : "None"}
222
- - Image references: {has_images ? "Available (" + image_count + " files)" : "None"}
223
- ${has_images ? "- Image Data: Read from .intermediates/animation-analysis/image-references.json" : ""}
224
-
225
- ## Analysis Rules
226
- - Analyze image references (if available) to infer animation patterns from visual cues
227
- - Generate questions covering timing, easing, interactions, and motion patterns
228
- - Based on focus_types, include relevant categories:
229
- * "all" or "transitions": timing_scale, easing_philosophy
230
- * "all" or "interactions" or "hover": button_interactions, card_interactions, input_interactions
231
- * "all" or "page": page_transitions
232
- * "all" or "loading": loading_states
233
- * "all" or "scroll": scroll_animations
234
-
235
- ## Generate Questions
236
- For each applicable category, create question with:
237
- 1. **Category ID** (e.g., "timing_scale", "button_interactions")
238
- 2. **Question text** (in Chinese, clear and concise)
239
- 3. **Options** (2-5 options per question):
240
- - Option key (a, b, c, d, e)
241
- - Option label (brief description)
242
- - Option details (detailed explanation with technical specs)
243
- - Technical specs (duration values, easing curves, transform values)
244
- - Visual preview (timeline representation or easing curve ASCII art)
245
-
246
- ## Output
247
- Write single JSON file: {base_path}/.intermediates/animation-analysis/analysis-options.json
248
-
249
- Use schema:
250
- {
251
- "metadata": {
252
- "generated_at": "<timestamp>",
253
- "focus_types": [...],
254
- "total_questions": <count>,
255
- "has_css_data": <boolean>
256
- },
257
- "specification_options": [
258
- {
259
- "id": 1,
260
- "category": "timing_scale",
261
- "question": "您的设计需要什么样的过渡速度?",
262
- "options": [
263
- {
264
- "key": "a",
265
- "label": "快速敏捷",
266
- "details": "100-200ms 过渡,适合工具型应用和即时反馈场景",
267
- "duration_values": {"fast": "100ms", "normal": "150ms", "slow": "200ms"},
268
- "visual_preview": {
269
- "timeline": "0ms ━━━━━━━━━━ 150ms",
270
- "description": "快速完成,几乎瞬时反馈"
271
- }
272
- },
273
- ...
274
- ]
275
- },
276
- {
277
- "id": 2,
278
- "category": "easing_philosophy",
279
- "question": "您偏好什么样的动画缓动曲线?",
280
- "options": [
281
- {
282
- "key": "a",
283
- "label": "自然缓动",
284
- "details": "标准 ease-out,模拟自然减速",
285
- "easing_curves": {
286
- "ease-in": "cubic-bezier(0.4, 0, 1, 1)",
287
- "ease-out": "cubic-bezier(0, 0, 0.2, 1)",
288
- "ease-in-out": "cubic-bezier(0.4, 0, 0.2, 1)"
289
- },
290
- "visual_preview": {
291
- "curve_art": "│ ╱─\n│ ╱\n│ ╱\n│╱\n└─────",
292
- "description": "快速启动,平滑减速"
293
- }
294
- },
295
- ...
296
- ]
297
- },
298
- ...
299
- ]
300
- }
301
-
302
- CRITICAL: Use Write() tool immediately after generating complete JSON
303
- `
304
-
305
- ELSE:
306
- // REFINEMENT MODE
307
- Task(ui-design-agent): `
308
- [ANIMATION_REFINEMENT_OPTIONS_TASK]
309
- Generate refinement options for existing animation system
310
-
311
- SESSION: {session_id} | MODE: refine | BASE_PATH: {base_path}
312
-
313
- ## Load Existing Animation System
314
- - Existing tokens: Read from {base_path}/animation-extraction/animation-tokens.json
315
- - Focus types: {focus_types.join(", ")}
316
- - Design context: {has_design_context ? "Available" : "None"}
317
- ${has_images ? "- Image Data: Read from .intermediates/animation-analysis/image-references.json" : ""}
318
-
319
- ## Refinement Categories
320
- Generate 8-12 refinement options across these categories:
321
-
322
- 1. **Timing Adjustments** (2-3 options):
323
- - Duration scale: Faster timing across the board ↔ Slower, more deliberate timing
324
- - Specific categories: Accelerate interactions only ↔ Extend page transitions
325
- - Micro-timing: Adjust stagger delays ↔ Sequential animation gaps
326
-
327
- 2. **Easing Fine-Tuning** (2-3 options):
328
- - Curve intensity: Sharper, snappier curves ↔ Softer, smoother curves
329
- - Category-specific: Bouncier interactions ↔ Linear state changes
330
- - Spring physics: Adjust bounce/damping parameters
331
-
332
- 3. **Context-Specific Variations** (2-3 options):
333
- - Reduced motion: Adjust reduced-motion fallbacks
334
- - Mobile optimization: Shorter durations for touch interactions
335
- - Component-specific: Different hover styles for buttons vs cards
336
-
337
- 4. **Interaction Intensity** (1-2 options):
338
- - Transform magnitude: Subtle movements (2-4px) ↔ Dramatic movements (8-12px)
339
- - Scale adjustments: Minimal scale changes ↔ Bold scale emphasis
340
- - Opacity ranges: Partial fades ↔ Full visibility transitions
341
-
342
- ## Generate Refinement Options
343
- For each category, create option with:
344
- 1. **Option ID** (sequential number)
345
- 2. **Category** (timing_adjustments, easing_tuning, context_variations, interaction_intensity)
346
- 3. **Label** (brief Chinese description, e.g., "加快整体节奏")
347
- 4. **Description** (detailed explanation of changes)
348
- 5. **Impact Scope** (which tokens will be modified)
349
- 6. **Technical Changes** (specific value adjustments)
350
- 7. **Before/After Preview** (show current vs proposed values)
351
-
352
- ## Output
353
- Write single JSON file: {base_path}/.intermediates/animation-analysis/refinement-options.json
354
-
355
- Use schema:
356
- {
357
- "metadata": {
358
- "generated_at": "<timestamp>",
359
- "mode": "refinement",
360
- "existing_tokens_loaded": true,
361
- "total_refinements": <count>
362
- },
363
- "current_animation_system": {
364
- // Copy from animation-tokens.json for reference
365
- },
366
- "refinement_options": [
367
- {
368
- "id": 1,
369
- "category": "timing_adjustments",
370
- "label": "加快整体动画节奏",
371
- "description": "将所有 duration 值减少 30%,使界面响应更快速",
372
- "impact_scope": "duration.fast, duration.normal, duration.slow",
373
- "technical_changes": {
374
- "duration.fast": {"from": "150ms", "to": "105ms"},
375
- "duration.normal": {"from": "300ms", "to": "210ms"},
376
- "duration.slow": {"from": "500ms", "to": "350ms"}
377
- },
378
- "preview": {
379
- "before": "Normal button hover: 150ms",
380
- "after": "Faster button hover: 105ms"
381
- }
382
- },
383
- ...
384
- ]
385
- }
386
-
387
- CRITICAL: Use Write() tool immediately after generating complete JSON
388
- `
389
- ```
390
-
391
- ### Step 3: Verify Options File Created
392
-
393
- ```bash
394
- IF NOT refine_mode:
395
- # Exploration mode: Check for analysis-options.json
396
- bash(test -f {base_path}/.intermediates/animation-analysis/analysis-options.json && echo "created")
397
- bash(cat {base_path}/.intermediates/animation-analysis/analysis-options.json | grep -q "specification_options" && echo "valid")
398
- ELSE:
399
- # Refinement mode: Check for refinement-options.json
400
- bash(test -f {base_path}/.intermediates/animation-analysis/refinement-options.json && echo "created")
401
- bash(cat {base_path}/.intermediates/animation-analysis/refinement-options.json | grep -q "refinement_options" && echo "valid")
402
- ```
403
-
404
- **Output**:
405
- - Exploration mode: `analysis-options.json` with animation specification questions
406
- - Refinement mode: `refinement-options.json` with refinement options
407
-
408
- ---
409
-
410
- **Phase 1 Output**:
411
- - Exploration mode: `analysis-options.json` with generated specification questions
412
- - Refinement mode: `refinement-options.json` with refinement options
413
-
414
- ## Phase 1.5: User Confirmation (Optional - Triggered by --interactive)
415
-
416
- **Purpose**: Allow user to answer animation specification questions (exploration) or select refinement options (refinement) before generating tokens
417
-
418
- **Trigger Condition**: Execute this phase ONLY if `--interactive` flag is present
419
-
420
- ### Step 1: Check Interactive Flag
421
-
422
- ```bash
423
- # Skip this entire phase if --interactive flag is not present
424
- IF NOT --interactive:
425
- SKIP to Phase 2
426
- REPORT: "ℹ️ Non-interactive mode: Using CSS extraction + default animation preferences"
427
-
428
- REPORT: "🎯 Interactive mode enabled: User answers required"
429
- ```
430
-
431
- ### Step 2: Load and Present Options
432
-
433
- ```bash
434
- # Read options file based on mode
435
- IF NOT refine_mode:
436
- # Exploration mode
437
- options = Read({base_path}/.intermediates/animation-analysis/analysis-options.json)
438
- specification_options = options.specification_options
439
- ELSE:
440
- # Refinement mode
441
- options = Read({base_path}/.intermediates/animation-analysis/refinement-options.json)
442
- refinement_options = options.refinement_options
443
- ```
444
-
445
- ### Step 3: Present Options to User
446
-
447
- **Conditional Display**: Branch based on `refine_mode` flag
448
-
449
- ```
450
- IF NOT refine_mode:
451
- // EXPLORATION MODE
452
- 📋 Animation Specification Questions
453
-
454
- We've generated {options.metadata.total_questions} questions to define your animation system.
455
- Please answer each question to customize the animation behavior.
456
-
457
- {FOR each question in specification_options:
458
- ═══════════════════════════════════════════════════
459
- Question {question.id}: {question.question}
460
- Category: {question.category}
461
- ═══════════════════════════════════════════════════
462
-
463
- {FOR each option in question.options:
464
- {option.key}) {option.label}
465
- {option.details}
466
-
467
- ${option.visual_preview ? "Preview:\n " + option.visual_preview.timeline || option.visual_preview.curve_art || option.visual_preview.animation_sequence : ""}
468
- ${option.visual_preview ? " " + option.visual_preview.description : ""}
469
-
470
- ${option.duration_values ? "Durations: " + JSON.stringify(option.duration_values) : ""}
471
- ${option.easing_curves ? "Easing: " + JSON.stringify(option.easing_curves) : ""}
472
- ${option.transform_value ? "Transform: " + option.transform_value : ""}
473
- }
474
-
475
- ═══════════════════════════════════════════════════
476
- }
477
-
478
- ELSE:
479
- // REFINEMENT MODE
480
- 🔧 Animation System Refinement Options
481
-
482
- We've generated {options.metadata.total_refinements} refinement options to fine-tune your animation system.
483
- Select which refinements to apply (can select multiple).
484
-
485
- {FOR each refinement in refinement_options:
486
- ═══════════════════════════════════════════════════
487
- Option {refinement.id}: {refinement.label}
488
- Category: {refinement.category}
489
- ═══════════════════════════════════════════════════
490
-
491
- Description: {refinement.description}
492
- Impact Scope: {refinement.impact_scope}
493
-
494
- Technical Changes:
495
- {FOR each token, changes IN refinement.technical_changes:
496
- • {token}:
497
- Before: {changes.from}
498
- After: {changes.to}
499
- }
500
-
501
- Preview:
502
- {refinement.preview.before} → {refinement.preview.after}
503
-
504
- ═══════════════════════════════════════════════════
505
- }
506
- ```
507
-
508
- ### Step 4: Capture User Selection
509
-
510
- **Conditional Interaction**: Branch based on `refine_mode` flag
511
-
512
- ```javascript
513
- IF NOT refine_mode:
514
- // EXPLORATION MODE - Single selection per question
515
- user_answers = {}
516
-
517
- FOR each question IN specification_options:
518
- AskUserQuestion({
519
- questions: [{
520
- question: question.question,
521
- header: question.category,
522
- multiSelect: false, // Single selection per question
523
- options: [
524
- {FOR each option IN question.options:
525
- label: "{option.key}) {option.label}",
526
- description: option.details
527
- }
528
- ]
529
- }]
530
- })
531
-
532
- // Parse user response (single selection, e.g., "a) Fast & Snappy")
533
- selected_option_text = user_answer
534
-
535
- // Check for user cancellation
536
- IF selected_option_text == null:
537
- REPORT: "⚠️ User canceled selection. Using default animation preferences."
538
- EXIT Phase 1.5
539
-
540
- // Extract option key from selection text
541
- match = selected_option_text.match(/^([a-e])\)/)
542
- IF match:
543
- selected_key = match[1]
544
- user_answers[question.category] = selected_key
545
- REPORT: "✅ {question.category}: Selected option {selected_key}"
546
- ELSE:
547
- ERROR: "Invalid selection format. Expected 'a) ...' format"
548
- EXIT workflow
549
-
550
- REPORT: "✅ Collected {Object.keys(user_answers).length} animation preferences"
551
-
552
- ELSE:
553
- // REFINEMENT MODE - Multi-selection of refinements
554
- AskUserQuestion({
555
- questions: [{
556
- question: "Which refinement(s) would you like to apply to your animation system?",
557
- header: "Refinements",
558
- multiSelect: true, // Can select multiple refinements
559
- options: [
560
- {FOR each refinement IN refinement_options:
561
- label: "{refinement.id}. {refinement.label}",
562
- description: "{refinement.description} (Affects: {refinement.impact_scope})"
563
- }
564
- ]
565
- }]
566
- })
567
-
568
- // Parse user response (multi-selection)
569
- selected_refinements = user_answer
570
-
571
- // Check for user cancellation
572
- IF selected_refinements == null:
573
- REPORT: "⚠️ User canceled selection. No refinements will be applied."
574
- EXIT Phase 1.5
575
-
576
- // Extract refinement IDs
577
- selected_ids = []
578
- FOR each selection IN selected_refinements:
579
- match = selection.match(/^(\d+)\./)
580
- IF match:
581
- selected_ids.push(parseInt(match[1]))
582
-
583
- REPORT: "✅ Selected {selected_ids.length} refinement(s) to apply"
584
- ```
585
-
586
- ### Step 5: Update Options File with User Selection
587
-
588
- ```bash
589
- IF NOT refine_mode:
590
- # EXPLORATION MODE - Update analysis-options.json
591
- options.user_selection = {
592
- "selected_at": "{current_timestamp}",
593
- "session_id": "{session_id}",
594
- "answers": user_answers // {category: selected_key}
595
- }
596
-
597
- # Write updated file back
598
- Write({base_path}/.intermediates/animation-analysis/analysis-options.json, JSON.stringify(options, indent=2))
599
-
600
- # Verify
601
- bash(test -f {base_path}/.intermediates/animation-analysis/analysis-options.json && echo "saved")
602
-
603
- ELSE:
604
- # REFINEMENT MODE - Update refinement-options.json
605
- options.user_selection = {
606
- "selected_at": "{current_timestamp}",
607
- "session_id": "{session_id}",
608
- "selected_refinements": selected_ids // Array of refinement IDs
609
- }
610
-
611
- # Write updated file back
612
- Write({base_path}/.intermediates/animation-analysis/refinement-options.json, JSON.stringify(options, indent=2))
613
-
614
- # Verify
615
- bash(test -f {base_path}/.intermediates/animation-analysis/refinement-options.json && echo "saved")
616
- ```
617
-
618
- ### Step 6: Confirmation Message
619
-
620
- ```
621
- IF NOT refine_mode:
622
- // EXPLORATION MODE
623
- ✅ Animation preferences recorded!
624
-
625
- You selected:
626
- {FOR each category, selected_key IN user_answers:
627
- question = find(specification_options, q => q.category == category)
628
- option = find(question.options, o => o.key == selected_key)
629
- • {category}: {option.label}
630
- ({option.details})
631
- }
632
-
633
- Proceeding to generate animation system with your preferences...
634
-
635
- ELSE:
636
- // REFINEMENT MODE
637
- ✅ Refinement selections recorded!
638
-
639
- You selected {selected_ids.length} refinement(s):
640
- {FOR each id IN selected_ids:
641
- refinement = find(refinement_options, r => r.id == id)
642
- • {refinement.label} ({refinement.category})
643
- Impact: {refinement.impact_scope}
644
- }
645
-
646
- Proceeding to apply refinements to animation system...
647
- ```
648
-
649
- **Output**:
650
- - Exploration mode: Updated `analysis-options.json` with embedded `user_selection` field
651
- - Refinement mode: Updated `refinement-options.json` with `user_selection.selected_refinements` array
652
-
653
- ## Phase 2: Animation System Generation (Agent Task 2)
654
-
655
- **Executor**: `Task(ui-design-agent)` for animation token generation
656
-
657
- ### Step 1: Load User Selection or Use Defaults
658
-
659
- ```bash
660
- IF NOT refine_mode:
661
- # EXPLORATION MODE - Read analysis-options.json
662
- options = Read({base_path}/.intermediates/animation-analysis/analysis-options.json)
663
- specification_options = options.specification_options
664
-
665
- # Check if user_selection field exists (interactive mode)
666
- IF options.user_selection AND options.user_selection.answers:
667
- # Interactive mode: Use user-selected preferences
668
- user_answers = options.user_selection.answers
669
- REPORT: "🎯 Interactive mode: Using user-selected animation preferences"
670
- ELSE:
671
- # Non-interactive mode: Use defaults (first option for each question)
672
- user_answers = null
673
- REPORT: "ℹ️ Non-interactive mode: Using default animation preferences"
674
-
675
- ELSE:
676
- # REFINEMENT MODE - Read refinement-options.json
677
- options = Read({base_path}/.intermediates/animation-analysis/refinement-options.json)
678
- refinement_options = options.refinement_options
679
-
680
- # Check if user_selection field exists (interactive mode)
681
- IF options.user_selection AND options.user_selection.selected_refinements:
682
- # Interactive mode: Use user-selected refinements
683
- selected_refinements = options.user_selection.selected_refinements
684
- REPORT: "🎯 Interactive mode: Applying {selected_refinements.length} selected refinement(s)"
685
- ELSE:
686
- # Non-interactive mode: Apply all refinements
687
- selected_refinements = null
688
- REPORT: "ℹ️ Non-interactive mode: Applying all refinements"
689
-
690
- # Load image references if available for agent context
691
- image_context = null
692
- IF has_images:
693
- IF exists({base_path}/.intermediates/animation-analysis/image-references.json):
694
- image_context = Read({base_path}/.intermediates/animation-analysis/image-references.json)
695
- REPORT: "📸 Using {image_context.count} image reference(s) for animation inference"
696
- ```
697
-
698
- ### Step 2: Create Output Directory
699
-
700
- ```bash
701
- # Create directory for animation system
702
- bash(mkdir -p {base_path}/animation-extraction)
703
- ```
704
-
705
- ### Step 3: Launch Animation Generation Task
706
-
707
- **Conditional Task**: Branch based on `refine_mode` flag
708
-
709
- ```javascript
710
- IF NOT refine_mode:
711
- // EXPLORATION MODE
712
- Task(ui-design-agent): `
713
- [ANIMATION_SYSTEM_GENERATION_TASK]
714
- Generate production-ready animation system based on user preferences and CSS extraction
715
-
716
- SESSION: {session_id} | MODE: explore | BASE_PATH: {base_path}
717
-
718
- USER PREFERENCES:
719
- ${user_answers ? "- User Selection: " + JSON.stringify(user_answers) : "- Using Defaults: First option for each category"}
720
- ${user_answers ? "- Specification Options: Read from .intermediates/animation-analysis/analysis-options.json for detailed specs" : ""}
721
-
722
- ## Input Analysis
723
- - Interactive mode: {user_answers ? "Yes (user preferences available)" : "No (using defaults)"}
724
- - Image references: {image_context ? "Available (" + image_context.count + " files)" : "None"}
725
- ${image_context ? "- Image Data: " + JSON.stringify(image_context) : ""}
726
- - Design context: {has_design_context ? "Available" : "None"}
727
- ${has_design_context ? "- Design Tokens: Read from style-extraction/style-1/design-tokens.json" : ""}
728
-
729
- ## Generation Rules
730
- ${user_answers ? `
731
- - Read analysis-options.json to get user_selection.answers
732
- - For each category in user_selection.answers, find the selected option
733
- - Use the selected option's technical specs (duration_values, easing_curves, transform_value, etc.)
734
- - Apply these specs to generate animation tokens
735
- ` : `
736
- - Use first option (key "a") from each question in specification_options as default
737
- - Extract technical specs from default options
738
- `}
739
- - Infer animation patterns from image references (if available)
740
- - Align with design tokens (spacing, colors) if available
741
- - All tokens use CSS Custom Property format: var(--duration-fast)
742
- - WCAG-compliant: Respect prefers-reduced-motion
743
- - Semantic naming for all animation values
744
-
745
- ## Synthesis Priority
746
- 1. User answers from analysis-options.json user_selection field (highest priority)
747
- 2. Inferred patterns from image references (medium priority)
748
- 3. Industry best practices (fallback)
749
-
750
- ## Duration Normalization
751
- - IF user_selection.answers.timing_scale EXISTS:
752
- Find selected option in specification_options
753
- Use option's duration_values for token generation
754
- - ELSE IF image references available:
755
- Infer timing patterns from visual design style (minimalist → faster, ornate → slower)
756
- - ELSE:
757
- Use standard scale (instant:0ms, fast:150ms, normal:300ms, slow:500ms, very-slow:800ms)
758
-
759
- ## Easing Standardization
760
- - IF user_selection.answers.easing_philosophy EXISTS:
761
- Find selected option in specification_options
762
- Use option's easing_curves for token generation
763
- - ELSE IF image references available:
764
- Infer easing preferences from visual style (sharp edges → snappy, soft curves → smooth)
765
- - ELSE:
766
- Use standard easings (linear, ease-in, ease-out, ease-in-out, spring)
767
-
768
- ## Animation Categorization
769
- Organize into:
770
- - **duration**: Timing scale (instant, fast, normal, slow, very-slow)
771
- - **easing**: Easing functions (linear, ease-in, ease-out, ease-in-out, spring)
772
- - **transitions**: Property-specific transitions (color, transform, opacity, etc.)
773
- - **keyframes**: Named @keyframe animations (fadeIn, slideInUp, pulse, etc.)
774
- - **interactions**: Interaction-specific presets (button-hover, card-hover, input-focus, etc.)
775
- - **page_transitions**: Route/view change animations (if user enabled)
776
- - **scroll_animations**: Scroll-triggered animations (if user enabled)
777
-
778
- ## Generate Files
779
-
780
- ### 1. animation-tokens.json
781
- Complete animation token structure using var() references:
782
-
783
- {
784
- "duration": {
785
- "instant": "0ms",
786
- "fast": "150ms", # From user_selection or CSS extraction or default
787
- "normal": "300ms",
788
- "slow": "500ms",
789
- "very-slow": "800ms"
790
- },
791
- "easing": {
792
- "linear": "linear",
793
- "ease-in": "cubic-bezier(0.4, 0, 1, 1)",
794
- "ease-out": "cubic-bezier(0, 0, 0.2, 1)", # From user_selection or CSS extraction or default
795
- "ease-in-out": "cubic-bezier(0.4, 0, 0.2, 1)",
796
- "spring": "cubic-bezier(0.34, 1.56, 0.64, 1)"
797
- },
798
- "transitions": {
799
- "color": {
800
- "property": "color, background-color, border-color",
801
- "duration": "var(--duration-fast)",
802
- "easing": "var(--easing-ease-out)"
803
- },
804
- "transform": {
805
- "property": "transform",
806
- "duration": "var(--duration-normal)",
807
- "easing": "var(--easing-ease-out)"
808
- },
809
- "opacity": {
810
- "property": "opacity",
811
- "duration": "var(--duration-normal)",
812
- "easing": "var(--easing-ease-in-out)"
813
- }
814
- },
815
- "keyframes": {
816
- "fadeIn": {"0%": {"opacity": "0"}, "100%": {"opacity": "1"}},
817
- "slideInUp": {"0%": {"transform": "translateY(20px)", "opacity": "0"}, "100%": {"transform": "translateY(0)", "opacity": "1"}},
818
- "pulse": {"0%, 100%": {"opacity": "1"}, "50%": {"opacity": "0.7"}}
819
- },
820
- "interactions": {
821
- "button-hover": {
822
- # From user_selection.answers.button_interactions or CSS extraction or default
823
- "properties": ["background-color", "transform"],
824
- "duration": "var(--duration-fast)",
825
- "easing": "var(--easing-ease-out)",
826
- "transform": "scale(1.02)"
827
- },
828
- "card-hover": {
829
- # From user_selection.answers.card_interactions or CSS extraction or default
830
- "properties": ["box-shadow", "transform"],
831
- "duration": "var(--duration-normal)",
832
- "easing": "var(--easing-ease-out)",
833
- "transform": "translateY(-4px)"
834
- }
835
- },
836
- "page_transitions": {
837
- # IF user_selection.answers.page_transitions enabled
838
- "fade": {
839
- "duration": "var(--duration-normal)",
840
- "enter": "fadeIn",
841
- "exit": "fadeOut"
842
- }
843
- },
844
- "scroll_animations": {
845
- # IF user_selection.answers.scroll_animations enabled
846
- "default": {
847
- "animation": "fadeIn",
848
- "duration": "var(--duration-slow)",
849
- "easing": "var(--easing-ease-out)",
850
- "threshold": "0.1"
851
- }
852
- }
853
- }
854
-
855
- ## Output File Paths
856
- - animation-tokens.json: {base_path}/animation-extraction/animation-tokens.json
857
-
858
- ## Critical Requirements
859
- - ✅ Use Write() tool immediately to generate JSON file
860
- - ✅ All tokens use CSS Custom Property format: var(--duration-fast)
861
- - ✅ Include prefers-reduced-motion media query guidance
862
- - ✅ Validate all cubic-bezier values are valid (4 numbers between 0-1)
863
- - ${user_answers ? "✅ READ analysis-options.json for user_selection field" : "✅ Use first option from each question as default"}
864
- - ❌ NO user questions or interaction in this phase
865
- - ✅ Can use Exa MCP to research modern animation patterns and obtain code examples (Explore/Text mode)
866
- `
867
-
868
- ELSE:
869
- // REFINEMENT MODE
870
- Task(ui-design-agent): `
871
- [ANIMATION_SYSTEM_REFINEMENT_TASK]
872
- Apply selected refinements to existing animation system
873
-
874
- SESSION: {session_id} | MODE: refine | BASE_PATH: {base_path}
875
-
876
- ## Load Existing Animation System
877
- - Current tokens: Read from {base_path}/animation-extraction/animation-tokens.json
878
- - Refinement options: Read from .intermediates/animation-analysis/refinement-options.json
879
-
880
- REFINEMENT SELECTION:
881
- ${selected_refinements ? `
882
- - Interactive mode: Apply selected refinements
883
- - Selected IDs: ${JSON.stringify(selected_refinements)}
884
- - For each ID in selected_refinements:
885
- * Find refinement in refinement_options by id
886
- * Apply technical_changes to corresponding tokens
887
- ` : `
888
- - Non-interactive mode: Apply ALL refinements
889
- - For each refinement in refinement_options:
890
- * Apply technical_changes to corresponding tokens
891
- `}
892
-
893
- ## Input Analysis
894
- - Image references: {image_context ? "Available (" + image_context.count + " files)" : "None"}
895
- ${image_context ? "- Image Data: " + JSON.stringify(image_context) : ""}
896
- - Design context: {has_design_context ? "Available" : "None"}
897
- ${has_design_context ? "- Design Tokens: Read from style-extraction/style-1/design-tokens.json" : ""}
898
-
899
- ## Refinement Application Rules
900
- ${selected_refinements ? `
901
- - ONLY apply refinements with IDs in selected_refinements array
902
- - Skip refinements not selected by user
903
- ` : `
904
- - Apply ALL refinements from refinement_options
905
- - Combine multiple refinements that affect same token
906
- `}
907
- - Load current animation-tokens.json
908
- - For each applicable refinement:
909
- * Parse technical_changes field
910
- * Apply "to" values to replace "from" values in tokens
911
- * Preserve structure and var() references
912
- - If multiple refinements affect same token, apply in sequence
913
- - Maintain WCAG compliance and semantic naming
914
- - All tokens use CSS Custom Property format: var(--duration-fast)
915
-
916
- ## Conflict Resolution
917
- - If multiple selected refinements modify same token:
918
- * Apply refinements in ID order (lowest first)
919
- * Later refinements override earlier ones
920
-
921
- ## Generate Updated Files
922
-
923
- ### 1. animation-tokens.json
924
- Updated animation token structure with refinements applied:
925
- - Load existing structure
926
- - Apply technical_changes from selected/all refinements
927
- - Maintain var() references and semantic naming
928
- - Validate all cubic-bezier values
929
-
930
- ## Output File Paths
931
- - animation-tokens.json: {base_path}/animation-extraction/animation-tokens.json (OVERWRITE)
932
-
933
- ## Critical Requirements
934
- - ✅ Use Write() tool immediately to generate JSON file
935
- - ✅ OVERWRITE existing animation-tokens.json with refined version
936
- - ✅ All tokens use CSS Custom Property format: var(--duration-fast)
937
- - ✅ Include prefers-reduced-motion media query guidance
938
- - ✅ Validate all cubic-bezier values are valid (4 numbers between 0-1)
939
- - ${selected_refinements ? "✅ READ refinement-options.json for user_selection.selected_refinements" : "✅ Apply ALL refinements from refinement_options"}
940
- - ❌ NO user questions or interaction in this phase
941
- - ✅ Can use Exa MCP to research modern animation patterns and obtain code examples (Explore/Text mode)
942
- `
943
- ```
944
-
945
- **Output**: Agent generates/updates animation-tokens.json
946
-
947
- ## Phase 3: Verify Output
948
-
949
- ### Step 1: Check Files Created
950
-
951
- ```bash
952
- # Verify animation system created
953
- bash(test -f {base_path}/animation-extraction/animation-tokens.json && echo "exists")
954
-
955
- # Validate structure
956
- bash(cat {base_path}/animation-extraction/animation-tokens.json | grep -q "duration" && echo "valid")
957
- bash(cat {base_path}/animation-extraction/animation-tokens.json | grep -q "easing" && echo "valid")
958
- ```
959
-
960
- ### Step 2: Verify File Sizes
961
-
962
- ```bash
963
- bash(ls -lh {base_path}/animation-extraction/)
964
- ```
965
-
966
- **Output**: animation-tokens.json verified
967
-
968
- ## Completion
969
-
970
- ### Todo Update
971
-
972
- ```javascript
973
- TodoWrite({todos: [
974
- {content: "Setup and input validation", status: "completed", activeForm: "Validating inputs"},
975
- {content: "CSS animation extraction (Phase 1)", status: "completed", activeForm: "Extracting from CSS"},
976
- {content: "Specification generation (Phase 1 - Agent)", status: "completed", activeForm: "Generating questions"},
977
- {content: "User confirmation (Phase 1.5 - Optional)", status: "completed", activeForm: "Collecting user answers"},
978
- {content: "Animation system generation (Phase 2 - Agent)", status: "completed", activeForm: "Generating animation system"},
979
- {content: "Verify output files (Phase 3)", status: "completed", activeForm: "Verifying files"}
980
- ]});
981
- ```
982
-
983
- ### Output Message
984
-
985
- ```
986
- ✅ Animation extraction complete!
987
-
988
- Configuration:
989
- - Session: {session_id}
990
- - Interactive Mode: {interactive_mode ? "Enabled (user preferences collected)" : "Disabled (default preferences)"}
991
- - Input Sources:
992
- {IF has_images:
993
- - ✅ Image references analyzed ({image_count} file(s))
994
- }
995
- {IF interactive_mode AND options.user_selection:
996
- - ✅ User preferences collected via interactive mode
997
- }
998
- {IF NOT interactive_mode:
999
- - ℹ️ Using default animation preferences (no user interaction)
1000
- }
1001
- {IF has_design_context:
1002
- - ✅ Aligned with existing design tokens
1003
- }
1004
-
1005
- Generated Files:
1006
- {base_path}/animation-extraction/
1007
- └── animation-tokens.json # Production-ready animation tokens
1008
-
1009
- {IF has_images OR options.user_selection:
1010
- Intermediate Analysis:
1011
- {base_path}/.intermediates/animation-analysis/
1012
- {IF has_images:
1013
- ├── image-references.json # Image reference metadata ({image_count} files)
1014
- }
1015
- ├── analysis-options.json # Generated questions{options.user_selection ? " + user answers" : ""}
1016
- }
1017
-
1018
- Extracted Data Summary:
1019
- - Duration scales: {duration_count} values
1020
- - Easing functions: {easing_count} types
1021
- - Interaction presets: {interaction_count} patterns
1022
- - Keyframe animations: {keyframe_count} animations
1023
-
1024
- Next: Animation tokens ready for integration
1025
- • style-extract/layout-extract can reference animation tokens
1026
- • generate command will include animation CSS
1027
- • Tokens use var() format for easy customization
1028
- ```
1029
-
1030
- ## Simple Bash Commands
1031
-
1032
- ### Path Operations
1033
-
1034
- ```bash
1035
- # Find design directory
1036
- bash(find .workflow -type d -name "design-run-*" | head -1)
1037
-
1038
- # Create output directories
1039
- bash(mkdir -p {base_path}/animation-extraction)
1040
- bash(mkdir -p {base_path}/.intermediates/animation-analysis)
1041
- ```
1042
-
1043
- ### Validation Commands
1044
-
1045
- ```bash
1046
- # Check if already extracted
1047
- bash(test -f {base_path}/animation-extraction/animation-tokens.json && echo "exists")
1048
-
1049
- # Validate JSON structure
1050
- bash(cat {base_path}/animation-extraction/animation-tokens.json | grep -q "duration" && echo "valid")
1051
-
1052
- # Count animation types
1053
- bash(cat animation-tokens.json | grep -c "\"keyframes\":")
1054
- ```
1055
-
1056
- ### File Operations
1057
-
1058
- ```bash
1059
- # Load design tokens context
1060
- bash(test -f {base_path}/style-extraction/style-1/design-tokens.json && cat it)
1061
-
1062
- # Verify output
1063
- bash(ls {base_path}/animation-extraction/)
1064
- ```
1065
-
1066
- ## Output Structure
1067
-
1068
- ```
1069
- {base_path}/
1070
- ├── .intermediates/ # Intermediate analysis files
1071
- │ └── animation-analysis/
1072
- │ ├── animations-{target}.json # Extracted CSS (URL mode only)
1073
- │ └── analysis-options.json # Generated questions + user answers (embedded)
1074
- └── animation-extraction/ # Final animation system
1075
- └── animation-tokens.json # Production-ready animation tokens
1076
- ```
1077
-
1078
- ## animation-tokens.json Format
1079
-
1080
- ```json
1081
- {
1082
- "duration": {
1083
- "instant": "0ms",
1084
- "fast": "150ms",
1085
- "normal": "300ms",
1086
- "slow": "500ms",
1087
- "very-slow": "800ms"
1088
- },
1089
- "easing": {
1090
- "linear": "linear",
1091
- "ease-in": "cubic-bezier(0.4, 0, 1, 1)",
1092
- "ease-out": "cubic-bezier(0, 0, 0.2, 1)",
1093
- "ease-in-out": "cubic-bezier(0.4, 0, 0.2, 1)",
1094
- "spring": "cubic-bezier(0.34, 1.56, 0.64, 1)"
1095
- },
1096
- "transitions": {
1097
- "color": {"property": "...", "duration": "var(--duration-fast)", "easing": "..."},
1098
- "transform": {"property": "...", "duration": "...", "easing": "..."}
1099
- },
1100
- "keyframes": {
1101
- "fadeIn": {"0%": {...}, "100%": {...}},
1102
- "slideInUp": {...}
1103
- },
1104
- "interactions": {
1105
- "button-hover": {"properties": [...], "duration": "...", "transform": "..."},
1106
- "card-hover": {...}
1107
- },
1108
- "page_transitions": {...},
1109
- "scroll_animations": {...}
1110
- }
1111
- ```
1112
-
1113
- **Requirements**: CSS var() format, valid cubic-bezier values, prefers-reduced-motion support
1114
-
1115
- ## Error Handling
1116
-
1117
- ### Common Errors
1118
-
1119
- ```
1120
- ERROR: No image references found
1121
- → Provide valid --images glob pattern or proceed with prompt-only mode
1122
-
1123
- ERROR: Invalid image format
1124
- → Skips unsupported files, continues with valid images
1125
-
1126
- ERROR: Invalid cubic-bezier values
1127
- → Validates and corrects to nearest standard easing
1128
- ```
1129
-
1130
- ### Recovery Strategies
1131
-
1132
- - **Image loading failure**: Falls back to prompt-only specification mode
1133
- - **Partial image set**: Supplements with default values and best practices
1134
- - **Invalid data**: Validates and uses fallback values
1135
-
1136
- ## Key Features
1137
-
1138
- - **Prompt & Image Inference** - Analyzes design intent from textual descriptions and visual references (Phase 0)
1139
- - **Agent-Generated Questions** - Context-aware specification questions with visual previews (Phase 1)
1140
- - **Visual Previews** - Timeline representations, easing curve ASCII art, and animation sequences for each option
1141
- - **Optional User Interaction** - User answers questions only when `--interactive` flag present (Phase 1.5)
1142
- - **Non-Interactive Mode** - Default behavior uses inferred patterns + best practices (no user questions)
1143
- - **Hybrid Strategy** - Combines image analysis with user preferences (when interactive)
1144
- - **No MCP Dependencies** - Pure AI-driven inference from visual and textual inputs
1145
- - **Context-Aware** - Aligns with existing design tokens
1146
- - **Production-Ready** - CSS var() format, accessibility support
1147
- - **Comprehensive Coverage** - Transitions, keyframes, interactions, scroll animations
1148
- - **Clear Phase Separation** - Question generation (Agent) → User confirmation (Optional) → Token synthesis (Agent)
1149
-
1150
-