claude-code-workflow 6.3.31 → 6.3.34

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 (492) hide show
  1. package/.claude/CLAUDE.md +7 -3
  2. package/.claude/agents/action-planning-agent.md +885 -885
  3. package/.claude/agents/cli-discuss-agent.md +391 -391
  4. package/.claude/agents/cli-execution-agent.md +7 -6
  5. package/.claude/agents/cli-lite-planning-agent.md +1 -1
  6. package/.claude/agents/cli-planning-agent.md +2 -2
  7. package/.claude/agents/code-developer.md +407 -403
  8. package/.claude/agents/conceptual-planning-agent.md +11 -0
  9. package/.claude/agents/debug-explore-agent.md +3 -3
  10. package/.claude/agents/doc-generator.md +3 -3
  11. package/.claude/agents/issue-plan-agent.md +333 -340
  12. package/.claude/agents/issue-queue-agent.md +1 -1
  13. package/.claude/agents/memory-bridge.md +95 -95
  14. package/.claude/agents/test-context-search-agent.md +402 -402
  15. package/.claude/agents/ui-design-agent.md +595 -595
  16. package/.claude/agents/universal-executor.md +134 -134
  17. package/.claude/commands/cli/codex-review.md +355 -0
  18. package/.claude/commands/issue/discover-by-prompt.md +1 -1
  19. package/.claude/commands/issue/execute.md +581 -581
  20. package/.claude/commands/issue/new.md +413 -413
  21. package/.claude/commands/issue/plan.md +1 -1
  22. package/.claude/commands/issue/queue.md +441 -382
  23. package/.claude/commands/memory/code-map-memory.md +687 -687
  24. package/.claude/commands/memory/compact.md +383 -383
  25. package/.claude/commands/memory/docs-full-cli.md +471 -471
  26. package/.claude/commands/memory/docs-related-cli.md +386 -386
  27. package/.claude/commands/memory/docs.md +615 -615
  28. package/.claude/commands/memory/load-skill-memory.md +182 -182
  29. package/.claude/commands/memory/skill-memory.md +525 -525
  30. package/.claude/commands/memory/style-skill-memory.md +396 -396
  31. package/.claude/commands/memory/swagger-docs.md +773 -773
  32. package/.claude/commands/memory/tech-research-rules.md +2 -2
  33. package/.claude/commands/memory/update-full.md +332 -332
  34. package/.claude/commands/memory/workflow-skill-memory.md +517 -517
  35. package/.claude/commands/task/create.md +151 -151
  36. package/.claude/commands/task/replan.md +436 -436
  37. package/.claude/commands/version.md +254 -254
  38. package/.claude/commands/workflow/brainstorm/api-designer.md +587 -587
  39. package/.claude/commands/workflow/brainstorm/auto-parallel.md +11 -0
  40. package/.claude/commands/workflow/brainstorm/data-architect.md +220 -220
  41. package/.claude/commands/workflow/brainstorm/product-manager.md +200 -200
  42. package/.claude/commands/workflow/brainstorm/product-owner.md +200 -200
  43. package/.claude/commands/workflow/brainstorm/scrum-master.md +200 -200
  44. package/.claude/commands/workflow/brainstorm/subject-matter-expert.md +200 -200
  45. package/.claude/commands/workflow/brainstorm/system-architect.md +389 -389
  46. package/.claude/commands/workflow/brainstorm/ui-designer.md +221 -221
  47. package/.claude/commands/workflow/brainstorm/ux-expert.md +221 -221
  48. package/.claude/commands/workflow/clean.md +3 -3
  49. package/.claude/commands/workflow/debug-with-file.md +666 -0
  50. package/.claude/commands/workflow/debug.md +327 -327
  51. package/.claude/commands/workflow/execute.md +498 -498
  52. package/.claude/commands/workflow/init.md +25 -12
  53. package/.claude/commands/workflow/lite-execute.md +25 -22
  54. package/.claude/commands/workflow/lite-fix.md +631 -631
  55. package/.claude/commands/workflow/lite-lite-lite.md +39 -11
  56. package/.claude/commands/workflow/lite-plan.md +4 -2
  57. package/.claude/commands/workflow/multi-cli-plan.md +97 -39
  58. package/.claude/commands/workflow/plan.md +551 -551
  59. package/.claude/commands/workflow/replan.md +515 -515
  60. package/.claude/commands/workflow/review-fix.md +610 -610
  61. package/.claude/commands/workflow/review-module-cycle.md +771 -771
  62. package/.claude/commands/workflow/review-session-cycle.md +782 -782
  63. package/.claude/commands/workflow/review.md +322 -322
  64. package/.claude/commands/workflow/session/complete.md +31 -4
  65. package/.claude/commands/workflow/session/list.md +95 -95
  66. package/.claude/commands/workflow/session/resume.md +60 -60
  67. package/.claude/commands/workflow/session/solidify.md +299 -299
  68. package/.claude/commands/workflow/session/start.md +1 -1
  69. package/.claude/commands/workflow/tdd-plan.md +597 -460
  70. package/.claude/commands/workflow/test-cycle-execute.md +504 -504
  71. package/.claude/commands/workflow/test-fix-gen.md +699 -699
  72. package/.claude/commands/workflow/tools/conflict-resolution.md +2 -2
  73. package/.claude/commands/workflow/tools/context-gather.md +2 -2
  74. package/.claude/commands/workflow/tools/task-generate-tdd.md +517 -517
  75. package/.claude/commands/workflow/tools/tdd-coverage-analysis.md +309 -309
  76. package/.claude/commands/workflow/tools/test-concept-enhanced.md +1 -1
  77. package/.claude/commands/workflow/tools/test-context-gather.md +235 -235
  78. package/.claude/commands/workflow/tools/test-task-generate.md +255 -255
  79. package/.claude/commands/workflow/ui-design/animation-extract.md +1150 -1150
  80. package/.claude/commands/workflow/ui-design/design-sync.md +454 -454
  81. package/.claude/commands/workflow/ui-design/explore-auto.md +678 -678
  82. package/.claude/commands/workflow/ui-design/imitate-auto.md +745 -745
  83. package/.claude/commands/workflow/ui-design/layout-extract.md +788 -788
  84. package/.claude/commands/workflow/ui-design/reference-page-generator.md +356 -356
  85. package/.claude/commands/workflow/ui-design/style-extract.md +773 -773
  86. package/.claude/skills/ccw/SKILL.md +522 -352
  87. package/.claude/skills/ccw/command.json +641 -547
  88. package/.claude/skills/ccw-help/SKILL.md +116 -116
  89. package/.claude/skills/ccw-help/command.json +520 -511
  90. package/.claude/skills/copyright-docs/phases/01.5-project-exploration.md +150 -150
  91. package/.claude/skills/copyright-docs/phases/02.5-consolidation.md +192 -192
  92. package/.claude/skills/copyright-docs/templates/agent-base.md +200 -200
  93. package/.claude/skills/project-analyze/phases/03.5-consolidation.md +233 -233
  94. package/.claude/skills/project-analyze/specs/writing-style.md +152 -152
  95. package/.claude/skills/review-code/phases/state-manager.md +752 -752
  96. package/.claude/skills/review-code/specs/rules/index.md +140 -140
  97. package/.claude/skills/skill-generator/specs/cli-integration.md +13 -19
  98. package/.claude/skills/skill-generator/specs/scripting-integration.md +265 -265
  99. package/.claude/skills/skill-generator/templates/code-analysis-action.md +503 -503
  100. package/.claude/skills/skill-generator/templates/llm-action.md +355 -355
  101. package/.claude/skills/skill-generator/templates/script-bash.md +277 -277
  102. package/.claude/skills/skill-generator/templates/script-python.md +198 -198
  103. package/.claude/skills/skill-generator/templates/skill-md.md +235 -235
  104. package/.claude/skills/skill-tuning/SKILL.md +303 -303
  105. package/.claude/skills/skill-tuning/phases/actions/action-abort.md +164 -164
  106. package/.claude/skills/skill-tuning/phases/actions/action-apply-fix.md +206 -206
  107. package/.claude/skills/skill-tuning/phases/actions/action-complete.md +195 -195
  108. package/.claude/skills/skill-tuning/phases/actions/action-diagnose-agent.md +317 -317
  109. package/.claude/skills/skill-tuning/phases/actions/action-diagnose-context.md +243 -243
  110. package/.claude/skills/skill-tuning/phases/actions/action-diagnose-dataflow.md +318 -318
  111. package/.claude/skills/skill-tuning/phases/actions/action-diagnose-memory.md +269 -269
  112. package/.claude/skills/skill-tuning/phases/actions/action-diagnose-token-consumption.md +200 -200
  113. package/.claude/skills/skill-tuning/phases/actions/action-gemini-analysis.md +322 -322
  114. package/.claude/skills/skill-tuning/phases/actions/action-generate-report.md +228 -228
  115. package/.claude/skills/skill-tuning/phases/actions/action-init.md +149 -149
  116. package/.claude/skills/skill-tuning/phases/actions/action-propose-fixes.md +317 -317
  117. package/.claude/skills/skill-tuning/phases/actions/action-verify.md +222 -222
  118. package/.claude/skills/skill-tuning/phases/orchestrator.md +377 -377
  119. package/.claude/skills/skill-tuning/phases/state-schema.md +378 -378
  120. package/.claude/skills/skill-tuning/specs/problem-taxonomy.md +318 -318
  121. package/.claude/skills/skill-tuning/specs/quality-gates.md +263 -263
  122. package/.claude/skills/skill-tuning/specs/tuning-strategies.md +1537 -1537
  123. package/.claude/skills/skill-tuning/templates/diagnosis-report.md +153 -153
  124. package/.claude/skills/skill-tuning/templates/fix-proposal.md +204 -204
  125. package/.claude/skills/software-manual/SKILL.md +184 -184
  126. package/.claude/skills/software-manual/phases/01-requirements-discovery.md +162 -162
  127. package/.claude/skills/software-manual/phases/02-project-exploration.md +101 -101
  128. package/.claude/skills/software-manual/phases/03-parallel-analysis.md +183 -183
  129. package/.claude/skills/software-manual/phases/03.5-consolidation.md +82 -82
  130. package/.claude/skills/software-manual/phases/04-screenshot-capture.md +89 -89
  131. package/.claude/skills/software-manual/phases/05-html-assembly.md +132 -132
  132. package/.claude/skills/software-manual/phases/06-iterative-refinement.md +259 -259
  133. package/.claude/skills/software-manual/scripts/screenshot-helper.md +447 -447
  134. package/.claude/skills/software-manual/scripts/swagger-runner.md +419 -419
  135. package/.claude/skills/software-manual/scripts/typedoc-runner.md +357 -357
  136. package/.claude/skills/software-manual/specs/html-template.md +325 -325
  137. package/.claude/skills/software-manual/specs/quality-standards.md +253 -253
  138. package/.claude/skills/software-manual/specs/writing-style.md +298 -298
  139. package/.claude/skills/text-formatter/SKILL.md +196 -196
  140. package/.claude/skills/text-formatter/phases/01-input-collection.md +111 -111
  141. package/.claude/skills/text-formatter/phases/02-content-analysis.md +248 -248
  142. package/.claude/skills/text-formatter/phases/03-format-transform.md +245 -245
  143. package/.claude/skills/text-formatter/phases/04-output-preview.md +183 -183
  144. package/.claude/skills/text-formatter/specs/callout-types.md +293 -293
  145. package/.claude/skills/text-formatter/specs/element-mapping.md +226 -226
  146. package/.claude/skills/text-formatter/specs/format-rules.md +273 -273
  147. package/.claude/skills/text-formatter/templates/bbcode-template.md +350 -350
  148. package/.claude/workflows/chinese-response.md +25 -25
  149. package/.claude/workflows/cli-templates/memory/style-skill-memory/skill-md-template.md +299 -299
  150. package/.claude/workflows/cli-templates/planning-roles/product-owner.md +261 -261
  151. package/.claude/workflows/cli-templates/prompts/{analysis/03-analyze-performance.txt → analysis-analyze-performance.txt} +29 -29
  152. package/.claude/workflows/cli-templates/prompts/{analysis/03-assess-security-risks.txt → analysis-assess-security-risks.txt} +29 -29
  153. package/.claude/workflows/cli-templates/prompts/{analysis/02-review-architecture.txt → analysis-review-architecture.txt} +29 -29
  154. package/.claude/workflows/cli-templates/prompts/{analysis/02-review-code-quality.txt → analysis-review-code-quality.txt} +28 -28
  155. package/.claude/workflows/cli-templates/prompts/{analysis/03-review-quality-standards.txt → analysis-review-quality-standards.txt} +29 -29
  156. package/.claude/workflows/cli-templates/prompts/{analysis/01-trace-code-execution.txt → analysis-trace-code-execution.txt} +115 -115
  157. package/.claude/workflows/cli-templates/prompts/{documentation/api.txt → documentation-api.txt} +14 -14
  158. package/.claude/workflows/cli-templates/prompts/{documentation/folder-navigation.txt → documentation-folder-navigation.txt} +26 -26
  159. package/.claude/workflows/cli-templates/prompts/{documentation/project-architecture.txt → documentation-project-architecture.txt} +40 -40
  160. package/.claude/workflows/cli-templates/prompts/{documentation/project-examples.txt → documentation-project-examples.txt} +34 -34
  161. package/.claude/workflows/cli-templates/prompts/{documentation/project-readme.txt → documentation-project-readme.txt} +34 -34
  162. package/.claude/workflows/cli-templates/prompts/{documentation/swagger-api.txt → documentation-swagger-api.txt} +266 -266
  163. package/.claude/workflows/cli-templates/prompts/{planning/02-design-component-spec.txt → planning-design-component-spec.txt} +28 -28
  164. package/.claude/workflows/cli-templates/prompts/{verification/codex-technical.txt → verification-codex-technical.txt} +28 -28
  165. package/.claude/workflows/cli-templates/prompts/{verification/cross-validation.txt → verification-cross-validation.txt} +28 -28
  166. package/.claude/workflows/cli-templates/prompts/{verification/gemini-strategic.txt → verification-gemini-strategic.txt} +27 -27
  167. package/.claude/workflows/cli-templates/prompts/{workflow/analysis-results-structure.txt → workflow-analysis-results-structure.txt} +224 -224
  168. package/.claude/workflows/cli-templates/prompts/{workflow/impl-plan-template.txt → workflow-impl-plan-template.txt} +286 -286
  169. package/.claude/workflows/cli-templates/prompts/{workflow/skill-conflict-patterns.txt → workflow-skill-conflict-patterns.txt} +2 -2
  170. package/.claude/workflows/cli-templates/prompts/{workflow/skill-lessons-learned.txt → workflow-skill-lessons-learned.txt} +2 -2
  171. package/.claude/workflows/cli-templates/prompts/{workflow/task-json-agent-mode.txt → workflow-task-json-agent-mode.txt} +123 -123
  172. package/.claude/workflows/cli-templates/schemas/project-guidelines-schema.json +141 -0
  173. package/.claude/workflows/cli-templates/schemas/{project-json-schema.json → project-tech-schema.json} +2 -2
  174. package/.claude/workflows/cli-tools-usage.md +135 -115
  175. package/.claude/workflows/coding-philosophy.md +69 -69
  176. package/.claude/workflows/context-tools.md +76 -76
  177. package/.claude/workflows/file-modification.md +64 -64
  178. package/.claude/workflows/review-directory-specification.md +336 -336
  179. package/.claude/workflows/windows-platform.md +19 -19
  180. package/.claude/workflows/workflow-architecture.md +942 -942
  181. package/.codex/prompts/issue-execute.md +176 -70
  182. package/README.md +250 -214
  183. package/ccw/dist/cli.d.ts.map +1 -1
  184. package/ccw/dist/cli.js +15 -0
  185. package/ccw/dist/cli.js.map +1 -1
  186. package/ccw/dist/commands/cli.d.ts +5 -0
  187. package/ccw/dist/commands/cli.d.ts.map +1 -1
  188. package/ccw/dist/commands/cli.js +117 -20
  189. package/ccw/dist/commands/cli.js.map +1 -1
  190. package/ccw/dist/commands/install.d.ts +17 -0
  191. package/ccw/dist/commands/install.d.ts.map +1 -1
  192. package/ccw/dist/commands/install.js +211 -2
  193. package/ccw/dist/commands/install.js.map +1 -1
  194. package/ccw/dist/commands/issue.d.ts.map +1 -1
  195. package/ccw/dist/commands/issue.js +208 -28
  196. package/ccw/dist/commands/issue.js.map +1 -1
  197. package/ccw/dist/commands/uninstall.d.ts.map +1 -1
  198. package/ccw/dist/commands/uninstall.js +22 -1
  199. package/ccw/dist/commands/uninstall.js.map +1 -1
  200. package/ccw/dist/commands/view.d.ts.map +1 -1
  201. package/ccw/dist/commands/view.js +3 -0
  202. package/ccw/dist/commands/view.js.map +1 -1
  203. package/ccw/dist/commands/workflow.d.ts +11 -0
  204. package/ccw/dist/commands/workflow.d.ts.map +1 -0
  205. package/ccw/dist/commands/workflow.js +294 -0
  206. package/ccw/dist/commands/workflow.js.map +1 -0
  207. package/ccw/dist/core/data-aggregator.d.ts +13 -2
  208. package/ccw/dist/core/data-aggregator.d.ts.map +1 -1
  209. package/ccw/dist/core/data-aggregator.js +10 -16
  210. package/ccw/dist/core/data-aggregator.js.map +1 -1
  211. package/ccw/dist/core/routes/claude-routes.d.ts.map +1 -1
  212. package/ccw/dist/core/routes/claude-routes.js +57 -3
  213. package/ccw/dist/core/routes/claude-routes.js.map +1 -1
  214. package/ccw/dist/core/routes/cli-routes.d.ts +13 -0
  215. package/ccw/dist/core/routes/cli-routes.d.ts.map +1 -1
  216. package/ccw/dist/core/routes/cli-routes.js +46 -0
  217. package/ccw/dist/core/routes/cli-routes.js.map +1 -1
  218. package/ccw/dist/core/routes/help-routes.d.ts.map +1 -1
  219. package/ccw/dist/core/routes/help-routes.js +156 -58
  220. package/ccw/dist/core/routes/help-routes.js.map +1 -1
  221. package/ccw/dist/core/routes/hooks-routes.d.ts.map +1 -1
  222. package/ccw/dist/core/routes/hooks-routes.js +33 -0
  223. package/ccw/dist/core/routes/hooks-routes.js.map +1 -1
  224. package/ccw/dist/core/routes/issue-routes.d.ts.map +1 -1
  225. package/ccw/dist/core/routes/issue-routes.js +211 -29
  226. package/ccw/dist/core/routes/issue-routes.js.map +1 -1
  227. package/ccw/dist/core/routes/mcp-routes.d.ts.map +1 -1
  228. package/ccw/dist/core/routes/mcp-routes.js +4 -1
  229. package/ccw/dist/core/routes/mcp-routes.js.map +1 -1
  230. package/ccw/dist/core/routes/rules-routes.d.ts.map +1 -1
  231. package/ccw/dist/core/routes/rules-routes.js +22 -6
  232. package/ccw/dist/core/routes/rules-routes.js.map +1 -1
  233. package/ccw/dist/core/routes/session-routes.d.ts.map +1 -1
  234. package/ccw/dist/core/routes/session-routes.js +23 -1
  235. package/ccw/dist/core/routes/session-routes.js.map +1 -1
  236. package/ccw/dist/mcp-server/index.js +8 -2
  237. package/ccw/dist/mcp-server/index.js.map +1 -1
  238. package/ccw/dist/tools/claude-cli-tools.d.ts.map +1 -1
  239. package/ccw/dist/tools/claude-cli-tools.js +52 -28
  240. package/ccw/dist/tools/claude-cli-tools.js.map +1 -1
  241. package/ccw/dist/tools/cli-executor-core.d.ts.map +1 -1
  242. package/ccw/dist/tools/cli-executor-core.js +38 -12
  243. package/ccw/dist/tools/cli-executor-core.js.map +1 -1
  244. package/ccw/dist/tools/cli-executor-state.d.ts +2 -0
  245. package/ccw/dist/tools/cli-executor-state.d.ts.map +1 -1
  246. package/ccw/dist/tools/cli-executor-state.js.map +1 -1
  247. package/ccw/dist/tools/cli-executor-utils.d.ts +7 -0
  248. package/ccw/dist/tools/cli-executor-utils.d.ts.map +1 -1
  249. package/ccw/dist/tools/cli-executor-utils.js +31 -2
  250. package/ccw/dist/tools/cli-executor-utils.js.map +1 -1
  251. package/ccw/dist/tools/cli-history-store.d.ts +21 -0
  252. package/ccw/dist/tools/cli-history-store.d.ts.map +1 -1
  253. package/ccw/dist/tools/cli-history-store.js +106 -30
  254. package/ccw/dist/tools/cli-history-store.js.map +1 -1
  255. package/ccw/dist/tools/cli-output-converter.d.ts +2 -1
  256. package/ccw/dist/tools/cli-output-converter.d.ts.map +1 -1
  257. package/ccw/dist/tools/cli-output-converter.js +65 -10
  258. package/ccw/dist/tools/cli-output-converter.js.map +1 -1
  259. package/ccw/dist/tools/codex-lens-lsp.d.ts +61 -0
  260. package/ccw/dist/tools/codex-lens-lsp.d.ts.map +1 -0
  261. package/ccw/dist/tools/codex-lens-lsp.js +320 -0
  262. package/ccw/dist/tools/codex-lens-lsp.js.map +1 -0
  263. package/ccw/dist/tools/codex-lens.d.ts.map +1 -1
  264. package/ccw/dist/tools/codex-lens.js +74 -54
  265. package/ccw/dist/tools/codex-lens.js.map +1 -1
  266. package/ccw/dist/tools/index.d.ts.map +1 -1
  267. package/ccw/dist/tools/index.js +4 -0
  268. package/ccw/dist/tools/index.js.map +1 -1
  269. package/ccw/dist/tools/template-discovery.d.ts +85 -0
  270. package/ccw/dist/tools/template-discovery.d.ts.map +1 -0
  271. package/ccw/dist/tools/template-discovery.js +239 -0
  272. package/ccw/dist/tools/template-discovery.js.map +1 -0
  273. package/ccw/dist/tools/vscode-lsp.d.ts +57 -0
  274. package/ccw/dist/tools/vscode-lsp.d.ts.map +1 -0
  275. package/ccw/dist/tools/vscode-lsp.js +250 -0
  276. package/ccw/dist/tools/vscode-lsp.js.map +1 -0
  277. package/ccw/dist/utils/path-resolver.d.ts +16 -2
  278. package/ccw/dist/utils/path-resolver.d.ts.map +1 -1
  279. package/ccw/dist/utils/path-resolver.js +36 -6
  280. package/ccw/dist/utils/path-resolver.js.map +1 -1
  281. package/ccw/dist/utils/path-validator.d.ts +5 -0
  282. package/ccw/dist/utils/path-validator.d.ts.map +1 -1
  283. package/ccw/dist/utils/path-validator.js +16 -5
  284. package/ccw/dist/utils/path-validator.js.map +1 -1
  285. package/ccw/dist/utils/project-root.d.ts +25 -0
  286. package/ccw/dist/utils/project-root.d.ts.map +1 -0
  287. package/ccw/dist/utils/project-root.js +63 -0
  288. package/ccw/dist/utils/project-root.js.map +1 -0
  289. package/ccw/dist/utils/shell-escape.d.ts +47 -3
  290. package/ccw/dist/utils/shell-escape.d.ts.map +1 -1
  291. package/ccw/dist/utils/shell-escape.js +98 -15
  292. package/ccw/dist/utils/shell-escape.js.map +1 -1
  293. package/ccw/dist/utils/update-checker.d.ts +11 -0
  294. package/ccw/dist/utils/update-checker.d.ts.map +1 -0
  295. package/ccw/dist/utils/update-checker.js +167 -0
  296. package/ccw/dist/utils/update-checker.js.map +1 -0
  297. package/ccw/src/cli.ts +16 -0
  298. package/ccw/src/commands/cli.ts +127 -20
  299. package/ccw/src/commands/install.ts +239 -2
  300. package/ccw/src/commands/issue.ts +245 -31
  301. package/ccw/src/commands/uninstall.ts +23 -1
  302. package/ccw/src/commands/view.ts +4 -0
  303. package/ccw/src/commands/workflow.ts +348 -0
  304. package/ccw/src/core/data-aggregator.ts +25 -19
  305. package/ccw/src/core/routes/claude-routes.ts +64 -3
  306. package/ccw/src/core/routes/cli-routes.ts +58 -0
  307. package/ccw/src/core/routes/help-routes.ts +172 -60
  308. package/ccw/src/core/routes/hooks-routes.ts +32 -0
  309. package/ccw/src/core/routes/issue-routes.ts +242 -28
  310. package/ccw/src/core/routes/mcp-routes.ts +6 -2
  311. package/ccw/src/core/routes/rules-routes.ts +24 -6
  312. package/ccw/src/core/routes/session-routes.ts +24 -1
  313. package/ccw/src/mcp-server/index.ts +7 -2
  314. package/ccw/src/templates/dashboard-css/26-claude-manager.css +179 -0
  315. package/ccw/src/templates/dashboard-css/32-issue-manager.css +3427 -3302
  316. package/ccw/src/templates/dashboard-css/33-cli-stream-viewer.css +3 -2
  317. package/ccw/src/templates/dashboard-js/components/cli-history.js +4 -1
  318. package/ccw/src/templates/dashboard-js/components/cli-stream-viewer.js +57 -21
  319. package/ccw/src/templates/dashboard-js/components/hook-manager.js +1492 -1372
  320. package/ccw/src/templates/dashboard-js/components/mcp-manager.js +107 -20
  321. package/ccw/src/templates/dashboard-js/components/version-check.js +135 -1
  322. package/ccw/src/templates/dashboard-js/i18n.js +42 -0
  323. package/ccw/src/templates/dashboard-js/views/claude-manager.js +168 -0
  324. package/ccw/src/templates/dashboard-js/views/cli-manager.js +1 -0
  325. package/ccw/src/templates/dashboard-js/views/hook-manager.js +21 -5
  326. package/ccw/src/templates/dashboard-js/views/issue-manager.js +201 -1
  327. package/ccw/src/templates/dashboard-js/views/lite-tasks.js +3502 -3478
  328. package/ccw/src/templates/dashboard-js/views/mcp-manager.js +16 -0
  329. package/ccw/src/templates/dashboard.html +112 -0
  330. package/ccw/src/tools/claude-cli-tools.ts +54 -28
  331. package/ccw/src/tools/cli-executor-core.ts +42 -13
  332. package/ccw/src/tools/cli-executor-state.ts +2 -0
  333. package/ccw/src/tools/cli-executor-utils.ts +38 -2
  334. package/ccw/src/tools/cli-history-store.ts +122 -31
  335. package/ccw/src/tools/cli-output-converter.ts +76 -12
  336. package/ccw/src/tools/codex-lens-lsp.ts +405 -0
  337. package/ccw/src/tools/codex-lens.ts +82 -59
  338. package/ccw/src/tools/index.ts +4 -0
  339. package/ccw/src/tools/template-discovery.ts +303 -0
  340. package/ccw/src/tools/vscode-lsp.ts +317 -0
  341. package/ccw/src/utils/path-resolver.ts +37 -6
  342. package/ccw/src/utils/path-validator.ts +17 -5
  343. package/ccw/src/utils/project-root.ts +73 -0
  344. package/ccw/src/utils/shell-escape.ts +103 -16
  345. package/ccw/src/utils/update-checker.ts +178 -0
  346. package/codex-lens/pyproject.toml +14 -0
  347. package/codex-lens/src/codexlens/__pycache__/config.cpython-312.pyc +0 -0
  348. package/codex-lens/src/codexlens/__pycache__/config.cpython-313.pyc +0 -0
  349. package/codex-lens/src/codexlens/__pycache__/errors.cpython-312.pyc +0 -0
  350. package/codex-lens/src/codexlens/__pycache__/errors.cpython-313.pyc +0 -0
  351. package/codex-lens/src/codexlens/api/__init__.py +88 -0
  352. package/codex-lens/src/codexlens/api/__pycache__/__init__.cpython-312.pyc +0 -0
  353. package/codex-lens/src/codexlens/api/__pycache__/__init__.cpython-313.pyc +0 -0
  354. package/codex-lens/src/codexlens/api/__pycache__/definition.cpython-312.pyc +0 -0
  355. package/codex-lens/src/codexlens/api/__pycache__/definition.cpython-313.pyc +0 -0
  356. package/codex-lens/src/codexlens/api/__pycache__/file_context.cpython-312.pyc +0 -0
  357. package/codex-lens/src/codexlens/api/__pycache__/file_context.cpython-313.pyc +0 -0
  358. package/codex-lens/src/codexlens/api/__pycache__/hover.cpython-312.pyc +0 -0
  359. package/codex-lens/src/codexlens/api/__pycache__/hover.cpython-313.pyc +0 -0
  360. package/codex-lens/src/codexlens/api/__pycache__/models.cpython-312.pyc +0 -0
  361. package/codex-lens/src/codexlens/api/__pycache__/models.cpython-313.pyc +0 -0
  362. package/codex-lens/src/codexlens/api/__pycache__/references.cpython-312.pyc +0 -0
  363. package/codex-lens/src/codexlens/api/__pycache__/references.cpython-313.pyc +0 -0
  364. package/codex-lens/src/codexlens/api/__pycache__/semantic.cpython-312.pyc +0 -0
  365. package/codex-lens/src/codexlens/api/__pycache__/semantic.cpython-313.pyc +0 -0
  366. package/codex-lens/src/codexlens/api/__pycache__/symbols.cpython-312.pyc +0 -0
  367. package/codex-lens/src/codexlens/api/__pycache__/symbols.cpython-313.pyc +0 -0
  368. package/codex-lens/src/codexlens/api/__pycache__/utils.cpython-312.pyc +0 -0
  369. package/codex-lens/src/codexlens/api/__pycache__/utils.cpython-313.pyc +0 -0
  370. package/codex-lens/src/codexlens/api/definition.py +126 -0
  371. package/codex-lens/src/codexlens/api/file_context.py +271 -0
  372. package/codex-lens/src/codexlens/api/hover.py +148 -0
  373. package/codex-lens/src/codexlens/api/models.py +281 -0
  374. package/codex-lens/src/codexlens/api/references.py +345 -0
  375. package/codex-lens/src/codexlens/api/semantic.py +471 -0
  376. package/codex-lens/src/codexlens/api/symbols.py +146 -0
  377. package/codex-lens/src/codexlens/api/utils.py +153 -0
  378. package/codex-lens/src/codexlens/config.py +7 -0
  379. package/codex-lens/src/codexlens/errors.py +4 -0
  380. package/codex-lens/src/codexlens/hybrid_search/__init__.py +28 -0
  381. package/codex-lens/src/codexlens/hybrid_search/__pycache__/__init__.cpython-312.pyc +0 -0
  382. package/codex-lens/src/codexlens/hybrid_search/__pycache__/__init__.cpython-313.pyc +0 -0
  383. package/codex-lens/src/codexlens/hybrid_search/__pycache__/data_structures.cpython-312.pyc +0 -0
  384. package/codex-lens/src/codexlens/hybrid_search/__pycache__/data_structures.cpython-313.pyc +0 -0
  385. package/codex-lens/src/codexlens/hybrid_search/__pycache__/engine.cpython-313.pyc +0 -0
  386. package/codex-lens/src/codexlens/hybrid_search/data_structures.py +602 -0
  387. package/codex-lens/src/codexlens/lsp/__init__.py +34 -0
  388. package/codex-lens/src/codexlens/lsp/__pycache__/__init__.cpython-312.pyc +0 -0
  389. package/codex-lens/src/codexlens/lsp/__pycache__/__init__.cpython-313.pyc +0 -0
  390. package/codex-lens/src/codexlens/lsp/__pycache__/handlers.cpython-313.pyc +0 -0
  391. package/codex-lens/src/codexlens/lsp/__pycache__/lsp_bridge.cpython-312.pyc +0 -0
  392. package/codex-lens/src/codexlens/lsp/__pycache__/lsp_bridge.cpython-313.pyc +0 -0
  393. package/codex-lens/src/codexlens/lsp/__pycache__/lsp_graph_builder.cpython-312.pyc +0 -0
  394. package/codex-lens/src/codexlens/lsp/__pycache__/lsp_graph_builder.cpython-313.pyc +0 -0
  395. package/codex-lens/src/codexlens/lsp/__pycache__/providers.cpython-313.pyc +0 -0
  396. package/codex-lens/src/codexlens/lsp/__pycache__/server.cpython-313.pyc +0 -0
  397. package/codex-lens/src/codexlens/lsp/__pycache__/standalone_manager.cpython-313.pyc +0 -0
  398. package/codex-lens/src/codexlens/lsp/handlers.py +551 -0
  399. package/codex-lens/src/codexlens/lsp/lsp_bridge.py +834 -0
  400. package/codex-lens/src/codexlens/lsp/lsp_graph_builder.py +375 -0
  401. package/codex-lens/src/codexlens/lsp/providers.py +177 -0
  402. package/codex-lens/src/codexlens/lsp/server.py +263 -0
  403. package/codex-lens/src/codexlens/lsp/standalone_manager.py +1159 -0
  404. package/codex-lens/src/codexlens/mcp/__init__.py +20 -0
  405. package/codex-lens/src/codexlens/mcp/__pycache__/__init__.cpython-313.pyc +0 -0
  406. package/codex-lens/src/codexlens/mcp/__pycache__/hooks.cpython-313.pyc +0 -0
  407. package/codex-lens/src/codexlens/mcp/__pycache__/provider.cpython-313.pyc +0 -0
  408. package/codex-lens/src/codexlens/mcp/__pycache__/schema.cpython-313.pyc +0 -0
  409. package/codex-lens/src/codexlens/mcp/hooks.py +170 -0
  410. package/codex-lens/src/codexlens/mcp/provider.py +202 -0
  411. package/codex-lens/src/codexlens/mcp/schema.py +113 -0
  412. package/codex-lens/src/codexlens/search/__init__.py +53 -15
  413. package/codex-lens/src/codexlens/search/__pycache__/__init__.cpython-312.pyc +0 -0
  414. package/codex-lens/src/codexlens/search/__pycache__/__init__.cpython-313.pyc +0 -0
  415. package/codex-lens/src/codexlens/search/__pycache__/chain_search.cpython-312.pyc +0 -0
  416. package/codex-lens/src/codexlens/search/__pycache__/chain_search.cpython-313.pyc +0 -0
  417. package/codex-lens/src/codexlens/search/__pycache__/hybrid_search.cpython-312.pyc +0 -0
  418. package/codex-lens/src/codexlens/search/__pycache__/hybrid_search.cpython-313.pyc +0 -0
  419. package/codex-lens/src/codexlens/search/__pycache__/ranking.cpython-312.pyc +0 -0
  420. package/codex-lens/src/codexlens/search/__pycache__/ranking.cpython-313.pyc +0 -0
  421. package/codex-lens/src/codexlens/search/association_tree/QUICK_START.md +257 -0
  422. package/codex-lens/src/codexlens/search/association_tree/README.md +188 -0
  423. package/codex-lens/src/codexlens/search/association_tree/__init__.py +21 -0
  424. package/codex-lens/src/codexlens/search/association_tree/__pycache__/__init__.cpython-313.pyc +0 -0
  425. package/codex-lens/src/codexlens/search/association_tree/__pycache__/builder.cpython-313.pyc +0 -0
  426. package/codex-lens/src/codexlens/search/association_tree/__pycache__/data_structures.cpython-313.pyc +0 -0
  427. package/codex-lens/src/codexlens/search/association_tree/__pycache__/deduplicator.cpython-313.pyc +0 -0
  428. package/codex-lens/src/codexlens/search/association_tree/builder.py +450 -0
  429. package/codex-lens/src/codexlens/search/association_tree/data_structures.py +191 -0
  430. package/codex-lens/src/codexlens/search/association_tree/deduplicator.py +301 -0
  431. package/codex-lens/src/codexlens/search/chain_search.py +864 -3
  432. package/codex-lens/src/codexlens/search/clustering/__init__.py +124 -0
  433. package/codex-lens/src/codexlens/search/clustering/__pycache__/__init__.cpython-312.pyc +0 -0
  434. package/codex-lens/src/codexlens/search/clustering/__pycache__/__init__.cpython-313.pyc +0 -0
  435. package/codex-lens/src/codexlens/search/clustering/__pycache__/base.cpython-312.pyc +0 -0
  436. package/codex-lens/src/codexlens/search/clustering/__pycache__/base.cpython-313.pyc +0 -0
  437. package/codex-lens/src/codexlens/search/clustering/__pycache__/dbscan_strategy.cpython-313.pyc +0 -0
  438. package/codex-lens/src/codexlens/search/clustering/__pycache__/factory.cpython-312.pyc +0 -0
  439. package/codex-lens/src/codexlens/search/clustering/__pycache__/factory.cpython-313.pyc +0 -0
  440. package/codex-lens/src/codexlens/search/clustering/__pycache__/frequency_strategy.cpython-312.pyc +0 -0
  441. package/codex-lens/src/codexlens/search/clustering/__pycache__/frequency_strategy.cpython-313.pyc +0 -0
  442. package/codex-lens/src/codexlens/search/clustering/__pycache__/hdbscan_strategy.cpython-313.pyc +0 -0
  443. package/codex-lens/src/codexlens/search/clustering/__pycache__/noop_strategy.cpython-312.pyc +0 -0
  444. package/codex-lens/src/codexlens/search/clustering/__pycache__/noop_strategy.cpython-313.pyc +0 -0
  445. package/codex-lens/src/codexlens/search/clustering/base.py +153 -0
  446. package/codex-lens/src/codexlens/search/clustering/dbscan_strategy.py +197 -0
  447. package/codex-lens/src/codexlens/search/clustering/factory.py +202 -0
  448. package/codex-lens/src/codexlens/search/clustering/frequency_strategy.py +263 -0
  449. package/codex-lens/src/codexlens/search/clustering/hdbscan_strategy.py +153 -0
  450. package/codex-lens/src/codexlens/search/clustering/noop_strategy.py +83 -0
  451. package/codex-lens/src/codexlens/search/hybrid_search.py +194 -2
  452. package/codex-lens/src/codexlens/search/ranking.py +6 -4
  453. package/codex-lens/src/codexlens/semantic/__pycache__/chunker.cpython-312.pyc +0 -0
  454. package/codex-lens/src/codexlens/storage/__pycache__/dir_index.cpython-312.pyc +0 -0
  455. package/codex-lens/src/codexlens/storage/__pycache__/dir_index.cpython-313.pyc +0 -0
  456. package/codex-lens/src/codexlens/storage/__pycache__/global_index.cpython-312.pyc +0 -0
  457. package/codex-lens/src/codexlens/storage/__pycache__/global_index.cpython-313.pyc +0 -0
  458. package/codex-lens/src/codexlens/storage/dir_index.py +172 -0
  459. package/codex-lens/src/codexlens/storage/global_index.py +33 -0
  460. package/package.json +92 -92
  461. /package/.claude/workflows/cli-templates/prompts/{analysis/02-analyze-code-patterns.txt → analysis-analyze-code-patterns.txt} +0 -0
  462. /package/.claude/workflows/cli-templates/prompts/{analysis/02-analyze-technical-document.txt → analysis-analyze-technical-document.txt} +0 -0
  463. /package/.claude/workflows/cli-templates/prompts/{analysis/01-diagnose-bug-root-cause.txt → analysis-diagnose-bug-root-cause.txt} +0 -0
  464. /package/.claude/workflows/cli-templates/prompts/{development/03-debug-runtime-issues.txt → development-debug-runtime-issues.txt} +0 -0
  465. /package/.claude/workflows/cli-templates/prompts/{development/02-generate-tests.txt → development-generate-tests.txt} +0 -0
  466. /package/.claude/workflows/cli-templates/prompts/{development/02-implement-component-ui.txt → development-implement-component-ui.txt} +0 -0
  467. /package/.claude/workflows/cli-templates/prompts/{development/02-implement-feature.txt → development-implement-feature.txt} +0 -0
  468. /package/.claude/workflows/cli-templates/prompts/{development/02-refactor-codebase.txt → development-refactor-codebase.txt} +0 -0
  469. /package/.claude/workflows/cli-templates/prompts/{documentation/module-readme.txt → documentation-module-readme.txt} +0 -0
  470. /package/.claude/workflows/cli-templates/prompts/{memory/02-document-module-structure.txt → memory-document-module-structure.txt} +0 -0
  471. /package/.claude/workflows/cli-templates/prompts/{planning/02-breakdown-task-steps.txt → planning-breakdown-task-steps.txt} +0 -0
  472. /package/.claude/workflows/cli-templates/prompts/{planning/03-evaluate-concept-feasibility.txt → planning-evaluate-concept-feasibility.txt} +0 -0
  473. /package/.claude/workflows/cli-templates/prompts/{planning/01-plan-architecture-design.txt → planning-plan-architecture-design.txt} +0 -0
  474. /package/.claude/workflows/cli-templates/prompts/{planning/03-plan-migration-strategy.txt → planning-plan-migration-strategy.txt} +0 -0
  475. /package/.claude/workflows/cli-templates/prompts/{rules/rule-api.txt → rules-rule-api.txt} +0 -0
  476. /package/.claude/workflows/cli-templates/prompts/{rules/rule-components.txt → rules-rule-components.txt} +0 -0
  477. /package/.claude/workflows/cli-templates/prompts/{rules/rule-config.txt → rules-rule-config.txt} +0 -0
  478. /package/.claude/workflows/cli-templates/prompts/{rules/rule-core.txt → rules-rule-core.txt} +0 -0
  479. /package/.claude/workflows/cli-templates/prompts/{rules/rule-patterns.txt → rules-rule-patterns.txt} +0 -0
  480. /package/.claude/workflows/cli-templates/prompts/{rules/rule-testing.txt → rules-rule-testing.txt} +0 -0
  481. /package/.claude/workflows/cli-templates/prompts/{rules/tech-rules-agent-prompt.txt → rules-tech-rules-agent-prompt.txt} +0 -0
  482. /package/.claude/workflows/cli-templates/prompts/{tech/tech-module-format.txt → tech-tech-module-format.txt} +0 -0
  483. /package/.claude/workflows/cli-templates/prompts/{tech/tech-skill-index.txt → tech-tech-skill-index.txt} +0 -0
  484. /package/.claude/workflows/cli-templates/prompts/{test/test-concept-analysis.txt → test-test-concept-analysis.txt} +0 -0
  485. /package/.claude/workflows/cli-templates/prompts/{universal/00-universal-creative-style.txt → universal-universal-creative-style.txt} +0 -0
  486. /package/.claude/workflows/cli-templates/prompts/{universal/00-universal-rigorous-style.txt → universal-universal-rigorous-style.txt} +0 -0
  487. /package/.claude/workflows/cli-templates/prompts/{workflow/codex-feasibility-validation.txt → workflow-codex-feasibility-validation.txt} +0 -0
  488. /package/.claude/workflows/cli-templates/prompts/{workflow/gemini-solution-design.txt → workflow-gemini-solution-design.txt} +0 -0
  489. /package/.claude/workflows/cli-templates/prompts/{workflow/skill-aggregation.txt → workflow-skill-aggregation.txt} +0 -0
  490. /package/.claude/workflows/cli-templates/prompts/{workflow/skill-index.txt → workflow-skill-index.txt} +0 -0
  491. /package/.claude/workflows/cli-templates/prompts/{workflow/skill-sessions-timeline.txt → workflow-skill-sessions-timeline.txt} +0 -0
  492. /package/.claude/workflows/cli-templates/prompts/{workflow/task-json-cli-mode.txt → workflow-task-json-cli-mode.txt} +0 -0
