claude-code-workflow 6.2.2 → 6.2.3

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 (346) hide show
  1. package/ccw/dist/cli.d.ts +2 -0
  2. package/ccw/dist/cli.d.ts.map +1 -0
  3. package/ccw/dist/cli.js +219 -0
  4. package/ccw/dist/cli.js.map +1 -0
  5. package/ccw/dist/commands/cli.d.ts +32 -0
  6. package/ccw/dist/commands/cli.d.ts.map +1 -0
  7. package/ccw/dist/commands/cli.js +619 -0
  8. package/ccw/dist/commands/cli.js.map +1 -0
  9. package/ccw/dist/commands/core-memory.d.ts +32 -0
  10. package/ccw/dist/commands/core-memory.d.ts.map +1 -0
  11. package/ccw/dist/commands/core-memory.js +640 -0
  12. package/ccw/dist/commands/core-memory.js.map +1 -0
  13. package/ccw/dist/commands/hook.d.ts +16 -0
  14. package/ccw/dist/commands/hook.d.ts.map +1 -0
  15. package/ccw/dist/commands/hook.js +276 -0
  16. package/ccw/dist/commands/hook.js.map +1 -0
  17. package/ccw/dist/commands/install.d.ts +12 -0
  18. package/ccw/dist/commands/install.d.ts.map +1 -0
  19. package/ccw/dist/commands/install.js +443 -0
  20. package/ccw/dist/commands/install.js.map +1 -0
  21. package/ccw/dist/commands/list.d.ts +5 -0
  22. package/ccw/dist/commands/list.d.ts.map +1 -0
  23. package/ccw/dist/commands/list.js +32 -0
  24. package/ccw/dist/commands/list.js.map +1 -0
  25. package/ccw/dist/commands/memory.d.ts +57 -0
  26. package/ccw/dist/commands/memory.d.ts.map +1 -0
  27. package/ccw/dist/commands/memory.js +890 -0
  28. package/ccw/dist/commands/memory.js.map +1 -0
  29. package/ccw/dist/commands/serve.d.ts +12 -0
  30. package/ccw/dist/commands/serve.d.ts.map +1 -0
  31. package/ccw/dist/commands/serve.js +63 -0
  32. package/ccw/dist/commands/serve.js.map +1 -0
  33. package/ccw/dist/commands/session-path-resolver.d.ts +45 -0
  34. package/ccw/dist/commands/session-path-resolver.d.ts.map +1 -0
  35. package/ccw/dist/commands/session-path-resolver.js +302 -0
  36. package/ccw/dist/commands/session-path-resolver.js.map +1 -0
  37. package/ccw/dist/commands/session.d.ts +12 -0
  38. package/ccw/dist/commands/session.d.ts.map +1 -0
  39. package/ccw/dist/commands/session.js +954 -0
  40. package/ccw/dist/commands/session.js.map +1 -0
  41. package/ccw/dist/commands/stop.d.ts +11 -0
  42. package/ccw/dist/commands/stop.d.ts.map +1 -0
  43. package/ccw/dist/commands/stop.js +96 -0
  44. package/ccw/dist/commands/stop.js.map +1 -0
  45. package/ccw/dist/commands/tool.d.ts +29 -0
  46. package/ccw/dist/commands/tool.d.ts.map +1 -0
  47. package/ccw/dist/commands/tool.js +173 -0
  48. package/ccw/dist/commands/tool.js.map +1 -0
  49. package/ccw/dist/commands/uninstall.d.ts +9 -0
  50. package/ccw/dist/commands/uninstall.d.ts.map +1 -0
  51. package/ccw/dist/commands/uninstall.js +239 -0
  52. package/ccw/dist/commands/uninstall.js.map +1 -0
  53. package/ccw/dist/commands/upgrade.d.ts +10 -0
  54. package/ccw/dist/commands/upgrade.d.ts.map +1 -0
  55. package/ccw/dist/commands/upgrade.js +288 -0
  56. package/ccw/dist/commands/upgrade.js.map +1 -0
  57. package/ccw/dist/commands/view.d.ts +14 -0
  58. package/ccw/dist/commands/view.d.ts.map +1 -0
  59. package/ccw/dist/commands/view.js +100 -0
  60. package/ccw/dist/commands/view.js.map +1 -0
  61. package/ccw/dist/config/storage-paths.d.ts +184 -0
  62. package/ccw/dist/config/storage-paths.d.ts.map +1 -0
  63. package/ccw/dist/config/storage-paths.js +536 -0
  64. package/ccw/dist/config/storage-paths.js.map +1 -0
  65. package/ccw/dist/core/cache-manager.d.ts +80 -0
  66. package/ccw/dist/core/cache-manager.d.ts.map +1 -0
  67. package/ccw/dist/core/cache-manager.js +260 -0
  68. package/ccw/dist/core/cache-manager.js.map +1 -0
  69. package/ccw/dist/core/claude-freshness.d.ts +53 -0
  70. package/ccw/dist/core/claude-freshness.d.ts.map +1 -0
  71. package/ccw/dist/core/claude-freshness.js +232 -0
  72. package/ccw/dist/core/claude-freshness.js.map +1 -0
  73. package/ccw/dist/core/core-memory-store.d.ts +320 -0
  74. package/ccw/dist/core/core-memory-store.d.ts.map +1 -0
  75. package/ccw/dist/core/core-memory-store.js +1177 -0
  76. package/ccw/dist/core/core-memory-store.js.map +1 -0
  77. package/ccw/dist/core/dashboard-generator-patch.d.ts +2 -0
  78. package/ccw/dist/core/dashboard-generator-patch.d.ts.map +1 -0
  79. package/ccw/dist/core/dashboard-generator-patch.js +48 -0
  80. package/ccw/dist/core/dashboard-generator-patch.js.map +1 -0
  81. package/ccw/dist/core/dashboard-generator.d.ts +8 -0
  82. package/ccw/dist/core/dashboard-generator.d.ts.map +1 -0
  83. package/ccw/dist/core/dashboard-generator.js +695 -0
  84. package/ccw/dist/core/dashboard-generator.js.map +1 -0
  85. package/ccw/dist/core/data-aggregator.d.ts +145 -0
  86. package/ccw/dist/core/data-aggregator.d.ts.map +1 -0
  87. package/ccw/dist/core/data-aggregator.js +416 -0
  88. package/ccw/dist/core/data-aggregator.js.map +1 -0
  89. package/ccw/dist/core/history-importer.d.ts +102 -0
  90. package/ccw/dist/core/history-importer.d.ts.map +1 -0
  91. package/ccw/dist/core/history-importer.js +493 -0
  92. package/ccw/dist/core/history-importer.js.map +1 -0
  93. package/ccw/dist/core/lite-scanner-complete.d.ts +81 -0
  94. package/ccw/dist/core/lite-scanner-complete.d.ts.map +1 -0
  95. package/ccw/dist/core/lite-scanner-complete.js +368 -0
  96. package/ccw/dist/core/lite-scanner-complete.js.map +1 -0
  97. package/ccw/dist/core/lite-scanner.d.ts +81 -0
  98. package/ccw/dist/core/lite-scanner.d.ts.map +1 -0
  99. package/ccw/dist/core/lite-scanner.js +368 -0
  100. package/ccw/dist/core/lite-scanner.js.map +1 -0
  101. package/ccw/dist/core/manifest.d.ts +88 -0
  102. package/ccw/dist/core/manifest.d.ts.map +1 -0
  103. package/ccw/dist/core/manifest.js +214 -0
  104. package/ccw/dist/core/manifest.js.map +1 -0
  105. package/ccw/dist/core/memory-embedder-bridge.d.ts +83 -0
  106. package/ccw/dist/core/memory-embedder-bridge.d.ts.map +1 -0
  107. package/ccw/dist/core/memory-embedder-bridge.js +181 -0
  108. package/ccw/dist/core/memory-embedder-bridge.js.map +1 -0
  109. package/ccw/dist/core/memory-store.d.ts +249 -0
  110. package/ccw/dist/core/memory-store.d.ts.map +1 -0
  111. package/ccw/dist/core/memory-store.js +781 -0
  112. package/ccw/dist/core/memory-store.js.map +1 -0
  113. package/ccw/dist/core/routes/ccw-routes.d.ts +20 -0
  114. package/ccw/dist/core/routes/ccw-routes.d.ts.map +1 -0
  115. package/ccw/dist/core/routes/ccw-routes.js +70 -0
  116. package/ccw/dist/core/routes/ccw-routes.js.map +1 -0
  117. package/ccw/dist/core/routes/claude-routes.d.ts +19 -0
  118. package/ccw/dist/core/routes/claude-routes.d.ts.map +1 -0
  119. package/ccw/dist/core/routes/claude-routes.js +1017 -0
  120. package/ccw/dist/core/routes/claude-routes.js.map +1 -0
  121. package/ccw/dist/core/routes/cli-routes.d.ts +20 -0
  122. package/ccw/dist/core/routes/cli-routes.d.ts.map +1 -0
  123. package/ccw/dist/core/routes/cli-routes.js +468 -0
  124. package/ccw/dist/core/routes/cli-routes.js.map +1 -0
  125. package/ccw/dist/core/routes/codexlens-routes.d.ts +20 -0
  126. package/ccw/dist/core/routes/codexlens-routes.d.ts.map +1 -0
  127. package/ccw/dist/core/routes/codexlens-routes.js +754 -0
  128. package/ccw/dist/core/routes/codexlens-routes.js.map +1 -0
  129. package/ccw/dist/core/routes/core-memory-routes.d.ts +21 -0
  130. package/ccw/dist/core/routes/core-memory-routes.d.ts.map +1 -0
  131. package/ccw/dist/core/routes/core-memory-routes.js +520 -0
  132. package/ccw/dist/core/routes/core-memory-routes.js.map +1 -0
  133. package/ccw/dist/core/routes/files-routes.d.ts +20 -0
  134. package/ccw/dist/core/routes/files-routes.d.ts.map +1 -0
  135. package/ccw/dist/core/routes/files-routes.js +374 -0
  136. package/ccw/dist/core/routes/files-routes.js.map +1 -0
  137. package/ccw/dist/core/routes/graph-routes.d.ts +20 -0
  138. package/ccw/dist/core/routes/graph-routes.d.ts.map +1 -0
  139. package/ccw/dist/core/routes/graph-routes.js +517 -0
  140. package/ccw/dist/core/routes/graph-routes.js.map +1 -0
  141. package/ccw/dist/core/routes/help-routes.d.ts +20 -0
  142. package/ccw/dist/core/routes/help-routes.d.ts.map +1 -0
  143. package/ccw/dist/core/routes/help-routes.js +250 -0
  144. package/ccw/dist/core/routes/help-routes.js.map +1 -0
  145. package/ccw/dist/core/routes/hooks-routes.d.ts +21 -0
  146. package/ccw/dist/core/routes/hooks-routes.d.ts.map +1 -0
  147. package/ccw/dist/core/routes/hooks-routes.js +346 -0
  148. package/ccw/dist/core/routes/hooks-routes.js.map +1 -0
  149. package/ccw/dist/core/routes/mcp-routes.d.ts +20 -0
  150. package/ccw/dist/core/routes/mcp-routes.d.ts.map +1 -0
  151. package/ccw/dist/core/routes/mcp-routes.js +1129 -0
  152. package/ccw/dist/core/routes/mcp-routes.js.map +1 -0
  153. package/ccw/dist/core/routes/mcp-templates-db.d.ts +54 -0
  154. package/ccw/dist/core/routes/mcp-templates-db.d.ts.map +1 -0
  155. package/ccw/dist/core/routes/mcp-templates-db.js +226 -0
  156. package/ccw/dist/core/routes/mcp-templates-db.js.map +1 -0
  157. package/ccw/dist/core/routes/memory-routes.d.ts +21 -0
  158. package/ccw/dist/core/routes/memory-routes.d.ts.map +1 -0
  159. package/ccw/dist/core/routes/memory-routes.js +1095 -0
  160. package/ccw/dist/core/routes/memory-routes.js.map +1 -0
  161. package/ccw/dist/core/routes/rules-routes.d.ts +20 -0
  162. package/ccw/dist/core/routes/rules-routes.d.ts.map +1 -0
  163. package/ccw/dist/core/routes/rules-routes.js +442 -0
  164. package/ccw/dist/core/routes/rules-routes.js.map +1 -0
  165. package/ccw/dist/core/routes/session-routes.d.ts +20 -0
  166. package/ccw/dist/core/routes/session-routes.d.ts.map +1 -0
  167. package/ccw/dist/core/routes/session-routes.js +423 -0
  168. package/ccw/dist/core/routes/session-routes.js.map +1 -0
  169. package/ccw/dist/core/routes/skills-routes.d.ts +20 -0
  170. package/ccw/dist/core/routes/skills-routes.d.ts.map +1 -0
  171. package/ccw/dist/core/routes/skills-routes.js +533 -0
  172. package/ccw/dist/core/routes/skills-routes.js.map +1 -0
  173. package/ccw/dist/core/routes/status-routes.d.ts +20 -0
  174. package/ccw/dist/core/routes/status-routes.d.ts.map +1 -0
  175. package/ccw/dist/core/routes/status-routes.js +38 -0
  176. package/ccw/dist/core/routes/status-routes.js.map +1 -0
  177. package/ccw/dist/core/routes/system-routes.d.ts +22 -0
  178. package/ccw/dist/core/routes/system-routes.d.ts.map +1 -0
  179. package/ccw/dist/core/routes/system-routes.js +354 -0
  180. package/ccw/dist/core/routes/system-routes.js.map +1 -0
  181. package/ccw/dist/core/server.d.ts +17 -0
  182. package/ccw/dist/core/server.d.ts.map +1 -0
  183. package/ccw/dist/core/server.js +386 -0
  184. package/ccw/dist/core/server.js.map +1 -0
  185. package/ccw/dist/core/session-clustering-service.d.ts +153 -0
  186. package/ccw/dist/core/session-clustering-service.d.ts.map +1 -0
  187. package/ccw/dist/core/session-clustering-service.js +1065 -0
  188. package/ccw/dist/core/session-clustering-service.js.map +1 -0
  189. package/ccw/dist/core/session-scanner.d.ts +32 -0
  190. package/ccw/dist/core/session-scanner.d.ts.map +1 -0
  191. package/ccw/dist/core/session-scanner.js +253 -0
  192. package/ccw/dist/core/session-scanner.js.map +1 -0
  193. package/ccw/dist/core/websocket.d.ts +23 -0
  194. package/ccw/dist/core/websocket.d.ts.map +1 -0
  195. package/ccw/dist/core/websocket.js +168 -0
  196. package/ccw/dist/core/websocket.js.map +1 -0
  197. package/ccw/dist/index.d.ts +10 -0
  198. package/ccw/dist/index.d.ts.map +1 -0
  199. package/ccw/dist/index.js +10 -0
  200. package/ccw/dist/index.js.map +1 -0
  201. package/ccw/dist/mcp-server/index.d.ts +7 -0
  202. package/ccw/dist/mcp-server/index.d.ts.map +1 -0
  203. package/ccw/dist/mcp-server/index.js +157 -0
  204. package/ccw/dist/mcp-server/index.js.map +1 -0
  205. package/ccw/dist/tools/classify-folders.d.ts +26 -0
  206. package/ccw/dist/tools/classify-folders.d.ts.map +1 -0
  207. package/ccw/dist/tools/classify-folders.js +201 -0
  208. package/ccw/dist/tools/classify-folders.js.map +1 -0
  209. package/ccw/dist/tools/cli-config-manager.d.ts +62 -0
  210. package/ccw/dist/tools/cli-config-manager.d.ts.map +1 -0
  211. package/ccw/dist/tools/cli-config-manager.js +221 -0
  212. package/ccw/dist/tools/cli-config-manager.js.map +1 -0
  213. package/ccw/dist/tools/cli-executor.d.ts +373 -0
  214. package/ccw/dist/tools/cli-executor.d.ts.map +1 -0
  215. package/ccw/dist/tools/cli-executor.js +1625 -0
  216. package/ccw/dist/tools/cli-executor.js.map +1 -0
  217. package/ccw/dist/tools/cli-history-store.d.ts +330 -0
  218. package/ccw/dist/tools/cli-history-store.d.ts.map +1 -0
  219. package/ccw/dist/tools/cli-history-store.js +916 -0
  220. package/ccw/dist/tools/cli-history-store.js.map +1 -0
  221. package/ccw/dist/tools/codex-lens.d.ts +118 -0
  222. package/ccw/dist/tools/codex-lens.d.ts.map +1 -0
  223. package/ccw/dist/tools/codex-lens.js +962 -0
  224. package/ccw/dist/tools/codex-lens.js.map +1 -0
  225. package/ccw/dist/tools/convert-tokens-to-css.d.ts +14 -0
  226. package/ccw/dist/tools/convert-tokens-to-css.d.ts.map +1 -0
  227. package/ccw/dist/tools/convert-tokens-to-css.js +244 -0
  228. package/ccw/dist/tools/convert-tokens-to-css.js.map +1 -0
  229. package/ccw/dist/tools/core-memory.d.ts +66 -0
  230. package/ccw/dist/tools/core-memory.d.ts.map +1 -0
  231. package/ccw/dist/tools/core-memory.js +324 -0
  232. package/ccw/dist/tools/core-memory.js.map +1 -0
  233. package/ccw/dist/tools/detect-changed-modules.d.ts +24 -0
  234. package/ccw/dist/tools/detect-changed-modules.d.ts.map +1 -0
  235. package/ccw/dist/tools/detect-changed-modules.js +277 -0
  236. package/ccw/dist/tools/detect-changed-modules.js.map +1 -0
  237. package/ccw/dist/tools/discover-design-files.d.ts +36 -0
  238. package/ccw/dist/tools/discover-design-files.d.ts.map +1 -0
  239. package/ccw/dist/tools/discover-design-files.js +147 -0
  240. package/ccw/dist/tools/discover-design-files.js.map +1 -0
  241. package/ccw/dist/tools/edit-file.d.ts +28 -0
  242. package/ccw/dist/tools/edit-file.d.ts.map +1 -0
  243. package/ccw/dist/tools/edit-file.js +479 -0
  244. package/ccw/dist/tools/edit-file.js.map +1 -0
  245. package/ccw/dist/tools/generate-module-docs.d.ts +22 -0
  246. package/ccw/dist/tools/generate-module-docs.d.ts.map +1 -0
  247. package/ccw/dist/tools/generate-module-docs.js +379 -0
  248. package/ccw/dist/tools/generate-module-docs.js.map +1 -0
  249. package/ccw/dist/tools/get-modules-by-depth.d.ts +15 -0
  250. package/ccw/dist/tools/get-modules-by-depth.d.ts.map +1 -0
  251. package/ccw/dist/tools/get-modules-by-depth.js +296 -0
  252. package/ccw/dist/tools/get-modules-by-depth.js.map +1 -0
  253. package/ccw/dist/tools/index.d.ts +55 -0
  254. package/ccw/dist/tools/index.d.ts.map +1 -0
  255. package/ccw/dist/tools/index.js +304 -0
  256. package/ccw/dist/tools/index.js.map +1 -0
  257. package/ccw/dist/tools/native-session-discovery.d.ts +97 -0
  258. package/ccw/dist/tools/native-session-discovery.d.ts.map +1 -0
  259. package/ccw/dist/tools/native-session-discovery.js +700 -0
  260. package/ccw/dist/tools/native-session-discovery.js.map +1 -0
  261. package/ccw/dist/tools/notifier.d.ts +50 -0
  262. package/ccw/dist/tools/notifier.d.ts.map +1 -0
  263. package/ccw/dist/tools/notifier.js +90 -0
  264. package/ccw/dist/tools/notifier.js.map +1 -0
  265. package/ccw/dist/tools/read-file.d.ts +32 -0
  266. package/ccw/dist/tools/read-file.d.ts.map +1 -0
  267. package/ccw/dist/tools/read-file.js +329 -0
  268. package/ccw/dist/tools/read-file.js.map +1 -0
  269. package/ccw/dist/tools/resume-strategy.d.ts +48 -0
  270. package/ccw/dist/tools/resume-strategy.d.ts.map +1 -0
  271. package/ccw/dist/tools/resume-strategy.js +248 -0
  272. package/ccw/dist/tools/resume-strategy.js.map +1 -0
  273. package/ccw/dist/tools/session-content-parser.d.ts +58 -0
  274. package/ccw/dist/tools/session-content-parser.d.ts.map +1 -0
  275. package/ccw/dist/tools/session-content-parser.js +420 -0
  276. package/ccw/dist/tools/session-content-parser.js.map +1 -0
  277. package/ccw/dist/tools/session-manager.d.ts +9 -0
  278. package/ccw/dist/tools/session-manager.d.ts.map +1 -0
  279. package/ccw/dist/tools/session-manager.js +834 -0
  280. package/ccw/dist/tools/session-manager.js.map +1 -0
  281. package/ccw/dist/tools/smart-context.d.ts +35 -0
  282. package/ccw/dist/tools/smart-context.d.ts.map +1 -0
  283. package/ccw/dist/tools/smart-context.js +182 -0
  284. package/ccw/dist/tools/smart-context.js.map +1 -0
  285. package/ccw/dist/tools/smart-search.d.ts +105 -0
  286. package/ccw/dist/tools/smart-search.d.ts.map +1 -0
  287. package/ccw/dist/tools/smart-search.js +1753 -0
  288. package/ccw/dist/tools/smart-search.js.map +1 -0
  289. package/ccw/dist/tools/storage-manager.d.ts +114 -0
  290. package/ccw/dist/tools/storage-manager.d.ts.map +1 -0
  291. package/ccw/dist/tools/storage-manager.js +392 -0
  292. package/ccw/dist/tools/storage-manager.js.map +1 -0
  293. package/ccw/dist/tools/ui-generate-preview.d.ts +39 -0
  294. package/ccw/dist/tools/ui-generate-preview.d.ts.map +1 -0
  295. package/ccw/dist/tools/ui-generate-preview.js +300 -0
  296. package/ccw/dist/tools/ui-generate-preview.js.map +1 -0
  297. package/ccw/dist/tools/ui-instantiate-prototypes.d.ts +75 -0
  298. package/ccw/dist/tools/ui-instantiate-prototypes.d.ts.map +1 -0
  299. package/ccw/dist/tools/ui-instantiate-prototypes.js +256 -0
  300. package/ccw/dist/tools/ui-instantiate-prototypes.js.map +1 -0
  301. package/ccw/dist/tools/update-module-claude.d.ts +80 -0
  302. package/ccw/dist/tools/update-module-claude.d.ts.map +1 -0
  303. package/ccw/dist/tools/update-module-claude.js +351 -0
  304. package/ccw/dist/tools/update-module-claude.js.map +1 -0
  305. package/ccw/dist/tools/write-file.d.ts +19 -0
  306. package/ccw/dist/tools/write-file.d.ts.map +1 -0
  307. package/ccw/dist/tools/write-file.js +193 -0
  308. package/ccw/dist/tools/write-file.js.map +1 -0
  309. package/ccw/dist/types/config.d.ts +11 -0
  310. package/ccw/dist/types/config.d.ts.map +1 -0
  311. package/ccw/dist/types/config.js +2 -0
  312. package/ccw/dist/types/config.js.map +1 -0
  313. package/ccw/dist/types/index.d.ts +4 -0
  314. package/ccw/dist/types/index.d.ts.map +1 -0
  315. package/ccw/dist/types/index.js +4 -0
  316. package/ccw/dist/types/index.js.map +1 -0
  317. package/ccw/dist/types/session.d.ts +20 -0
  318. package/ccw/dist/types/session.d.ts.map +1 -0
  319. package/ccw/dist/types/session.js +2 -0
  320. package/ccw/dist/types/session.js.map +1 -0
  321. package/ccw/dist/types/tool.d.ts +36 -0
  322. package/ccw/dist/types/tool.d.ts.map +1 -0
  323. package/ccw/dist/types/tool.js +11 -0
  324. package/ccw/dist/types/tool.js.map +1 -0
  325. package/ccw/dist/utils/browser-launcher.d.ts +13 -0
  326. package/ccw/dist/utils/browser-launcher.d.ts.map +1 -0
  327. package/ccw/dist/utils/browser-launcher.js +60 -0
  328. package/ccw/dist/utils/browser-launcher.js.map +1 -0
  329. package/ccw/dist/utils/file-utils.d.ts +25 -0
  330. package/ccw/dist/utils/file-utils.d.ts.map +1 -0
  331. package/ccw/dist/utils/file-utils.js +48 -0
  332. package/ccw/dist/utils/file-utils.js.map +1 -0
  333. package/ccw/dist/utils/path-resolver.d.ts +80 -0
  334. package/ccw/dist/utils/path-resolver.d.ts.map +1 -0
  335. package/ccw/dist/utils/path-resolver.js +260 -0
  336. package/ccw/dist/utils/path-resolver.js.map +1 -0
  337. package/ccw/dist/utils/path-validator.d.ts +49 -0
  338. package/ccw/dist/utils/path-validator.d.ts.map +1 -0
  339. package/ccw/dist/utils/path-validator.js +123 -0
  340. package/ccw/dist/utils/path-validator.js.map +1 -0
  341. package/ccw/dist/utils/ui.d.ts +62 -0
  342. package/ccw/dist/utils/ui.d.ts.map +1 -0
  343. package/ccw/dist/utils/ui.js +129 -0
  344. package/ccw/dist/utils/ui.js.map +1 -0
  345. package/ccw/package.json +1 -1
  346. package/package.json +1 -1
