kynjal-cli 3.1.3 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (566) hide show
  1. package/.claude/agents/core/coder.md +1 -1
  2. package/.claude/agents/core/planner.md +2 -2
  3. package/.claude/agents/core/researcher.md +1 -1
  4. package/.claude/agents/core/reviewer.md +1 -1
  5. package/.claude/agents/core/tester.md +1 -1
  6. package/.claude/agents/data/data-ml-model.md +4 -4
  7. package/.claude/agents/development/dev-backend-api.md +4 -4
  8. package/.claude/agents/documentation/docs-api-openapi.md +4 -4
  9. package/.claude/agents/github/code-review-swarm.md +2 -2
  10. package/.claude/agents/github/issue-tracker.md +2 -2
  11. package/.claude/agents/github/pr-manager.md +2 -2
  12. package/.claude/agents/github/release-manager.md +2 -2
  13. package/.claude/agents/github/workflow-automation.md +2 -2
  14. package/.claude/agents/sparc/architecture.md +3 -3
  15. package/.claude/agents/sparc/pseudocode.md +2 -2
  16. package/.claude/agents/sparc/refinement.md +3 -3
  17. package/.claude/agents/sparc/specification.md +2 -2
  18. package/.claude/agents/swarm/adaptive-coordinator.md +1 -1
  19. package/.claude/agents/swarm/hierarchical-coordinator.md +1 -1
  20. package/.claude/agents/swarm/mesh-coordinator.md +1 -1
  21. package/.claude/agents/templates/base-template-generator.md +25 -4
  22. package/.claude/agents/templates/sparc-coordinator.md +3 -3
  23. package/.claude/helpers/auto-commit.sh +1 -1
  24. package/.claude/helpers/auto-memory-hook.mjs +27 -9
  25. package/.claude/helpers/hook-handler.cjs +58 -18
  26. package/.claude/helpers/statusline.cjs +14 -33
  27. package/.claude/helpers/statusline.js +3 -3
  28. package/.claude/settings.json +9 -9
  29. package/.claude/skills/reasoningbank-intelligence/SKILL.md +2 -2
  30. package/.claude/skills/swarm-orchestration/SKILL.md +1 -1
  31. package/README.md +383 -170
  32. package/bin/cli.js +6 -6
  33. package/bin/mcp-server.js +1 -1
  34. package/bin/preinstall.cjs +2 -0
  35. package/dist/src/appliance/gguf-engine.js +664 -0
  36. package/dist/src/appliance/gguf-engine.js.map +1 -0
  37. package/dist/src/appliance/ruvllm-bridge.js +492 -0
  38. package/dist/src/appliance/ruvllm-bridge.js.map +1 -0
  39. package/dist/src/appliance/rvfa-builder.js +383 -0
  40. package/dist/src/appliance/rvfa-builder.js.map +1 -0
  41. package/dist/src/appliance/rvfa-distribution.js +533 -0
  42. package/dist/src/appliance/rvfa-distribution.js.map +1 -0
  43. package/dist/src/appliance/rvfa-format.js +465 -0
  44. package/dist/src/appliance/rvfa-format.js.map +1 -0
  45. package/dist/src/appliance/rvfa-runner.js +373 -0
  46. package/dist/src/appliance/rvfa-runner.js.map +1 -0
  47. package/dist/src/appliance/rvfa-signing.js +469 -0
  48. package/dist/src/appliance/rvfa-signing.js.map +1 -0
  49. package/dist/src/benchmarks/pretrain/index.js +542 -331
  50. package/dist/src/benchmarks/pretrain/index.js.map +1 -1
  51. package/dist/src/commands/agent.d.ts.map +1 -1
  52. package/dist/src/commands/agent.js +725 -502
  53. package/dist/src/commands/agent.js.map +1 -1
  54. package/dist/src/commands/analyze.js +1548 -1218
  55. package/dist/src/commands/analyze.js.map +1 -1
  56. package/dist/src/commands/appliance-advanced.d.ts +9 -0
  57. package/dist/src/commands/appliance-advanced.d.ts.map +1 -0
  58. package/dist/src/commands/appliance-advanced.js +324 -0
  59. package/dist/src/commands/appliance-advanced.js.map +1 -0
  60. package/dist/src/commands/appliance.d.ts +8 -0
  61. package/dist/src/commands/appliance.d.ts.map +1 -0
  62. package/dist/src/commands/appliance.js +581 -0
  63. package/dist/src/commands/appliance.js.map +1 -0
  64. package/dist/src/commands/benchmark.js +523 -372
  65. package/dist/src/commands/benchmark.js.map +1 -1
  66. package/dist/src/commands/claims.js +364 -274
  67. package/dist/src/commands/claims.js.map +1 -1
  68. package/dist/src/commands/cleanup.d.ts +13 -0
  69. package/dist/src/commands/cleanup.d.ts.map +1 -0
  70. package/dist/src/commands/cleanup.js +262 -0
  71. package/dist/src/commands/cleanup.js.map +1 -0
  72. package/dist/src/commands/completions.js +118 -477
  73. package/dist/src/commands/completions.js.map +1 -1
  74. package/dist/src/commands/config.js +303 -237
  75. package/dist/src/commands/config.js.map +1 -1
  76. package/dist/src/commands/daemon.d.ts.map +1 -1
  77. package/dist/src/commands/daemon.js +597 -425
  78. package/dist/src/commands/daemon.js.map +1 -1
  79. package/dist/src/commands/deployment.js +275 -194
  80. package/dist/src/commands/deployment.js.map +1 -1
  81. package/dist/src/commands/doctor.d.ts.map +1 -1
  82. package/dist/src/commands/doctor.js +690 -460
  83. package/dist/src/commands/doctor.js.map +1 -1
  84. package/dist/src/commands/embeddings.js +1543 -1293
  85. package/dist/src/commands/embeddings.js.map +1 -1
  86. package/dist/src/commands/guidance.js +596 -449
  87. package/dist/src/commands/guidance.js.map +1 -1
  88. package/dist/src/commands/hive-mind.js +938 -854
  89. package/dist/src/commands/hive-mind.js.map +1 -1
  90. package/dist/src/commands/hooks.d.ts.map +1 -1
  91. package/dist/src/commands/hooks.js +3677 -2570
  92. package/dist/src/commands/hooks.js.map +1 -1
  93. package/dist/src/commands/index.js +322 -122
  94. package/dist/src/commands/index.js.map +1 -1
  95. package/dist/src/commands/init.d.ts +1 -1
  96. package/dist/src/commands/init.d.ts.map +1 -1
  97. package/dist/src/commands/init.js +943 -787
  98. package/dist/src/commands/init.js.map +1 -1
  99. package/dist/src/commands/issues.js +558 -383
  100. package/dist/src/commands/issues.js.map +1 -1
  101. package/dist/src/commands/mcp.d.ts.map +1 -1
  102. package/dist/src/commands/mcp.js +605 -475
  103. package/dist/src/commands/mcp.js.map +1 -1
  104. package/dist/src/commands/memory.d.ts.map +1 -1
  105. package/dist/src/commands/memory.js +1031 -814
  106. package/dist/src/commands/memory.js.map +1 -1
  107. package/dist/src/commands/migrate.js +347 -282
  108. package/dist/src/commands/migrate.js.map +1 -1
  109. package/dist/src/commands/neural.d.ts.map +1 -1
  110. package/dist/src/commands/neural.js +1563 -1283
  111. package/dist/src/commands/neural.js.map +1 -1
  112. package/dist/src/commands/performance.js +643 -497
  113. package/dist/src/commands/performance.js.map +1 -1
  114. package/dist/src/commands/plugins.js +841 -668
  115. package/dist/src/commands/plugins.js.map +1 -1
  116. package/dist/src/commands/process.js +447 -392
  117. package/dist/src/commands/process.js.map +1 -1
  118. package/dist/src/commands/progress.js +256 -162
  119. package/dist/src/commands/progress.js.map +1 -1
  120. package/dist/src/commands/providers.js +220 -150
  121. package/dist/src/commands/providers.js.map +1 -1
  122. package/dist/src/commands/route.js +665 -520
  123. package/dist/src/commands/route.js.map +1 -1
  124. package/dist/src/commands/ruvector/backup.js +651 -505
  125. package/dist/src/commands/ruvector/backup.js.map +1 -1
  126. package/dist/src/commands/ruvector/benchmark.js +401 -349
  127. package/dist/src/commands/ruvector/benchmark.js.map +1 -1
  128. package/dist/src/commands/ruvector/import.js +267 -225
  129. package/dist/src/commands/ruvector/import.js.map +1 -1
  130. package/dist/src/commands/ruvector/index.js +75 -37
  131. package/dist/src/commands/ruvector/index.js.map +1 -1
  132. package/dist/src/commands/ruvector/init.js +359 -336
  133. package/dist/src/commands/ruvector/init.js.map +1 -1
  134. package/dist/src/commands/ruvector/migrate.js +322 -335
  135. package/dist/src/commands/ruvector/migrate.js.map +1 -1
  136. package/dist/src/commands/ruvector/optimize.js +431 -375
  137. package/dist/src/commands/ruvector/optimize.js.map +1 -1
  138. package/dist/src/commands/ruvector/setup.js +117 -703
  139. package/dist/src/commands/ruvector/setup.js.map +1 -1
  140. package/dist/src/commands/ruvector/status.js +419 -364
  141. package/dist/src/commands/ruvector/status.js.map +1 -1
  142. package/dist/src/commands/security.d.ts.map +1 -1
  143. package/dist/src/commands/security.js +610 -456
  144. package/dist/src/commands/security.js.map +1 -1
  145. package/dist/src/commands/session.d.ts +1 -1
  146. package/dist/src/commands/session.js +627 -505
  147. package/dist/src/commands/session.js.map +1 -1
  148. package/dist/src/commands/start.d.ts +1 -1
  149. package/dist/src/commands/start.js +368 -271
  150. package/dist/src/commands/start.js.map +1 -1
  151. package/dist/src/commands/status.d.ts +1 -1
  152. package/dist/src/commands/status.d.ts.map +1 -1
  153. package/dist/src/commands/status.js +492 -379
  154. package/dist/src/commands/status.js.map +1 -1
  155. package/dist/src/commands/swarm.js +488 -408
  156. package/dist/src/commands/swarm.js.map +1 -1
  157. package/dist/src/commands/task.d.ts +1 -1
  158. package/dist/src/commands/task.js +539 -424
  159. package/dist/src/commands/task.js.map +1 -1
  160. package/dist/src/commands/transfer-store.js +412 -322
  161. package/dist/src/commands/transfer-store.js.map +1 -1
  162. package/dist/src/commands/update.js +291 -196
  163. package/dist/src/commands/update.js.map +1 -1
  164. package/dist/src/commands/workflow.js +486 -386
  165. package/dist/src/commands/workflow.js.map +1 -1
  166. package/dist/src/config-adapter.js +40 -39
  167. package/dist/src/config-adapter.js.map +1 -1
  168. package/dist/src/index.js +416 -312
  169. package/dist/src/index.js.map +1 -1
  170. package/dist/src/infrastructure/in-memory-repositories.js +507 -246
  171. package/dist/src/infrastructure/in-memory-repositories.js.map +1 -1
  172. package/dist/src/init/claudemd-generator.js +78 -368
  173. package/dist/src/init/claudemd-generator.js.map +1 -1
  174. package/dist/src/init/executor.js +1019 -1345
  175. package/dist/src/init/executor.js.map +1 -1
  176. package/dist/src/init/helpers-generator.js +60 -635
  177. package/dist/src/init/helpers-generator.js.map +1 -1
  178. package/dist/src/init/index.d.ts +1 -1
  179. package/dist/src/init/index.d.ts.map +1 -1
  180. package/dist/src/init/index.js +1 -1
  181. package/dist/src/init/index.js.map +1 -1
  182. package/dist/src/init/mcp-generator.d.ts +0 -1
  183. package/dist/src/init/mcp-generator.d.ts.map +1 -1
  184. package/dist/src/init/mcp-generator.js +62 -42
  185. package/dist/src/init/mcp-generator.js.map +1 -1
  186. package/dist/src/init/settings-generator.d.ts.map +1 -1
  187. package/dist/src/init/settings-generator.js +167 -100
  188. package/dist/src/init/settings-generator.js.map +1 -1
  189. package/dist/src/init/statusline-generator.d.ts +16 -8
  190. package/dist/src/init/statusline-generator.d.ts.map +1 -1
  191. package/dist/src/init/statusline-generator.js +20 -1300
  192. package/dist/src/init/statusline-generator.js.map +1 -1
  193. package/dist/src/init/types.d.ts +15 -5
  194. package/dist/src/init/types.d.ts.map +1 -1
  195. package/dist/src/init/types.js +66 -76
  196. package/dist/src/init/types.js.map +1 -1
  197. package/dist/src/mcp-client.js +130 -76
  198. package/dist/src/mcp-client.js.map +1 -1
  199. package/dist/src/mcp-server.js +758 -445
  200. package/dist/src/mcp-server.js.map +1 -1
  201. package/dist/src/mcp-tools/agent-tools.js +492 -391
  202. package/dist/src/mcp-tools/agent-tools.js.map +1 -1
  203. package/dist/src/mcp-tools/agentdb-tools.d.ts +30 -0
  204. package/dist/src/mcp-tools/agentdb-tools.d.ts.map +1 -0
  205. package/dist/src/mcp-tools/agentdb-tools.js +758 -0
  206. package/dist/src/mcp-tools/agentdb-tools.js.map +1 -0
  207. package/dist/src/mcp-tools/analyze-tools.js +236 -172
  208. package/dist/src/mcp-tools/analyze-tools.js.map +1 -1
  209. package/dist/src/mcp-tools/auto-install.js +142 -80
  210. package/dist/src/mcp-tools/auto-install.js.map +1 -1
  211. package/dist/src/mcp-tools/browser-tools.js +375 -252
  212. package/dist/src/mcp-tools/browser-tools.js.map +1 -1
  213. package/dist/src/mcp-tools/claims-tools.js +565 -473
  214. package/dist/src/mcp-tools/claims-tools.js.map +1 -1
  215. package/dist/src/mcp-tools/config-tools.d.ts.map +1 -1
  216. package/dist/src/mcp-tools/config-tools.js +284 -190
  217. package/dist/src/mcp-tools/config-tools.js.map +1 -1
  218. package/dist/src/mcp-tools/coordination-tools.d.ts.map +1 -1
  219. package/dist/src/mcp-tools/coordination-tools.js +600 -349
  220. package/dist/src/mcp-tools/coordination-tools.js.map +1 -1
  221. package/dist/src/mcp-tools/daa-tools.js +367 -289
  222. package/dist/src/mcp-tools/daa-tools.js.map +1 -1
  223. package/dist/src/mcp-tools/embeddings-tools.js +693 -582
  224. package/dist/src/mcp-tools/embeddings-tools.js.map +1 -1
  225. package/dist/src/mcp-tools/github-tools.js +312 -261
  226. package/dist/src/mcp-tools/github-tools.js.map +1 -1
  227. package/dist/src/mcp-tools/hive-mind-tools.d.ts.map +1 -1
  228. package/dist/src/mcp-tools/hive-mind-tools.js +718 -423
  229. package/dist/src/mcp-tools/hive-mind-tools.js.map +1 -1
  230. package/dist/src/mcp-tools/hooks-tools.d.ts.map +1 -1
  231. package/dist/src/mcp-tools/hooks-tools.js +2726 -1978
  232. package/dist/src/mcp-tools/hooks-tools.js.map +1 -1
  233. package/dist/src/mcp-tools/index.d.ts +2 -0
  234. package/dist/src/mcp-tools/index.d.ts.map +1 -1
  235. package/dist/src/mcp-tools/index.js +2 -0
  236. package/dist/src/mcp-tools/index.js.map +1 -1
  237. package/dist/src/mcp-tools/memory-tools.d.ts.map +1 -1
  238. package/dist/src/mcp-tools/memory-tools.js +514 -329
  239. package/dist/src/mcp-tools/memory-tools.js.map +1 -1
  240. package/dist/src/mcp-tools/neural-tools.d.ts.map +1 -1
  241. package/dist/src/mcp-tools/neural-tools.js +428 -326
  242. package/dist/src/mcp-tools/neural-tools.js.map +1 -1
  243. package/dist/src/mcp-tools/performance-tools.js +480 -420
  244. package/dist/src/mcp-tools/performance-tools.js.map +1 -1
  245. package/dist/src/mcp-tools/progress-tools.js +278 -204
  246. package/dist/src/mcp-tools/progress-tools.js.map +1 -1
  247. package/dist/src/mcp-tools/ruvllm-tools.d.ts +9 -0
  248. package/dist/src/mcp-tools/ruvllm-tools.d.ts.map +1 -0
  249. package/dist/src/mcp-tools/ruvllm-tools.js +399 -0
  250. package/dist/src/mcp-tools/ruvllm-tools.js.map +1 -0
  251. package/dist/src/mcp-tools/security-tools.js +429 -297
  252. package/dist/src/mcp-tools/security-tools.js.map +1 -1
  253. package/dist/src/mcp-tools/session-tools.js +234 -185
  254. package/dist/src/mcp-tools/session-tools.js.map +1 -1
  255. package/dist/src/mcp-tools/swarm-tools.d.ts +2 -1
  256. package/dist/src/mcp-tools/swarm-tools.d.ts.map +1 -1
  257. package/dist/src/mcp-tools/swarm-tools.js +303 -64
  258. package/dist/src/mcp-tools/swarm-tools.js.map +1 -1
  259. package/dist/src/mcp-tools/system-tools.d.ts.map +1 -1
  260. package/dist/src/mcp-tools/system-tools.js +352 -200
  261. package/dist/src/mcp-tools/system-tools.js.map +1 -1
  262. package/dist/src/mcp-tools/task-tools.d.ts.map +1 -1
  263. package/dist/src/mcp-tools/task-tools.js +357 -189
  264. package/dist/src/mcp-tools/task-tools.js.map +1 -1
  265. package/dist/src/mcp-tools/terminal-tools.js +196 -148
  266. package/dist/src/mcp-tools/terminal-tools.js.map +1 -1
  267. package/dist/src/mcp-tools/transfer-tools.js +333 -186
  268. package/dist/src/mcp-tools/transfer-tools.js.map +1 -1
  269. package/dist/src/mcp-tools/wasm-agent-tools.d.ts +9 -0
  270. package/dist/src/mcp-tools/wasm-agent-tools.d.ts.map +1 -0
  271. package/dist/src/mcp-tools/wasm-agent-tools.js +377 -0
  272. package/dist/src/mcp-tools/wasm-agent-tools.js.map +1 -0
  273. package/dist/src/mcp-tools/workflow-tools.d.ts.map +1 -1
  274. package/dist/src/mcp-tools/workflow-tools.js +471 -335
  275. package/dist/src/mcp-tools/workflow-tools.js.map +1 -1
  276. package/dist/src/memory/ewc-consolidation.js +345 -173
  277. package/dist/src/memory/ewc-consolidation.js.map +1 -1
  278. package/dist/src/memory/intelligence.js +841 -359
  279. package/dist/src/memory/intelligence.js.map +1 -1
  280. package/dist/src/memory/memory-bridge.js +1964 -0
  281. package/dist/src/memory/memory-bridge.js.map +1 -0
  282. package/dist/src/memory/memory-initializer.js +1895 -1602
  283. package/dist/src/memory/memory-initializer.js.map +1 -1
  284. package/dist/src/memory/sona-optimizer.js +329 -199
  285. package/dist/src/memory/sona-optimizer.js.map +1 -1
  286. package/dist/src/output.d.ts +2 -2
  287. package/dist/src/output.d.ts.map +1 -1
  288. package/dist/src/output.js +273 -242
  289. package/dist/src/output.js.map +1 -1
  290. package/dist/src/parser.js +217 -124
  291. package/dist/src/parser.js.map +1 -1
  292. package/dist/src/plugins/manager.js +531 -278
  293. package/dist/src/plugins/manager.js.map +1 -1
  294. package/dist/src/plugins/store/discovery.js +362 -275
  295. package/dist/src/plugins/store/discovery.js.map +1 -1
  296. package/dist/src/plugins/store/index.js +105 -48
  297. package/dist/src/plugins/store/index.js.map +1 -1
  298. package/dist/src/plugins/store/search.js +107 -69
  299. package/dist/src/plugins/store/search.js.map +1 -1
  300. package/dist/src/plugins/tests/demo-plugin-store.js +160 -113
  301. package/dist/src/plugins/tests/demo-plugin-store.js.map +1 -1
  302. package/dist/src/plugins/tests/standalone-test.js +223 -172
  303. package/dist/src/plugins/tests/standalone-test.js.map +1 -1
  304. package/dist/src/plugins/tests/test-plugin-store.js +228 -190
  305. package/dist/src/plugins/tests/test-plugin-store.js.map +1 -1
  306. package/dist/src/production/circuit-breaker.js +126 -62
  307. package/dist/src/production/circuit-breaker.js.map +1 -1
  308. package/dist/src/production/error-handler.js +156 -86
  309. package/dist/src/production/error-handler.js.map +1 -1
  310. package/dist/src/production/monitoring.js +220 -139
  311. package/dist/src/production/monitoring.js.map +1 -1
  312. package/dist/src/production/rate-limiter.js +93 -74
  313. package/dist/src/production/rate-limiter.js.map +1 -1
  314. package/dist/src/production/retry.js +167 -75
  315. package/dist/src/production/retry.js.map +1 -1
  316. package/dist/src/prompt.js +560 -436
  317. package/dist/src/prompt.js.map +1 -1
  318. package/dist/src/runtime/headless.js +289 -200
  319. package/dist/src/runtime/headless.js.map +1 -1
  320. package/dist/src/ruvector/agent-wasm.js +511 -0
  321. package/dist/src/ruvector/agent-wasm.js.map +1 -0
  322. package/dist/src/ruvector/ast-analyzer.js +232 -145
  323. package/dist/src/ruvector/ast-analyzer.js.map +1 -1
  324. package/dist/src/ruvector/coverage-router.js +419 -287
  325. package/dist/src/ruvector/coverage-router.js.map +1 -1
  326. package/dist/src/ruvector/coverage-tools.js +101 -56
  327. package/dist/src/ruvector/coverage-tools.js.map +1 -1
  328. package/dist/src/ruvector/diff-classifier.js +451 -324
  329. package/dist/src/ruvector/diff-classifier.js.map +1 -1
  330. package/dist/src/ruvector/enhanced-model-router.js +337 -251
  331. package/dist/src/ruvector/enhanced-model-router.js.map +1 -1
  332. package/dist/src/ruvector/flash-attention.js +254 -223
  333. package/dist/src/ruvector/flash-attention.js.map +1 -1
  334. package/dist/src/ruvector/graph-analyzer.js +680 -486
  335. package/dist/src/ruvector/graph-analyzer.js.map +1 -1
  336. package/dist/src/ruvector/index.js +113 -27
  337. package/dist/src/ruvector/index.js.map +1 -1
  338. package/dist/src/ruvector/lora-adapter.js +248 -155
  339. package/dist/src/ruvector/lora-adapter.js.map +1 -1
  340. package/dist/src/ruvector/model-router.js +248 -175
  341. package/dist/src/ruvector/model-router.js.map +1 -1
  342. package/dist/src/ruvector/moe-router.js +286 -228
  343. package/dist/src/ruvector/moe-router.js.map +1 -1
  344. package/dist/src/ruvector/q-learning-router.js +338 -257
  345. package/dist/src/ruvector/q-learning-router.js.map +1 -1
  346. package/dist/src/ruvector/ruvllm-wasm.js +527 -0
  347. package/dist/src/ruvector/ruvllm-wasm.js.map +1 -0
  348. package/dist/src/ruvector/semantic-router.js +67 -60
  349. package/dist/src/ruvector/semantic-router.js.map +1 -1
  350. package/dist/src/ruvector/vector-db.js +205 -119
  351. package/dist/src/ruvector/vector-db.js.map +1 -1
  352. package/dist/src/services/agentic-flow-bridge.js +168 -0
  353. package/dist/src/services/agentic-flow-bridge.js.map +1 -0
  354. package/dist/src/services/claim-service.js +940 -615
  355. package/dist/src/services/claim-service.js.map +1 -1
  356. package/dist/src/services/container-worker-pool.js +669 -399
  357. package/dist/src/services/container-worker-pool.js.map +1 -1
  358. package/dist/src/services/headless-worker-executor.js +467 -441
  359. package/dist/src/services/headless-worker-executor.js.map +1 -1
  360. package/dist/src/services/index.d.ts +5 -5
  361. package/dist/src/services/index.d.ts.map +1 -1
  362. package/dist/src/services/index.js +4 -4
  363. package/dist/src/services/index.js.map +1 -1
  364. package/dist/src/services/registry-api.js +201 -93
  365. package/dist/src/services/registry-api.js.map +1 -1
  366. package/dist/src/services/ruvector-training.js +414 -144
  367. package/dist/src/services/ruvector-training.js.map +1 -1
  368. package/dist/src/services/worker-daemon.js +928 -531
  369. package/dist/src/services/worker-daemon.js.map +1 -1
  370. package/dist/src/services/worker-queue.js +550 -331
  371. package/dist/src/services/worker-queue.js.map +1 -1
  372. package/dist/src/suggest.js +55 -45
  373. package/dist/src/suggest.js.map +1 -1
  374. package/dist/src/transfer/anonymization/index.js +37 -29
  375. package/dist/src/transfer/anonymization/index.js.map +1 -1
  376. package/dist/src/transfer/deploy-seraphine.d.ts +1 -1
  377. package/dist/src/transfer/deploy-seraphine.js +156 -129
  378. package/dist/src/transfer/deploy-seraphine.js.map +1 -1
  379. package/dist/src/transfer/export.js +142 -84
  380. package/dist/src/transfer/export.js.map +1 -1
  381. package/dist/src/transfer/index.d.ts +1 -1
  382. package/dist/src/transfer/index.d.ts.map +1 -1
  383. package/dist/src/transfer/index.js +2 -0
  384. package/dist/src/transfer/index.js.map +1 -1
  385. package/dist/src/transfer/ipfs/client.js +337 -179
  386. package/dist/src/transfer/ipfs/client.js.map +1 -1
  387. package/dist/src/transfer/ipfs/upload.js +434 -290
  388. package/dist/src/transfer/ipfs/upload.js.map +1 -1
  389. package/dist/src/transfer/models/seraphine.js +58 -58
  390. package/dist/src/transfer/models/seraphine.js.map +1 -1
  391. package/dist/src/transfer/serialization/cfp.js +37 -33
  392. package/dist/src/transfer/serialization/cfp.js.map +1 -1
  393. package/dist/src/transfer/storage/gcs.js +248 -139
  394. package/dist/src/transfer/storage/gcs.js.map +1 -1
  395. package/dist/src/transfer/store/discovery.js +353 -243
  396. package/dist/src/transfer/store/discovery.js.map +1 -1
  397. package/dist/src/transfer/store/download.js +365 -243
  398. package/dist/src/transfer/store/download.js.map +1 -1
  399. package/dist/src/transfer/store/index.js +130 -63
  400. package/dist/src/transfer/store/index.js.map +1 -1
  401. package/dist/src/transfer/store/publish.js +258 -184
  402. package/dist/src/transfer/store/publish.js.map +1 -1
  403. package/dist/src/transfer/store/registry.js +73 -51
  404. package/dist/src/transfer/store/registry.js.map +1 -1
  405. package/dist/src/transfer/store/search.js +96 -64
  406. package/dist/src/transfer/store/search.js.map +1 -1
  407. package/dist/src/transfer/store/tests/standalone-test.js +231 -174
  408. package/dist/src/transfer/store/tests/standalone-test.js.map +1 -1
  409. package/dist/src/transfer/test-seraphine.js +130 -95
  410. package/dist/src/transfer/test-seraphine.js.map +1 -1
  411. package/dist/src/transfer/tests/test-store.js +239 -194
  412. package/dist/src/transfer/tests/test-store.js.map +1 -1
  413. package/dist/src/types.js +56 -27
  414. package/dist/src/types.js.map +1 -1
  415. package/dist/src/update/checker.js +183 -106
  416. package/dist/src/update/checker.js.map +1 -1
  417. package/dist/src/update/executor.js +198 -135
  418. package/dist/src/update/executor.js.map +1 -1
  419. package/dist/src/update/index.js +85 -38
  420. package/dist/src/update/index.js.map +1 -1
  421. package/dist/src/update/rate-limiter.js +31 -19
  422. package/dist/src/update/rate-limiter.js.map +1 -1
  423. package/dist/src/update/validator.js +64 -38
  424. package/dist/src/update/validator.js.map +1 -1
  425. package/dist/tsconfig.tsbuildinfo +1 -1
  426. package/package.json +13 -10
  427. package/.claude/agents/custom/accessibility-auditor.yaml +0 -56
  428. package/.claude/agents/custom/design-architect.yaml +0 -48
  429. package/.claude/agents/custom/ui-developer.yaml +0 -46
  430. package/.claude/agents/custom/ux-researcher.yaml +0 -60
  431. package/dist/src/benchmarks/pretrain/index.d.ts +0 -58
  432. package/dist/src/benchmarks/pretrain/index.d.ts.map +0 -1
  433. package/dist/src/commands/index.d.ts +0 -108
  434. package/dist/src/commands/index.d.ts.map +0 -1
  435. package/dist/src/config-adapter.d.ts +0 -15
  436. package/dist/src/config-adapter.d.ts.map +0 -1
  437. package/dist/src/index.d.ts +0 -76
  438. package/dist/src/index.d.ts.map +0 -1
  439. package/dist/src/infrastructure/in-memory-repositories.d.ts +0 -68
  440. package/dist/src/infrastructure/in-memory-repositories.d.ts.map +0 -1
  441. package/dist/src/init/claudemd-generator.d.ts +0 -25
  442. package/dist/src/init/claudemd-generator.d.ts.map +0 -1
  443. package/dist/src/init/executor.d.ts +0 -41
  444. package/dist/src/init/executor.d.ts.map +0 -1
  445. package/dist/src/init/helpers-generator.d.ts +0 -60
  446. package/dist/src/init/helpers-generator.d.ts.map +0 -1
  447. package/dist/src/mcp-client.d.ts +0 -92
  448. package/dist/src/mcp-client.d.ts.map +0 -1
  449. package/dist/src/mcp-server.d.ts +0 -161
  450. package/dist/src/mcp-server.d.ts.map +0 -1
  451. package/dist/src/mcp-tools/auto-install.d.ts +0 -83
  452. package/dist/src/mcp-tools/auto-install.d.ts.map +0 -1
  453. package/dist/src/mcp-tools/types.d.ts +0 -31
  454. package/dist/src/mcp-tools/types.d.ts.map +0 -1
  455. package/dist/src/memory/ewc-consolidation.d.ts +0 -271
  456. package/dist/src/memory/ewc-consolidation.d.ts.map +0 -1
  457. package/dist/src/memory/intelligence.d.ts +0 -285
  458. package/dist/src/memory/intelligence.d.ts.map +0 -1
  459. package/dist/src/memory/memory-initializer.d.ts +0 -396
  460. package/dist/src/memory/memory-initializer.d.ts.map +0 -1
  461. package/dist/src/memory/sona-optimizer.d.ts +0 -227
  462. package/dist/src/memory/sona-optimizer.d.ts.map +0 -1
  463. package/dist/src/parser.d.ts +0 -41
  464. package/dist/src/parser.d.ts.map +0 -1
  465. package/dist/src/plugins/manager.d.ts +0 -133
  466. package/dist/src/plugins/manager.d.ts.map +0 -1
  467. package/dist/src/plugins/store/discovery.d.ts +0 -88
  468. package/dist/src/plugins/store/discovery.d.ts.map +0 -1
  469. package/dist/src/plugins/store/index.d.ts +0 -76
  470. package/dist/src/plugins/store/index.d.ts.map +0 -1
  471. package/dist/src/plugins/store/search.d.ts +0 -46
  472. package/dist/src/plugins/store/search.d.ts.map +0 -1
  473. package/dist/src/plugins/store/types.d.ts +0 -274
  474. package/dist/src/plugins/store/types.d.ts.map +0 -1
  475. package/dist/src/production/circuit-breaker.d.ts +0 -101
  476. package/dist/src/production/circuit-breaker.d.ts.map +0 -1
  477. package/dist/src/production/error-handler.d.ts +0 -92
  478. package/dist/src/production/error-handler.d.ts.map +0 -1
  479. package/dist/src/production/monitoring.d.ts +0 -161
  480. package/dist/src/production/monitoring.d.ts.map +0 -1
  481. package/dist/src/production/rate-limiter.d.ts +0 -80
  482. package/dist/src/production/rate-limiter.d.ts.map +0 -1
  483. package/dist/src/production/retry.d.ts +0 -48
  484. package/dist/src/production/retry.d.ts.map +0 -1
  485. package/dist/src/prompt.d.ts +0 -44
  486. package/dist/src/prompt.d.ts.map +0 -1
  487. package/dist/src/runtime/headless.d.ts +0 -60
  488. package/dist/src/runtime/headless.d.ts.map +0 -1
  489. package/dist/src/ruvector/ast-analyzer.d.ts +0 -67
  490. package/dist/src/ruvector/ast-analyzer.d.ts.map +0 -1
  491. package/dist/src/ruvector/coverage-router.d.ts +0 -160
  492. package/dist/src/ruvector/coverage-router.d.ts.map +0 -1
  493. package/dist/src/ruvector/diff-classifier.d.ts +0 -175
  494. package/dist/src/ruvector/diff-classifier.d.ts.map +0 -1
  495. package/dist/src/ruvector/enhanced-model-router.d.ts +0 -146
  496. package/dist/src/ruvector/enhanced-model-router.d.ts.map +0 -1
  497. package/dist/src/ruvector/flash-attention.d.ts +0 -195
  498. package/dist/src/ruvector/flash-attention.d.ts.map +0 -1
  499. package/dist/src/ruvector/graph-analyzer.d.ts +0 -187
  500. package/dist/src/ruvector/graph-analyzer.d.ts.map +0 -1
  501. package/dist/src/ruvector/index.d.ts +0 -34
  502. package/dist/src/ruvector/index.d.ts.map +0 -1
  503. package/dist/src/ruvector/lora-adapter.d.ts +0 -218
  504. package/dist/src/ruvector/lora-adapter.d.ts.map +0 -1
  505. package/dist/src/ruvector/model-router.d.ts +0 -220
  506. package/dist/src/ruvector/model-router.d.ts.map +0 -1
  507. package/dist/src/ruvector/moe-router.d.ts +0 -206
  508. package/dist/src/ruvector/moe-router.d.ts.map +0 -1
  509. package/dist/src/ruvector/q-learning-router.d.ts +0 -211
  510. package/dist/src/ruvector/q-learning-router.d.ts.map +0 -1
  511. package/dist/src/ruvector/semantic-router.d.ts +0 -77
  512. package/dist/src/ruvector/semantic-router.d.ts.map +0 -1
  513. package/dist/src/ruvector/vector-db.d.ts +0 -69
  514. package/dist/src/ruvector/vector-db.d.ts.map +0 -1
  515. package/dist/src/services/claim-service.d.ts +0 -204
  516. package/dist/src/services/claim-service.d.ts.map +0 -1
  517. package/dist/src/services/container-worker-pool.d.ts +0 -197
  518. package/dist/src/services/container-worker-pool.d.ts.map +0 -1
  519. package/dist/src/services/headless-worker-executor.d.ts +0 -304
  520. package/dist/src/services/headless-worker-executor.d.ts.map +0 -1
  521. package/dist/src/services/registry-api.d.ts +0 -58
  522. package/dist/src/services/registry-api.d.ts.map +0 -1
  523. package/dist/src/services/ruvector-training.d.ts +0 -213
  524. package/dist/src/services/ruvector-training.d.ts.map +0 -1
  525. package/dist/src/services/worker-daemon.d.ts +0 -203
  526. package/dist/src/services/worker-daemon.d.ts.map +0 -1
  527. package/dist/src/services/worker-queue.d.ts +0 -194
  528. package/dist/src/services/worker-queue.d.ts.map +0 -1
  529. package/dist/src/suggest.d.ts +0 -53
  530. package/dist/src/suggest.d.ts.map +0 -1
  531. package/dist/src/transfer/export.d.ts +0 -25
  532. package/dist/src/transfer/export.d.ts.map +0 -1
  533. package/dist/src/transfer/ipfs/client.d.ts +0 -109
  534. package/dist/src/transfer/ipfs/client.d.ts.map +0 -1
  535. package/dist/src/transfer/ipfs/upload.d.ts +0 -95
  536. package/dist/src/transfer/ipfs/upload.d.ts.map +0 -1
  537. package/dist/src/transfer/models/seraphine.d.ts +0 -72
  538. package/dist/src/transfer/models/seraphine.d.ts.map +0 -1
  539. package/dist/src/transfer/serialization/cfp.d.ts +0 -49
  540. package/dist/src/transfer/serialization/cfp.d.ts.map +0 -1
  541. package/dist/src/transfer/storage/gcs.d.ts +0 -82
  542. package/dist/src/transfer/storage/gcs.d.ts.map +0 -1
  543. package/dist/src/transfer/store/discovery.d.ts +0 -84
  544. package/dist/src/transfer/store/discovery.d.ts.map +0 -1
  545. package/dist/src/transfer/store/download.d.ts +0 -70
  546. package/dist/src/transfer/store/download.d.ts.map +0 -1
  547. package/dist/src/transfer/store/index.d.ts +0 -84
  548. package/dist/src/transfer/store/index.d.ts.map +0 -1
  549. package/dist/src/transfer/store/publish.d.ts +0 -76
  550. package/dist/src/transfer/store/publish.d.ts.map +0 -1
  551. package/dist/src/transfer/store/search.d.ts +0 -54
  552. package/dist/src/transfer/store/search.d.ts.map +0 -1
  553. package/dist/src/transfer/types.d.ts +0 -245
  554. package/dist/src/transfer/types.d.ts.map +0 -1
  555. package/dist/src/types.d.ts +0 -198
  556. package/dist/src/types.d.ts.map +0 -1
  557. package/dist/src/update/checker.d.ts +0 -34
  558. package/dist/src/update/checker.d.ts.map +0 -1
  559. package/dist/src/update/executor.d.ts +0 -32
  560. package/dist/src/update/executor.d.ts.map +0 -1
  561. package/dist/src/update/index.d.ts +0 -33
  562. package/dist/src/update/index.d.ts.map +0 -1
  563. package/dist/src/update/rate-limiter.d.ts +0 -20
  564. package/dist/src/update/rate-limiter.d.ts.map +0 -1
  565. package/dist/src/update/validator.d.ts +0 -17
  566. package/dist/src/update/validator.d.ts.map +0 -1