@@ -1,386 +1,386 @@
1
- ---
2
- name: docs-related-cli
3
- description: Generate/update documentation for git-changed modules using CLI execution with batched agents (4 modules/agent) and gemini→qwen→codex fallback, <15 modules uses direct parallel
4
- argument-hint: "[--tool <gemini|qwen|codex>]"
5
- ---
6
-
7
- # Related Documentation Generation - CLI Mode (/memory:docs-related-cli)
8
-
9
- ## Overview
10
-
11
- Orchestrates context-aware documentation generation/update for changed modules using CLI-based execution with batched agents and automatic tool fallback (gemini→qwen→codex).
12
-
13
- **Parameters**:
14
- - `--tool <gemini|qwen|codex>`: Primary tool (default: gemini)
15
-
16
- **Execution Flow**:
17
- 1. Change Detection → 2. Plan Presentation → 3. Batched Execution → 4. Verification
18
-
19
- ## Core Rules
20
-
21
- 1. **Detect Changes First**: Use git diff to identify affected modules
22
- 2. **Wait for Approval**: Present plan, no execution without user confirmation
23
- 3. **Execution Strategy**:
24
- - **<15 modules**: Direct parallel execution (max 4 concurrent per depth, no agent overhead)
25
- - **≥15 modules**: Agent batch processing (4 modules/agent, 73% overhead reduction)
26
- 4. **Tool Fallback**: Auto-retry with fallback tools on failure
27
- 5. **Depth Sequential**: Process depths N→0, parallel batches within depth (both modes)
28
- 6. **Related Mode**: Generate/update only changed modules and their parent contexts
29
- 7. **Single Strategy**: Always use `single` strategy (incremental update)
30
-
31
- ## Tool Fallback Hierarchy
32
-
33
- ```javascript
34
- --tool gemini → [gemini, qwen, codex] // default
35
- --tool qwen → [qwen, gemini, codex]
36
- --tool codex → [codex, gemini, qwen]
37
- ```
38
-
39
- **Trigger**: Non-zero exit code from generation script
40
-
41
- | Tool | Best For | Fallback To |
42
- |--------|--------------------------------|----------------|
43
- | gemini | Documentation, patterns | qwen → codex |
44
- | qwen | Architecture, system design | gemini → codex |
45
- | codex | Implementation, code quality | gemini → qwen |
46
-
47
- ## Phase 1: Change Detection & Analysis
48
-
49
- ```javascript
50
- // Get project metadata
51
- Bash({command: "pwd && basename \"$(pwd)\" && git rev-parse --show-toplevel 2>/dev/null || pwd", run_in_background: false});
52
-
53
- // Detect changed modules
54
- Bash({command: "ccw tool exec detect_changed_modules '{\"format\":\"list\"}'", run_in_background: false});
55
-
56
- // Cache git changes
57
- Bash({command: "git add -A 2>/dev/null || true", run_in_background: false});
58
- ```
59
-
60
- **Parse output** `depth:N|path:<PATH>|change:<TYPE>|type:<code|navigation>` to extract affected modules.
61
-
62
- **Smart filter**: Auto-detect and skip tests/build/config/vendor based on project tech stack (Node.js/Python/Go/Rust/etc).
63
-
64
- **Fallback**: If no changes detected, use recent modules (first 10 by depth).
65
-
66
- ## Phase 2: Plan Presentation
67
-
68
- **Present filtered plan**:
69
- ```
70
- Related Documentation Generation Plan:
71
- Tool: gemini (fallback: qwen → codex)
72
- Changed: 4 modules | Batching: 4 modules/agent
73
- Project: myproject
74
- Output: .workflow/docs/myproject/
75
-
76
- Will generate/update docs for:
77
- - ./src/api/auth (5 files, type: code) [new module]
78
- - ./src/api (12 files, type: code) [parent of changed auth/]
79
- - ./src (8 files, type: code) [parent context]
80
- - . (14 files, type: code) [root level]
81
-
82
- Documentation Strategy:
83
- - Strategy: single (all modules - incremental update)
84
- - Output: API.md + README.md (code folders), README.md only (navigation folders)
85
- - Context: Current dir code + child docs
86
-
87
- Auto-skipped (12 paths):
88
- - Tests: ./src/api/auth.test.ts (8 paths)
89
- - Config: tsconfig.json (3 paths)
90
- - Other: node_modules (1 path)
91
-
92
- Agent allocation:
93
- - Depth 3 (1 module): 1 agent [1]
94
- - Depth 2 (1 module): 1 agent [1]
95
- - Depth 1 (1 module): 1 agent [1]
96
- - Depth 0 (1 module): 1 agent [1]
97
-
98
- Estimated time: ~5-10 minutes
99
-
100
- Confirm execution? (y/n)
101
- ```
102
-
103
- **Decision logic**:
104
- - User confirms "y": Proceed with execution
105
- - User declines "n": Abort, no changes
106
- - <15 modules: Direct execution
107
- - ≥15 modules: Agent batch execution
108
-
109
- ## Phase 3A: Direct Execution (<15 modules)
110
-
111
- **Strategy**: Parallel execution within depth (max 4 concurrent), no agent overhead.
112
-
113
- **CRITICAL**: All Bash commands use `run_in_background: false` for synchronous execution.
114
-
115
- ```javascript
116
- let project_name = detect_project_name();
117
-
118
- for (let depth of sorted_depths.reverse()) { // N → 0
119
- let batches = batch_modules(modules_by_depth[depth], 4);
120
-
121
- for (let batch of batches) {
122
- let parallel_tasks = batch.map(module => {
123
- return async () => {
124
- for (let tool of tool_order) {
125
- Bash({
126
- command: `cd ${module.path} && ccw tool exec generate_module_docs '{"strategy":"single","sourcePath":".","projectName":"${project_name}","tool":"${tool}"}'`,
127
- run_in_background: false
128
- });
129
- if (bash_result.exit_code === 0) {
130
- report(`✅ ${module.path} docs generated with ${tool}`);
131
- return true;
132
- }
133
- }
134
- report(`❌ FAILED: ${module.path} failed all tools`);
135
- return false;
136
- };
137
- });
138
- await Promise.all(parallel_tasks.map(task => task()));
139
- }
140
- }
141
- ```
142
-
143
- ## Phase 3B: Agent Batch Execution (≥15 modules)
144
-
145
- ### Batching Strategy
146
-
147
- ```javascript
148
- // Batch modules into groups of 4
149
- function batch_modules(modules, batch_size = 4) {
150
- let batches = [];
151
- for (let i = 0; i < modules.length; i += batch_size) {
152
- batches.push(modules.slice(i, i + batch_size));
153
- }
154
- return batches;
155
- }
156
- // Examples: 10→[4,4,2] | 8→[4,4] | 3→[3]
157
- ```
158
-
159
- ### Coordinator Orchestration
160
-
161
- ```javascript
162
- let modules_by_depth = group_by_depth(changed_modules);
163
- let tool_order = construct_tool_order(primary_tool);
164
- let project_name = detect_project_name();
165
-
166
- for (let depth of sorted_depths.reverse()) { // N → 0
167
- let batches = batch_modules(modules_by_depth[depth], 4);
168
- let worker_tasks = [];
169
-
170
- for (let batch of batches) {
171
- worker_tasks.push(
172
- Task(
173
- subagent_type="memory-bridge",
174
- description=`Generate docs for ${batch.length} modules at depth ${depth}`,
175
- prompt=generate_batch_worker_prompt(batch, tool_order, depth, project_name, "related")
176
- )
177
- );
178
- }
179
-
180
- await parallel_execute(worker_tasks); // Batches run in parallel
181
- }
182
- ```
183
-
184
- ### Batch Worker Prompt Template
185
-
186
- ```
187
- PURPOSE: Generate/update documentation for assigned modules with tool fallback (related mode)
188
-
189
- TASK:
190
- Generate documentation for the following modules based on recent changes. For each module, try tools in order until success.
191
-
192
- PROJECT: {{project_name}}
193
- OUTPUT: .workflow/docs/{{project_name}}/
194
-
195
- MODULES:
196
- {{module_path_1}} (type: {{folder_type_1}})
197
- {{module_path_2}} (type: {{folder_type_2}})
198
- {{module_path_3}} (type: {{folder_type_3}})
199
- {{module_path_4}} (type: {{folder_type_4}})
200
-
201
- TOOLS (try in order):
202
- 1. {{tool_1}}
203
- 2. {{tool_2}}
204
- 3. {{tool_3}}
205
-
206
- EXECUTION:
207
- For each module above:
208
- 1. Try tool 1:
209
- Bash({
210
- command: `cd "{{module_path}}" && ccw tool exec generate_module_docs '{"strategy":"single","sourcePath":".","projectName":"{{project_name}}","tool":"{{tool_1}}"}'`,
211
- run_in_background: false
212
- })
213
- → Success: Report "✅ {{module_path}} docs generated with {{tool_1}}", proceed to next module
214
- → Failure: Try tool 2
215
- 2. Try tool 2:
216
- Bash({
217
- command: `cd "{{module_path}}" && ccw tool exec generate_module_docs '{"strategy":"single","sourcePath":".","projectName":"{{project_name}}","tool":"{{tool_2}}"}'`,
218
- run_in_background: false
219
- })
220
- → Success: Report "✅ {{module_path}} docs generated with {{tool_2}}", proceed to next module
221
- → Failure: Try tool 3
222
- 3. Try tool 3:
223
- Bash({
224
- command: `cd "{{module_path}}" && ccw tool exec generate_module_docs '{"strategy":"single","sourcePath":".","projectName":"{{project_name}}","tool":"{{tool_3}}"}'`,
225
- run_in_background: false
226
- })
227
- → Success: Report "✅ {{module_path}} docs generated with {{tool_3}}", proceed to next module
228
- → Failure: Report "❌ FAILED: {{module_path}} failed all tools", proceed to next module
229
-
230
- FOLDER TYPE HANDLING:
231
- - code: Generate API.md + README.md
232
- - navigation: Generate README.md only
233
-
234
- REPORTING:
235
- Report final summary with:
236
- - Total processed: X modules
237
- - Successful: Y modules
238
- - Failed: Z modules
239
- - Tool usage: {{tool_1}}:X, {{tool_2}}:Y, {{tool_3}}:Z
240
- ```
241
-
242
- ## Phase 4: Verification
243
-
244
- ```javascript
245
- // Check documentation files created/updated
246
- Bash({command: 'find .workflow/docs -type f -name "*.md" 2>/dev/null | wc -l', run_in_background: false});
247
-
248
- // Display recent changes
249
- Bash({command: 'find .workflow/docs -type f -name "*.md" -mmin -60 2>/dev/null', run_in_background: false});
250
- ```
251
-
252
- **Aggregate results**:
253
- ```
254
- Documentation Generation Summary:
255
- Total: 4 | Success: 4 | Failed: 0
256
-
257
- Tool usage:
258
- - gemini: 4 modules
259
- - qwen: 0 modules (fallback)
260
- - codex: 0 modules
261
-
262
- Changes:
263
- .workflow/docs/myproject/src/api/auth/API.md (new)
264
- .workflow/docs/myproject/src/api/auth/README.md (new)
265
- .workflow/docs/myproject/src/api/API.md (updated)
266
- .workflow/docs/myproject/src/api/README.md (updated)
267
- .workflow/docs/myproject/src/API.md (updated)
268
- .workflow/docs/myproject/src/README.md (updated)
269
- .workflow/docs/myproject/API.md (updated)
270
- .workflow/docs/myproject/README.md (updated)
271
- ```
272
-
273
- ## Execution Summary
274
-
275
- **Module Count Threshold**:
276
- - **<15 modules**: Coordinator executes Phase 3A (Direct Execution)
277
- - **≥15 modules**: Coordinator executes Phase 3B (Agent Batch Execution)
278
-
279
- **Agent Hierarchy** (for ≥15 modules):
280
- - **Coordinator**: Handles batch division, spawns worker agents per depth
281
- - **Worker Agents**: Each processes 4 modules with tool fallback (related mode)
282
-
283
- ## Error Handling
284
-
285
- **Batch Worker**:
286
- - Tool fallback per module (auto-retry)
287
- - Batch isolation (failures don't propagate)
288
- - Clear per-module status reporting
289
-
290
- **Coordinator**:
291
- - No changes: Use fallback (recent 10 modules)
292
- - User decline: No execution
293
- - Verification fail: Report incomplete modules
294
- - Partial failures: Continue execution, report failed modules
295
-
296
- **Fallback Triggers**:
297
- - Non-zero exit code
298
- - Script timeout
299
- - Unexpected output
300
-
301
- ## Output Structure
302
-
303
- ```
304
- .workflow/docs/{project_name}/
305
- ├── src/ # Mirrors source structure
306
- │ ├── modules/
307
- │ │ ├── README.md
308
- │ │ ├── auth/
309
- │ │ │ ├── API.md # Updated based on code changes
310
- │ │ │ └── README.md # Updated based on code changes
311
- │ │ └── api/
312
- │ │ ├── API.md
313
- │ │ └── README.md
314
- │ └── utils/
315
- │ └── README.md
316
- └── README.md
317
- ```
318
-
319
- ## Usage Examples
320
-
321
- ```bash
322
- # Daily development documentation update
323
- /memory:docs-related-cli
324
-
325
- # After feature work with specific tool
326
- /memory:docs-related-cli --tool qwen
327
-
328
- # Code quality documentation review after implementation
329
- /memory:docs-related-cli --tool codex
330
- ```
331
-
332
- ## Key Advantages
333
-
334
- **Efficiency**: 30 modules → 8 agents (73% reduction)
335
- **Resilience**: 3-tier fallback per module
336
- **Performance**: Parallel batches, no concurrency limits
337
- **Context-aware**: Updates based on actual git changes
338
- **Fast**: Only affected modules, not entire project
339
- **Incremental**: Single strategy for focused updates
340
-
341
- ## Coordinator Checklist
342
-
343
- - Parse `--tool` (default: gemini)
344
- - Get project metadata (name, root)
345
- - Detect changed modules via detect_changed_modules.sh
346
- - **Smart filter modules** (auto-detect tech stack, skip tests/build/config/vendor)
347
- - Cache git changes
348
- - Apply fallback if no changes (recent 10 modules)
349
- - Construct tool fallback order
350
- - **Present filtered plan** with skip reasons and change types
351
- - **Wait for y/n confirmation**
352
- - Determine execution mode:
353
- - **<15 modules**: Direct execution (Phase 3A)
354
- - For each depth (N→0): Sequential module updates with tool fallback
355
- - **≥15 modules**: Agent batch execution (Phase 3B)
356
- - For each depth (N→0): Batch modules (4 per batch), spawn batch workers in parallel
357
- - Wait for depth/batch completion
358
- - Aggregate results
359
- - Verification check (documentation files created/updated)
360
- - Display summary + recent changes
361
-
362
- ## Comparison with Full Documentation Generation
363
-
364
- | Aspect | Related Generation | Full Generation |
365
- |--------|-------------------|-----------------|
366
- | **Scope** | Changed modules only | All project modules |
367
- | **Speed** | Fast (minutes) | Slower (10-30 min) |
368
- | **Use case** | Daily development | Initial setup, major refactoring |
369
- | **Strategy** | `single` (all) | `full` (L3) + `single` (L1-2) |
370
- | **Trigger** | After commits | After setup or major changes |
371
- | **Batching** | 4 modules/agent | 4 modules/agent |
372
- | **Fallback** | gemini→qwen→codex | gemini→qwen→codex |
373
- | **Complexity threshold** | ≤15 modules | ≤20 modules |
374
-
375
- ## Template Reference
376
-
377
- Templates used from `~/.claude/workflows/cli-templates/prompts/documentation/`:
378
- - `api.txt`: Code API documentation
379
- - `module-readme.txt`: Module purpose, usage, dependencies
380
- - `folder-navigation.txt`: Navigation README for folders
381
-
382
- ## Related Commands
383
-
384
- - `/memory:docs-full-cli` - Full project documentation generation
385
- - `/memory:docs` - Agent-based documentation planning workflow
386
- - `/memory:update-related` - Update CLAUDE.md for changed modules
1
+ ---
2
+ name: docs-related-cli
3
+ description: Generate/update documentation for git-changed modules using CLI execution with batched agents (4 modules/agent) and gemini→qwen→codex fallback, <15 modules uses direct parallel
4
+ argument-hint: "[--tool <gemini|qwen|codex>]"
5
+ ---
6
+
7
+ # Related Documentation Generation - CLI Mode (/memory:docs-related-cli)
8
+
9
+ ## Overview
10
+
11
+ Orchestrates context-aware documentation generation/update for changed modules using CLI-based execution with batched agents and automatic tool fallback (gemini→qwen→codex).
12
+
13
+ **Parameters**:
14
+ - `--tool <gemini|qwen|codex>`: Primary tool (default: gemini)
15
+
16
+ **Execution Flow**:
17
+ 1. Change Detection → 2. Plan Presentation → 3. Batched Execution → 4. Verification
18
+
19
+ ## Core Rules
20
+
21
+ 1. **Detect Changes First**: Use git diff to identify affected modules
22
+ 2. **Wait for Approval**: Present plan, no execution without user confirmation
23
+ 3. **Execution Strategy**:
24
+ - **<15 modules**: Direct parallel execution (max 4 concurrent per depth, no agent overhead)
25
+ - **≥15 modules**: Agent batch processing (4 modules/agent, 73% overhead reduction)
26
+ 4. **Tool Fallback**: Auto-retry with fallback tools on failure
27
+ 5. **Depth Sequential**: Process depths N→0, parallel batches within depth (both modes)
28
+ 6. **Related Mode**: Generate/update only changed modules and their parent contexts
29
+ 7. **Single Strategy**: Always use `single` strategy (incremental update)
30
+
31
+ ## Tool Fallback Hierarchy
32
+
33
+ ```javascript
34
+ --tool gemini → [gemini, qwen, codex] // default
35
+ --tool qwen → [qwen, gemini, codex]
36
+ --tool codex → [codex, gemini, qwen]
37
+ ```
38
+
39
+ **Trigger**: Non-zero exit code from generation script
40
+
41
+ | Tool | Best For | Fallback To |
42
+ |--------|--------------------------------|----------------|
43
+ | gemini | Documentation, patterns | qwen → codex |
44
+ | qwen | Architecture, system design | gemini → codex |
45
+ | codex | Implementation, code quality | gemini → qwen |
46
+
47
+ ## Phase 1: Change Detection & Analysis
48
+
49
+ ```javascript
50
+ // Get project metadata
51
+ Bash({command: "pwd && basename \"$(pwd)\" && git rev-parse --show-toplevel 2>/dev/null || pwd", run_in_background: false});
52
+
53
+ // Detect changed modules
54
+ Bash({command: "ccw tool exec detect_changed_modules '{\"format\":\"list\"}'", run_in_background: false});
55
+
56
+ // Cache git changes
57
+ Bash({command: "git add -A 2>/dev/null || true", run_in_background: false});
58
+ ```
59
+
60
+ **Parse output** `depth:N|path:<PATH>|change:<TYPE>|type:<code|navigation>` to extract affected modules.
61
+
62
+ **Smart filter**: Auto-detect and skip tests/build/config/vendor based on project tech stack (Node.js/Python/Go/Rust/etc).
63
+
64
+ **Fallback**: If no changes detected, use recent modules (first 10 by depth).
65
+
66
+ ## Phase 2: Plan Presentation
67
+
68
+ **Present filtered plan**:
69
+ ```
70
+ Related Documentation Generation Plan:
71
+ Tool: gemini (fallback: qwen → codex)
72
+ Changed: 4 modules | Batching: 4 modules/agent
73
+ Project: myproject
74
+ Output: .workflow/docs/myproject/
75
+
76
+ Will generate/update docs for:
77
+ - ./src/api/auth (5 files, type: code) [new module]
78
+ - ./src/api (12 files, type: code) [parent of changed auth/]
79
+ - ./src (8 files, type: code) [parent context]
80
+ - . (14 files, type: code) [root level]
81
+
82
+ Documentation Strategy:
83
+ - Strategy: single (all modules - incremental update)
84
+ - Output: API.md + README.md (code folders), README.md only (navigation folders)
85
+ - Context: Current dir code + child docs
86
+
87
+ Auto-skipped (12 paths):
88
+ - Tests: ./src/api/auth.test.ts (8 paths)
89
+ - Config: tsconfig.json (3 paths)
90
+ - Other: node_modules (1 path)
91
+
92
+ Agent allocation:
93
+ - Depth 3 (1 module): 1 agent [1]
94
+ - Depth 2 (1 module): 1 agent [1]
95
+ - Depth 1 (1 module): 1 agent [1]
96
+ - Depth 0 (1 module): 1 agent [1]
97
+
98
+ Estimated time: ~5-10 minutes
99
+
100
+ Confirm execution? (y/n)
101
+ ```
102
+
103
+ **Decision logic**:
104
+ - User confirms "y": Proceed with execution
105
+ - User declines "n": Abort, no changes
106
+ - <15 modules: Direct execution
107
+ - ≥15 modules: Agent batch execution
108
+
109
+ ## Phase 3A: Direct Execution (<15 modules)
110
+
111
+ **Strategy**: Parallel execution within depth (max 4 concurrent), no agent overhead.
112
+
113
+ **CRITICAL**: All Bash commands use `run_in_background: false` for synchronous execution.
114
+
115
+ ```javascript
116
+ let project_name = detect_project_name();
117
+
118
+ for (let depth of sorted_depths.reverse()) { // N → 0
119
+ let batches = batch_modules(modules_by_depth[depth], 4);
120
+
121
+ for (let batch of batches) {
122
+ let parallel_tasks = batch.map(module => {
123
+ return async () => {
124
+ for (let tool of tool_order) {
125
+ Bash({
126
+ command: `cd ${module.path} && ccw tool exec generate_module_docs '{"strategy":"single","sourcePath":".","projectName":"${project_name}","tool":"${tool}"}'`,
127
+ run_in_background: false
128
+ });
129
+ if (bash_result.exit_code === 0) {
130
+ report(`✅ ${module.path} docs generated with ${tool}`);
131
+ return true;
132
+ }
133
+ }
134
+ report(`❌ FAILED: ${module.path} failed all tools`);
135
+ return false;
136
+ };
137
+ });
138
+ await Promise.all(parallel_tasks.map(task => task()));
139
+ }
140
+ }
141
+ ```
142
+
143
+ ## Phase 3B: Agent Batch Execution (≥15 modules)
144
+
145
+ ### Batching Strategy
146
+
147
+ ```javascript
148
+ // Batch modules into groups of 4
149
+ function batch_modules(modules, batch_size = 4) {
150
+ let batches = [];
151
+ for (let i = 0; i < modules.length; i += batch_size) {
152
+ batches.push(modules.slice(i, i + batch_size));
153
+ }
154
+ return batches;
155
+ }
156
+ // Examples: 10→[4,4,2] | 8→[4,4] | 3→[3]
157
+ ```
158
+
159
+ ### Coordinator Orchestration
160
+
161
+ ```javascript
162
+ let modules_by_depth = group_by_depth(changed_modules);
163
+ let tool_order = construct_tool_order(primary_tool);
164
+ let project_name = detect_project_name();
165
+
166
+ for (let depth of sorted_depths.reverse()) { // N → 0
167
+ let batches = batch_modules(modules_by_depth[depth], 4);
168
+ let worker_tasks = [];
169
+
170
+ for (let batch of batches) {
171
+ worker_tasks.push(
172
+ Task(
173
+ subagent_type="memory-bridge",
174
+ description=`Generate docs for ${batch.length} modules at depth ${depth}`,
175
+ prompt=generate_batch_worker_prompt(batch, tool_order, depth, project_name, "related")
176
+ )
177
+ );
178
+ }
179
+
180
+ await parallel_execute(worker_tasks); // Batches run in parallel
181
+ }
182
+ ```
183
+
184
+ ### Batch Worker Prompt Template
185
+
186
+ ```
187
+ PURPOSE: Generate/update documentation for assigned modules with tool fallback (related mode)
188
+
189
+ TASK:
190
+ Generate documentation for the following modules based on recent changes. For each module, try tools in order until success.
191
+
192
+ PROJECT: {{project_name}}
193
+ OUTPUT: .workflow/docs/{{project_name}}/
194
+
195
+ MODULES:
196
+ {{module_path_1}} (type: {{folder_type_1}})
197
+ {{module_path_2}} (type: {{folder_type_2}})
198
+ {{module_path_3}} (type: {{folder_type_3}})
199
+ {{module_path_4}} (type: {{folder_type_4}})
200
+
201
+ TOOLS (try in order):
202
+ 1. {{tool_1}}
203
+ 2. {{tool_2}}
204
+ 3. {{tool_3}}
205
+
206
+ EXECUTION:
207
+ For each module above:
208
+ 1. Try tool 1:
209
+ Bash({
210
+ command: `cd "{{module_path}}" && ccw tool exec generate_module_docs '{"strategy":"single","sourcePath":".","projectName":"{{project_name}}","tool":"{{tool_1}}"}'`,
211
+ run_in_background: false
212
+ })
213
+ → Success: Report "✅ {{module_path}} docs generated with {{tool_1}}", proceed to next module
214
+ → Failure: Try tool 2
215
+ 2. Try tool 2:
216
+ Bash({
217
+ command: `cd "{{module_path}}" && ccw tool exec generate_module_docs '{"strategy":"single","sourcePath":".","projectName":"{{project_name}}","tool":"{{tool_2}}"}'`,
218
+ run_in_background: false
219
+ })
220
+ → Success: Report "✅ {{module_path}} docs generated with {{tool_2}}", proceed to next module
221
+ → Failure: Try tool 3
222
+ 3. Try tool 3:
223
+ Bash({
224
+ command: `cd "{{module_path}}" && ccw tool exec generate_module_docs '{"strategy":"single","sourcePath":".","projectName":"{{project_name}}","tool":"{{tool_3}}"}'`,
225
+ run_in_background: false
226
+ })
227
+ → Success: Report "✅ {{module_path}} docs generated with {{tool_3}}", proceed to next module
228
+ → Failure: Report "❌ FAILED: {{module_path}} failed all tools", proceed to next module
229
+
230
+ FOLDER TYPE HANDLING:
231
+ - code: Generate API.md + README.md
232
+ - navigation: Generate README.md only
233
+
234
+ REPORTING:
235
+ Report final summary with:
236
+ - Total processed: X modules
237
+ - Successful: Y modules
238
+ - Failed: Z modules
239
+ - Tool usage: {{tool_1}}:X, {{tool_2}}:Y, {{tool_3}}:Z
240
+ ```
241
+
242
+ ## Phase 4: Verification
243
+
244
+ ```javascript
245
+ // Check documentation files created/updated
246
+ Bash({command: 'find .workflow/docs -type f -name "*.md" 2>/dev/null | wc -l', run_in_background: false});
247
+
248
+ // Display recent changes
249
+ Bash({command: 'find .workflow/docs -type f -name "*.md" -mmin -60 2>/dev/null', run_in_background: false});
250
+ ```
251
+
252
+ **Aggregate results**:
253
+ ```
254
+ Documentation Generation Summary:
255
+ Total: 4 | Success: 4 | Failed: 0
256
+
257
+ Tool usage:
258
+ - gemini: 4 modules
259
+ - qwen: 0 modules (fallback)
260
+ - codex: 0 modules
261
+
262
+ Changes:
263
+ .workflow/docs/myproject/src/api/auth/API.md (new)
264
+ .workflow/docs/myproject/src/api/auth/README.md (new)
265
+ .workflow/docs/myproject/src/api/API.md (updated)
266
+ .workflow/docs/myproject/src/api/README.md (updated)
267
+ .workflow/docs/myproject/src/API.md (updated)
268
+ .workflow/docs/myproject/src/README.md (updated)
269
+ .workflow/docs/myproject/API.md (updated)
270
+ .workflow/docs/myproject/README.md (updated)
271
+ ```
272
+
273
+ ## Execution Summary
274
+
275
+ **Module Count Threshold**:
276
+ - **<15 modules**: Coordinator executes Phase 3A (Direct Execution)
277
+ - **≥15 modules**: Coordinator executes Phase 3B (Agent Batch Execution)
278
+
279
+ **Agent Hierarchy** (for ≥15 modules):
280
+ - **Coordinator**: Handles batch division, spawns worker agents per depth
281
+ - **Worker Agents**: Each processes 4 modules with tool fallback (related mode)
282
+
283
+ ## Error Handling
284
+
285
+ **Batch Worker**:
286
+ - Tool fallback per module (auto-retry)
287
+ - Batch isolation (failures don't propagate)
288
+ - Clear per-module status reporting
289
+
290
+ **Coordinator**:
291
+ - No changes: Use fallback (recent 10 modules)
292
+ - User decline: No execution
293
+ - Verification fail: Report incomplete modules
294
+ - Partial failures: Continue execution, report failed modules
295
+
296
+ **Fallback Triggers**:
297
+ - Non-zero exit code
298
+ - Script timeout
299
+ - Unexpected output
300
+
301
+ ## Output Structure
302
+
303
+ ```
304
+ .workflow/docs/{project_name}/
305
+ ├── src/ # Mirrors source structure
306
+ │ ├── modules/
307
+ │ │ ├── README.md
308
+ │ │ ├── auth/
309
+ │ │ │ ├── API.md # Updated based on code changes
310
+ │ │ │ └── README.md # Updated based on code changes
311
+ │ │ └── api/
312
+ │ │ ├── API.md
313
+ │ │ └── README.md
314
+ │ └── utils/
315
+ │ └── README.md
316
+ └── README.md
317
+ ```
318
+
319
+ ## Usage Examples
320
+
321
+ ```bash
322
+ # Daily development documentation update
323
+ /memory:docs-related-cli
324
+
325
+ # After feature work with specific tool
326
+ /memory:docs-related-cli --tool qwen
327
+
328
+ # Code quality documentation review after implementation
329
+ /memory:docs-related-cli --tool codex
330
+ ```
331
+
332
+ ## Key Advantages
333
+
334
+ **Efficiency**: 30 modules → 8 agents (73% reduction)
335
+ **Resilience**: 3-tier fallback per module
336
+ **Performance**: Parallel batches, no concurrency limits
337
+ **Context-aware**: Updates based on actual git changes
338
+ **Fast**: Only affected modules, not entire project
339
+ **Incremental**: Single strategy for focused updates
340
+
341
+ ## Coordinator Checklist
342
+
343
+ - Parse `--tool` (default: gemini)
344
+ - Get project metadata (name, root)
345
+ - Detect changed modules via detect_changed_modules.sh
346
+ - **Smart filter modules** (auto-detect tech stack, skip tests/build/config/vendor)
347
+ - Cache git changes
348
+ - Apply fallback if no changes (recent 10 modules)
349
+ - Construct tool fallback order
350
+ - **Present filtered plan** with skip reasons and change types
351
+ - **Wait for y/n confirmation**
352
+ - Determine execution mode:
353
+ - **<15 modules**: Direct execution (Phase 3A)
354
+ - For each depth (N→0): Sequential module updates with tool fallback
355
+ - **≥15 modules**: Agent batch execution (Phase 3B)
356
+ - For each depth (N→0): Batch modules (4 per batch), spawn batch workers in parallel
357
+ - Wait for depth/batch completion
358
+ - Aggregate results
359
+ - Verification check (documentation files created/updated)
360
+ - Display summary + recent changes
361
+
362
+ ## Comparison with Full Documentation Generation
363
+
364
+ | Aspect | Related Generation | Full Generation |
365
+ |--------|-------------------|-----------------|
366
+ | **Scope** | Changed modules only | All project modules |
367
+ | **Speed** | Fast (minutes) | Slower (10-30 min) |
368
+ | **Use case** | Daily development | Initial setup, major refactoring |
369
+ | **Strategy** | `single` (all) | `full` (L3) + `single` (L1-2) |
370
+ | **Trigger** | After commits | After setup or major changes |
371
+ | **Batching** | 4 modules/agent | 4 modules/agent |
372
+ | **Fallback** | gemini→qwen→codex | gemini→qwen→codex |
373
+ | **Complexity threshold** | ≤15 modules | ≤20 modules |
374
+
375
+ ## Template Reference
376
+
377
+ Templates used from `~/.claude/workflows/cli-templates/prompts/documentation/`:
378
+ - `api.txt`: Code API documentation
379
+ - `module-readme.txt`: Module purpose, usage, dependencies
380
+ - `folder-navigation.txt`: Navigation README for folders
381
+
382
+ ## Related Commands
383
+
384
+ - `/memory:docs-full-cli` - Full project documentation generation
385
+ - `/memory:docs` - Agent-based documentation planning workflow
386
+ - `/memory:update-related` - Update CLAUDE.md for changed modules