kynjal-cli 4.0.0 → 4.0.1

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 (502) hide show
  1. package/dist/src/appliance/gguf-engine.d.ts +91 -0
  2. package/dist/src/appliance/gguf-engine.d.ts.map +1 -0
  3. package/dist/src/appliance/gguf-engine.js +286 -525
  4. package/dist/src/appliance/gguf-engine.js.map +1 -1
  5. package/dist/src/appliance/ruvllm-bridge.d.ts +102 -0
  6. package/dist/src/appliance/ruvllm-bridge.d.ts.map +1 -0
  7. package/dist/src/appliance/ruvllm-bridge.js +203 -403
  8. package/dist/src/appliance/ruvllm-bridge.js.map +1 -1
  9. package/dist/src/appliance/rvfa-builder.d.ts +44 -0
  10. package/dist/src/appliance/rvfa-builder.d.ts.map +1 -0
  11. package/dist/src/appliance/rvfa-builder.js +154 -208
  12. package/dist/src/appliance/rvfa-builder.js.map +1 -1
  13. package/dist/src/appliance/rvfa-distribution.d.ts +97 -0
  14. package/dist/src/appliance/rvfa-distribution.d.ts.map +1 -0
  15. package/dist/src/appliance/rvfa-distribution.js +260 -423
  16. package/dist/src/appliance/rvfa-distribution.js.map +1 -1
  17. package/dist/src/appliance/rvfa-format.d.ts +111 -0
  18. package/dist/src/appliance/rvfa-format.d.ts.map +1 -0
  19. package/dist/src/appliance/rvfa-format.js +128 -200
  20. package/dist/src/appliance/rvfa-format.js.map +1 -1
  21. package/dist/src/appliance/rvfa-runner.d.ts +69 -0
  22. package/dist/src/appliance/rvfa-runner.d.ts.map +1 -0
  23. package/dist/src/appliance/rvfa-runner.js +168 -304
  24. package/dist/src/appliance/rvfa-runner.js.map +1 -1
  25. package/dist/src/appliance/rvfa-signing.d.ts +123 -0
  26. package/dist/src/appliance/rvfa-signing.d.ts.map +1 -0
  27. package/dist/src/appliance/rvfa-signing.js +173 -295
  28. package/dist/src/appliance/rvfa-signing.js.map +1 -1
  29. package/dist/src/benchmarks/pretrain/index.d.ts +58 -0
  30. package/dist/src/benchmarks/pretrain/index.d.ts.map +1 -0
  31. package/dist/src/benchmarks/pretrain/index.js +331 -542
  32. package/dist/src/benchmarks/pretrain/index.js.map +1 -1
  33. package/dist/src/commands/agent.js +574 -697
  34. package/dist/src/commands/agent.js.map +1 -1
  35. package/dist/src/commands/analyze.js +1218 -1548
  36. package/dist/src/commands/analyze.js.map +1 -1
  37. package/dist/src/commands/appliance-advanced.js +158 -267
  38. package/dist/src/commands/appliance-advanced.js.map +1 -1
  39. package/dist/src/commands/appliance.js +318 -493
  40. package/dist/src/commands/appliance.js.map +1 -1
  41. package/dist/src/commands/benchmark.js +372 -523
  42. package/dist/src/commands/benchmark.js.map +1 -1
  43. package/dist/src/commands/claims.js +274 -364
  44. package/dist/src/commands/claims.js.map +1 -1
  45. package/dist/src/commands/cleanup.js +113 -157
  46. package/dist/src/commands/cleanup.js.map +1 -1
  47. package/dist/src/commands/completions.js +477 -118
  48. package/dist/src/commands/completions.js.map +1 -1
  49. package/dist/src/commands/config.js +237 -303
  50. package/dist/src/commands/config.js.map +1 -1
  51. package/dist/src/commands/daemon.js +487 -596
  52. package/dist/src/commands/daemon.js.map +1 -1
  53. package/dist/src/commands/deployment.js +194 -275
  54. package/dist/src/commands/deployment.js.map +1 -1
  55. package/dist/src/commands/doctor.js +504 -686
  56. package/dist/src/commands/doctor.js.map +1 -1
  57. package/dist/src/commands/embeddings.js +1293 -1543
  58. package/dist/src/commands/embeddings.js.map +1 -1
  59. package/dist/src/commands/guidance.js +449 -596
  60. package/dist/src/commands/guidance.js.map +1 -1
  61. package/dist/src/commands/hive-mind.js +854 -938
  62. package/dist/src/commands/hive-mind.js.map +1 -1
  63. package/dist/src/commands/hooks.js +3112 -3519
  64. package/dist/src/commands/hooks.js.map +1 -1
  65. package/dist/src/commands/index.d.ts +115 -0
  66. package/dist/src/commands/index.d.ts.map +1 -0
  67. package/dist/src/commands/index.js +126 -308
  68. package/dist/src/commands/index.js.map +1 -1
  69. package/dist/src/commands/init.js +788 -940
  70. package/dist/src/commands/init.js.map +1 -1
  71. package/dist/src/commands/issues.js +383 -558
  72. package/dist/src/commands/issues.js.map +1 -1
  73. package/dist/src/commands/mcp.js +493 -605
  74. package/dist/src/commands/mcp.js.map +1 -1
  75. package/dist/src/commands/memory.js +833 -1026
  76. package/dist/src/commands/memory.js.map +1 -1
  77. package/dist/src/commands/migrate.js +282 -347
  78. package/dist/src/commands/migrate.js.map +1 -1
  79. package/dist/src/commands/neural.js +1289 -1563
  80. package/dist/src/commands/neural.js.map +1 -1
  81. package/dist/src/commands/performance.js +497 -643
  82. package/dist/src/commands/performance.js.map +1 -1
  83. package/dist/src/commands/plugins.js +668 -841
  84. package/dist/src/commands/plugins.js.map +1 -1
  85. package/dist/src/commands/process.js +392 -447
  86. package/dist/src/commands/process.js.map +1 -1
  87. package/dist/src/commands/progress.js +162 -256
  88. package/dist/src/commands/progress.js.map +1 -1
  89. package/dist/src/commands/providers.js +150 -220
  90. package/dist/src/commands/providers.js.map +1 -1
  91. package/dist/src/commands/route.js +520 -665
  92. package/dist/src/commands/route.js.map +1 -1
  93. package/dist/src/commands/ruvector/backup.js +505 -651
  94. package/dist/src/commands/ruvector/backup.js.map +1 -1
  95. package/dist/src/commands/ruvector/benchmark.js +349 -401
  96. package/dist/src/commands/ruvector/benchmark.js.map +1 -1
  97. package/dist/src/commands/ruvector/import.js +224 -266
  98. package/dist/src/commands/ruvector/import.js.map +1 -1
  99. package/dist/src/commands/ruvector/index.js +37 -75
  100. package/dist/src/commands/ruvector/index.js.map +1 -1
  101. package/dist/src/commands/ruvector/init.js +336 -359
  102. package/dist/src/commands/ruvector/init.js.map +1 -1
  103. package/dist/src/commands/ruvector/migrate.js +335 -322
  104. package/dist/src/commands/ruvector/migrate.js.map +1 -1
  105. package/dist/src/commands/ruvector/optimize.js +375 -431
  106. package/dist/src/commands/ruvector/optimize.js.map +1 -1
  107. package/dist/src/commands/ruvector/setup.js +703 -117
  108. package/dist/src/commands/ruvector/setup.js.map +1 -1
  109. package/dist/src/commands/ruvector/status.js +364 -419
  110. package/dist/src/commands/ruvector/status.js.map +1 -1
  111. package/dist/src/commands/security.js +485 -608
  112. package/dist/src/commands/security.js.map +1 -1
  113. package/dist/src/commands/session.js +504 -626
  114. package/dist/src/commands/session.js.map +1 -1
  115. package/dist/src/commands/start.js +267 -364
  116. package/dist/src/commands/start.js.map +1 -1
  117. package/dist/src/commands/status.js +380 -486
  118. package/dist/src/commands/status.js.map +1 -1
  119. package/dist/src/commands/swarm.js +408 -488
  120. package/dist/src/commands/swarm.js.map +1 -1
  121. package/dist/src/commands/task.js +423 -538
  122. package/dist/src/commands/task.js.map +1 -1
  123. package/dist/src/commands/transfer-store.js +322 -412
  124. package/dist/src/commands/transfer-store.js.map +1 -1
  125. package/dist/src/commands/update.js +196 -291
  126. package/dist/src/commands/update.js.map +1 -1
  127. package/dist/src/commands/workflow.js +386 -486
  128. package/dist/src/commands/workflow.js.map +1 -1
  129. package/dist/src/config-adapter.d.ts +15 -0
  130. package/dist/src/config-adapter.d.ts.map +1 -0
  131. package/dist/src/config-adapter.js +38 -39
  132. package/dist/src/config-adapter.js.map +1 -1
  133. package/dist/src/index.d.ts +77 -0
  134. package/dist/src/index.d.ts.map +1 -0
  135. package/dist/src/index.js +309 -411
  136. package/dist/src/index.js.map +1 -1
  137. package/dist/src/infrastructure/in-memory-repositories.d.ts +68 -0
  138. package/dist/src/infrastructure/in-memory-repositories.d.ts.map +1 -0
  139. package/dist/src/infrastructure/in-memory-repositories.js +246 -507
  140. package/dist/src/infrastructure/in-memory-repositories.js.map +1 -1
  141. package/dist/src/init/claudemd-generator.d.ts +25 -0
  142. package/dist/src/init/claudemd-generator.d.ts.map +1 -0
  143. package/dist/src/init/claudemd-generator.js +368 -78
  144. package/dist/src/init/claudemd-generator.js.map +1 -1
  145. package/dist/src/init/executor.d.ts +41 -0
  146. package/dist/src/init/executor.d.ts.map +1 -0
  147. package/dist/src/init/executor.js +1307 -996
  148. package/dist/src/init/executor.js.map +1 -1
  149. package/dist/src/init/helpers-generator.d.ts +60 -0
  150. package/dist/src/init/helpers-generator.d.ts.map +1 -0
  151. package/dist/src/init/helpers-generator.js +657 -12
  152. package/dist/src/init/helpers-generator.js.map +1 -1
  153. package/dist/src/init/index.d.ts +1 -1
  154. package/dist/src/init/index.d.ts.map +1 -1
  155. package/dist/src/init/index.js +1 -1
  156. package/dist/src/init/index.js.map +1 -1
  157. package/dist/src/init/mcp-generator.js +33 -37
  158. package/dist/src/init/mcp-generator.js.map +1 -1
  159. package/dist/src/init/settings-generator.js +76 -77
  160. package/dist/src/init/settings-generator.js.map +1 -1
  161. package/dist/src/init/statusline-generator.js +801 -3
  162. package/dist/src/init/statusline-generator.js.map +1 -1
  163. package/dist/src/init/types.d.ts +1 -1
  164. package/dist/src/init/types.d.ts.map +1 -1
  165. package/dist/src/init/types.js +76 -59
  166. package/dist/src/init/types.js.map +1 -1
  167. package/dist/src/mcp-client.d.ts +92 -0
  168. package/dist/src/mcp-client.d.ts.map +1 -0
  169. package/dist/src/mcp-client.js +81 -125
  170. package/dist/src/mcp-client.js.map +1 -1
  171. package/dist/src/mcp-server.d.ts +161 -0
  172. package/dist/src/mcp-server.d.ts.map +1 -0
  173. package/dist/src/mcp-server.js +470 -757
  174. package/dist/src/mcp-server.js.map +1 -1
  175. package/dist/src/mcp-tools/agent-tools.js +391 -492
  176. package/dist/src/mcp-tools/agent-tools.js.map +1 -1
  177. package/dist/src/mcp-tools/agentdb-tools.js +332 -533
  178. package/dist/src/mcp-tools/agentdb-tools.js.map +1 -1
  179. package/dist/src/mcp-tools/analyze-tools.js +172 -236
  180. package/dist/src/mcp-tools/analyze-tools.js.map +1 -1
  181. package/dist/src/mcp-tools/auto-install.d.ts +83 -0
  182. package/dist/src/mcp-tools/auto-install.d.ts.map +1 -0
  183. package/dist/src/mcp-tools/auto-install.js +80 -142
  184. package/dist/src/mcp-tools/auto-install.js.map +1 -1
  185. package/dist/src/mcp-tools/browser-tools.js +252 -375
  186. package/dist/src/mcp-tools/browser-tools.js.map +1 -1
  187. package/dist/src/mcp-tools/claims-tools.js +473 -565
  188. package/dist/src/mcp-tools/claims-tools.js.map +1 -1
  189. package/dist/src/mcp-tools/config-tools.js +197 -272
  190. package/dist/src/mcp-tools/config-tools.js.map +1 -1
  191. package/dist/src/mcp-tools/coordination-tools.js +500 -572
  192. package/dist/src/mcp-tools/coordination-tools.js.map +1 -1
  193. package/dist/src/mcp-tools/daa-tools.js +286 -364
  194. package/dist/src/mcp-tools/daa-tools.js.map +1 -1
  195. package/dist/src/mcp-tools/embeddings-tools.js +582 -693
  196. package/dist/src/mcp-tools/embeddings-tools.js.map +1 -1
  197. package/dist/src/mcp-tools/github-tools.js +260 -311
  198. package/dist/src/mcp-tools/github-tools.js.map +1 -1
  199. package/dist/src/mcp-tools/hive-mind-tools.js +573 -640
  200. package/dist/src/mcp-tools/hive-mind-tools.js.map +1 -1
  201. package/dist/src/mcp-tools/hooks-tools.js +2215 -2648
  202. package/dist/src/mcp-tools/hooks-tools.js.map +1 -1
  203. package/dist/src/mcp-tools/memory-tools.js +350 -505
  204. package/dist/src/mcp-tools/memory-tools.js.map +1 -1
  205. package/dist/src/mcp-tools/neural-tools.js +315 -412
  206. package/dist/src/mcp-tools/neural-tools.js.map +1 -1
  207. package/dist/src/mcp-tools/performance-tools.js +420 -480
  208. package/dist/src/mcp-tools/performance-tools.js.map +1 -1
  209. package/dist/src/mcp-tools/progress-tools.js +204 -278
  210. package/dist/src/mcp-tools/progress-tools.js.map +1 -1
  211. package/dist/src/mcp-tools/ruvllm-tools.js +163 -279
  212. package/dist/src/mcp-tools/ruvllm-tools.js.map +1 -1
  213. package/dist/src/mcp-tools/security-tools.js +297 -429
  214. package/dist/src/mcp-tools/security-tools.js.map +1 -1
  215. package/dist/src/mcp-tools/session-tools.js +185 -234
  216. package/dist/src/mcp-tools/session-tools.js.map +1 -1
  217. package/dist/src/mcp-tools/swarm-tools.js +207 -260
  218. package/dist/src/mcp-tools/swarm-tools.js.map +1 -1
  219. package/dist/src/mcp-tools/system-tools.js +276 -325
  220. package/dist/src/mcp-tools/system-tools.js.map +1 -1
  221. package/dist/src/mcp-tools/task-tools.js +270 -336
  222. package/dist/src/mcp-tools/task-tools.js.map +1 -1
  223. package/dist/src/mcp-tools/terminal-tools.js +148 -196
  224. package/dist/src/mcp-tools/terminal-tools.js.map +1 -1
  225. package/dist/src/mcp-tools/transfer-tools.js +186 -333
  226. package/dist/src/mcp-tools/transfer-tools.js.map +1 -1
  227. package/dist/src/mcp-tools/types.d.ts +31 -0
  228. package/dist/src/mcp-tools/types.d.ts.map +1 -0
  229. package/dist/src/mcp-tools/wasm-agent-tools.js +133 -280
  230. package/dist/src/mcp-tools/wasm-agent-tools.js.map +1 -1
  231. package/dist/src/mcp-tools/workflow-tools.js +405 -450
  232. package/dist/src/mcp-tools/workflow-tools.js.map +1 -1
  233. package/dist/src/memory/ewc-consolidation.d.ts +295 -0
  234. package/dist/src/memory/ewc-consolidation.d.ts.map +1 -0
  235. package/dist/src/memory/ewc-consolidation.js +190 -303
  236. package/dist/src/memory/ewc-consolidation.js.map +1 -1
  237. package/dist/src/memory/intelligence.d.ts +338 -0
  238. package/dist/src/memory/intelligence.d.ts.map +1 -0
  239. package/dist/src/memory/intelligence.js +569 -794
  240. package/dist/src/memory/intelligence.js.map +1 -1
  241. package/dist/src/memory/memory-bridge.d.ts +407 -0
  242. package/dist/src/memory/memory-bridge.d.ts.map +1 -0
  243. package/dist/src/memory/memory-bridge.js +1170 -1640
  244. package/dist/src/memory/memory-bridge.js.map +1 -1
  245. package/dist/src/memory/memory-initializer.d.ts +412 -0
  246. package/dist/src/memory/memory-initializer.d.ts.map +1 -0
  247. package/dist/src/memory/memory-initializer.js +1836 -1851
  248. package/dist/src/memory/memory-initializer.js.map +1 -1
  249. package/dist/src/memory/sona-optimizer.d.ts +227 -0
  250. package/dist/src/memory/sona-optimizer.d.ts.map +1 -0
  251. package/dist/src/memory/sona-optimizer.js +199 -329
  252. package/dist/src/memory/sona-optimizer.js.map +1 -1
  253. package/dist/src/output.d.ts +2 -2
  254. package/dist/src/output.d.ts.map +1 -1
  255. package/dist/src/output.js +242 -272
  256. package/dist/src/output.js.map +1 -1
  257. package/dist/src/parser.d.ts +51 -0
  258. package/dist/src/parser.d.ts.map +1 -0
  259. package/dist/src/parser.js +140 -187
  260. package/dist/src/parser.js.map +1 -1
  261. package/dist/src/plugins/manager.d.ts +133 -0
  262. package/dist/src/plugins/manager.d.ts.map +1 -0
  263. package/dist/src/plugins/manager.js +285 -521
  264. package/dist/src/plugins/manager.js.map +1 -1
  265. package/dist/src/plugins/store/discovery.d.ts +88 -0
  266. package/dist/src/plugins/store/discovery.d.ts.map +1 -0
  267. package/dist/src/plugins/store/discovery.js +271 -358
  268. package/dist/src/plugins/store/discovery.js.map +1 -1
  269. package/dist/src/plugins/store/index.d.ts +76 -0
  270. package/dist/src/plugins/store/index.d.ts.map +1 -0
  271. package/dist/src/plugins/store/index.js +48 -105
  272. package/dist/src/plugins/store/index.js.map +1 -1
  273. package/dist/src/plugins/store/search.d.ts +46 -0
  274. package/dist/src/plugins/store/search.d.ts.map +1 -0
  275. package/dist/src/plugins/store/search.js +69 -107
  276. package/dist/src/plugins/store/search.js.map +1 -1
  277. package/dist/src/plugins/store/types.d.ts +274 -0
  278. package/dist/src/plugins/store/types.d.ts.map +1 -0
  279. package/dist/src/plugins/tests/demo-plugin-store.js +113 -160
  280. package/dist/src/plugins/tests/demo-plugin-store.js.map +1 -1
  281. package/dist/src/plugins/tests/standalone-test.js +172 -223
  282. package/dist/src/plugins/tests/standalone-test.js.map +1 -1
  283. package/dist/src/plugins/tests/test-plugin-store.js +190 -228
  284. package/dist/src/plugins/tests/test-plugin-store.js.map +1 -1
  285. package/dist/src/production/circuit-breaker.d.ts +101 -0
  286. package/dist/src/production/circuit-breaker.d.ts.map +1 -0
  287. package/dist/src/production/circuit-breaker.js +62 -126
  288. package/dist/src/production/circuit-breaker.js.map +1 -1
  289. package/dist/src/production/error-handler.d.ts +92 -0
  290. package/dist/src/production/error-handler.d.ts.map +1 -0
  291. package/dist/src/production/error-handler.js +86 -156
  292. package/dist/src/production/error-handler.js.map +1 -1
  293. package/dist/src/production/monitoring.d.ts +161 -0
  294. package/dist/src/production/monitoring.d.ts.map +1 -0
  295. package/dist/src/production/monitoring.js +139 -220
  296. package/dist/src/production/monitoring.js.map +1 -1
  297. package/dist/src/production/rate-limiter.d.ts +80 -0
  298. package/dist/src/production/rate-limiter.d.ts.map +1 -0
  299. package/dist/src/production/rate-limiter.js +74 -93
  300. package/dist/src/production/rate-limiter.js.map +1 -1
  301. package/dist/src/production/retry.d.ts +48 -0
  302. package/dist/src/production/retry.d.ts.map +1 -0
  303. package/dist/src/production/retry.js +75 -167
  304. package/dist/src/production/retry.js.map +1 -1
  305. package/dist/src/prompt.d.ts +44 -0
  306. package/dist/src/prompt.d.ts.map +1 -0
  307. package/dist/src/prompt.js +436 -560
  308. package/dist/src/prompt.js.map +1 -1
  309. package/dist/src/runtime/headless.d.ts +60 -0
  310. package/dist/src/runtime/headless.d.ts.map +1 -0
  311. package/dist/src/runtime/headless.js +197 -286
  312. package/dist/src/runtime/headless.js.map +1 -1
  313. package/dist/src/ruvector/agent-wasm.d.ts +182 -0
  314. package/dist/src/ruvector/agent-wasm.d.ts.map +1 -0
  315. package/dist/src/ruvector/agent-wasm.js +156 -351
  316. package/dist/src/ruvector/agent-wasm.js.map +1 -1
  317. package/dist/src/ruvector/ast-analyzer.d.ts +67 -0
  318. package/dist/src/ruvector/ast-analyzer.d.ts.map +1 -0
  319. package/dist/src/ruvector/ast-analyzer.js +145 -232
  320. package/dist/src/ruvector/ast-analyzer.js.map +1 -1
  321. package/dist/src/ruvector/coverage-router.d.ts +160 -0
  322. package/dist/src/ruvector/coverage-router.d.ts.map +1 -0
  323. package/dist/src/ruvector/coverage-router.js +287 -419
  324. package/dist/src/ruvector/coverage-router.js.map +1 -1
  325. package/dist/src/ruvector/coverage-tools.js +56 -101
  326. package/dist/src/ruvector/coverage-tools.js.map +1 -1
  327. package/dist/src/ruvector/diff-classifier.d.ts +175 -0
  328. package/dist/src/ruvector/diff-classifier.d.ts.map +1 -0
  329. package/dist/src/ruvector/diff-classifier.js +324 -451
  330. package/dist/src/ruvector/diff-classifier.js.map +1 -1
  331. package/dist/src/ruvector/enhanced-model-router.d.ts +146 -0
  332. package/dist/src/ruvector/enhanced-model-router.d.ts.map +1 -0
  333. package/dist/src/ruvector/enhanced-model-router.js +260 -336
  334. package/dist/src/ruvector/enhanced-model-router.js.map +1 -1
  335. package/dist/src/ruvector/flash-attention.d.ts +195 -0
  336. package/dist/src/ruvector/flash-attention.d.ts.map +1 -0
  337. package/dist/src/ruvector/flash-attention.js +223 -254
  338. package/dist/src/ruvector/flash-attention.js.map +1 -1
  339. package/dist/src/ruvector/graph-analyzer.d.ts +187 -0
  340. package/dist/src/ruvector/graph-analyzer.d.ts.map +1 -0
  341. package/dist/src/ruvector/graph-analyzer.js +486 -680
  342. package/dist/src/ruvector/graph-analyzer.js.map +1 -1
  343. package/dist/src/ruvector/index.d.ts +40 -0
  344. package/dist/src/ruvector/index.d.ts.map +1 -0
  345. package/dist/src/ruvector/index.js +36 -106
  346. package/dist/src/ruvector/index.js.map +1 -1
  347. package/dist/src/ruvector/lora-adapter.d.ts +218 -0
  348. package/dist/src/ruvector/lora-adapter.d.ts.map +1 -0
  349. package/dist/src/ruvector/lora-adapter.js +155 -248
  350. package/dist/src/ruvector/lora-adapter.js.map +1 -1
  351. package/dist/src/ruvector/model-router.d.ts +220 -0
  352. package/dist/src/ruvector/model-router.d.ts.map +1 -0
  353. package/dist/src/ruvector/model-router.js +175 -248
  354. package/dist/src/ruvector/model-router.js.map +1 -1
  355. package/dist/src/ruvector/moe-router.d.ts +206 -0
  356. package/dist/src/ruvector/moe-router.d.ts.map +1 -0
  357. package/dist/src/ruvector/moe-router.js +228 -286
  358. package/dist/src/ruvector/moe-router.js.map +1 -1
  359. package/dist/src/ruvector/q-learning-router.d.ts +211 -0
  360. package/dist/src/ruvector/q-learning-router.d.ts.map +1 -0
  361. package/dist/src/ruvector/q-learning-router.js +257 -338
  362. package/dist/src/ruvector/q-learning-router.js.map +1 -1
  363. package/dist/src/ruvector/ruvllm-wasm.d.ts +179 -0
  364. package/dist/src/ruvector/ruvllm-wasm.d.ts.map +1 -0
  365. package/dist/src/ruvector/ruvllm-wasm.js +270 -434
  366. package/dist/src/ruvector/ruvllm-wasm.js.map +1 -1
  367. package/dist/src/ruvector/semantic-router.d.ts +77 -0
  368. package/dist/src/ruvector/semantic-router.d.ts.map +1 -0
  369. package/dist/src/ruvector/semantic-router.js +60 -67
  370. package/dist/src/ruvector/semantic-router.js.map +1 -1
  371. package/dist/src/ruvector/vector-db.d.ts +69 -0
  372. package/dist/src/ruvector/vector-db.d.ts.map +1 -0
  373. package/dist/src/ruvector/vector-db.js +119 -205
  374. package/dist/src/ruvector/vector-db.js.map +1 -1
  375. package/dist/src/services/agentic-flow-bridge.d.ts +50 -0
  376. package/dist/src/services/agentic-flow-bridge.d.ts.map +1 -0
  377. package/dist/src/services/agentic-flow-bridge.js +32 -105
  378. package/dist/src/services/agentic-flow-bridge.js.map +1 -1
  379. package/dist/src/services/claim-service.d.ts +204 -0
  380. package/dist/src/services/claim-service.d.ts.map +1 -0
  381. package/dist/src/services/claim-service.js +615 -940
  382. package/dist/src/services/claim-service.js.map +1 -1
  383. package/dist/src/services/container-worker-pool.d.ts +197 -0
  384. package/dist/src/services/container-worker-pool.d.ts.map +1 -0
  385. package/dist/src/services/container-worker-pool.js +398 -666
  386. package/dist/src/services/container-worker-pool.js.map +1 -1
  387. package/dist/src/services/headless-worker-executor.d.ts +304 -0
  388. package/dist/src/services/headless-worker-executor.d.ts.map +1 -0
  389. package/dist/src/services/headless-worker-executor.js +441 -467
  390. package/dist/src/services/headless-worker-executor.js.map +1 -1
  391. package/dist/src/services/index.d.ts +4 -4
  392. package/dist/src/services/index.d.ts.map +1 -1
  393. package/dist/src/services/index.js +4 -4
  394. package/dist/src/services/index.js.map +1 -1
  395. package/dist/src/services/registry-api.d.ts +58 -0
  396. package/dist/src/services/registry-api.d.ts.map +1 -0
  397. package/dist/src/services/registry-api.js +92 -200
  398. package/dist/src/services/registry-api.js.map +1 -1
  399. package/dist/src/services/ruvector-training.d.ts +222 -0
  400. package/dist/src/services/ruvector-training.d.ts.map +1 -0
  401. package/dist/src/services/ruvector-training.js +257 -337
  402. package/dist/src/services/ruvector-training.js.map +1 -1
  403. package/dist/src/services/worker-daemon.d.ts +228 -0
  404. package/dist/src/services/worker-daemon.d.ts.map +1 -0
  405. package/dist/src/services/worker-daemon.js +591 -849
  406. package/dist/src/services/worker-daemon.js.map +1 -1
  407. package/dist/src/services/worker-queue.d.ts +194 -0
  408. package/dist/src/services/worker-queue.d.ts.map +1 -0
  409. package/dist/src/services/worker-queue.js +331 -548
  410. package/dist/src/services/worker-queue.js.map +1 -1
  411. package/dist/src/suggest.d.ts +53 -0
  412. package/dist/src/suggest.d.ts.map +1 -0
  413. package/dist/src/suggest.js +45 -55
  414. package/dist/src/suggest.js.map +1 -1
  415. package/dist/src/transfer/anonymization/index.js +29 -37
  416. package/dist/src/transfer/anonymization/index.js.map +1 -1
  417. package/dist/src/transfer/deploy-seraphine.js +128 -155
  418. package/dist/src/transfer/deploy-seraphine.js.map +1 -1
  419. package/dist/src/transfer/export.d.ts +25 -0
  420. package/dist/src/transfer/export.d.ts.map +1 -0
  421. package/dist/src/transfer/export.js +84 -142
  422. package/dist/src/transfer/export.js.map +1 -1
  423. package/dist/src/transfer/index.d.ts +1 -1
  424. package/dist/src/transfer/index.d.ts.map +1 -1
  425. package/dist/src/transfer/index.js +0 -2
  426. package/dist/src/transfer/index.js.map +1 -1
  427. package/dist/src/transfer/ipfs/client.d.ts +109 -0
  428. package/dist/src/transfer/ipfs/client.d.ts.map +1 -0
  429. package/dist/src/transfer/ipfs/client.js +187 -337
  430. package/dist/src/transfer/ipfs/client.js.map +1 -1
  431. package/dist/src/transfer/ipfs/upload.d.ts +95 -0
  432. package/dist/src/transfer/ipfs/upload.d.ts.map +1 -0
  433. package/dist/src/transfer/ipfs/upload.js +288 -434
  434. package/dist/src/transfer/ipfs/upload.js.map +1 -1
  435. package/dist/src/transfer/models/seraphine.d.ts +72 -0
  436. package/dist/src/transfer/models/seraphine.d.ts.map +1 -0
  437. package/dist/src/transfer/models/seraphine.js +55 -55
  438. package/dist/src/transfer/models/seraphine.js.map +1 -1
  439. package/dist/src/transfer/serialization/cfp.d.ts +49 -0
  440. package/dist/src/transfer/serialization/cfp.d.ts.map +1 -0
  441. package/dist/src/transfer/serialization/cfp.js +30 -31
  442. package/dist/src/transfer/serialization/cfp.js.map +1 -1
  443. package/dist/src/transfer/storage/gcs.d.ts +82 -0
  444. package/dist/src/transfer/storage/gcs.d.ts.map +1 -0
  445. package/dist/src/transfer/storage/gcs.js +165 -232
  446. package/dist/src/transfer/storage/gcs.js.map +1 -1
  447. package/dist/src/transfer/store/discovery.d.ts +84 -0
  448. package/dist/src/transfer/store/discovery.d.ts.map +1 -0
  449. package/dist/src/transfer/store/discovery.js +239 -349
  450. package/dist/src/transfer/store/discovery.js.map +1 -1
  451. package/dist/src/transfer/store/download.d.ts +70 -0
  452. package/dist/src/transfer/store/download.d.ts.map +1 -0
  453. package/dist/src/transfer/store/download.js +243 -365
  454. package/dist/src/transfer/store/download.js.map +1 -1
  455. package/dist/src/transfer/store/index.d.ts +84 -0
  456. package/dist/src/transfer/store/index.d.ts.map +1 -0
  457. package/dist/src/transfer/store/index.js +63 -130
  458. package/dist/src/transfer/store/index.js.map +1 -1
  459. package/dist/src/transfer/store/publish.d.ts +76 -0
  460. package/dist/src/transfer/store/publish.d.ts.map +1 -0
  461. package/dist/src/transfer/store/publish.js +184 -258
  462. package/dist/src/transfer/store/publish.js.map +1 -1
  463. package/dist/src/transfer/store/registry.js +50 -72
  464. package/dist/src/transfer/store/registry.js.map +1 -1
  465. package/dist/src/transfer/store/search.d.ts +54 -0
  466. package/dist/src/transfer/store/search.d.ts.map +1 -0
  467. package/dist/src/transfer/store/search.js +64 -96
  468. package/dist/src/transfer/store/search.js.map +1 -1
  469. package/dist/src/transfer/store/tests/standalone-test.js +174 -231
  470. package/dist/src/transfer/store/tests/standalone-test.js.map +1 -1
  471. package/dist/src/transfer/test-seraphine.js +95 -130
  472. package/dist/src/transfer/test-seraphine.js.map +1 -1
  473. package/dist/src/transfer/tests/test-store.js +194 -239
  474. package/dist/src/transfer/tests/test-store.js.map +1 -1
  475. package/dist/src/transfer/types.d.ts +245 -0
  476. package/dist/src/transfer/types.d.ts.map +1 -0
  477. package/dist/src/types.d.ts +198 -0
  478. package/dist/src/types.d.ts.map +1 -0
  479. package/dist/src/types.js +26 -55
  480. package/dist/src/types.js.map +1 -1
  481. package/dist/src/update/checker.d.ts +34 -0
  482. package/dist/src/update/checker.d.ts.map +1 -0
  483. package/dist/src/update/checker.js +106 -183
  484. package/dist/src/update/checker.js.map +1 -1
  485. package/dist/src/update/executor.d.ts +32 -0
  486. package/dist/src/update/executor.d.ts.map +1 -0
  487. package/dist/src/update/executor.js +135 -198
  488. package/dist/src/update/executor.js.map +1 -1
  489. package/dist/src/update/index.d.ts +33 -0
  490. package/dist/src/update/index.d.ts.map +1 -0
  491. package/dist/src/update/index.js +38 -85
  492. package/dist/src/update/index.js.map +1 -1
  493. package/dist/src/update/rate-limiter.d.ts +20 -0
  494. package/dist/src/update/rate-limiter.d.ts.map +1 -0
  495. package/dist/src/update/rate-limiter.js +19 -31
  496. package/dist/src/update/rate-limiter.js.map +1 -1
  497. package/dist/src/update/validator.d.ts +17 -0
  498. package/dist/src/update/validator.d.ts.map +1 -0
  499. package/dist/src/update/validator.js +38 -64
  500. package/dist/src/update/validator.js.map +1 -1
  501. package/dist/tsconfig.tsbuildinfo +1 -1
  502. package/package.json +1 -1