package/dist/src/index.js CHANGED
@@ -1,9 +1,54 @@
1
1
  /**
2
2
  * V3 CLI Main Entry Point
3
- * Modernized CLI for KynjalFlow V3
3
+ * Modernized CLI for RuFlo V3
4
4
  *
5
5
  * Created with ❤️ by ruv.io
6
6
  */
7
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
8
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
9
+ return new (P || (P = Promise))(function (resolve, reject) {
10
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
11
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
12
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
13
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
14
+ });
15
+ };
16
+ var __generator = (this && this.__generator) || function (thisArg, body) {
17
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
18
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
19
+ function verb(n) { return function (v) { return step([n, v]); }; }
20
+ function step(op) {
21
+ if (f) throw new TypeError("Generator is already executing.");
22
+ while (_) try {
23
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
24
+ if (y = 0, t) op = [op[0] & 2, t.value];
25
+ switch (op[0]) {
26
+ case 0: case 1: t = op; break;
27
+ case 4: _.label++; return { value: op[1], done: false };
28
+ case 5: _.label++; y = op[1]; op = [0]; continue;
29
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
30
+ default:
31
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
32
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
33
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
34
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
35
+ if (t[2]) _.ops.pop();
36
+ _.trys.pop(); continue;
37
+ }
38
+ op = body.call(thisArg, _);
39
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
40
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
41
+ }
42
+ };
43
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
44
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
45
+ if (ar || !(i in from)) {
46
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
47
+ ar[i] = from[i];
48
+ }
49
+ }
50
+ return to.concat(ar || Array.prototype.slice.call(from));
51
+ };
7
52
  import { readFileSync } from 'fs';
