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.
- package/dist/src/appliance/gguf-engine.d.ts +91 -0
- package/dist/src/appliance/gguf-engine.d.ts.map +1 -0
- package/dist/src/appliance/gguf-engine.js +286 -525
- package/dist/src/appliance/gguf-engine.js.map +1 -1
- package/dist/src/appliance/ruvllm-bridge.d.ts +102 -0
- package/dist/src/appliance/ruvllm-bridge.d.ts.map +1 -0
- package/dist/src/appliance/ruvllm-bridge.js +203 -403
- package/dist/src/appliance/ruvllm-bridge.js.map +1 -1
- package/dist/src/appliance/rvfa-builder.d.ts +44 -0
- package/dist/src/appliance/rvfa-builder.d.ts.map +1 -0
- package/dist/src/appliance/rvfa-builder.js +154 -208
- package/dist/src/appliance/rvfa-builder.js.map +1 -1
- package/dist/src/appliance/rvfa-distribution.d.ts +97 -0
- package/dist/src/appliance/rvfa-distribution.d.ts.map +1 -0
- package/dist/src/appliance/rvfa-distribution.js +260 -423
- package/dist/src/appliance/rvfa-distribution.js.map +1 -1
- package/dist/src/appliance/rvfa-format.d.ts +111 -0
- package/dist/src/appliance/rvfa-format.d.ts.map +1 -0
- package/dist/src/appliance/rvfa-format.js +128 -200
- package/dist/src/appliance/rvfa-format.js.map +1 -1
- package/dist/src/appliance/rvfa-runner.d.ts +69 -0
- package/dist/src/appliance/rvfa-runner.d.ts.map +1 -0
- package/dist/src/appliance/rvfa-runner.js +168 -304
- package/dist/src/appliance/rvfa-runner.js.map +1 -1
- package/dist/src/appliance/rvfa-signing.d.ts +123 -0
- package/dist/src/appliance/rvfa-signing.d.ts.map +1 -0
- package/dist/src/appliance/rvfa-signing.js +173 -295
- package/dist/src/appliance/rvfa-signing.js.map +1 -1
- package/dist/src/benchmarks/pretrain/index.d.ts +58 -0
- package/dist/src/benchmarks/pretrain/index.d.ts.map +1 -0
- package/dist/src/benchmarks/pretrain/index.js +331 -542
- package/dist/src/benchmarks/pretrain/index.js.map +1 -1
- package/dist/src/commands/agent.js +574 -697
- package/dist/src/commands/agent.js.map +1 -1
- package/dist/src/commands/analyze.js +1218 -1548
- package/dist/src/commands/analyze.js.map +1 -1
- package/dist/src/commands/appliance-advanced.js +158 -267
- package/dist/src/commands/appliance-advanced.js.map +1 -1
- package/dist/src/commands/appliance.js +318 -493
- package/dist/src/commands/appliance.js.map +1 -1
- package/dist/src/commands/benchmark.js +372 -523
- package/dist/src/commands/benchmark.js.map +1 -1
- package/dist/src/commands/claims.js +274 -364
- package/dist/src/commands/claims.js.map +1 -1
- package/dist/src/commands/cleanup.js +113 -157
- package/dist/src/commands/cleanup.js.map +1 -1
- package/dist/src/commands/completions.js +477 -118
- package/dist/src/commands/completions.js.map +1 -1
- package/dist/src/commands/config.js +237 -303
- package/dist/src/commands/config.js.map +1 -1
- package/dist/src/commands/daemon.js +487 -596
- package/dist/src/commands/daemon.js.map +1 -1
- package/dist/src/commands/deployment.js +194 -275
- package/dist/src/commands/deployment.js.map +1 -1
- package/dist/src/commands/doctor.js +504 -686
- package/dist/src/commands/doctor.js.map +1 -1
- package/dist/src/commands/embeddings.js +1293 -1543
- package/dist/src/commands/embeddings.js.map +1 -1
- package/dist/src/commands/guidance.js +449 -596
- package/dist/src/commands/guidance.js.map +1 -1
- package/dist/src/commands/hive-mind.js +854 -938
- package/dist/src/commands/hive-mind.js.map +1 -1
- package/dist/src/commands/hooks.js +3112 -3519
- package/dist/src/commands/hooks.js.map +1 -1
- package/dist/src/commands/index.d.ts +115 -0
- package/dist/src/commands/index.d.ts.map +1 -0
- package/dist/src/commands/index.js +126 -308
- package/dist/src/commands/index.js.map +1 -1
- package/dist/src/commands/init.js +788 -940
- package/dist/src/commands/init.js.map +1 -1
- package/dist/src/commands/issues.js +383 -558
- package/dist/src/commands/issues.js.map +1 -1
- package/dist/src/commands/mcp.js +493 -605
- package/dist/src/commands/mcp.js.map +1 -1
- package/dist/src/commands/memory.js +833 -1026
- package/dist/src/commands/memory.js.map +1 -1
- package/dist/src/commands/migrate.js +282 -347
- package/dist/src/commands/migrate.js.map +1 -1
- package/dist/src/commands/neural.js +1289 -1563
- package/dist/src/commands/neural.js.map +1 -1
- package/dist/src/commands/performance.js +497 -643
- package/dist/src/commands/performance.js.map +1 -1
- package/dist/src/commands/plugins.js +668 -841
- package/dist/src/commands/plugins.js.map +1 -1
- package/dist/src/commands/process.js +392 -447
- package/dist/src/commands/process.js.map +1 -1
- package/dist/src/commands/progress.js +162 -256
- package/dist/src/commands/progress.js.map +1 -1
- package/dist/src/commands/providers.js +150 -220
- package/dist/src/commands/providers.js.map +1 -1
- package/dist/src/commands/route.js +520 -665
- package/dist/src/commands/route.js.map +1 -1
- package/dist/src/commands/ruvector/backup.js +505 -651
- package/dist/src/commands/ruvector/backup.js.map +1 -1
- package/dist/src/commands/ruvector/benchmark.js +349 -401
- package/dist/src/commands/ruvector/benchmark.js.map +1 -1
- package/dist/src/commands/ruvector/import.js +224 -266
- package/dist/src/commands/ruvector/import.js.map +1 -1
- package/dist/src/commands/ruvector/index.js +37 -75
- package/dist/src/commands/ruvector/index.js.map +1 -1
- package/dist/src/commands/ruvector/init.js +336 -359
- package/dist/src/commands/ruvector/init.js.map +1 -1
- package/dist/src/commands/ruvector/migrate.js +335 -322
- package/dist/src/commands/ruvector/migrate.js.map +1 -1
- package/dist/src/commands/ruvector/optimize.js +375 -431
- package/dist/src/commands/ruvector/optimize.js.map +1 -1
- package/dist/src/commands/ruvector/setup.js +703 -117
- package/dist/src/commands/ruvector/setup.js.map +1 -1
- package/dist/src/commands/ruvector/status.js +364 -419
- package/dist/src/commands/ruvector/status.js.map +1 -1
- package/dist/src/commands/security.js +485 -608
- package/dist/src/commands/security.js.map +1 -1
- package/dist/src/commands/session.js +504 -626
- package/dist/src/commands/session.js.map +1 -1
- package/dist/src/commands/start.js +267 -364
- package/dist/src/commands/start.js.map +1 -1
- package/dist/src/commands/status.js +380 -486
- package/dist/src/commands/status.js.map +1 -1
- package/dist/src/commands/swarm.js +408 -488
- package/dist/src/commands/swarm.js.map +1 -1
- package/dist/src/commands/task.js +423 -538
- package/dist/src/commands/task.js.map +1 -1
- package/dist/src/commands/transfer-store.js +322 -412
- package/dist/src/commands/transfer-store.js.map +1 -1
- package/dist/src/commands/update.js +196 -291
- package/dist/src/commands/update.js.map +1 -1
- package/dist/src/commands/workflow.js +386 -486
- package/dist/src/commands/workflow.js.map +1 -1
- package/dist/src/config-adapter.d.ts +15 -0
- package/dist/src/config-adapter.d.ts.map +1 -0
- package/dist/src/config-adapter.js +38 -39
- package/dist/src/config-adapter.js.map +1 -1
- package/dist/src/index.d.ts +77 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +309 -411
- package/dist/src/index.js.map +1 -1
- package/dist/src/infrastructure/in-memory-repositories.d.ts +68 -0
- package/dist/src/infrastructure/in-memory-repositories.d.ts.map +1 -0
- package/dist/src/infrastructure/in-memory-repositories.js +246 -507
- package/dist/src/infrastructure/in-memory-repositories.js.map +1 -1
- package/dist/src/init/claudemd-generator.d.ts +25 -0
- package/dist/src/init/claudemd-generator.d.ts.map +1 -0
- package/dist/src/init/claudemd-generator.js +368 -78
- package/dist/src/init/claudemd-generator.js.map +1 -1
- package/dist/src/init/executor.d.ts +41 -0
- package/dist/src/init/executor.d.ts.map +1 -0
- package/dist/src/init/executor.js +1307 -996
- package/dist/src/init/executor.js.map +1 -1
- package/dist/src/init/helpers-generator.d.ts +60 -0
- package/dist/src/init/helpers-generator.d.ts.map +1 -0
- package/dist/src/init/helpers-generator.js +657 -12
- package/dist/src/init/helpers-generator.js.map +1 -1
- package/dist/src/init/index.d.ts +1 -1
- package/dist/src/init/index.d.ts.map +1 -1
- package/dist/src/init/index.js +1 -1
- package/dist/src/init/index.js.map +1 -1
- package/dist/src/init/mcp-generator.js +33 -37
- package/dist/src/init/mcp-generator.js.map +1 -1
- package/dist/src/init/settings-generator.js +76 -77
- package/dist/src/init/settings-generator.js.map +1 -1
- package/dist/src/init/statusline-generator.js +801 -3
- package/dist/src/init/statusline-generator.js.map +1 -1
- package/dist/src/init/types.d.ts +1 -1
- package/dist/src/init/types.d.ts.map +1 -1
- package/dist/src/init/types.js +76 -59
- package/dist/src/init/types.js.map +1 -1
- package/dist/src/mcp-client.d.ts +92 -0
- package/dist/src/mcp-client.d.ts.map +1 -0
- package/dist/src/mcp-client.js +81 -125
- package/dist/src/mcp-client.js.map +1 -1
- package/dist/src/mcp-server.d.ts +161 -0
- package/dist/src/mcp-server.d.ts.map +1 -0
- package/dist/src/mcp-server.js +470 -757
- package/dist/src/mcp-server.js.map +1 -1
- package/dist/src/mcp-tools/agent-tools.js +391 -492
- package/dist/src/mcp-tools/agent-tools.js.map +1 -1
- package/dist/src/mcp-tools/agentdb-tools.js +332 -533
- package/dist/src/mcp-tools/agentdb-tools.js.map +1 -1
- package/dist/src/mcp-tools/analyze-tools.js +172 -236
- package/dist/src/mcp-tools/analyze-tools.js.map +1 -1
- package/dist/src/mcp-tools/auto-install.d.ts +83 -0
- package/dist/src/mcp-tools/auto-install.d.ts.map +1 -0
- package/dist/src/mcp-tools/auto-install.js +80 -142
- package/dist/src/mcp-tools/auto-install.js.map +1 -1
- package/dist/src/mcp-tools/browser-tools.js +252 -375
- package/dist/src/mcp-tools/browser-tools.js.map +1 -1
- package/dist/src/mcp-tools/claims-tools.js +473 -565
- package/dist/src/mcp-tools/claims-tools.js.map +1 -1
- package/dist/src/mcp-tools/config-tools.js +197 -272
- package/dist/src/mcp-tools/config-tools.js.map +1 -1
- package/dist/src/mcp-tools/coordination-tools.js +500 -572
- package/dist/src/mcp-tools/coordination-tools.js.map +1 -1
- package/dist/src/mcp-tools/daa-tools.js +286 -364
- package/dist/src/mcp-tools/daa-tools.js.map +1 -1
- package/dist/src/mcp-tools/embeddings-tools.js +582 -693
- package/dist/src/mcp-tools/embeddings-tools.js.map +1 -1
- package/dist/src/mcp-tools/github-tools.js +260 -311
- package/dist/src/mcp-tools/github-tools.js.map +1 -1
- package/dist/src/mcp-tools/hive-mind-tools.js +573 -640
- package/dist/src/mcp-tools/hive-mind-tools.js.map +1 -1
- package/dist/src/mcp-tools/hooks-tools.js +2215 -2648
- package/dist/src/mcp-tools/hooks-tools.js.map +1 -1
- package/dist/src/mcp-tools/memory-tools.js +350 -505
- package/dist/src/mcp-tools/memory-tools.js.map +1 -1
- package/dist/src/mcp-tools/neural-tools.js +315 -412
- package/dist/src/mcp-tools/neural-tools.js.map +1 -1
- package/dist/src/mcp-tools/performance-tools.js +420 -480
- package/dist/src/mcp-tools/performance-tools.js.map +1 -1
- package/dist/src/mcp-tools/progress-tools.js +204 -278
- package/dist/src/mcp-tools/progress-tools.js.map +1 -1
- package/dist/src/mcp-tools/ruvllm-tools.js +163 -279
- package/dist/src/mcp-tools/ruvllm-tools.js.map +1 -1
- package/dist/src/mcp-tools/security-tools.js +297 -429
- package/dist/src/mcp-tools/security-tools.js.map +1 -1
- package/dist/src/mcp-tools/session-tools.js +185 -234
- package/dist/src/mcp-tools/session-tools.js.map +1 -1
- package/dist/src/mcp-tools/swarm-tools.js +207 -260
- package/dist/src/mcp-tools/swarm-tools.js.map +1 -1
- package/dist/src/mcp-tools/system-tools.js +276 -325
- package/dist/src/mcp-tools/system-tools.js.map +1 -1
- package/dist/src/mcp-tools/task-tools.js +270 -336
- package/dist/src/mcp-tools/task-tools.js.map +1 -1
- package/dist/src/mcp-tools/terminal-tools.js +148 -196
- package/dist/src/mcp-tools/terminal-tools.js.map +1 -1
- package/dist/src/mcp-tools/transfer-tools.js +186 -333
- package/dist/src/mcp-tools/transfer-tools.js.map +1 -1
- package/dist/src/mcp-tools/types.d.ts +31 -0
- package/dist/src/mcp-tools/types.d.ts.map +1 -0
- package/dist/src/mcp-tools/wasm-agent-tools.js +133 -280
- package/dist/src/mcp-tools/wasm-agent-tools.js.map +1 -1
- package/dist/src/mcp-tools/workflow-tools.js +405 -450
- package/dist/src/mcp-tools/workflow-tools.js.map +1 -1
- package/dist/src/memory/ewc-consolidation.d.ts +295 -0
- package/dist/src/memory/ewc-consolidation.d.ts.map +1 -0
- package/dist/src/memory/ewc-consolidation.js +190 -303
- package/dist/src/memory/ewc-consolidation.js.map +1 -1
- package/dist/src/memory/intelligence.d.ts +338 -0
- package/dist/src/memory/intelligence.d.ts.map +1 -0
- package/dist/src/memory/intelligence.js +569 -794
- package/dist/src/memory/intelligence.js.map +1 -1
- package/dist/src/memory/memory-bridge.d.ts +407 -0
- package/dist/src/memory/memory-bridge.d.ts.map +1 -0
- package/dist/src/memory/memory-bridge.js +1170 -1640
- package/dist/src/memory/memory-bridge.js.map +1 -1
- package/dist/src/memory/memory-initializer.d.ts +412 -0
- package/dist/src/memory/memory-initializer.d.ts.map +1 -0
- package/dist/src/memory/memory-initializer.js +1836 -1851
- package/dist/src/memory/memory-initializer.js.map +1 -1
- package/dist/src/memory/sona-optimizer.d.ts +227 -0
- package/dist/src/memory/sona-optimizer.d.ts.map +1 -0
- package/dist/src/memory/sona-optimizer.js +199 -329
- package/dist/src/memory/sona-optimizer.js.map +1 -1
- package/dist/src/output.d.ts +2 -2
- package/dist/src/output.d.ts.map +1 -1
- package/dist/src/output.js +242 -272
- package/dist/src/output.js.map +1 -1
- package/dist/src/parser.d.ts +51 -0
- package/dist/src/parser.d.ts.map +1 -0
- package/dist/src/parser.js +140 -187
- package/dist/src/parser.js.map +1 -1
- package/dist/src/plugins/manager.d.ts +133 -0
- package/dist/src/plugins/manager.d.ts.map +1 -0
- package/dist/src/plugins/manager.js +285 -521
- package/dist/src/plugins/manager.js.map +1 -1
- package/dist/src/plugins/store/discovery.d.ts +88 -0
- package/dist/src/plugins/store/discovery.d.ts.map +1 -0
- package/dist/src/plugins/store/discovery.js +271 -358
- package/dist/src/plugins/store/discovery.js.map +1 -1
- package/dist/src/plugins/store/index.d.ts +76 -0
- package/dist/src/plugins/store/index.d.ts.map +1 -0
- package/dist/src/plugins/store/index.js +48 -105
- package/dist/src/plugins/store/index.js.map +1 -1
- package/dist/src/plugins/store/search.d.ts +46 -0
- package/dist/src/plugins/store/search.d.ts.map +1 -0
- package/dist/src/plugins/store/search.js +69 -107
- package/dist/src/plugins/store/search.js.map +1 -1
- package/dist/src/plugins/store/types.d.ts +274 -0
- package/dist/src/plugins/store/types.d.ts.map +1 -0
- package/dist/src/plugins/tests/demo-plugin-store.js +113 -160
- package/dist/src/plugins/tests/demo-plugin-store.js.map +1 -1
- package/dist/src/plugins/tests/standalone-test.js +172 -223
- package/dist/src/plugins/tests/standalone-test.js.map +1 -1
- package/dist/src/plugins/tests/test-plugin-store.js +190 -228
- package/dist/src/plugins/tests/test-plugin-store.js.map +1 -1
- package/dist/src/production/circuit-breaker.d.ts +101 -0
- package/dist/src/production/circuit-breaker.d.ts.map +1 -0
- package/dist/src/production/circuit-breaker.js +62 -126
- package/dist/src/production/circuit-breaker.js.map +1 -1
- package/dist/src/production/error-handler.d.ts +92 -0
- package/dist/src/production/error-handler.d.ts.map +1 -0
- package/dist/src/production/error-handler.js +86 -156
- package/dist/src/production/error-handler.js.map +1 -1
- package/dist/src/production/monitoring.d.ts +161 -0
- package/dist/src/production/monitoring.d.ts.map +1 -0
- package/dist/src/production/monitoring.js +139 -220
- package/dist/src/production/monitoring.js.map +1 -1
- package/dist/src/production/rate-limiter.d.ts +80 -0
- package/dist/src/production/rate-limiter.d.ts.map +1 -0
- package/dist/src/production/rate-limiter.js +74 -93
- package/dist/src/production/rate-limiter.js.map +1 -1
- package/dist/src/production/retry.d.ts +48 -0
- package/dist/src/production/retry.d.ts.map +1 -0
- package/dist/src/production/retry.js +75 -167
- package/dist/src/production/retry.js.map +1 -1
- package/dist/src/prompt.d.ts +44 -0
- package/dist/src/prompt.d.ts.map +1 -0
- package/dist/src/prompt.js +436 -560
- package/dist/src/prompt.js.map +1 -1
- package/dist/src/runtime/headless.d.ts +60 -0
- package/dist/src/runtime/headless.d.ts.map +1 -0
- package/dist/src/runtime/headless.js +197 -286
- package/dist/src/runtime/headless.js.map +1 -1
- package/dist/src/ruvector/agent-wasm.d.ts +182 -0
- package/dist/src/ruvector/agent-wasm.d.ts.map +1 -0
- package/dist/src/ruvector/agent-wasm.js +156 -351
- package/dist/src/ruvector/agent-wasm.js.map +1 -1
- package/dist/src/ruvector/ast-analyzer.d.ts +67 -0
- package/dist/src/ruvector/ast-analyzer.d.ts.map +1 -0
- package/dist/src/ruvector/ast-analyzer.js +145 -232
- package/dist/src/ruvector/ast-analyzer.js.map +1 -1
- package/dist/src/ruvector/coverage-router.d.ts +160 -0
- package/dist/src/ruvector/coverage-router.d.ts.map +1 -0
- package/dist/src/ruvector/coverage-router.js +287 -419
- package/dist/src/ruvector/coverage-router.js.map +1 -1
- package/dist/src/ruvector/coverage-tools.js +56 -101
- package/dist/src/ruvector/coverage-tools.js.map +1 -1
- package/dist/src/ruvector/diff-classifier.d.ts +175 -0
- package/dist/src/ruvector/diff-classifier.d.ts.map +1 -0
- package/dist/src/ruvector/diff-classifier.js +324 -451
- package/dist/src/ruvector/diff-classifier.js.map +1 -1
- package/dist/src/ruvector/enhanced-model-router.d.ts +146 -0
- package/dist/src/ruvector/enhanced-model-router.d.ts.map +1 -0
- package/dist/src/ruvector/enhanced-model-router.js +260 -336
- package/dist/src/ruvector/enhanced-model-router.js.map +1 -1
- package/dist/src/ruvector/flash-attention.d.ts +195 -0
- package/dist/src/ruvector/flash-attention.d.ts.map +1 -0
- package/dist/src/ruvector/flash-attention.js +223 -254
- package/dist/src/ruvector/flash-attention.js.map +1 -1
- package/dist/src/ruvector/graph-analyzer.d.ts +187 -0
- package/dist/src/ruvector/graph-analyzer.d.ts.map +1 -0
- package/dist/src/ruvector/graph-analyzer.js +486 -680
- package/dist/src/ruvector/graph-analyzer.js.map +1 -1
- package/dist/src/ruvector/index.d.ts +40 -0
- package/dist/src/ruvector/index.d.ts.map +1 -0
- package/dist/src/ruvector/index.js +36 -106
- package/dist/src/ruvector/index.js.map +1 -1
- package/dist/src/ruvector/lora-adapter.d.ts +218 -0
- package/dist/src/ruvector/lora-adapter.d.ts.map +1 -0
- package/dist/src/ruvector/lora-adapter.js +155 -248
- package/dist/src/ruvector/lora-adapter.js.map +1 -1
- package/dist/src/ruvector/model-router.d.ts +220 -0
- package/dist/src/ruvector/model-router.d.ts.map +1 -0
- package/dist/src/ruvector/model-router.js +175 -248
- package/dist/src/ruvector/model-router.js.map +1 -1
- package/dist/src/ruvector/moe-router.d.ts +206 -0
- package/dist/src/ruvector/moe-router.d.ts.map +1 -0
- package/dist/src/ruvector/moe-router.js +228 -286
- package/dist/src/ruvector/moe-router.js.map +1 -1
- package/dist/src/ruvector/q-learning-router.d.ts +211 -0
- package/dist/src/ruvector/q-learning-router.d.ts.map +1 -0
- package/dist/src/ruvector/q-learning-router.js +257 -338
- package/dist/src/ruvector/q-learning-router.js.map +1 -1
- package/dist/src/ruvector/ruvllm-wasm.d.ts +179 -0
- package/dist/src/ruvector/ruvllm-wasm.d.ts.map +1 -0
- package/dist/src/ruvector/ruvllm-wasm.js +270 -434
- package/dist/src/ruvector/ruvllm-wasm.js.map +1 -1
- package/dist/src/ruvector/semantic-router.d.ts +77 -0
- package/dist/src/ruvector/semantic-router.d.ts.map +1 -0
- package/dist/src/ruvector/semantic-router.js +60 -67
- package/dist/src/ruvector/semantic-router.js.map +1 -1
- package/dist/src/ruvector/vector-db.d.ts +69 -0
- package/dist/src/ruvector/vector-db.d.ts.map +1 -0
- package/dist/src/ruvector/vector-db.js +119 -205
- package/dist/src/ruvector/vector-db.js.map +1 -1
- package/dist/src/services/agentic-flow-bridge.d.ts +50 -0
- package/dist/src/services/agentic-flow-bridge.d.ts.map +1 -0
- package/dist/src/services/agentic-flow-bridge.js +32 -105
- package/dist/src/services/agentic-flow-bridge.js.map +1 -1
- package/dist/src/services/claim-service.d.ts +204 -0
- package/dist/src/services/claim-service.d.ts.map +1 -0
- package/dist/src/services/claim-service.js +615 -940
- package/dist/src/services/claim-service.js.map +1 -1
- package/dist/src/services/container-worker-pool.d.ts +197 -0
- package/dist/src/services/container-worker-pool.d.ts.map +1 -0
- package/dist/src/services/container-worker-pool.js +398 -666
- package/dist/src/services/container-worker-pool.js.map +1 -1
- package/dist/src/services/headless-worker-executor.d.ts +304 -0
- package/dist/src/services/headless-worker-executor.d.ts.map +1 -0
- package/dist/src/services/headless-worker-executor.js +441 -467
- package/dist/src/services/headless-worker-executor.js.map +1 -1
- package/dist/src/services/index.d.ts +4 -4
- package/dist/src/services/index.d.ts.map +1 -1
- package/dist/src/services/index.js +4 -4
- package/dist/src/services/index.js.map +1 -1
- package/dist/src/services/registry-api.d.ts +58 -0
- package/dist/src/services/registry-api.d.ts.map +1 -0
- package/dist/src/services/registry-api.js +92 -200
- package/dist/src/services/registry-api.js.map +1 -1
- package/dist/src/services/ruvector-training.d.ts +222 -0
- package/dist/src/services/ruvector-training.d.ts.map +1 -0
- package/dist/src/services/ruvector-training.js +257 -337
- package/dist/src/services/ruvector-training.js.map +1 -1
- package/dist/src/services/worker-daemon.d.ts +228 -0
- package/dist/src/services/worker-daemon.d.ts.map +1 -0
- package/dist/src/services/worker-daemon.js +591 -849
- package/dist/src/services/worker-daemon.js.map +1 -1
- package/dist/src/services/worker-queue.d.ts +194 -0
- package/dist/src/services/worker-queue.d.ts.map +1 -0
- package/dist/src/services/worker-queue.js +331 -548
- package/dist/src/services/worker-queue.js.map +1 -1
- package/dist/src/suggest.d.ts +53 -0
- package/dist/src/suggest.d.ts.map +1 -0
- package/dist/src/suggest.js +45 -55
- package/dist/src/suggest.js.map +1 -1
- package/dist/src/transfer/anonymization/index.js +29 -37
- package/dist/src/transfer/anonymization/index.js.map +1 -1
- package/dist/src/transfer/deploy-seraphine.js +128 -155
- package/dist/src/transfer/deploy-seraphine.js.map +1 -1
- package/dist/src/transfer/export.d.ts +25 -0
- package/dist/src/transfer/export.d.ts.map +1 -0
- package/dist/src/transfer/export.js +84 -142
- package/dist/src/transfer/export.js.map +1 -1
- package/dist/src/transfer/index.d.ts +1 -1
- package/dist/src/transfer/index.d.ts.map +1 -1
- package/dist/src/transfer/index.js +0 -2
- package/dist/src/transfer/index.js.map +1 -1
- package/dist/src/transfer/ipfs/client.d.ts +109 -0
- package/dist/src/transfer/ipfs/client.d.ts.map +1 -0
- package/dist/src/transfer/ipfs/client.js +187 -337
- package/dist/src/transfer/ipfs/client.js.map +1 -1
- package/dist/src/transfer/ipfs/upload.d.ts +95 -0
- package/dist/src/transfer/ipfs/upload.d.ts.map +1 -0
- package/dist/src/transfer/ipfs/upload.js +288 -434
- package/dist/src/transfer/ipfs/upload.js.map +1 -1
- package/dist/src/transfer/models/seraphine.d.ts +72 -0
- package/dist/src/transfer/models/seraphine.d.ts.map +1 -0
- package/dist/src/transfer/models/seraphine.js +55 -55
- package/dist/src/transfer/models/seraphine.js.map +1 -1
- package/dist/src/transfer/serialization/cfp.d.ts +49 -0
- package/dist/src/transfer/serialization/cfp.d.ts.map +1 -0
- package/dist/src/transfer/serialization/cfp.js +30 -31
- package/dist/src/transfer/serialization/cfp.js.map +1 -1
- package/dist/src/transfer/storage/gcs.d.ts +82 -0
- package/dist/src/transfer/storage/gcs.d.ts.map +1 -0
- package/dist/src/transfer/storage/gcs.js +165 -232
- package/dist/src/transfer/storage/gcs.js.map +1 -1
- package/dist/src/transfer/store/discovery.d.ts +84 -0
- package/dist/src/transfer/store/discovery.d.ts.map +1 -0
- package/dist/src/transfer/store/discovery.js +239 -349
- package/dist/src/transfer/store/discovery.js.map +1 -1
- package/dist/src/transfer/store/download.d.ts +70 -0
- package/dist/src/transfer/store/download.d.ts.map +1 -0
- package/dist/src/transfer/store/download.js +243 -365
- package/dist/src/transfer/store/download.js.map +1 -1
- package/dist/src/transfer/store/index.d.ts +84 -0
- package/dist/src/transfer/store/index.d.ts.map +1 -0
- package/dist/src/transfer/store/index.js +63 -130
- package/dist/src/transfer/store/index.js.map +1 -1
- package/dist/src/transfer/store/publish.d.ts +76 -0
- package/dist/src/transfer/store/publish.d.ts.map +1 -0
- package/dist/src/transfer/store/publish.js +184 -258
- package/dist/src/transfer/store/publish.js.map +1 -1
- package/dist/src/transfer/store/registry.js +50 -72
- package/dist/src/transfer/store/registry.js.map +1 -1
- package/dist/src/transfer/store/search.d.ts +54 -0
- package/dist/src/transfer/store/search.d.ts.map +1 -0
- package/dist/src/transfer/store/search.js +64 -96
- package/dist/src/transfer/store/search.js.map +1 -1
- package/dist/src/transfer/store/tests/standalone-test.js +174 -231
- package/dist/src/transfer/store/tests/standalone-test.js.map +1 -1
- package/dist/src/transfer/test-seraphine.js +95 -130
- package/dist/src/transfer/test-seraphine.js.map +1 -1
- package/dist/src/transfer/tests/test-store.js +194 -239
- package/dist/src/transfer/tests/test-store.js.map +1 -1
- package/dist/src/transfer/types.d.ts +245 -0
- package/dist/src/transfer/types.d.ts.map +1 -0
- package/dist/src/types.d.ts +198 -0
- package/dist/src/types.d.ts.map +1 -0
- package/dist/src/types.js +26 -55
- package/dist/src/types.js.map +1 -1
- package/dist/src/update/checker.d.ts +34 -0
- package/dist/src/update/checker.d.ts.map +1 -0
- package/dist/src/update/checker.js +106 -183
- package/dist/src/update/checker.js.map +1 -1
- package/dist/src/update/executor.d.ts +32 -0
- package/dist/src/update/executor.d.ts.map +1 -0
- package/dist/src/update/executor.js +135 -198
- package/dist/src/update/executor.js.map +1 -1
- package/dist/src/update/index.d.ts +33 -0
- package/dist/src/update/index.d.ts.map +1 -0
- package/dist/src/update/index.js +38 -85
- package/dist/src/update/index.js.map +1 -1
- package/dist/src/update/rate-limiter.d.ts +20 -0
- package/dist/src/update/rate-limiter.d.ts.map +1 -0
- package/dist/src/update/rate-limiter.js +19 -31
- package/dist/src/update/rate-limiter.js.map +1 -1
- package/dist/src/update/validator.d.ts +17 -0
- package/dist/src/update/validator.d.ts.map +1 -0
- package/dist/src/update/validator.js +38 -64
- package/dist/src/update/validator.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- 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
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
79
|
+
default: false,
|
|
116
80
|
},
|
|
117
81
|
{
|
|
118
82
|
name: 'dimensions',
|
|
119
83
|
description: 'Default vector dimensions',
|
|
120
84
|
type: 'number',
|
|
121
|
-
|
|
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
|
-
|
|
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:
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
output.
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
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
|
-
|
|
290
|
-
|
|
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
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
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
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
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
|