@@ -9,68 +9,22 @@
9
9
  *
10
10
  * Created with care by ruv.io
11
11
  */
12
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
13
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
14
- return new (P || (P = Promise))(function (resolve, reject) {
15
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
16
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
17
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
18
- step((generator = generator.apply(thisArg, _arguments || [])).next());
19
- });
20
- };
21
- var __generator = (this && this.__generator) || function (thisArg, body) {
22
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
23
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
24
- function verb(n) { return function (v) { return step([n, v]); }; }
25
- function step(op) {
26
- if (f) throw new TypeError("Generator is already executing.");
27
- while (_) try {
28
- 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;
29
- if (y = 0, t) op = [op[0] & 2, t.value];
30
- switch (op[0]) {
31
- case 0: case 1: t = op; break;
32
- case 4: _.label++; return { value: op[1], done: false };
33
- case 5: _.label++; y = op[1]; op = [0]; continue;
34
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
35
- default:
36
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
37
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
38
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
39
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
40
- if (t[2]) _.ops.pop();
41
- _.trys.pop(); continue;
42
- }
43
- op = body.call(thisArg, _);
44
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
45
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
46
- }
47
- };
48
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
49
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
50
- if (ar || !(i in from)) {
51
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
52
- ar[i] = from[i];
53
- }
54
- }
55
- return to.concat(ar || Array.prototype.slice.call(from));
56
- };
57
12
  import { output } from '../../output.js';