8
53
  import { fileURLToPath } from 'url';
9
54
  import { dirname, join } from 'path';
@@ -15,267 +60,285 @@ import { runStartupUpdateCheck } from './update/index.js';
15
60
  // Read version from package.json at runtime
16
61
  function getPackageVersion() {
17
62
  try {
18
- const __filename = fileURLToPath(import.meta.url);
19
- const __dirname = dirname(__filename);
63
+ var __filename = fileURLToPath(import.meta.url);
64
+ var __dirname = dirname(__filename);
20
65
  // Navigate from dist/src to package root
21
- const pkgPath = join(__dirname, '..', '..', 'package.json');
22
- const pkg = JSON.parse(readFileSync(pkgPath, 'utf-8'));
66
+ var pkgPath = join(__dirname, '..', '..', 'package.json');
67
+ var pkg = JSON.parse(readFileSync(pkgPath, 'utf-8'));
23
68
  return pkg.version || '3.0.0';
24
69
  }
25
- catch {
70
+ catch (_a) {
26
71
  return '3.0.0';
27
72
  }
28
73
  }
29
- export const VERSION = getPackageVersion();
74
+ export var VERSION = getPackageVersion();
30
75
  /**
31
76
  * V3 CLI Application
32
77
  */
33
- export class CLI {
34
- name;
35
- description;
36
- version;
37
- parser;
38
- output;
39
- interactive;
40
- constructor(options = {}) {
41
- this.name = options.name || 'kynjalflow';
42
- this.description = options.description || 'KynjalFlow V3 - AI Agent Orchestration Platform';
78
+ var CLI = /** @class */ (function () {
79
+ function CLI(options) {
80
+ if (options === void 0) { options = {}; }
81
+ var _a, _b;
82
+ this.name = options.name || 'ruflo';
83
+ this.description = options.description || 'RuFlo V3 - AI Agent Orchestration Platform';
43
84
  this.version = options.version || VERSION;
44
85
  this.parser = commandParser;
45
86
  this.output = output;
46
- this.interactive = options.interactive ?? process.stdin.isTTY ?? false;
87
+ this.interactive = (_b = (_a = options.interactive) !== null && _a !== void 0 ? _a : process.stdin.isTTY) !== null && _b !== void 0 ? _b : false;
47
88
  // Register all commands
48
- for (const cmd of commands) {
89
+ for (var _i = 0, commands_1 = commands; _i < commands_1.length; _i++) {
90
+ var cmd = commands_1[_i];
49
91
  this.parser.registerCommand(cmd);
50
92
  }
51
93
  }
52
94
  /**
53
95
  * Run the CLI with given arguments
54
96
  */
55
- async run(args = process.argv.slice(2)) {
56
- try {
57
- // Parse arguments
58
- const parseResult = this.parser.parse(args);
59
- const { command: commandPath, flags, positional } = parseResult;
60
- // Handle global flags
61
- if (flags.version || flags.V) {
62
- this.showVersion();
63
- return;
64
- }
65
- if (flags.noColor) {
66
- this.output.setColorEnabled(false);
67
- }
68
- // Set verbosity level based on flags
69
- if (flags.quiet) {
70
- this.output.setVerbosity('quiet');
71
- }
72
- else if (flags.verbose) {
73
- this.output.setVerbosity(process.env.DEBUG ? 'debug' : 'verbose');
74
- }
75
- // Verbose mode: show parsed arguments
76
- if (this.output.isVerbose()) {
77
- this.output.printDebug(`Command: ${commandPath.join(' ') || '(none)'}`);
78
- this.output.printDebug(`Positional: [${positional.join(', ')}]`);
79
- this.output.printDebug(`Flags: ${JSON.stringify(Object.fromEntries(Object.entries(flags).filter(([k]) => k !== '_')))}`);
80
- this.output.printDebug(`CWD: ${process.cwd()}`);
81
- }
82
- // Run startup update check (non-blocking, silent on skip)
83
- if (!flags.noUpdate && commandPath[0] !== 'update') {
84
- this.checkForUpdatesOnStartup().catch(() => { });
85
- }
86
- // Handle lazy-loaded commands that weren't recognized by the parser
87
- // If commandPath is empty but positional has a command name, check if it's lazy-loadable
88
- if (commandPath.length === 0 && positional.length > 0 && !positional[0].startsWith('-')) {
89
- const potentialCommand = positional[0];
90
- if (hasCommand(potentialCommand)) {
91
- // This is a lazy-loaded command, treat it as the command
92
- commandPath.push(potentialCommand);
93
- positional.shift();
94
- }
95
- }
96
- // No command - show help or suggest correction
97
- if (commandPath.length === 0 || flags.help || flags.h) {
98
- if (commandPath.length > 0) {
99
- // Show command-specific help
100
- await this.showCommandHelp(commandPath[0]);
101
- }
102
- else if (positional.length > 0 && !positional[0].startsWith('-')) {
103
- // First positional looks like an attempted command - suggest correction
104
- const attemptedCommand = positional[0];
105
- this.output.printError(`Unknown command: ${attemptedCommand}`);
106
- const availableCommands = Array.from(new Set([...commands.map(c => c.name), ...getCommandNames()]));
107
- const { message } = suggestCommand(attemptedCommand, availableCommands);
108
- this.output.writeln(this.output.dim(` ${message}`));
109
- process.exit(1);
110
- }
111
- else {
112
- this.showHelp();
113
- }
114
- return;
115
- }
116
- // Find and execute command
117
- const commandName = commandPath[0];
118
- // First check the parser's registry (for dynamically registered commands)
119
- // Then fall back to the static registry, then try lazy loading
120
- let command = this.parser.getCommand(commandName) || getCommand(commandName);
121
- // If not found in sync registry, try lazy loading
122
- if (!command && hasCommand(commandName)) {
123
- command = await getCommandAsync(commandName);
124
- }
125
- if (!command) {
126
- this.output.printError(`Unknown command: ${commandName}`);
127
- // Smart suggestions - include lazy-loadable commands in suggestions
128
- const availableCommands = Array.from(new Set([...commands.map(c => c.name), ...getCommandNames()]));
129
- const { message } = suggestCommand(commandName, availableCommands);
130
- this.output.writeln(this.output.dim(` ${message}`));
131
- process.exit(1);
132
- }
133
- // Handle subcommand (supports nested subcommands)
134
- let targetCommand = command;
135
- let subcommandArgs = positional;
136
- // Process command path (e.g., ['hooks', 'worker', 'list'])
137
- // Note: When parser includes subcommand in commandPath, positional already excludes it
138
- if (commandPath.length > 1 && command.subcommands) {
139
- const subcommandName = commandPath[1];
140
- const subcommand = command.subcommands.find(sc => sc.name === subcommandName || sc.aliases?.includes(subcommandName));
141
- if (subcommand) {
142
- targetCommand = subcommand;
143
- // Parser already extracted subcommand from positional, so use as-is
144
- subcommandArgs = positional;
145
- // Check for nested subcommand (level 2)
146
- if (commandPath.length > 2 && subcommand.subcommands) {
147
- const nestedName = commandPath[2];
148
- const nestedSubcommand = subcommand.subcommands.find(sc => sc.name === nestedName || sc.aliases?.includes(nestedName));
149
- if (nestedSubcommand) {
150
- targetCommand = nestedSubcommand;
151
- // Parser already extracted nested subcommand too
152
- subcommandArgs = positional;
97
+ CLI.prototype.run = function (args) {
98
+ if (args === void 0) { args = process.argv.slice(2); }
99
+ return __awaiter(this, void 0, Promise, function () {
100
+ var parseResult, commandPath, flags, positional, potentialCommand, attemptedCommand, availableCommands, message, commandName, command, availableCommands, message, targetCommand, subcommandArgs, subcommandName_1, subcommand, nestedName_1, nestedSubcommand, subcommandName_2, subcommand, nestedName_2, nestedSubcommand, validationErrors, _i, validationErrors_1, error, ctx, startTime, result, error_1, errorMessage;
101
+ var _a;
102
+ return __generator(this, function (_b) {
103
+ switch (_b.label) {
104
+ case 0:
105
+ _b.trys.push([0, 11, , 12]);
106
+ parseResult = this.parser.parse(args);
107
+ commandPath = parseResult.command, flags = parseResult.flags, positional = parseResult.positional;
108
+ // Handle global flags
109
+ if (flags.version || flags.V) {
110
+ this.showVersion();
111
+ return [2 /*return*/];
153
112
  }
154
- }
155
- }
156
- }
157
- else if (positional.length > 0 && command.subcommands) {
158
- // Check if first positional is a subcommand
159
- const subcommandName = positional[0];
160
- const subcommand = command.subcommands.find(sc => sc.name === subcommandName || sc.aliases?.includes(subcommandName));
161
- if (subcommand) {
162
- targetCommand = subcommand;
163
- subcommandArgs = positional.slice(1);
164
- // Check for nested subcommand (level 2 from positional)
165
- if (subcommandArgs.length > 0 && subcommand.subcommands) {
166
- const nestedName = subcommandArgs[0];
167
- const nestedSubcommand = subcommand.subcommands.find(sc => sc.name === nestedName || sc.aliases?.includes(nestedName));
168
- if (nestedSubcommand) {
169
- targetCommand = nestedSubcommand;
170
- subcommandArgs = subcommandArgs.slice(1);
113
+ if (flags.noColor) {
114
+ this.output.setColorEnabled(false);
171
115
  }
172
- }
173
- }
174
- }
175
- // Validate flags
176
- const validationErrors = this.parser.validateFlags(flags, targetCommand);
177
- if (validationErrors.length > 0) {
178
- for (const error of validationErrors) {
179
- this.output.printError(error);
180
- }
181
- process.exit(1);
182
- }
183
- // Build context
184
- const ctx = {
185
- args: subcommandArgs,
186
- flags,
187
- config: await this.loadConfig(flags.config),
188
- cwd: process.cwd(),
189
- interactive: this.interactive && !flags.quiet
190
- };
191
- // Execute command
192
- if (targetCommand.action) {
193
- if (this.output.isVerbose()) {
194
- this.output.printDebug(`Executing: ${targetCommand.name}`);
195
- }
196
- const startTime = Date.now();
197
- const result = await targetCommand.action(ctx);
198
- if (this.output.isVerbose()) {
199
- this.output.printDebug(`Completed in ${Date.now() - startTime}ms`);
200
- }
201
- if (result && !result.success) {
202
- process.exit(result.exitCode || 1);
116
+ // Set verbosity level based on flags
117
+ if (flags.quiet) {
118
+ this.output.setVerbosity('quiet');
119
+ }
120
+ else if (flags.verbose) {
121
+ this.output.setVerbosity(process.env.DEBUG ? 'debug' : 'verbose');
122
+ }
123
+ // Verbose mode: show parsed arguments
124
+ if (this.output.isVerbose()) {
125
+ this.output.printDebug("Command: " + (commandPath.join(' ') || '(none)'));
126
+ this.output.printDebug("Positional: [" + positional.join(', ') + "]");
127
+ this.output.printDebug("Flags: " + JSON.stringify(Object.fromEntries(Object.entries(flags).filter(function (_a) {
128
+ var k = _a[0];
129
+ return k !== '_';
130
+ }))));
131
+ this.output.printDebug("CWD: " + process.cwd());
132
+ }
133
+ // Run startup update check (non-blocking, silent on skip)
134
+ if (!flags.noUpdate && commandPath[0] !== 'update') {
135
+ this.checkForUpdatesOnStartup()["catch"](function () { });
136
+ }
137
+ // Handle lazy-loaded commands that weren't recognized by the parser
138
+ // If commandPath is empty but positional has a command name, check if it's lazy-loadable
139
+ if (commandPath.length === 0 && positional.length > 0 && !positional[0].startsWith('-')) {
140
+ potentialCommand = positional[0];
141
+ if (hasCommand(potentialCommand)) {
142
+ // This is a lazy-loaded command, treat it as the command
143
+ commandPath.push(potentialCommand);
144
+ positional.shift();
145
+ }
146
+ }
147
+ if (!(commandPath.length === 0 || flags.help || flags.h)) return [3 /*break*/, 4];
148
+ if (!(commandPath.length > 0)) return [3 /*break*/, 2];
149
+ // Show command-specific help
150
+ return [4 /*yield*/, this.showCommandHelp(commandPath[0])];
151
+ case 1:
152
+ // Show command-specific help
153
+ _b.sent();
154
+ return [3 /*break*/, 3];
155
+ case 2:
156
+ if (positional.length > 0 && !positional[0].startsWith('-')) {
157
+ attemptedCommand = positional[0];
158
+ this.output.printError("Unknown command: " + attemptedCommand);
159
+ availableCommands = Array.from(new Set(__spreadArray(__spreadArray([], commands.map(function (c) { return c.name; }), true), getCommandNames(), true)));
160
+ message = suggestCommand(attemptedCommand, availableCommands).message;
161
+ this.output.writeln(this.output.dim(" " + message));
162
+ process.exit(1);
163
+ }
164
+ else {
165
+ this.showHelp();
166
+ }
167
+ _b.label = 3;
168
+ case 3: return [2 /*return*/];
169
+ case 4:
170
+ commandName = commandPath[0];
171
+ command = this.parser.getCommand(commandName) || getCommand(commandName);
172
+ if (!(!command && hasCommand(commandName))) return [3 /*break*/, 6];
173
+ return [4 /*yield*/, getCommandAsync(commandName)];
174
+ case 5:
175
+ command = _b.sent();
176
+ _b.label = 6;
177
+ case 6:
178
+ if (!command) {
179
+ this.output.printError("Unknown command: " + commandName);
180
+ availableCommands = Array.from(new Set(__spreadArray(__spreadArray([], commands.map(function (c) { return c.name; }), true), getCommandNames(), true)));
181
+ message = suggestCommand(commandName, availableCommands).message;
182
+ this.output.writeln(this.output.dim(" " + message));
183
+ process.exit(1);
184
+ }
185
+ targetCommand = command;
186
+ subcommandArgs = positional;
187
+ // Process command path (e.g., ['hooks', 'worker', 'list'])
188
+ // Note: When parser includes subcommand in commandPath, positional already excludes it
189
+ if (commandPath.length > 1 && command.subcommands) {
190
+ subcommandName_1 = commandPath[1];
191
+ subcommand = command.subcommands.find(function (sc) { var _a; return sc.name === subcommandName_1 || ((_a = sc.aliases) === null || _a === void 0 ? void 0 : _a.includes(subcommandName_1)); });
192
+ if (subcommand) {
193
+ targetCommand = subcommand;
194
+ // Parser already extracted subcommand from positional, so use as-is
195
+ subcommandArgs = positional;
196
+ // Check for nested subcommand (level 2)
197
+ if (commandPath.length > 2 && subcommand.subcommands) {
198
+ nestedName_1 = commandPath[2];
199
+ nestedSubcommand = subcommand.subcommands.find(function (sc) { var _a; return sc.name === nestedName_1 || ((_a = sc.aliases) === null || _a === void 0 ? void 0 : _a.includes(nestedName_1)); });
200
+ if (nestedSubcommand) {
201
+ targetCommand = nestedSubcommand;
202
+ // Parser already extracted nested subcommand too
203
+ subcommandArgs = positional;
204
+ }
205
+ }
206
+ }
207
+ }
208
+ else if (positional.length > 0 && command.subcommands) {
209
+ subcommandName_2 = positional[0];
210
+ subcommand = command.subcommands.find(function (sc) { var _a; return sc.name === subcommandName_2 || ((_a = sc.aliases) === null || _a === void 0 ? void 0 : _a.includes(subcommandName_2)); });
211
+ if (subcommand) {
212
+ targetCommand = subcommand;
213
+ subcommandArgs = positional.slice(1);
214
+ // Check for nested subcommand (level 2 from positional)
215
+ if (subcommandArgs.length > 0 && subcommand.subcommands) {
216
+ nestedName_2 = subcommandArgs[0];
217
+ nestedSubcommand = subcommand.subcommands.find(function (sc) { var _a; return sc.name === nestedName_2 || ((_a = sc.aliases) === null || _a === void 0 ? void 0 : _a.includes(nestedName_2)); });
218
+ if (nestedSubcommand) {
219
+ targetCommand = nestedSubcommand;
220
+ subcommandArgs = subcommandArgs.slice(1);
221
+ }
222
+ }
223
+ }
224
+ }
225
+ validationErrors = this.parser.validateFlags(flags, targetCommand);
226
+ if (validationErrors.length > 0) {
227
+ for (_i = 0, validationErrors_1 = validationErrors; _i < validationErrors_1.length; _i++) {
228
+ error = validationErrors_1[_i];
229
+ this.output.printError(error);
230
+ }
231
+ process.exit(1);
232
+ }
233
+ _a = {
234
+ args: subcommandArgs,
235
+ flags: flags
236
+ };
237
+ return [4 /*yield*/, this.loadConfig(flags.config)];
238
+ case 7:
239
+ ctx = (_a.config = _b.sent(),
240
+ _a.cwd = process.cwd(),
241
+ _a.interactive = this.interactive && !flags.quiet,
242
+ _a);
243
+ if (!targetCommand.action) return [3 /*break*/, 9];
244
+ if (this.output.isVerbose()) {
245
+ this.output.printDebug("Executing: " + targetCommand.name);
246
+ }
247
+ startTime = Date.now();
248
+ return [4 /*yield*/, targetCommand.action(ctx)];
249
+ case 8:
250
+ result = _b.sent();
251
+ if (this.output.isVerbose()) {
252
+ this.output.printDebug("Completed in " + (Date.now() - startTime) + "ms");
253
+ }
254
+ if (result && !result.success) {
255
+ process.exit(result.exitCode || 1);
256
+ }
257
+ return [3 /*break*/, 10];
258
+ case 9:
259
+ // No action - show command help
260
+ this.showCommandHelp(commandName);
261
+ _b.label = 10;
262
+ case 10: return [3 /*break*/, 12];
263
+ case 11:
264
+ error_1 = _b.sent();
265
+ errorMessage = error_1.message;
266
+ if (errorMessage && errorMessage.startsWith('process.exit:')) {
267
+ throw error_1; // Re-throw so tests can capture the exit code
268
+ }
269
+ this.handleError(error_1);
270
+ return [3 /*break*/, 12];
271
+ case 12: return [2 /*return*/];
203
272
  }
204
- }
205
- else {
206
- // No action - show command help
207
- this.showCommandHelp(commandName);
208
- }
209
- }
210
- catch (error) {
211
- // Don't re-handle if this is a process.exit error (from mocked tests)
212
- const errorMessage = error.message;
213
- if (errorMessage && errorMessage.startsWith('process.exit:')) {
214
- throw error; // Re-throw so tests can capture the exit code
215
- }
216
- this.handleError(error);
217
- }
218
- }
273
+ });
274
+ });
275
+ };
219
276
  /**
220
277
  * Show main help
221
278
  */
222
- showHelp() {
279
+ CLI.prototype.showHelp = function () {
223
280
  this.output.writeln();
224
- this.output.writeln(this.output.bold(`${this.name} v${this.version}`));
281
+ this.output.writeln(this.output.bold(this.name + " v" + this.version));
225
282
  this.output.writeln(this.output.dim(this.description));
226
283
  this.output.writeln();
227
284
  this.output.writeln(this.output.bold('USAGE:'));
228
- this.output.writeln(` ${this.name} <command> [subcommand] [options]`);
285
+ this.output.writeln(" " + this.name + " <command> [subcommand] [options]");
229
286
  this.output.writeln();
230
287
  // Primary Commands
231
288
  this.output.writeln(this.output.bold('PRIMARY COMMANDS:'));
232
- for (const cmd of commandsByCategory.primary) {
289
+ for (var _i = 0, _a = commandsByCategory.primary; _i < _a.length; _i++) {
290
+ var cmd = _a[_i];
233
291
  if (cmd.hidden)
234
292
  continue;
235
- const name = cmd.name.padEnd(12);
236
- this.output.writeln(` ${this.output.highlight(name)} ${cmd.description}`);
293
+ var name = cmd.name.padEnd(12);
294
+ this.output.writeln(" " + this.output.highlight(name) + " " + cmd.description);
237
295
  }
238
296
  this.output.writeln();
239
297
  // Advanced Commands
240
298
  this.output.writeln(this.output.bold('ADVANCED COMMANDS:'));
241
- for (const cmd of commandsByCategory.advanced) {
299
+ for (var _b = 0, _c = commandsByCategory.advanced; _b < _c.length; _b++) {
300
+ var cmd = _c[_b];
242
301
  if (cmd.hidden)
243
302
  continue;
244
- const name = cmd.name.padEnd(12);
245
- this.output.writeln(` ${this.output.highlight(name)} ${cmd.description}`);
303
+ var name = cmd.name.padEnd(12);
304
+ this.output.writeln(" " + this.output.highlight(name) + " " + cmd.description);
246
305
  }
247
306
  this.output.writeln();
248
307
  // Utility Commands
249
308
  this.output.writeln(this.output.bold('UTILITY COMMANDS:'));
250
- for (const cmd of commandsByCategory.utility) {
309
+ for (var _d = 0, _e = commandsByCategory.utility; _d < _e.length; _d++) {
310
+ var cmd = _e[_d];
251
311
  if (cmd.hidden)
252
312
  continue;
253
- const name = cmd.name.padEnd(12);
254
- this.output.writeln(` ${this.output.highlight(name)} ${cmd.description}`);
313
+ var name = cmd.name.padEnd(12);
314
+ this.output.writeln(" " + this.output.highlight(name) + " " + cmd.description);
255
315
  }
256
316
  this.output.writeln();
257
317
  // Analysis Commands
258
318
  this.output.writeln(this.output.bold('ANALYSIS COMMANDS:'));
259
- for (const cmd of commandsByCategory.analysis) {
319
+ for (var _f = 0, _g = commandsByCategory.analysis; _f < _g.length; _f++) {
320
+ var cmd = _g[_f];
260
321
  if (cmd.hidden)
261
322
  continue;
262
- const name = cmd.name.padEnd(12);
263
- this.output.writeln(` ${this.output.highlight(name)} ${cmd.description}`);
323
+ var name = cmd.name.padEnd(12);
324
+ this.output.writeln(" " + this.output.highlight(name) + " " + cmd.description);
264
325
  }
265
326
  this.output.writeln();
266
327
  // Management Commands
267
328
  this.output.writeln(this.output.bold('MANAGEMENT COMMANDS:'));
268
- for (const cmd of commandsByCategory.management) {
329
+ for (var _h = 0, _j = commandsByCategory.management; _h < _j.length; _h++) {
330
+ var cmd = _j[_h];
269
331
  if (cmd.hidden)
270
332
  continue;
271
- const name = cmd.name.padEnd(12);
272
- this.output.writeln(` ${this.output.highlight(name)} ${cmd.description}`);
333
+ var name = cmd.name.padEnd(12);
334
+ this.output.writeln(" " + this.output.highlight(name) + " " + cmd.description);
273
335
  }
274
336
  this.output.writeln();
275
337
  this.output.writeln(this.output.bold('GLOBAL OPTIONS:'));
276
- for (const opt of this.parser.getGlobalOptions()) {
277
- const flags = opt.short ? `-${opt.short}, --${opt.name}` : ` --${opt.name}`;
278
- this.output.writeln(` ${flags.padEnd(25)} ${opt.description}`);
338
+ for (var _k = 0, _l = this.parser.getGlobalOptions(); _k < _l.length; _k++) {
339
+ var opt = _l[_k];
340
+ var flags = opt.short ? "-" + opt.short + ", --" + opt.name : " --" + opt.name;
341
+ this.output.writeln(" " + flags.padEnd(25) + " " + opt.description);
279
342
  }
280
343
  this.output.writeln();
281
344
  this.output.writeln(this.output.bold('V3 FEATURES:'));
@@ -289,133 +352,170 @@ export class CLI {
289
352
  ]);
290
353
  this.output.writeln();
291
354
  this.output.writeln(this.output.bold('EXAMPLES:'));
292
- this.output.writeln(` ${this.name} agent spawn -t coder # Spawn a coder agent`);
293
- this.output.writeln(` ${this.name} swarm init --v3-mode # Initialize V3 swarm`);
294
- this.output.writeln(` ${this.name} memory search -q "auth patterns" # Semantic search`);
295
- this.output.writeln(` ${this.name} mcp start # Start MCP server`);
355
+ this.output.writeln(" " + this.name + " agent spawn -t coder # Spawn a coder agent");
356
+ this.output.writeln(" " + this.name + " swarm init --v3-mode # Initialize V3 swarm");
357
+ this.output.writeln(" " + this.name + " memory search -q \"auth patterns\" # Semantic search");
358
+ this.output.writeln(" " + this.name + " mcp start # Start MCP server");
296
359
  this.output.writeln();
297
- this.output.writeln(this.output.dim(`Run "${this.name} <command> --help" for command help`));
360
+ this.output.writeln(this.output.dim("Run \"" + this.name + " <command> --help\" for command help"));
298
361
  this.output.writeln();
299
362
  this.output.writeln(this.output.dim('Created with ❤️ by ruv.io'));
300
363
  this.output.writeln();
301
- }
364
+ };
302
365
  /**
303
366
  * Show command-specific help
304
367
  */
305
- async showCommandHelp(commandName) {
306
- // Try sync first, then lazy load
307
- let command = getCommand(commandName);
308
- if (!command && hasCommand(commandName)) {
309
- command = await getCommandAsync(commandName);
310
- }
311
- if (!command) {
312
- this.output.printError(`Unknown command: ${commandName}`);
313
- return;
314
- }
315
- this.output.writeln();
316
- this.output.writeln(this.output.bold(`${this.name} ${command.name}`));
317
- this.output.writeln(command.description);
318
- this.output.writeln();
319
- // Subcommands
320
- if (command.subcommands && command.subcommands.length > 0) {
321
- this.output.writeln(this.output.bold('SUBCOMMANDS:'));
322
- for (const sub of command.subcommands) {
323
- if (sub.hidden)
324
- continue;
325
- const name = sub.name.padEnd(15);
326
- const aliases = sub.aliases ? this.output.dim(` (${sub.aliases.join(', ')})`) : '';
327
- this.output.writeln(` ${this.output.highlight(name)} ${sub.description}${aliases}`);
328
- }
329
- this.output.writeln();
330
- }
331
- // Options
332
- if (command.options && command.options.length > 0) {
333
- this.output.writeln(this.output.bold('OPTIONS:'));
334
- for (const opt of command.options) {
335
- const flags = opt.short ? `-${opt.short}, --${opt.name}` : ` --${opt.name}`;
336
- const required = opt.required ? this.output.error(' (required)') : '';
337
- const defaultVal = opt.default !== undefined ? this.output.dim(` [default: ${opt.default}]`) : '';
338
- this.output.writeln(` ${flags.padEnd(25)} ${opt.description}${required}${defaultVal}`);
339
- }
340
- this.output.writeln();
341
- }
342
- // Examples
343
- if (command.examples && command.examples.length > 0) {
344
- this.output.writeln(this.output.bold('EXAMPLES:'));
345
- for (const example of command.examples) {
346
- this.output.writeln(` ${this.output.dim('$')} ${example.command}`);
347
- this.output.writeln(` ${this.output.dim(example.description)}`);
348
- }
349
- this.output.writeln();
350
- }
351
- }
368
+ CLI.prototype.showCommandHelp = function (commandName) {
369
+ return __awaiter(this, void 0, Promise, function () {
370
+ var command, _i, _a, sub, name, aliases, _b, _c, opt, flags, required, defaultVal, _d, _e, example;
371
+ return __generator(this, function (_f) {
372
+ switch (_f.label) {
373
+ case 0:
374
+ command = getCommand(commandName);
375
+ if (!(!command && hasCommand(commandName))) return [3 /*break*/, 2];
376
+ return [4 /*yield*/, getCommandAsync(commandName)];
377
+ case 1:
378
+ command = _f.sent();
379
+ _f.label = 2;
380
+ case 2:
381
+ if (!command) {
382
+ this.output.printError("Unknown command: " + commandName);
383
+ return [2 /*return*/];
384
+ }
385
+ this.output.writeln();
386
+ this.output.writeln(this.output.bold(this.name + " " + command.name));
387
+ this.output.writeln(command.description);
388
+ this.output.writeln();
389
+ // Subcommands
390
+ if (command.subcommands && command.subcommands.length > 0) {
391
+ this.output.writeln(this.output.bold('SUBCOMMANDS:'));
392
+ for (_i = 0, _a = command.subcommands; _i < _a.length; _i++) {
393
+ sub = _a[_i];
394
+ if (sub.hidden)
395
+ continue;
396
+ name = sub.name.padEnd(15);
397
+ aliases = sub.aliases ? this.output.dim(" (" + sub.aliases.join(', ') + ")") : '';
398
+ this.output.writeln(" " + this.output.highlight(name) + " " + sub.description + aliases);
399
+ }
400
+ this.output.writeln();
401
+ }
402
+ // Options
403
+ if (command.options && command.options.length > 0) {
404
+ this.output.writeln(this.output.bold('OPTIONS:'));
405
+ for (_b = 0, _c = command.options; _b < _c.length; _b++) {
406
+ opt = _c[_b];
407
+ flags = opt.short ? "-" + opt.short + ", --" + opt.name : " --" + opt.name;
408
+ required = opt.required ? this.output.error(' (required)') : '';
409
+ defaultVal = opt["default"] !== undefined ? this.output.dim(" [default: " + opt["default"] + "]") : '';
410
+ this.output.writeln(" " + flags.padEnd(25) + " " + opt.description + required + defaultVal);
411
+ }
412
+ this.output.writeln();
413
+ }
414
+ // Examples
415
+ if (command.examples && command.examples.length > 0) {
416
+ this.output.writeln(this.output.bold('EXAMPLES:'));
417
+ for (_d = 0, _e = command.examples; _d < _e.length; _d++) {
418
+ example = _e[_d];
419
+ this.output.writeln(" " + this.output.dim('$') + " " + example.command);
420
+ this.output.writeln(" " + this.output.dim(example.description));
421
+ }
422
+ this.output.writeln();
423
+ }
424
+ return [2 /*return*/];
425
+ }
426
+ });
427
+ });
428
+ };
352
429
  /**
353
430
  * Show version
354
431
  */
355
- showVersion() {
356
- this.output.writeln(`${this.name} v${this.version}`);
357
- }
432
+ CLI.prototype.showVersion = function () {
433
+ this.output.writeln(this.name + " v" + this.version);
434
+ };
358
435
  /**
359
436
  * Check for updates on startup (non-blocking)
360
437
  * Shows notification if updates are available
361
438
  */
362
- async checkForUpdatesOnStartup() {
363
- try {
364
- const result = await runStartupUpdateCheck({ autoUpdate: true });
365
- // Show notifications for available updates that weren't auto-applied
366
- if (result.checked && result.updatesAvailable.length > 0) {
367
- const nonAutoUpdates = result.updatesAvailable.filter(u => !u.shouldAutoUpdate);
368
- if (result.updatesApplied.length > 0) {
369
- this.output.writeln(this.output.dim(`Auto-updated: ${result.updatesApplied.join(', ')}`));
370
- }
371
- if (nonAutoUpdates.length > 0) {
372
- this.output.writeln(this.output.dim(`Updates available: ${nonAutoUpdates.map(u => `${u.package}@${u.latestVersion}`).join(', ')}`));
373
- this.output.writeln(this.output.dim(`Run '${this.name} update check' for details`));
439
+ CLI.prototype.checkForUpdatesOnStartup = function () {
440
+ return __awaiter(this, void 0, Promise, function () {
441
+ var result, nonAutoUpdates, _a;
442
+ return __generator(this, function (_b) {
443
+ switch (_b.label) {
444
+ case 0:
445
+ _b.trys.push([0, 2, , 3]);
446
+ return [4 /*yield*/, runStartupUpdateCheck({ autoUpdate: true })];
447
+ case 1:
448
+ result = _b.sent();
449
+ // Show notifications for available updates that weren't auto-applied
450
+ if (result.checked && result.updatesAvailable.length > 0) {
451
+ nonAutoUpdates = result.updatesAvailable.filter(function (u) { return !u.shouldAutoUpdate; });
452
+ if (result.updatesApplied.length > 0) {
453
+ this.output.writeln(this.output.dim("Auto-updated: " + result.updatesApplied.join(', ')));
454
+ }
455
+ if (nonAutoUpdates.length > 0) {
456
+ this.output.writeln(this.output.dim("Updates available: " + nonAutoUpdates.map(function (u) { return u.package + "@" + u.latestVersion; }).join(', ')));
457
+ this.output.writeln(this.output.dim("Run '" + this.name + " update check' for details"));
458
+ }
459
+ }
460
+ return [3 /*break*/, 3];
461
+ case 2:
462
+ _a = _b.sent();
463
+ return [3 /*break*/, 3];
464
+ case 3: return [2 /*return*/];
374
465
  }
375
- }
376
- }
377
- catch {
378
- // Silently fail - don't interrupt CLI usage
379
- }
380
- }
466
+ });
467
+ });
468
+ };
381
469
  /**
382
470
  * Load configuration file
383
471
  */
384
- async loadConfig(configPath) {
385
- try {
386
- // Import config utilities
387
- const { loadConfig: loadSystemConfig } = await import('@claude-flow/shared');
388
- const { systemConfigToV3Config } = await import('./config-adapter.js');
389
- // Load configuration
390
- const loaded = await loadSystemConfig({
391
- file: configPath,
392
- paths: configPath ? undefined : [process.cwd()],
393
- });
394
- // Convert to V3Config format
395
- const v3Config = systemConfigToV3Config(loaded.config);
396
- // Log warnings if any
397
- if (loaded.warnings && loaded.warnings.length > 0) {
398
- for (const warning of loaded.warnings) {
399
- this.output.printWarning(warning);
472
+ CLI.prototype.loadConfig = function (configPath) {
473
+ return __awaiter(this, void 0, Promise, function () {
474
+ var loadSystemConfig, systemConfigToV3Config, loaded, v3Config, _i, _a, warning, error_2;
475
+ return __generator(this, function (_b) {
476
+ switch (_b.label) {
477
+ case 0:
478
+ _b.trys.push([0, 4, , 5]);
479
+ return [4 /*yield*/, import('@claude-flow/shared')];
480
+ case 1:
481
+ loadSystemConfig = (_b.sent()).loadConfig;
482
+ return [4 /*yield*/, import('./config-adapter.js')];
483
+ case 2:
484
+ systemConfigToV3Config = (_b.sent()).systemConfigToV3Config;
485
+ return [4 /*yield*/, loadSystemConfig({
486
+ file: configPath,
487
+ paths: configPath ? undefined : [process.cwd()]
488
+ })];
489
+ case 3:
490
+ loaded = _b.sent();
491
+ v3Config = systemConfigToV3Config(loaded.config);
492
+ // Log warnings if any
493
+ if (loaded.warnings && loaded.warnings.length > 0) {
494
+ for (_i = 0, _a = loaded.warnings; _i < _a.length; _i++) {
495
+ warning = _a[_i];
496
+ this.output.printWarning(warning);
497
+ }
498
+ }
499
+ return [2 /*return*/, v3Config];
500
+ case 4:
501
+ error_2 = _b.sent();
502
+ // Config loading is optional - don't fail if it doesn't exist
503
+ if (process.env.DEBUG) {
504
+ this.output.writeln(this.output.dim("Config loading failed: " + error_2.message));
505
+ }
506
+ return [2 /*return*/, undefined];
507
+ case 5: return [2 /*return*/];
400
508
  }
401
- }
402
- return v3Config;
403
- }
404
- catch (error) {
405
- // Config loading is optional - don't fail if it doesn't exist
406
- if (process.env.DEBUG) {
407
- this.output.writeln(this.output.dim(`Config loading failed: ${error.message}`));
408
- }
409
- return undefined;
410
- }
411
- }
509
+ });
510
+ });
511
+ };
412
512
  /**
413
513
  * Handle errors
414
514
  */
415
- handleError(error) {
515
+ CLI.prototype.handleError = function (error) {
416
516
  if ('code' in error) {
417
517
  // CLIError
418
- const cliError = error;
518
+ var cliError = error;
419
519
  this.output.printError(cliError.message);
420
520
  if (cliError.details) {
421
521
  this.output.writeln(this.output.dim(JSON.stringify(cliError.details, null, 2)));
@@ -431,8 +531,10 @@ export class CLI {
431
531
  }
432
532
  process.exit(1);
433
533
  }
434
- }
435
- }
534
+ };
535
+ return CLI;
536
+ }());
537
+ export { CLI };
436
538
  // =============================================================================
437
539
  // Module Exports
438
540
  // =============================================================================
@@ -441,24 +543,26 @@ export * from './types.js';
441
543
  // Parser
442
544
  export { CommandParser, commandParser } from './parser.js';
443
545
  // Output
444
- export { OutputFormatter, output, Progress, Spinner } from './output.js';
546
+ export { OutputFormatter, output, Progress, Spinner, type } from './output.js';
445
547
  // Prompt
446
548
  export * from './prompt.js';
447
549
  // Commands (internal use)
448
550
  export * from './commands/index.js';
449
551
  // MCP Server management
450
- export { MCPServerManager, createMCPServerManager, getServerManager, startMCPServer, stopMCPServer, getMCPServerStatus, } from './mcp-server.js';
552
+ export { MCPServerManager, createMCPServerManager, getServerManager, startMCPServer, stopMCPServer, getMCPServerStatus, type, type, } from './mcp-server.js';
451
553
  // Memory & Intelligence (V3 Performance Features)
452
554
  export { initializeMemoryDatabase, generateEmbedding, generateBatchEmbeddings, storeEntry, searchEntries, getHNSWIndex, addToHNSWIndex, searchHNSWIndex, getHNSWStatus, clearHNSWIndex, quantizeInt8, dequantizeInt8, quantizedCosineSim, getQuantizationStats,
453
555
  // Flash Attention-style batch operations
454
- batchCosineSim, softmaxAttention, topKIndices, flashAttentionSearch, } from './memory/memory-initializer.js';
556
+ batchCosineSim, softmaxAttention, topKIndices, flashAttentionSearch, type, } from './memory/memory-initializer.js';
455
557
  export { initializeIntelligence, recordStep, recordTrajectory, findSimilarPatterns, getIntelligenceStats, getSonaCoordinator, getReasoningBank, clearIntelligence, benchmarkAdaptation,
558
+ // RL loop API
559
+ endTrajectoryWithVerdict, distillLearning,
456
560
  // Pattern persistence API
457
- getAllPatterns, getPatternsByType, flushPatterns, deletePattern, clearAllPatterns, getNeuralDataDir, getPersistenceStatus, } from './memory/intelligence.js';
561
+ getAllPatterns, getPatternsByType, flushPatterns, deletePattern, clearAllPatterns, getNeuralDataDir, getPersistenceStatus, type, type, type, type, } from './memory/intelligence.js';
458
562
  // EWC++ Consolidation (Prevents Catastrophic Forgetting)
459
- export { EWCConsolidator, getEWCConsolidator, resetEWCConsolidator, consolidatePatterns, recordPatternOutcome, getEWCStats, } from './memory/ewc-consolidation.js';
563
+ export { EWCConsolidator, getEWCConsolidator, resetEWCConsolidator, consolidatePatterns, recordPatternOutcome, getEWCStats, type, type, type, type, } from './memory/ewc-consolidation.js';
460
564
  // SONA Optimizer (Adaptive Routing via Trajectory Learning)
461
- export { SONAOptimizer, getSONAOptimizer, resetSONAOptimizer, processTrajectory, getSuggestion, getSONAStats, } from './memory/sona-optimizer.js';
565
+ export { SONAOptimizer, getSONAOptimizer, resetSONAOptimizer, processTrajectory, getSuggestion, getSONAStats, type, type, type, type, } from './memory/sona-optimizer.js';
462
566
  // Production Hardening
463
567
  export { ErrorHandler, withErrorHandling, } from './production/error-handler.js';
464
568
  export { RateLimiter, createRateLimiter, } from './production/rate-limiter.js';