kynjal-cli 4.0.0 → 4.0.2

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
@@ -2,42 +2,6 @@
2
2
  * V3 CLI RuVector Init Command
3
3
  * Initialize RuVector PostgreSQL Bridge
4
4
  */
5
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
6
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
7
- return new (P || (P = Promise))(function (resolve, reject) {
8
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
9
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
10
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
11
- step((generator = generator.apply(thisArg, _arguments || [])).next());
12
- });
13
- };
14
- var __generator = (this && this.__generator) || function (thisArg, body) {
15
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
16
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
17
- function verb(n) { return function (v) { return step([n, v]); }; }
18
- function step(op) {
19
- if (f) throw new TypeError("Generator is already executing.");
20
- while (_) try {
21
- 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;
22
- if (y = 0, t) op = [op[0] & 2, t.value];
23
- switch (op[0]) {
24
- case 0: case 1: t = op; break;
25
- case 4: _.label++; return { value: op[1], done: false };
26
- case 5: _.label++; y = op[1]; op = [0]; continue;
27
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
28
- default:
29
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
30
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
31
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
32
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
33
- if (t[2]) _.ops.pop();
34
- _.trys.pop(); continue;
35
- }
36
- op = body.call(thisArg, _);
37
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
38
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
39
- }
40
- };
41
5
  import { output } from '../../output.js';
42
6
  import { confirm, input } from '../../prompt.js';
43
7
  /**
@@ -51,13 +15,13 @@ function getConnectionConfig(ctx) {
51
15
  user: ctx.flags.user || process.env.PGUSER || 'postgres',
52
16
  password: ctx.flags.password || process.env.PGPASSWORD || '',
53
17
  ssl: ctx.flags.ssl || process.env.PGSSLMODE === 'require',
54
- schema: ctx.flags.schema || 'claude_flow'
18
+ schema: ctx.flags.schema || 'claude_flow',
55
19
  };
56
20
  }
57
21
  /**
58
22
  * Initialize RuVector in PostgreSQL
59
23
  */
60
- export var initCommand = {
24
+ export const initCommand = {
61
25
  name: 'init',
62
26
  description: 'Initialize RuVector in PostgreSQL',
63
27
  options: [
@@ -66,66 +30,66 @@ export var initCommand = {
66
30
  short: 'h',
67
31
  description: 'PostgreSQL host',
68
32
  type: 'string',
69
- "default": 'localhost'
33
+ default: 'localhost',
70
34
  },
71
35
  {
72
36
  name: 'port',
73
37
  short: 'p',
74
38
  description: 'PostgreSQL port',
75
39
  type: 'number',
76
- "default": 5432
40
+ default: 5432,
77
41
  },
78
42
  {
79
43
  name: 'database',
80
44
  short: 'd',
81
45
  description: 'Database name',
82
46
  type: 'string',
83
- required: true
47
+ required: true,
84
48
  },
85
49
  {
86
50
  name: 'user',
87
51
  short: 'u',
88
52
  description: 'Database user',
89
53
  type: 'string',
90
- "default": 'postgres'
54
+ default: 'postgres',
91
55
  },
92
56
  {
93
57
  name: 'password',
94
58
  description: 'Database password (or use PGPASSWORD env)',
95
- type: 'string'
59
+ type: 'string',
96
60
  },
97
61
  {
98
62
  name: 'ssl',
99
63
  description: 'Enable SSL connection',
100
64
  type: 'boolean',
101
- "default": false
65
+ default: false,
102
66
  },
103
67
  {
104
68
  name: 'schema',
105
69
  short: 's',
106
70
  description: 'Schema name for RuVector tables',
107
71
  type: 'string',
108
- "default": 'claude_flow'
72
+ default: 'claude_flow',
109
73
  },
110
74
  {
111
75
  name: 'force',
112
76
  short: 'f',
113
77
  description: 'Force re-initialization (drops existing schema)',
114
78
  type: 'boolean',
115
- "default": false
79
+ default: false,
116
80
  },
117
81
  {
118
82
  name: 'dimensions',
119
83
  description: 'Default vector dimensions',
120
84
  type: 'number',
121
- "default": 1536
85
+ default: 1536,
122
86
  },
123
87
  {
124
88
  name: 'index-type',
125
89
  description: 'Default index type (hnsw, ivfflat)',
126
90
  type: 'string',
127
- "default": 'hnsw',
128
- choices: ['hnsw', 'ivfflat']
91
+ default: 'hnsw',
92
+ choices: ['hnsw', 'ivfflat'],
129
93
  },
130
94
  ],
131
95
  examples: [
@@ -134,321 +98,334 @@ export var initCommand = {
134
98
  { command: 'claude-flow ruvector init -d mydb --force', description: 'Force re-initialization' },
135
99
  { command: 'claude-flow ruvector init -d mydb --dimensions 768', description: 'Custom vector dimensions' },
136
100
  ],
137
- action: function (ctx) { return __awaiter(void 0, void 0, Promise, function () {
138
- var config, _a, useRemote, _b, _c, _d, _e, _f, _g, force, dimensions, indexType, confirmDrop, spinner, pg, _h, client, extensionResult, error_1, error_2;
139
- return __generator(this, function (_j) {
140
- switch (_j.label) {
141
- case 0:
142
- config = getConnectionConfig(ctx);
143
- output.writeln();
144
- output.writeln(output.bold('RuVector PostgreSQL Initialization'));
145
- output.writeln(output.dim('='.repeat(60)));
146
- output.writeln();
147
- if (!(!config.database && ctx.interactive)) return [3 /*break*/, 9];
148
- _a = config;
149
- return [4 /*yield*/, input({
150
- message: 'Database name:',
151
- validate: function (v) { return v.length > 0 || 'Database name is required'; }
152
- })];
153
- case 1:
154
- _a.database = _j.sent();
155
- return [4 /*yield*/, confirm({
156
- message: 'Connect to remote PostgreSQL?',
157
- "default": false
158
- })];
159
- case 2:
160
- useRemote = _j.sent();
161
- if (!useRemote) return [3 /*break*/, 6];
162
- _b = config;
163
- return [4 /*yield*/, input({
164
- message: 'PostgreSQL host:',
165
- "default": 'localhost'
166
- })];
167
- case 3:
168
- _b.host = _j.sent();
169
- _c = config;
170
- _d = parseInt;
171
- return [4 /*yield*/, input({
172
- message: 'PostgreSQL port:',
173
- "default": '5432'
174
- })];
175
- case 4:
176
- _c.port = _d.apply(void 0, [_j.sent(), 10]);
177
- _e = config;
178
- return [4 /*yield*/, confirm({
179
- message: 'Enable SSL?',
180
- "default": true
181
- })];
182
- case 5:
183
- _e.ssl = _j.sent();
184
- _j.label = 6;
185
- case 6:
186
- _f = config;
187
- return [4 /*yield*/, input({
188
- message: 'Database user:',
189
- "default": 'postgres'
190
- })];
191
- case 7:
192
- _f.user = _j.sent();
193
- if (!!config.password) return [3 /*break*/, 9];
194
- _g = config;
195
- return [4 /*yield*/, input({
196
- message: 'Database password (or set PGPASSWORD):'
197
- })];
198
- case 8:
199
- _g.password = _j.sent();
200
- _j.label = 9;
201
- case 9:
202
- if (!config.database) {
203
- output.printError('Database name is required. Use --database or -d flag.');
204
- return [2 /*return*/, { success: false, exitCode: 1 }];
205
- }
206
- force = ctx.flags.force;
207
- dimensions = parseInt(ctx.flags.dimensions || '1536', 10);
208
- indexType = ctx.flags['index-type'] || 'hnsw';
209
- // Show configuration
210
- output.writeln(output.highlight('Connection Configuration:'));
211
- output.printTable({
212
- columns: [
213
- { key: 'setting', header: 'Setting', width: 20 },
214
- { key: 'value', header: 'Value', width: 40 },
215
- ],
216
- data: [
217
- { setting: 'Host', value: config.host },
218
- { setting: 'Port', value: String(config.port) },
219
- { setting: 'Database', value: config.database },
220
- { setting: 'User', value: config.user },
221
- { setting: 'SSL', value: config.ssl ? 'Enabled' : 'Disabled' },
222
- { setting: 'Schema', value: config.schema },
223
- { setting: 'Dimensions', value: String(dimensions) },
224
- { setting: 'Index Type', value: indexType.toUpperCase() },
225
- ]
226
- });
227
- output.writeln();
228
- if (!force) return [3 /*break*/, 11];
229
- output.printWarning('Force mode: existing schema will be dropped!');
230
- if (!ctx.interactive) return [3 /*break*/, 11];
231
- return [4 /*yield*/, confirm({
232
- message: "Drop and recreate schema \"" + config.schema + "\"?",
233
- "default": false
234
- })];
235
- case 10:
236
- confirmDrop = _j.sent();
237
- if (!confirmDrop) {
238
- output.printInfo('Initialization cancelled');
239
- return [2 /*return*/, { success: false, exitCode: 0 }];
240
- }
241
- _j.label = 11;
242
- case 11:
243
- spinner = output.createSpinner({ text: 'Connecting to PostgreSQL...', spinner: 'dots' });
244
- spinner.start();
245
- _j.label = 12;
246
- case 12:
247
- _j.trys.push([12, 51, , 52]);
248
- pg = null;
249
- _j.label = 13;
250
- case 13:
251
- _j.trys.push([13, 15, , 16]);
252
- return [4 /*yield*/, import('pg')];
253
- case 14:
254
- pg = _j.sent();
255
- return [3 /*break*/, 16];
256
- case 15:
257
- _h = _j.sent();
258
- spinner.fail('PostgreSQL driver not found');
259
- output.printError('Install pg package: npm install pg');
260
- return [2 /*return*/, { success: false, exitCode: 1 }];
261
- case 16:
262
- client = new pg.Client({
263
- host: config.host,
264
- port: config.port,
265
- database: config.database,
266
- user: config.user,
267
- password: config.password,
268
- ssl: config.ssl ? { rejectUnauthorized: false } : false
269
- });
270
- return [4 /*yield*/, client.connect()];
271
- case 17:
272
- _j.sent();
273
- spinner.succeed('Connected to PostgreSQL');
274
- // Check pgvector extension
275
- spinner.setText('Checking pgvector extension...');
276
- spinner.start();
277
- return [4 /*yield*/, client.query("\n SELECT extversion FROM pg_extension WHERE extname = 'vector'\n ")];
278
- case 18:
279
- extensionResult = _j.sent();
280
- if (!(extensionResult.rows.length === 0)) return [3 /*break*/, 24];
281
- spinner.succeed('pgvector not installed, attempting to create...');
282
- _j.label = 19;
283
- case 19:
284
- _j.trys.push([19, 21, , 23]);
285
- return [4 /*yield*/, client.query('CREATE EXTENSION IF NOT EXISTS vector')];
286
- case 20:
287
- _j.sent();
101
+ action: async (ctx) => {
102
+ let config = getConnectionConfig(ctx);
103
+ output.writeln();
104
+ output.writeln(output.bold('RuVector PostgreSQL Initialization'));
105
+ output.writeln(output.dim('='.repeat(60)));
106
+ output.writeln();
107
+ // Interactive mode if database not specified
108
+ if (!config.database && ctx.interactive) {
109
+ config.database = await input({
110
+ message: 'Database name:',
111
+ validate: (v) => v.length > 0 || 'Database name is required',
112
+ });
113
+ const useRemote = await confirm({
114
+ message: 'Connect to remote PostgreSQL?',
115
+ default: false,
116
+ });
117
+ if (useRemote) {
118
+ config.host = await input({
119
+ message: 'PostgreSQL host:',
120
+ default: 'localhost',
121
+ });
122
+ config.port = parseInt(await input({
123
+ message: 'PostgreSQL port:',
124
+ default: '5432',
125
+ }), 10);
126
+ config.ssl = await confirm({
127
+ message: 'Enable SSL?',
128
+ default: true,
129
+ });
130
+ }
131
+ config.user = await input({
132
+ message: 'Database user:',
133
+ default: 'postgres',
134
+ });
135
+ if (!config.password) {
136
+ config.password = await input({
137
+ message: 'Database password (or set PGPASSWORD):',
138
+ });
139
+ }
140
+ }
141
+ if (!config.database) {
142
+ output.printError('Database name is required. Use --database or -d flag.');
143
+ return { success: false, exitCode: 1 };
144
+ }
145
+ const force = ctx.flags.force;
146
+ const dimensions = parseInt(ctx.flags.dimensions || '1536', 10);
147
+ const indexType = ctx.flags['index-type'] || 'hnsw';
148
+ // Show configuration
149
+ output.writeln(output.highlight('Connection Configuration:'));
150
+ output.printTable({
151
+ columns: [
152
+ { key: 'setting', header: 'Setting', width: 20 },
153
+ { key: 'value', header: 'Value', width: 40 },
154
+ ],
155
+ data: [
156
+ { setting: 'Host', value: config.host },
157
+ { setting: 'Port', value: String(config.port) },
158
+ { setting: 'Database', value: config.database },
159
+ { setting: 'User', value: config.user },
160
+ { setting: 'SSL', value: config.ssl ? 'Enabled' : 'Disabled' },
161
+ { setting: 'Schema', value: config.schema },
162
+ { setting: 'Dimensions', value: String(dimensions) },
163
+ { setting: 'Index Type', value: indexType.toUpperCase() },
164
+ ],
165
+ });
166
+ output.writeln();
167
+ if (force) {
168
+ output.printWarning('Force mode: existing schema will be dropped!');
169
+ if (ctx.interactive) {
170
+ const confirmDrop = await confirm({
171
+ message: `Drop and recreate schema "${config.schema}"?`,
172
+ default: false,
173
+ });
174
+ if (!confirmDrop) {
175
+ output.printInfo('Initialization cancelled');
176
+ return { success: false, exitCode: 0 };
177
+ }
178
+ }
179
+ }
180
+ const spinner = output.createSpinner({ text: 'Connecting to PostgreSQL...', spinner: 'dots' });
181
+ spinner.start();
182
+ try {
183
+ // Check for pg module
184
+ let pg = null;
185
+ try {
186
+ pg = await import('pg');
187
+ }
188
+ catch {
189
+ spinner.fail('PostgreSQL driver not found');
190
+ output.printError('Install pg package: npm install pg');
191
+ return { success: false, exitCode: 1 };
192
+ }
193
+ // Connect to PostgreSQL
194
+ const client = new pg.Client({
195
+ host: config.host,
196
+ port: config.port,
197
+ database: config.database,
198
+ user: config.user,
199
+ password: config.password,
200
+ ssl: config.ssl ? { rejectUnauthorized: false } : false,
201
+ });
202
+ await client.connect();
203
+ spinner.succeed('Connected to PostgreSQL');
204
+ // Check pgvector extension
205
+ spinner.setText('Checking pgvector extension...');
206
+ spinner.start();
207
+ const extensionResult = await client.query(`
208
+ SELECT extversion FROM pg_extension WHERE extname = 'vector'
209
+ `);
210
+ if (extensionResult.rows.length === 0) {
211
+ spinner.succeed('pgvector not installed, attempting to create...');
212
+ try {
213
+ await client.query('CREATE EXTENSION IF NOT EXISTS vector');
288
214
  spinner.succeed('pgvector extension created');
289
- return [3 /*break*/, 23];
290
- case 21:
291
- error_1 = _j.sent();
215
+ }
216
+ catch (error) {
292
217
  spinner.fail('Failed to create pgvector extension');
293
218
  output.printError('Please install pgvector manually: https://github.com/pgvector/pgvector');
294
- return [4 /*yield*/, client.end()];
295
- case 22:
296
- _j.sent();
297
- return [2 /*return*/, { success: false, exitCode: 1 }];
298
- case 23: return [3 /*break*/, 25];
299
- case 24:
300
- spinner.succeed("pgvector v" + extensionResult.rows[0].extversion + " found");
301
- _j.label = 25;
302
- case 25:
303
- if (!force) return [3 /*break*/, 27];
304
- spinner.setText("Dropping schema \"" + config.schema + "\"...");
305
- spinner.start();
306
- return [4 /*yield*/, client.query("DROP SCHEMA IF EXISTS " + config.schema + " CASCADE")];
307
- case 26:
308
- _j.sent();
309
- spinner.succeed("Schema \"" + config.schema + "\" dropped");
310
- _j.label = 27;
311
- case 27:
312
- // Create schema
313
- spinner.setText("Creating schema \"" + config.schema + "\"...");
314
- spinner.start();
315
- return [4 /*yield*/, client.query("CREATE SCHEMA IF NOT EXISTS " + config.schema)];
316
- case 28:
317
- _j.sent();
318
- spinner.succeed("Schema \"" + config.schema + "\" created");
319
- // Create tables
320
- spinner.setText('Creating RuVector tables...');
321
- spinner.start();
322
- // Vector embeddings table
323
- return [4 /*yield*/, client.query("\n CREATE TABLE IF NOT EXISTS " + config.schema + ".embeddings (\n id UUID PRIMARY KEY DEFAULT gen_random_uuid(),\n key VARCHAR(512) NOT NULL,\n namespace VARCHAR(128) NOT NULL DEFAULT 'default',\n content TEXT,\n embedding vector(" + dimensions + "),\n metadata JSONB DEFAULT '{}',\n created_at TIMESTAMPTZ DEFAULT NOW(),\n updated_at TIMESTAMPTZ DEFAULT NOW(),\n UNIQUE(key, namespace)\n )\n ")];
324
- case 29:
325
- // Vector embeddings table
326
- _j.sent();
327
- // Attention patterns table
328
- return [4 /*yield*/, client.query("\n CREATE TABLE IF NOT EXISTS " + config.schema + ".attention_patterns (\n id UUID PRIMARY KEY DEFAULT gen_random_uuid(),\n pattern_name VARCHAR(256) NOT NULL,\n query_embedding vector(" + dimensions + "),\n key_embedding vector(" + dimensions + "),\n value_embedding vector(" + dimensions + "),\n attention_weights JSONB,\n context TEXT,\n created_at TIMESTAMPTZ DEFAULT NOW()\n )\n ")];
329
- case 30:
330
- // Attention patterns table
331
- _j.sent();
332
- // GNN adjacency table
333
- return [4 /*yield*/, client.query("\n CREATE TABLE IF NOT EXISTS " + config.schema + ".gnn_edges (\n id UUID PRIMARY KEY DEFAULT gen_random_uuid(),\n source_id UUID NOT NULL,\n target_id UUID NOT NULL,\n edge_type VARCHAR(64) NOT NULL DEFAULT 'related',\n weight FLOAT DEFAULT 1.0,\n metadata JSONB DEFAULT '{}',\n created_at TIMESTAMPTZ DEFAULT NOW(),\n UNIQUE(source_id, target_id, edge_type)\n )\n ")];
334
- case 31:
335
- // GNN adjacency table
336
- _j.sent();
337
- // Hyperbolic embeddings table (Poincare ball)
338
- return [4 /*yield*/, client.query("\n CREATE TABLE IF NOT EXISTS " + config.schema + ".hyperbolic_embeddings (\n id UUID PRIMARY KEY DEFAULT gen_random_uuid(),\n entity_id UUID NOT NULL,\n embedding vector(" + dimensions + "),\n curvature FLOAT DEFAULT -1.0,\n hierarchy_level INTEGER DEFAULT 0,\n parent_id UUID,\n created_at TIMESTAMPTZ DEFAULT NOW()\n )\n ")];
339
- case 32:
340
- // Hyperbolic embeddings table (Poincare ball)
341
- _j.sent();
342
- // Migrations tracking table
343
- return [4 /*yield*/, client.query("\n CREATE TABLE IF NOT EXISTS " + config.schema + ".migrations (\n id SERIAL PRIMARY KEY,\n version VARCHAR(64) NOT NULL UNIQUE,\n name VARCHAR(256) NOT NULL,\n applied_at TIMESTAMPTZ DEFAULT NOW(),\n checksum VARCHAR(64)\n )\n ")];
344
- case 33:
345
- // Migrations tracking table
346
- _j.sent();
347
- // RuVector metadata table
348
- return [4 /*yield*/, client.query("\n CREATE TABLE IF NOT EXISTS " + config.schema + ".metadata (\n key VARCHAR(128) PRIMARY KEY,\n value JSONB NOT NULL,\n updated_at TIMESTAMPTZ DEFAULT NOW()\n )\n ")];
349
- case 34:
350
- // RuVector metadata table
351
- _j.sent();
352
- // Store initialization metadata
353
- return [4 /*yield*/, client.query("\n INSERT INTO " + config.schema + ".metadata (key, value)\n VALUES ('ruvector_version', '\"1.0.0\"')\n ON CONFLICT (key) DO UPDATE SET value = EXCLUDED.value, updated_at = NOW()\n ")];
354
- case 35:
355
- // Store initialization metadata
356
- _j.sent();
357
- return [4 /*yield*/, client.query("\n INSERT INTO " + config.schema + ".metadata (key, value)\n VALUES ('dimensions', '" + dimensions + "')\n ON CONFLICT (key) DO UPDATE SET value = EXCLUDED.value, updated_at = NOW()\n ")];
358
- case 36:
359
- _j.sent();
360
- return [4 /*yield*/, client.query("\n INSERT INTO " + config.schema + ".metadata (key, value)\n VALUES ('initialized_at', '\"" + new Date().toISOString() + "\"')\n ON CONFLICT (key) DO UPDATE SET value = EXCLUDED.value, updated_at = NOW()\n ")];
361
- case 37:
362
- _j.sent();
363
- spinner.succeed('RuVector tables created');
364
- // Create indexes
365
- spinner.setText("Creating " + indexType.toUpperCase() + " indexes...");
366
- spinner.start();
367
- if (!(indexType === 'hnsw')) return [3 /*break*/, 41];
368
- return [4 /*yield*/, client.query("\n CREATE INDEX IF NOT EXISTS idx_embeddings_vector_hnsw\n ON " + config.schema + ".embeddings\n USING hnsw (embedding vector_cosine_ops)\n WITH (m = 16, ef_construction = 64)\n ")];
369
- case 38:
370
- _j.sent();
371
- return [4 /*yield*/, client.query("\n CREATE INDEX IF NOT EXISTS idx_attention_query_hnsw\n ON " + config.schema + ".attention_patterns\n USING hnsw (query_embedding vector_cosine_ops)\n WITH (m = 16, ef_construction = 64)\n ")];
372
- case 39:
373
- _j.sent();
374
- return [4 /*yield*/, client.query("\n CREATE INDEX IF NOT EXISTS idx_hyperbolic_embedding_hnsw\n ON " + config.schema + ".hyperbolic_embeddings\n USING hnsw (embedding vector_cosine_ops)\n WITH (m = 16, ef_construction = 64)\n ")];
375
- case 40:
376
- _j.sent();
377
- return [3 /*break*/, 44];
378
- case 41:
219
+ await client.end();
220
+ return { success: false, exitCode: 1 };
221
+ }
222
+ }
223
+ else {
224
+ spinner.succeed(`pgvector v${extensionResult.rows[0].extversion} found`);
225
+ }
226
+ // Drop schema if force mode
227
+ if (force) {
228
+ spinner.setText(`Dropping schema "${config.schema}"...`);
229
+ spinner.start();
230
+ await client.query(`DROP SCHEMA IF EXISTS ${config.schema} CASCADE`);
231
+ spinner.succeed(`Schema "${config.schema}" dropped`);
232
+ }
233
+ // Create schema
234
+ spinner.setText(`Creating schema "${config.schema}"...`);
235
+ spinner.start();
236
+ await client.query(`CREATE SCHEMA IF NOT EXISTS ${config.schema}`);
237
+ spinner.succeed(`Schema "${config.schema}" created`);
238
+ // Create tables
239
+ spinner.setText('Creating RuVector tables...');
240
+ spinner.start();
241
+ // Vector embeddings table
242
+ await client.query(`
243
+ CREATE TABLE IF NOT EXISTS ${config.schema}.embeddings (
244
+ id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
245
+ key VARCHAR(512) NOT NULL,
246
+ namespace VARCHAR(128) NOT NULL DEFAULT 'default',
247
+ content TEXT,
248
+ embedding vector(${dimensions}),
249
+ metadata JSONB DEFAULT '{}',
250
+ created_at TIMESTAMPTZ DEFAULT NOW(),
251
+ updated_at TIMESTAMPTZ DEFAULT NOW(),
252
+ UNIQUE(key, namespace)
253
+ )
254
+ `);
255
+ // Attention patterns table
256
+ await client.query(`
257
+ CREATE TABLE IF NOT EXISTS ${config.schema}.attention_patterns (
258
+ id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
259
+ pattern_name VARCHAR(256) NOT NULL,
260
+ query_embedding vector(${dimensions}),
261
+ key_embedding vector(${dimensions}),
262
+ value_embedding vector(${dimensions}),
263
+ attention_weights JSONB,
264
+ context TEXT,
265
+ created_at TIMESTAMPTZ DEFAULT NOW()
266
+ )
267
+ `);
268
+ // GNN adjacency table
269
+ await client.query(`
270
+ CREATE TABLE IF NOT EXISTS ${config.schema}.gnn_edges (
271
+ id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
272
+ source_id UUID NOT NULL,
273
+ target_id UUID NOT NULL,
274
+ edge_type VARCHAR(64) NOT NULL DEFAULT 'related',
275
+ weight FLOAT DEFAULT 1.0,
276
+ metadata JSONB DEFAULT '{}',
277
+ created_at TIMESTAMPTZ DEFAULT NOW(),
278
+ UNIQUE(source_id, target_id, edge_type)
279
+ )
280
+ `);
281
+ // Hyperbolic embeddings table (Poincare ball)
282
+ await client.query(`
283
+ CREATE TABLE IF NOT EXISTS ${config.schema}.hyperbolic_embeddings (
284
+ id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
285
+ entity_id UUID NOT NULL,
286
+ embedding vector(${dimensions}),
287
+ curvature FLOAT DEFAULT -1.0,
288
+ hierarchy_level INTEGER DEFAULT 0,
289
+ parent_id UUID,
290
+ created_at TIMESTAMPTZ DEFAULT NOW()
291
+ )
292
+ `);
293
+ // Migrations tracking table
294
+ await client.query(`
295
+ CREATE TABLE IF NOT EXISTS ${config.schema}.migrations (
296
+ id SERIAL PRIMARY KEY,
297
+ version VARCHAR(64) NOT NULL UNIQUE,
298
+ name VARCHAR(256) NOT NULL,
299
+ applied_at TIMESTAMPTZ DEFAULT NOW(),
300
+ checksum VARCHAR(64)
301
+ )
302
+ `);
303
+ // RuVector metadata table
304
+ await client.query(`
305
+ CREATE TABLE IF NOT EXISTS ${config.schema}.metadata (
306
+ key VARCHAR(128) PRIMARY KEY,
307
+ value JSONB NOT NULL,
308
+ updated_at TIMESTAMPTZ DEFAULT NOW()
309
+ )
310
+ `);
311
+ // Store initialization metadata
312
+ await client.query(`
313
+ INSERT INTO ${config.schema}.metadata (key, value)
314
+ VALUES ('ruvector_version', '"1.0.0"')
315
+ ON CONFLICT (key) DO UPDATE SET value = EXCLUDED.value, updated_at = NOW()
316
+ `);
317
+ await client.query(`
318
+ INSERT INTO ${config.schema}.metadata (key, value)
319
+ VALUES ('dimensions', '${dimensions}')
320
+ ON CONFLICT (key) DO UPDATE SET value = EXCLUDED.value, updated_at = NOW()
321
+ `);
322
+ await client.query(`
323
+ INSERT INTO ${config.schema}.metadata (key, value)
324
+ VALUES ('initialized_at', '"${new Date().toISOString()}"')
325
+ ON CONFLICT (key) DO UPDATE SET value = EXCLUDED.value, updated_at = NOW()
326
+ `);
327
+ spinner.succeed('RuVector tables created');
328
+ // Create indexes
329
+ spinner.setText(`Creating ${indexType.toUpperCase()} indexes...`);
330
+ spinner.start();
331
+ if (indexType === 'hnsw') {
332
+ await client.query(`
333
+ CREATE INDEX IF NOT EXISTS idx_embeddings_vector_hnsw
334
+ ON ${config.schema}.embeddings
335
+ USING hnsw (embedding vector_cosine_ops)
336
+ WITH (m = 16, ef_construction = 64)
337
+ `);
338
+ await client.query(`
339
+ CREATE INDEX IF NOT EXISTS idx_attention_query_hnsw
340
+ ON ${config.schema}.attention_patterns
341
+ USING hnsw (query_embedding vector_cosine_ops)
342
+ WITH (m = 16, ef_construction = 64)
343
+ `);
344
+ await client.query(`
345
+ CREATE INDEX IF NOT EXISTS idx_hyperbolic_embedding_hnsw
346
+ ON ${config.schema}.hyperbolic_embeddings
347
+ USING hnsw (embedding vector_cosine_ops)
348
+ WITH (m = 16, ef_construction = 64)
349
+ `);
350
+ }
351
+ else {
379
352
  // IVFFlat indexes
380
- return [4 /*yield*/, client.query("\n CREATE INDEX IF NOT EXISTS idx_embeddings_vector_ivfflat\n ON " + config.schema + ".embeddings\n USING ivfflat (embedding vector_cosine_ops)\n WITH (lists = 100)\n ")];
381
- case 42:
382
- // IVFFlat indexes
383
- _j.sent();
384
- return [4 /*yield*/, client.query("\n CREATE INDEX IF NOT EXISTS idx_attention_query_ivfflat\n ON " + config.schema + ".attention_patterns\n USING ivfflat (query_embedding vector_cosine_ops)\n WITH (lists = 100)\n ")];
385
- case 43:
386
- _j.sent();
387
- _j.label = 44;
388
- case 44:
389
- // Additional standard indexes
390
- return [4 /*yield*/, client.query("\n CREATE INDEX IF NOT EXISTS idx_embeddings_namespace\n ON " + config.schema + ".embeddings (namespace)\n ")];
391
- case 45:
392
- // Additional standard indexes
393
- _j.sent();
394
- return [4 /*yield*/, client.query("\n CREATE INDEX IF NOT EXISTS idx_embeddings_key\n ON " + config.schema + ".embeddings (key)\n ")];
395
- case 46:
396
- _j.sent();
397
- return [4 /*yield*/, client.query("\n CREATE INDEX IF NOT EXISTS idx_gnn_source\n ON " + config.schema + ".gnn_edges (source_id)\n ")];
398
- case 47:
399
- _j.sent();
400
- return [4 /*yield*/, client.query("\n CREATE INDEX IF NOT EXISTS idx_gnn_target\n ON " + config.schema + ".gnn_edges (target_id)\n ")];
401
- case 48:
402
- _j.sent();
403
- spinner.succeed(indexType.toUpperCase() + " indexes created");
404
- // Record initial migration
405
- return [4 /*yield*/, client.query("\n INSERT INTO " + config.schema + ".migrations (version, name)\n VALUES ('1.0.0', 'Initial RuVector setup')\n ON CONFLICT (version) DO NOTHING\n ")];
406
- case 49:
407
- // Record initial migration
408
- _j.sent();
409
- return [4 /*yield*/, client.end()];
410
- case 50:
411
- _j.sent();
412
- output.writeln();
413
- output.printSuccess('RuVector PostgreSQL Bridge initialized successfully!');
414
- output.writeln();
415
- output.printBox([
416
- 'Created tables:',
417
- " - " + config.schema + ".embeddings (vector storage)",
418
- " - " + config.schema + ".attention_patterns (attention mechanism)",
419
- " - " + config.schema + ".gnn_edges (graph neural network)",
420
- " - " + config.schema + ".hyperbolic_embeddings (Poincare ball)",
421
- " - " + config.schema + ".migrations (version tracking)",
422
- " - " + config.schema + ".metadata (configuration)",
423
- '',
424
- 'Created indexes:',
425
- " - " + indexType.toUpperCase() + " vector similarity index",
426
- ' - B-tree indexes on key, namespace',
427
- ' - GNN edge indexes',
428
- '',
429
- 'Next steps:',
430
- ' 1. Run migrations: claude-flow ruvector migrate --up',
431
- ' 2. Check status: claude-flow ruvector status --verbose',
432
- ' 3. Run benchmark: claude-flow ruvector benchmark',
433
- ].join('\n'), 'Initialization Complete');
434
- return [2 /*return*/, {
435
- success: true,
436
- data: {
437
- schema: config.schema,
438
- dimensions: dimensions,
439
- indexType: indexType,
440
- tables: ['embeddings', 'attention_patterns', 'gnn_edges', 'hyperbolic_embeddings', 'migrations', 'metadata']
441
- }
442
- }];
443
- case 51:
444
- error_2 = _j.sent();
445
- spinner.fail('Initialization failed');
446
- output.printError(error_2 instanceof Error ? error_2.message : String(error_2));
447
- return [2 /*return*/, { success: false, exitCode: 1 }];
448
- case 52: return [2 /*return*/];
353
+ await client.query(`
354
+ CREATE INDEX IF NOT EXISTS idx_embeddings_vector_ivfflat
355
+ ON ${config.schema}.embeddings
356
+ USING ivfflat (embedding vector_cosine_ops)
357
+ WITH (lists = 100)
358
+ `);
359
+ await client.query(`
360
+ CREATE INDEX IF NOT EXISTS idx_attention_query_ivfflat
361
+ ON ${config.schema}.attention_patterns
362
+ USING ivfflat (query_embedding vector_cosine_ops)
363
+ WITH (lists = 100)
364
+ `);
449
365
  }
450
- });
451
- }); }
366
+ // Additional standard indexes
367
+ await client.query(`
368
+ CREATE INDEX IF NOT EXISTS idx_embeddings_namespace
369
+ ON ${config.schema}.embeddings (namespace)
370
+ `);
371
+ await client.query(`
372
+ CREATE INDEX IF NOT EXISTS idx_embeddings_key
373
+ ON ${config.schema}.embeddings (key)
374
+ `);
375
+ await client.query(`
376
+ CREATE INDEX IF NOT EXISTS idx_gnn_source
377
+ ON ${config.schema}.gnn_edges (source_id)
378
+ `);
379
+ await client.query(`
380
+ CREATE INDEX IF NOT EXISTS idx_gnn_target
381
+ ON ${config.schema}.gnn_edges (target_id)
382
+ `);
383
+ spinner.succeed(`${indexType.toUpperCase()} indexes created`);
384
+ // Record initial migration
385
+ await client.query(`
386
+ INSERT INTO ${config.schema}.migrations (version, name)
387
+ VALUES ('1.0.0', 'Initial RuVector setup')
388
+ ON CONFLICT (version) DO NOTHING
389
+ `);
390
+ await client.end();
391
+ output.writeln();
392
+ output.printSuccess('RuVector PostgreSQL Bridge initialized successfully!');
393
+ output.writeln();
394
+ output.printBox([
395
+ 'Created tables:',
396
+ ` - ${config.schema}.embeddings (vector storage)`,
397
+ ` - ${config.schema}.attention_patterns (attention mechanism)`,
398
+ ` - ${config.schema}.gnn_edges (graph neural network)`,
399
+ ` - ${config.schema}.hyperbolic_embeddings (Poincare ball)`,
400
+ ` - ${config.schema}.migrations (version tracking)`,
401
+ ` - ${config.schema}.metadata (configuration)`,
402
+ '',
403
+ 'Created indexes:',
404
+ ` - ${indexType.toUpperCase()} vector similarity index`,
405
+ ' - B-tree indexes on key, namespace',
406
+ ' - GNN edge indexes',
407
+ '',
408
+ 'Next steps:',
409
+ ' 1. Run migrations: claude-flow ruvector migrate --up',
410
+ ' 2. Check status: claude-flow ruvector status --verbose',
411
+ ' 3. Run benchmark: claude-flow ruvector benchmark',
412
+ ].join('\n'), 'Initialization Complete');
413
+ return {
414
+ success: true,
415
+ data: {
416
+ schema: config.schema,
417
+ dimensions,
418
+ indexType,
419
+ tables: ['embeddings', 'attention_patterns', 'gnn_edges', 'hyperbolic_embeddings', 'migrations', 'metadata'],
420
+ },
421
+ };
422
+ }
423
+ catch (error) {
424
+ spinner.fail('Initialization failed');
425
+ output.printError(error instanceof Error ? error.message : String(error));
426
+ return { success: false, exitCode: 1 };
427
+ }
428
+ },
452
429
  };
453
430
  export default initCommand;
454
431
  //# sourceMappingURL=init.js.map