58
13
  import * as fs from 'fs';
59
14
  import * as path from 'path';
60
15
  /**
61
16
  * Format a ruvector embedding array for PostgreSQL
62
17
  */
63
- function formatEmbedding(embedding, dimensions) {
64
- if (dimensions === void 0) { dimensions = 384; }
18
+ function formatEmbedding(embedding, dimensions = 384) {
65
19
  // Ensure correct dimensions by padding or truncating
66
- var padded = __spreadArray([], embedding, true);
20
+ const padded = [...embedding];
67
21
  while (padded.length < dimensions) {
68
22
  padded.push(0);
69
23
  }
70
24
  if (padded.length > dimensions) {
71
25
  padded.length = dimensions;
72
26
  }
73
- return "'[" + padded.join(',') + "]'::ruvector(" + dimensions + ")";
27
+ return `'[${padded.join(',')}]'::ruvector(${dimensions})`;
74
28
  }
75
29
  /**
76
30
  * Escape string for PostgreSQL
@@ -82,22 +36,36 @@ function escapeString(str) {
82
36
  * Generate SQL INSERT statement for a memory entry
83
37
  */
84
38
  function generateInsertSQL(entry) {
85
- var key = escapeString(entry.key);
86
- var value = typeof entry.value === 'string'
39
+ const key = escapeString(entry.key);
40
+ const value = typeof entry.value === 'string'
87
41
  ? escapeString(entry.value)
88
42
  : escapeString(JSON.stringify(entry.value));
89
- var namespace = entry.namespace || 'default';
90
- var metadata = entry.metadata ? escapeString(JSON.stringify(entry.metadata)) : '{}';
91
- var embeddingClause = 'NULL';
43
+ const namespace = entry.namespace || 'default';
44
+ const metadata = entry.metadata ? escapeString(JSON.stringify(entry.metadata)) : '{}';
45
+ let embeddingClause = 'NULL';
92
46
  if (entry.embedding && Array.isArray(entry.embedding) && entry.embedding.length > 0) {
93
47
  embeddingClause = formatEmbedding(entry.embedding);
94
48
  }
95
- return "INSERT INTO claude_flow.memory_entries (key, value, embedding, namespace, metadata, created_at, updated_at)\nVALUES (\n '" + key + "',\n '" + value + "',\n " + embeddingClause + ",\n '" + namespace + "',\n '" + metadata + "'::jsonb,\n " + (entry.created_at ? "'" + entry.created_at + "'::timestamptz" : 'NOW()') + ",\n " + (entry.updated_at ? "'" + entry.updated_at + "'::timestamptz" : 'NOW()') + "\n)\nON CONFLICT (key, namespace) DO UPDATE SET\n value = EXCLUDED.value,\n embedding = COALESCE(EXCLUDED.embedding, claude_flow.memory_entries.embedding),\n metadata = EXCLUDED.metadata,\n updated_at = NOW();";
49
+ return `INSERT INTO claude_flow.memory_entries (key, value, embedding, namespace, metadata, created_at, updated_at)
50
+ VALUES (
51
+ '${key}',
52
+ '${value}',
53
+ ${embeddingClause},
54
+ '${namespace}',
55
+ '${metadata}'::jsonb,
56
+ ${entry.created_at ? `'${entry.created_at}'::timestamptz` : 'NOW()'},
57
+ ${entry.updated_at ? `'${entry.updated_at}'::timestamptz` : 'NOW()'}
58
+ )
59
+ ON CONFLICT (key, namespace) DO UPDATE SET
60
+ value = EXCLUDED.value,
61
+ embedding = COALESCE(EXCLUDED.embedding, claude_flow.memory_entries.embedding),
62
+ metadata = EXCLUDED.metadata,
63
+ updated_at = NOW();`;
96
64
  }
97
65
  /**
98
66
  * RuVector Import command - import from sql.js/JSON to PostgreSQL
99
67
  */
100
- export var importCommand = {
68
+ export const importCommand = {
101
69
  name: 'import',
102
70
  description: 'Import data from sql.js/JSON memory to RuVector PostgreSQL',
103
71
  aliases: ['load', 'migrate-data'],
@@ -106,73 +74,73 @@ export var importCommand = {
106
74
  name: 'input',
107
75
  short: 'i',
108
76
  description: 'Input JSON file path',
109
- type: 'string'
77
+ type: 'string',
110
78
  },
111
79
  {
112
80
  name: 'from-memory',
113
81
  description: 'Export from current Claude-Flow memory and import',
114
82
  type: 'boolean',
115
- "default": false
83
+ default: false,
116
84
  },
117
85
  {
118
86
  name: 'output',
119
87
  short: 'o',
120
88
  description: 'Output SQL file instead of executing (dry-run)',
121
- type: 'string'
89
+ type: 'string',
122
90
  },
123
91
  {
124
92
  name: 'batch-size',
125
93
  short: 'b',
126
94
  description: 'Batch size for imports',
127
95
  type: 'number',
128
- "default": 100
96
+ default: 100,
129
97
  },
130
98
  {
131
99
  name: 'host',
132
100
  short: 'h',
133
101
  description: 'PostgreSQL host',
134
102
  type: 'string',
135
- "default": 'localhost'
103
+ default: 'localhost',
136
104
  },
137
105
  {
138
106
  name: 'port',
139
107
  short: 'p',
140
108
  description: 'PostgreSQL port',
141
109
  type: 'number',
142
- "default": 5432
110
+ default: 5432,
143
111
  },
144
112
  {
145
113
  name: 'database',
146
114
  short: 'd',
147
115
  description: 'Database name',
148
116
  type: 'string',
149
- "default": 'claude_flow'
117
+ default: 'claude_flow',
150
118
  },
151
119
  {
152
120
  name: 'user',
153
121
  short: 'u',
154
122
  description: 'Database user',
155
123
  type: 'string',
156
- "default": 'claude'
124
+ default: 'claude',
157
125
  },
158
126
  {
159
127
  name: 'password',
160
128
  description: 'Database password (or use PGPASSWORD env var)',
161
- type: 'string'
129
+ type: 'string',
162
130
  },
163
131
  {
164
132
  name: 'container',
165
133
  short: 'c',
166
134
  description: 'Docker container name to exec into',
167
135
  type: 'string',
168
- "default": 'ruvector-postgres'
136
+ default: 'ruvector-postgres',
169
137
  },
170
138
  {
171
139
  name: 'verbose',
172
140
  short: 'v',
173
141
  description: 'Verbose output',
174
142
  type: 'boolean',
175
- "default": false
143
+ default: false,
176
144
  },
177
145
  ],
178
146
  examples: [
@@ -181,211 +149,201 @@ export var importCommand = {
181
149
  { command: 'claude-flow ruvector import --from-memory', description: 'Export current memory and import' },
182
150
  { command: 'claude-flow ruvector import --input data.json --container my-postgres', description: 'Import using custom container' },
183
151
  ],
184
- action: function (ctx) { return __awaiter(void 0, void 0, Promise, function () {
185
- var inputFile, fromMemory, outputFile, batchSize, containerName, verbose, entries, content, data, errorMessage, stats, sqlStatements, _i, entries_1, entry, ns, sql, errorMessage, fullSQL, errorMessage, tempFile, execSync, result, execErrorMessage, error_1, errorMessage;
186
- return __generator(this, function (_a) {
187
- switch (_a.label) {
188
- case 0:
189
- inputFile = ctx.flags.input;
190
- fromMemory = ctx.flags['from-memory'];
191
- outputFile = ctx.flags.output;
192
- batchSize = ctx.flags['batch-size'] || 100;
193
- containerName = ctx.flags.container || 'ruvector-postgres';
194
- verbose = ctx.flags.verbose;
195
- output.writeln();
196
- output.writeln(output.bold('RuVector PostgreSQL Import'));
197
- output.writeln(output.dim('='.repeat(50)));
198
- output.writeln();
199
- // Validate input
200
- if (!inputFile && !fromMemory) {
201
- output.printError('Either --input <file> or --from-memory is required');
202
- output.writeln();
203
- output.printInfo('Examples:');
204
- output.writeln(' claude-flow ruvector import --input memory-export.json');
205
- output.writeln(' claude-flow ruvector import --from-memory');
206
- return [2 /*return*/, { success: false, message: 'Missing input source' }];
207
- }
208
- entries = [];
209
- // Load entries from JSON file
210
- if (inputFile) {
211
- if (!fs.existsSync(inputFile)) {
212
- output.printError("Input file not found: " + inputFile);
213
- return [2 /*return*/, { success: false, message: 'File not found' }];
214
- }
215
- try {
216
- output.printInfo("Reading: " + inputFile);
217
- content = fs.readFileSync(inputFile, 'utf-8');
218
- data = JSON.parse(content);
219
- // Handle different JSON formats
220
- if (Array.isArray(data)) {
221
- entries = data;
222
- }
223
- else if (data.entries && Array.isArray(data.entries)) {
224
- entries = data.entries;
225
- }
226
- else if (data.results && Array.isArray(data.results)) {
227
- entries = data.results;
228
- }
229
- else if (typeof data === 'object') {
230
- // Convert object format { key: value } to entries
231
- entries = Object.entries(data).map(function (_a) {
232
- var key = _a[0], value = _a[1];
233
- return ({
234
- key: key,
235
- value: typeof value === 'object' ? JSON.stringify(value) : String(value)
236
- });
237
- });
238
- }
239
- output.printSuccess("Loaded " + entries.length + " entries from file");
240
- }
241
- catch (error) {
242
- errorMessage = error instanceof Error ? error.message : String(error);
243
- output.printError("Failed to parse JSON: " + errorMessage);
244
- return [2 /*return*/, { success: false, message: errorMessage }];
245
- }
246
- }
247
- // Export from current memory
248
- if (fromMemory) {
249
- output.printInfo('Exporting from current Claude-Flow memory...');
250
- output.printWarning('Note: Run "npx claude-flow memory list --format json > memory-export.json" first');
251
- output.printInfo('Then use: npx claude-flow ruvector import --input memory-export.json');
252
- return [2 /*return*/, { success: false, message: 'Use explicit JSON export first' }];
253
- }
254
- if (entries.length === 0) {
255
- output.printWarning('No entries to import');
256
- return [2 /*return*/, { success: true }];
257
- }
258
- stats = {
259
- total: entries.length,
260
- imported: 0,
261
- skipped: 0,
262
- errors: 0,
263
- withEmbeddings: 0,
264
- byNamespace: {}
265
- };
266
- sqlStatements = [];
267
- sqlStatements.push('-- RuVector PostgreSQL Import');
268
- sqlStatements.push("-- Generated: " + new Date().toISOString());
269
- sqlStatements.push("-- Total entries: " + entries.length);
270
- sqlStatements.push('');
271
- sqlStatements.push('BEGIN;');
272
- sqlStatements.push('');
273
- for (_i = 0, entries_1 = entries; _i < entries_1.length; _i++) {
274
- entry = entries_1[_i];
275
- try {
276
- ns = entry.namespace || 'default';
277
- stats.byNamespace[ns] = (stats.byNamespace[ns] || 0) + 1;
278
- if (entry.embedding && entry.embedding.length > 0) {
279
- stats.withEmbeddings++;
280
- }
281
- sql = generateInsertSQL(entry);
282
- sqlStatements.push(sql);
283
- sqlStatements.push('');
284
- stats.imported++;
285
- if (verbose) {
286
- output.writeln(output.dim(" Processed: " + entry.key + " (" + ns + ")"));
287
- }
288
- }
289
- catch (error) {
290
- stats.errors++;
291
- errorMessage = error instanceof Error ? error.message : String(error);
292
- output.printWarning("Skipped entry \"" + entry.key + "\": " + errorMessage);
293
- }
294
- }
295
- sqlStatements.push('COMMIT;');
296
- sqlStatements.push('');
297
- sqlStatements.push("-- Import complete: " + stats.imported + " entries");
298
- fullSQL = sqlStatements.join('\n');
299
- if (!outputFile) return [3 /*break*/, 1];
300
- try {
301
- output.printInfo("Writing SQL to: " + outputFile);
302
- fs.writeFileSync(outputFile, fullSQL);
303
- output.printSuccess("SQL file created: " + outputFile);
304
- output.writeln();
305
- output.printInfo('To execute the import:');
306
- output.writeln(" docker exec -i " + containerName + " psql -U claude -d claude_flow < " + outputFile);
307
- }
308
- catch (error) {
309
- errorMessage = error instanceof Error ? error.message : String(error);
310
- output.printError("Failed to write SQL file: " + errorMessage);
311
- return [2 /*return*/, { success: false, message: errorMessage }];
152
+ action: async (ctx) => {
153
+ const inputFile = ctx.flags.input;
154
+ const fromMemory = ctx.flags['from-memory'];
155
+ const outputFile = ctx.flags.output;
156
+ const batchSize = ctx.flags['batch-size'] || 100;
157
+ const containerName = ctx.flags.container || 'ruvector-postgres';
158
+ const verbose = ctx.flags.verbose;
159
+ output.writeln();
160
+ output.writeln(output.bold('RuVector PostgreSQL Import'));
161
+ output.writeln(output.dim('='.repeat(50)));
162
+ output.writeln();
163
+ // Validate input
164
+ if (!inputFile && !fromMemory) {
165
+ output.printError('Either --input <file> or --from-memory is required');
166
+ output.writeln();
167
+ output.printInfo('Examples:');
168
+ output.writeln(' claude-flow ruvector import --input memory-export.json');
169
+ output.writeln(' claude-flow ruvector import --from-memory');
170
+ return { success: false, message: 'Missing input source' };
171
+ }
172
+ let entries = [];
173
+ // Load entries from JSON file
174
+ if (inputFile) {
175
+ if (!fs.existsSync(inputFile)) {
176
+ output.printError(`Input file not found: ${inputFile}`);
177
+ return { success: false, message: 'File not found' };
178
+ }
179
+ try {
180
+ output.printInfo(`Reading: ${inputFile}`);
181
+ const content = fs.readFileSync(inputFile, 'utf-8');
182
+ const data = JSON.parse(content);
183
+ // Handle different JSON formats
184
+ if (Array.isArray(data)) {
185
+ entries = data;
186
+ }
187
+ else if (data.entries && Array.isArray(data.entries)) {
188
+ entries = data.entries;
189
+ }
190
+ else if (data.results && Array.isArray(data.results)) {
191
+ entries = data.results;
192
+ }
193
+ else if (typeof data === 'object') {
194
+ // Convert object format { key: value } to entries
195
+ entries = Object.entries(data).map(([key, value]) => ({
196
+ key,
197
+ value: typeof value === 'object' ? JSON.stringify(value) : String(value),
198
+ }));
199
+ }
200
+ output.printSuccess(`Loaded ${entries.length} entries from file`);
201
+ }
202
+ catch (error) {
203
+ const errorMessage = error instanceof Error ? error.message : String(error);
204
+ output.printError(`Failed to parse JSON: ${errorMessage}`);
205
+ return { success: false, message: errorMessage };
206
+ }
207
+ }
208
+ // Export from current memory
209
+ if (fromMemory) {
210
+ output.printInfo('Exporting from current Claude-Flow memory...');
211
+ output.printWarning('Note: Run "npx claude-flow memory list --format json > memory-export.json" first');
212
+ output.printInfo('Then use: npx claude-flow ruvector import --input memory-export.json');
213
+ return { success: false, message: 'Use explicit JSON export first' };
214
+ }
215
+ if (entries.length === 0) {
216
+ output.printWarning('No entries to import');
217
+ return { success: true };
218
+ }
219
+ // Calculate statistics
220
+ const stats = {
221
+ total: entries.length,
222
+ imported: 0,
223
+ skipped: 0,
224
+ errors: 0,
225
+ withEmbeddings: 0,
226
+ byNamespace: {},
227
+ };
228
+ // Generate SQL statements
229
+ const sqlStatements = [];
230
+ sqlStatements.push('-- RuVector PostgreSQL Import');
231
+ sqlStatements.push(`-- Generated: ${new Date().toISOString()}`);
232
+ sqlStatements.push(`-- Total entries: ${entries.length}`);
233
+ sqlStatements.push('');
234
+ sqlStatements.push('BEGIN;');
235
+ sqlStatements.push('');
236
+ for (const entry of entries) {
237
+ try {
238
+ // Track statistics
239
+ const ns = entry.namespace || 'default';
240
+ stats.byNamespace[ns] = (stats.byNamespace[ns] || 0) + 1;
241
+ if (entry.embedding && entry.embedding.length > 0) {
242
+ stats.withEmbeddings++;
243
+ }
244
+ const sql = generateInsertSQL(entry);
245
+ sqlStatements.push(sql);
246
+ sqlStatements.push('');
247
+ stats.imported++;
248
+ if (verbose) {
249
+ output.writeln(output.dim(` Processed: ${entry.key} (${ns})`));
250
+ }
251
+ }
252
+ catch (error) {
253
+ stats.errors++;
254
+ const errorMessage = error instanceof Error ? error.message : String(error);
255
+ output.printWarning(`Skipped entry "${entry.key}": ${errorMessage}`);
256
+ }
257
+ }
258
+ sqlStatements.push('COMMIT;');
259
+ sqlStatements.push('');
260
+ sqlStatements.push(`-- Import complete: ${stats.imported} entries`);
261
+ const fullSQL = sqlStatements.join('\n');
262
+ // Output SQL file (dry-run)
263
+ if (outputFile) {
264
+ try {
265
+ output.printInfo(`Writing SQL to: ${outputFile}`);
266
+ fs.writeFileSync(outputFile, fullSQL);
267
+ output.printSuccess(`SQL file created: ${outputFile}`);
268
+ output.writeln();
269
+ output.printInfo('To execute the import:');
270
+ output.writeln(` docker exec -i ${containerName} psql -U claude -d claude_flow < ${outputFile}`);
271
+ }
272
+ catch (error) {
273
+ const errorMessage = error instanceof Error ? error.message : String(error);
274
+ output.printError(`Failed to write SQL file: ${errorMessage}`);
275
+ return { success: false, message: errorMessage };
276
+ }
277
+ }
278
+ else {
279
+ // Execute directly via docker exec
280
+ output.printInfo(`Importing to PostgreSQL via container: ${containerName}`);
281
+ output.writeln();
282
+ // Write to temp file for execution
283
+ const tempFile = path.join(process.cwd(), '.ruvector-import-temp.sql');
284
+ try {
285
+ fs.writeFileSync(tempFile, fullSQL);
286
+ output.printInfo('Executing import...');
287
+ output.writeln();
288
+ output.writeln(output.dim('Command:'));
289
+ output.writeln(output.dim(` docker exec -i ${containerName} psql -U claude -d claude_flow < ${tempFile}`));
290
+ output.writeln();
291
+ // Execute via child_process
292
+ const { execSync } = await import('child_process');
293
+ try {
294
+ const result = execSync(`docker exec -i ${containerName} psql -U claude -d claude_flow < ${tempFile}`, {
295
+ encoding: 'utf-8',
296
+ timeout: 60000,
297
+ });
298
+ if (verbose) {
299
+ output.writeln(output.dim(result));
312
300
  }
313
- return [3 /*break*/, 5];
314
- case 1:
315
- // Execute directly via docker exec
316
- output.printInfo("Importing to PostgreSQL via container: " + containerName);
317
- output.writeln();
318
- tempFile = path.join(process.cwd(), '.ruvector-import-temp.sql');
319
- _a.label = 2;
320
- case 2:
321
- _a.trys.push([2, 4, , 5]);
322
- fs.writeFileSync(tempFile, fullSQL);
323
- output.printInfo('Executing import...');
301
+ output.printSuccess('Import completed successfully!');
302
+ }
303
+ catch (execError) {
304
+ const execErrorMessage = execError instanceof Error ? execError.message : String(execError);
305
+ output.printError(`Import failed: ${execErrorMessage}`);
324
306
  output.writeln();
325
- output.writeln(output.dim('Command:'));
326
- output.writeln(output.dim(" docker exec -i " + containerName + " psql -U claude -d claude_flow < " + tempFile));
327
- output.writeln();
328
- return [4 /*yield*/, import('child_process')];
329
- case 3:
330
- execSync = (_a.sent()).execSync;
307
+ output.printInfo('You can manually run the import with:');
308
+ output.writeln(` docker exec -i ${containerName} psql -U claude -d claude_flow < ${tempFile}`);
309
+ return { success: false, message: execErrorMessage };
310
+ }
311
+ finally {
312
+ // Clean up temp file
331
313
  try {
332
- result = execSync("docker exec -i " + containerName + " psql -U claude -d claude_flow < " + tempFile, {
333
- encoding: 'utf-8',
334
- timeout: 60000
335
- });
336
- if (verbose) {
337
- output.writeln(output.dim(result));
338
- }
339
- output.printSuccess('Import completed successfully!');
340
- }
341
- catch (execError) {
342
- execErrorMessage = execError instanceof Error ? execError.message : String(execError);
343
- output.printError("Import failed: " + execErrorMessage);
344
- output.writeln();
345
- output.printInfo('You can manually run the import with:');
346
- output.writeln(" docker exec -i " + containerName + " psql -U claude -d claude_flow < " + tempFile);
347
- return [2 /*return*/, { success: false, message: execErrorMessage }];
314
+ fs.unlinkSync(tempFile);
348
315
  }
349
- finally {
350
- // Clean up temp file
351
- try {
352
- fs.unlinkSync(tempFile);
353
- }
354
- catch (_b) {
355
- // Ignore cleanup errors
356
- }
316
+ catch {
317
+ // Ignore cleanup errors
357
318
  }
358
- return [3 /*break*/, 5];
359
- case 4:
360
- error_1 = _a.sent();
361
- errorMessage = error_1 instanceof Error ? error_1.message : String(error_1);
362
- output.printError("Failed to create temp file: " + errorMessage);
363
- return [2 /*return*/, { success: false, message: errorMessage }];
364
- case 5:
365
- // Print statistics
366
- output.writeln();
367
- output.printBox(__spreadArray([
368
- 'Import Statistics',
369
- '',
370
- " Total entries: " + stats.total,
371
- " Imported: " + stats.imported,
372
- " With embeddings: " + stats.withEmbeddings,
373
- " Errors: " + stats.errors,
374
- '',
375
- 'By Namespace:'
376
- ], Object.entries(stats.byNamespace).map(function (_a) {
377
- var ns = _a[0], count = _a[1];
378
- return " " + ns + ": " + count;
379
- }), true).join('\n'), 'Import Complete');
380
- output.writeln();
381
- // Show verification command
382
- output.printInfo('To verify the import:');
383
- output.writeln(" docker exec " + containerName + " psql -U claude -d claude_flow -c \"SELECT COUNT(*) FROM claude_flow.memory_entries;\"");
384
- output.writeln();
385
- return [2 /*return*/, { success: true }];
319
+ }
386
320
  }
387
- });
388
- }); }
321
+ catch (error) {
322
+ const errorMessage = error instanceof Error ? error.message : String(error);
323
+ output.printError(`Failed to create temp file: ${errorMessage}`);
324
+ return { success: false, message: errorMessage };
325
+ }
326
+ }
327
+ // Print statistics
328
+ output.writeln();
329
+ output.printBox([
330
+ 'Import Statistics',
331
+ '',
332
+ ` Total entries: ${stats.total}`,
333
+ ` Imported: ${stats.imported}`,
334
+ ` With embeddings: ${stats.withEmbeddings}`,
335
+ ` Errors: ${stats.errors}`,
336
+ '',
337
+ 'By Namespace:',
338
+ ...Object.entries(stats.byNamespace).map(([ns, count]) => ` ${ns}: ${count}`),
339
+ ].join('\n'), 'Import Complete');
340
+ output.writeln();
341
+ // Show verification command
342
+ output.printInfo('To verify the import:');
343
+ output.writeln(` docker exec ${containerName} psql -U claude -d claude_flow -c "SELECT COUNT(*) FROM claude_flow.memory_entries;"`);
344
+ output.writeln();
345
+ return { success: true };
346
+ },
389
347
  };
390
348
  export default importCommand;
391
349
  //# sourceMappingURL=import.js.map