@@ -0,0 +1,379 @@
1
+ /**
2
+ * Generate Module Docs Tool
3
+ * Generate documentation for modules and projects with multiple strategies
4
+ */
5
+ import { z } from 'zod';
6
+ import { readdirSync, statSync, existsSync, readFileSync, mkdirSync, writeFileSync, unlinkSync } from 'fs';
7
+ import { join, resolve, basename, extname, relative } from 'path';
8
+ import { execSync } from 'child_process';
9
+ import { tmpdir } from 'os';
10
+ import { getSecondaryModel } from './cli-config-manager.js';
11
+ // Directories to exclude
12
+ const EXCLUDE_DIRS = [
13
+ '.git', '__pycache__', 'node_modules', '.venv', 'venv', 'env',
14
+ 'dist', 'build', '.cache', '.pytest_cache', '.mypy_cache',
15
+ 'coverage', '.nyc_output', 'logs', 'tmp', 'temp', '.workflow'
16
+ ];
17
+ // Code file extensions
18
+ const CODE_EXTENSIONS = [
19
+ '.ts', '.tsx', '.js', '.jsx', '.py', '.sh', '.go', '.rs'
20
+ ];
21
+ // Default models for each tool
22
+ const DEFAULT_MODELS = {
23
+ gemini: 'gemini-2.5-flash',
24
+ qwen: 'coder-model',
25
+ codex: 'gpt5-codex'
26
+ };
27
+ // Template paths (relative to user home directory)
28
+ const TEMPLATE_BASE = '.claude/workflows/cli-templates/prompts/documentation';
29
+ // Define Zod schema for validation
30
+ const ParamsSchema = z.object({
31
+ strategy: z.enum(['full', 'single', 'project-readme', 'project-architecture', 'http-api']),
32
+ sourcePath: z.string().min(1, 'Source path is required'),
33
+ projectName: z.string().min(1, 'Project name is required'),
34
+ tool: z.enum(['gemini', 'qwen', 'codex']).default('gemini'),
35
+ model: z.string().optional(),
36
+ });
37
+ /**
38
+ * Detect folder type (code vs navigation)
39
+ */
40
+ function detectFolderType(dirPath) {
41
+ try {
42
+ const entries = readdirSync(dirPath, { withFileTypes: true });
43
+ const codeFiles = entries.filter(e => {
44
+ if (!e.isFile())
45
+ return false;
46
+ const ext = extname(e.name).toLowerCase();
47
+ return CODE_EXTENSIONS.includes(ext);
48
+ });
49
+ return codeFiles.length > 0 ? 'code' : 'navigation';
50
+ }
51
+ catch (e) {
52
+ return 'navigation';
53
+ }
54
+ }
55
+ /**
56
+ * Calculate output path
57
+ */
58
+ function calculateOutputPath(sourcePath, projectName, projectRoot) {
59
+ const absSource = resolve(sourcePath);
60
+ const normRoot = resolve(projectRoot);
61
+ let relPath = relative(normRoot, absSource);
62
+ relPath = relPath.replace(/\\/g, '/');
63
+ return join('.workflow', 'docs', projectName, relPath);
64
+ }
65
+ /**
66
+ * Load template content
67
+ */
68
+ function loadTemplate(templateName) {
69
+ const homePath = process.env.HOME || process.env.USERPROFILE;
70
+ if (!homePath) {
71
+ return getDefaultTemplate(templateName);
72
+ }
73
+ const templatePath = join(homePath, TEMPLATE_BASE, `${templateName}.txt`);
74
+ if (existsSync(templatePath)) {
75
+ return readFileSync(templatePath, 'utf8');
76
+ }
77
+ return getDefaultTemplate(templateName);
78
+ }
79
+ /**
80
+ * Get default template content
81
+ */
82
+ function getDefaultTemplate(templateName) {
83
+ const fallbacks = {
84
+ 'api': 'Generate API documentation with function signatures, parameters, return values, and usage examples.',
85
+ 'module-readme': 'Generate README documentation with purpose, usage, configuration, and examples.',
86
+ 'folder-navigation': 'Generate navigation README with overview of subdirectories and their purposes.',
87
+ 'project-readme': 'Generate project README with overview, installation, usage, and configuration.',
88
+ 'project-architecture': 'Generate ARCHITECTURE.md with system design, components, and data flow.'
89
+ };
90
+ return fallbacks[templateName] || 'Generate comprehensive documentation.';
91
+ }
92
+ /**
93
+ * Create temporary prompt file and return path
94
+ */
95
+ function createPromptFile(prompt) {
96
+ const timestamp = Date.now();
97
+ const randomSuffix = Math.random().toString(36).substring(2, 8);
98
+ const promptFile = join(tmpdir(), `docs-prompt-${timestamp}-${randomSuffix}.txt`);
99
+ writeFileSync(promptFile, prompt, 'utf8');
100
+ return promptFile;
101
+ }
102
+ /**
103
+ * Build CLI command using stdin piping (avoids shell escaping issues)
104
+ */
105
+ function buildCliCommand(tool, promptFile, model) {
106
+ const normalizedPath = promptFile.replace(/\\/g, '/');
107
+ const isWindows = process.platform === 'win32';
108
+ // Build the cat/read command based on platform
109
+ const catCmd = isWindows ? `Get-Content -Raw "${normalizedPath}" | ` : `cat "${normalizedPath}" | `;
110
+ switch (tool) {
111
+ case 'qwen':
112
+ return model === 'coder-model'
113
+ ? `${catCmd}qwen --yolo`
114
+ : `${catCmd}qwen -m "${model}" --yolo`;
115
+ case 'codex':
116
+ // codex uses different syntax - prompt as exec argument
117
+ if (isWindows) {
118
+ return `codex --full-auto exec (Get-Content -Raw "${normalizedPath}") -m "${model}" --skip-git-repo-check -s danger-full-access`;
119
+ }
120
+ return `codex --full-auto exec "$(cat "${normalizedPath}")" -m "${model}" --skip-git-repo-check -s danger-full-access`;
121
+ case 'gemini':
122
+ default:
123
+ return `${catCmd}gemini -m "${model}" --yolo`;
124
+ }
125
+ }
126
+ /**
127
+ * Scan directory structure
128
+ */
129
+ function scanDirectoryStructure(targetPath) {
130
+ const lines = [];
131
+ const dirName = basename(targetPath);
132
+ let totalFiles = 0;
133
+ let totalDirs = 0;
134
+ function countRecursive(dir) {
135
+ try {
136
+ const entries = readdirSync(dir, { withFileTypes: true });
137
+ entries.forEach(e => {
138
+ if (e.name.startsWith('.') || EXCLUDE_DIRS.includes(e.name))
139
+ return;
140
+ if (e.isFile())
141
+ totalFiles++;
142
+ else if (e.isDirectory()) {
143
+ totalDirs++;
144
+ countRecursive(join(dir, e.name));
145
+ }
146
+ });
147
+ }
148
+ catch (e) {
149
+ // Ignore
150
+ }
151
+ }
152
+ countRecursive(targetPath);
153
+ const folderType = detectFolderType(targetPath);
154
+ lines.push(`Directory: ${dirName}`);
155
+ lines.push(`Total files: ${totalFiles}`);
156
+ lines.push(`Total directories: ${totalDirs}`);
157
+ lines.push(`Folder type: ${folderType}`);
158
+ return {
159
+ info: lines.join('\n'),
160
+ folderType
161
+ };
162
+ }
163
+ // Tool schema for MCP
164
+ export const schema = {
165
+ name: 'generate_module_docs',
166
+ description: `Generate documentation for modules and projects.
167
+
168
+ Module-Level Strategies:
169
+ - full: Full documentation (API.md + README.md for all directories)
170
+ - single: Single-layer documentation (current directory only)
171
+
172
+ Project-Level Strategies:
173
+ - project-readme: Project overview from module docs
174
+ - project-architecture: System design documentation
175
+ - http-api: HTTP API documentation
176
+
177
+ Output: .workflow/docs/{projectName}/...`,
178
+ inputSchema: {
179
+ type: 'object',
180
+ properties: {
181
+ strategy: {
182
+ type: 'string',
183
+ enum: ['full', 'single', 'project-readme', 'project-architecture', 'http-api'],
184
+ description: 'Documentation strategy'
185
+ },
186
+ sourcePath: {
187
+ type: 'string',
188
+ description: 'Source module directory path'
189
+ },
190
+ projectName: {
191
+ type: 'string',
192
+ description: 'Project name for output path'
193
+ },
194
+ tool: {
195
+ type: 'string',
196
+ enum: ['gemini', 'qwen', 'codex'],
197
+ description: 'CLI tool to use (default: gemini)',
198
+ default: 'gemini'
199
+ },
200
+ model: {
201
+ type: 'string',
202
+ description: 'Model name (optional, uses tool defaults)'
203
+ }
204
+ },
205
+ required: ['strategy', 'sourcePath', 'projectName']
206
+ }
207
+ };
208
+ // Handler function
209
+ export async function handler(params) {
210
+ const parsed = ParamsSchema.safeParse(params);
211
+ if (!parsed.success) {
212
+ return { success: false, error: `Invalid params: ${parsed.error.message}` };
213
+ }
214
+ const { strategy, sourcePath, projectName, tool, model } = parsed.data;
215
+ try {
216
+ const targetPath = resolve(process.cwd(), sourcePath);
217
+ if (!existsSync(targetPath)) {
218
+ return { success: false, error: `Directory not found: ${targetPath}` };
219
+ }
220
+ if (!statSync(targetPath).isDirectory()) {
221
+ return { success: false, error: `Not a directory: ${targetPath}` };
222
+ }
223
+ // Set model (use secondaryModel from config for internal calls)
224
+ let actualModel = model;
225
+ if (!actualModel) {
226
+ try {
227
+ actualModel = getSecondaryModel(process.cwd(), tool);
228
+ }
229
+ catch {
230
+ actualModel = DEFAULT_MODELS[tool] || DEFAULT_MODELS.gemini;
231
+ }
232
+ }
233
+ // Scan directory
234
+ const { info: structureInfo, folderType } = scanDirectoryStructure(targetPath);
235
+ // Calculate output path
236
+ const outputPath = calculateOutputPath(targetPath, projectName, process.cwd());
237
+ // Ensure output directory exists
238
+ mkdirSync(outputPath, { recursive: true });
239
+ // Build prompt based on strategy
240
+ let prompt;
241
+ let templateContent;
242
+ switch (strategy) {
243
+ case 'full':
244
+ case 'single':
245
+ if (folderType === 'code') {
246
+ templateContent = loadTemplate('api');
247
+ prompt = `Directory Structure Analysis:
248
+ ${structureInfo}
249
+
250
+ Read: ${strategy === 'full' ? '@**/*' : '@*.ts @*.tsx @*.js @*.jsx @*.py @*.sh @*.md @*.json'}
251
+
252
+ Generate documentation files:
253
+ - API.md: Code API documentation
254
+ - README.md: Module overview and usage
255
+
256
+ Output directory: ${outputPath}
257
+
258
+ Template Guidelines:
259
+ ${templateContent}`;
260
+ }
261
+ else {
262
+ templateContent = loadTemplate('folder-navigation');
263
+ prompt = `Directory Structure Analysis:
264
+ ${structureInfo}
265
+
266
+ Read: @*/API.md @*/README.md
267
+
268
+ Generate documentation file:
269
+ - README.md: Navigation overview of subdirectories
270
+
271
+ Output directory: ${outputPath}
272
+
273
+ Template Guidelines:
274
+ ${templateContent}`;
275
+ }
276
+ break;
277
+ case 'project-readme':
278
+ templateContent = loadTemplate('project-readme');
279
+ prompt = `Read all module documentation:
280
+ @.workflow/docs/${projectName}/**/API.md
281
+ @.workflow/docs/${projectName}/**/README.md
282
+
283
+ Generate project-level documentation:
284
+ - README.md in .workflow/docs/${projectName}/
285
+
286
+ Template Guidelines:
287
+ ${templateContent}`;
288
+ break;
289
+ case 'project-architecture':
290
+ templateContent = loadTemplate('project-architecture');
291
+ prompt = `Read project documentation:
292
+ @.workflow/docs/${projectName}/README.md
293
+ @.workflow/docs/${projectName}/**/API.md
294
+
295
+ Generate:
296
+ - ARCHITECTURE.md: System design documentation
297
+ - EXAMPLES.md: Usage examples
298
+
299
+ Output directory: .workflow/docs/${projectName}/
300
+
301
+ Template Guidelines:
302
+ ${templateContent}`;
303
+ break;
304
+ case 'http-api':
305
+ prompt = `Read API route files:
306
+ @**/routes/**/*.ts @**/routes/**/*.js
307
+ @**/api/**/*.ts @**/api/**/*.js
308
+
309
+ Generate HTTP API documentation:
310
+ - api/README.md: REST API endpoints documentation
311
+
312
+ Output directory: .workflow/docs/${projectName}/api/`;
313
+ break;
314
+ }
315
+ // Create temporary prompt file (avoids shell escaping issues)
316
+ const promptFile = createPromptFile(prompt);
317
+ // Build command using file-based prompt
318
+ const command = buildCliCommand(tool, promptFile, actualModel);
319
+ // Log execution info
320
+ console.log(`📚 Generating docs: ${sourcePath}`);
321
+ console.log(` Strategy: ${strategy} | Tool: ${tool} | Model: ${actualModel}`);
322
+ console.log(` Output: ${outputPath}`);
323
+ try {
324
+ const startTime = Date.now();
325
+ execSync(command, {
326
+ cwd: targetPath,
327
+ encoding: 'utf8',
328
+ stdio: 'inherit',
329
+ timeout: 600000, // 10 minutes
330
+ shell: process.platform === 'win32' ? 'powershell.exe' : '/bin/bash'
331
+ });
332
+ const duration = Math.round((Date.now() - startTime) / 1000);
333
+ // Cleanup prompt file
334
+ try {
335
+ unlinkSync(promptFile);
336
+ }
337
+ catch (e) {
338
+ // Ignore cleanup errors
339
+ }
340
+ console.log(` ✅ Completed in ${duration}s`);
341
+ return {
342
+ success: true,
343
+ result: {
344
+ success: true,
345
+ strategy,
346
+ source_path: sourcePath,
347
+ project_name: projectName,
348
+ output_path: outputPath,
349
+ folder_type: folderType,
350
+ tool,
351
+ model: actualModel,
352
+ duration_seconds: duration,
353
+ message: `Documentation generated successfully in ${duration}s`
354
+ }
355
+ };
356
+ }
357
+ catch (error) {
358
+ // Cleanup prompt file on error
359
+ try {
360
+ unlinkSync(promptFile);
361
+ }
362
+ catch (e) {
363
+ // Ignore cleanup errors
364
+ }
365
+ console.log(` ❌ Generation failed: ${error.message}`);
366
+ return {
367
+ success: false,
368
+ error: `Documentation generation failed: ${error.message}`
369
+ };
370
+ }
371
+ }
372
+ catch (error) {
373
+ return {
374
+ success: false,
375
+ error: `Tool execution failed: ${error.message}`
376
+ };
377
+ }
378
+ }
379
+ //# sourceMappingURL=generate-module-docs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-module-docs.js","sourceRoot":"","sources":["../../src/tools/generate-module-docs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Get Modules by Depth Tool
3
+ * Scan project structure and organize modules by directory depth (deepest first)
4
+ */
5
+ import type { ToolSchema, ToolResult } from '../types/tool.js';
6
+ interface ToolOutput {
7
+ format: string;
8
+ total_modules: number;
9
+ max_depth: number;
10
+ output: string;
11
+ }
12
+ export declare const schema: ToolSchema;
13
+ export declare function handler(params: Record<string, unknown>): Promise<ToolResult<ToolOutput>>;
14
+ export {};
15
+ //# sourceMappingURL=get-modules-by-depth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-modules-by-depth.d.ts","sourceRoot":"","sources":["../../src/tools/get-modules-by-depth.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AA4D/D,UAAU,UAAU;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB;AAqLD,eAAO,MAAM,MAAM,EAAE,UAsBpB,CAAC;AAGF,wBAAsB,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAuE9F"}