@claude-flow/cli 3.7.0-alpha.1 → 3.7.0-alpha.10
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/.claude/agents/analysis/analyze-code-quality.md +178 -178
- package/.claude/agents/analysis/code-analyzer.md +209 -209
- package/.claude/agents/analysis/code-review/analyze-code-quality.md +178 -178
- package/.claude/agents/architecture/arch-system-design.md +156 -156
- package/.claude/agents/architecture/system-design/arch-system-design.md +154 -154
- package/.claude/agents/browser/browser-agent.yaml +182 -182
- package/.claude/agents/consensus/byzantine-coordinator.md +62 -62
- package/.claude/agents/consensus/crdt-synchronizer.md +996 -996
- package/.claude/agents/consensus/gossip-coordinator.md +62 -62
- package/.claude/agents/consensus/performance-benchmarker.md +850 -850
- package/.claude/agents/consensus/quorum-manager.md +822 -822
- package/.claude/agents/consensus/raft-manager.md +62 -62
- package/.claude/agents/consensus/security-manager.md +621 -621
- package/.claude/agents/core/coder.md +452 -452
- package/.claude/agents/core/planner.md +374 -374
- package/.claude/agents/core/researcher.md +368 -368
- package/.claude/agents/core/reviewer.md +519 -519
- package/.claude/agents/core/tester.md +511 -511
- package/.claude/agents/custom/test-long-runner.md +44 -44
- package/.claude/agents/data/data-ml-model.md +444 -444
- package/.claude/agents/data/ml/data-ml-model.md +192 -192
- package/.claude/agents/development/backend/dev-backend-api.md +141 -141
- package/.claude/agents/development/dev-backend-api.md +344 -344
- package/.claude/agents/devops/ci-cd/ops-cicd-github.md +163 -163
- package/.claude/agents/devops/ops-cicd-github.md +164 -164
- package/.claude/agents/documentation/api-docs/docs-api-openapi.md +173 -173
- package/.claude/agents/documentation/docs-api-openapi.md +354 -354
- package/.claude/agents/flow-nexus/app-store.md +87 -87
- package/.claude/agents/flow-nexus/authentication.md +68 -68
- package/.claude/agents/flow-nexus/challenges.md +80 -80
- package/.claude/agents/flow-nexus/neural-network.md +87 -87
- package/.claude/agents/flow-nexus/payments.md +82 -82
- package/.claude/agents/flow-nexus/sandbox.md +75 -75
- package/.claude/agents/flow-nexus/swarm.md +75 -75
- package/.claude/agents/flow-nexus/user-tools.md +95 -95
- package/.claude/agents/flow-nexus/workflow.md +83 -83
- package/.claude/agents/github/code-review-swarm.md +377 -377
- package/.claude/agents/github/github-modes.md +172 -172
- package/.claude/agents/github/issue-tracker.md +575 -575
- package/.claude/agents/github/multi-repo-swarm.md +552 -552
- package/.claude/agents/github/pr-manager.md +437 -437
- package/.claude/agents/github/project-board-sync.md +508 -508
- package/.claude/agents/github/release-manager.md +604 -604
- package/.claude/agents/github/release-swarm.md +582 -582
- package/.claude/agents/github/repo-architect.md +397 -397
- package/.claude/agents/github/swarm-issue.md +572 -572
- package/.claude/agents/github/swarm-pr.md +427 -427
- package/.claude/agents/github/sync-coordinator.md +451 -451
- package/.claude/agents/github/workflow-automation.md +902 -902
- package/.claude/agents/goal/agent.md +815 -815
- package/.claude/agents/goal/goal-planner.md +72 -72
- package/.claude/agents/optimization/benchmark-suite.md +664 -664
- package/.claude/agents/optimization/load-balancer.md +430 -430
- package/.claude/agents/optimization/performance-monitor.md +671 -671
- package/.claude/agents/optimization/resource-allocator.md +673 -673
- package/.claude/agents/optimization/topology-optimizer.md +807 -807
- package/.claude/agents/payments/agentic-payments.md +126 -126
- package/.claude/agents/sona/sona-learning-optimizer.md +74 -74
- package/.claude/agents/sparc/architecture.md +698 -698
- package/.claude/agents/sparc/pseudocode.md +519 -519
- package/.claude/agents/sparc/refinement.md +801 -801
- package/.claude/agents/sparc/specification.md +477 -477
- package/.claude/agents/specialized/mobile/spec-mobile-react-native.md +224 -224
- package/.claude/agents/specialized/spec-mobile-react-native.md +226 -226
- package/.claude/agents/sublinear/consensus-coordinator.md +337 -337
- package/.claude/agents/sublinear/matrix-optimizer.md +184 -184
- package/.claude/agents/sublinear/pagerank-analyzer.md +298 -298
- package/.claude/agents/sublinear/performance-optimizer.md +367 -367
- package/.claude/agents/sublinear/trading-predictor.md +245 -245
- package/.claude/agents/swarm/adaptive-coordinator.md +1126 -1126
- package/.claude/agents/swarm/hierarchical-coordinator.md +709 -709
- package/.claude/agents/swarm/mesh-coordinator.md +962 -962
- package/.claude/agents/templates/automation-smart-agent.md +204 -204
- package/.claude/agents/templates/base-template-generator.md +289 -289
- package/.claude/agents/templates/coordinator-swarm-init.md +89 -89
- package/.claude/agents/templates/github-pr-manager.md +176 -176
- package/.claude/agents/templates/implementer-sparc-coder.md +258 -258
- package/.claude/agents/templates/memory-coordinator.md +186 -186
- package/.claude/agents/templates/orchestrator-task.md +138 -138
- package/.claude/agents/templates/performance-analyzer.md +198 -198
- package/.claude/agents/templates/sparc-coordinator.md +513 -513
- package/.claude/agents/testing/production-validator.md +394 -394
- package/.claude/agents/testing/tdd-london-swarm.md +243 -243
- package/.claude/agents/v3/adr-architect.md +184 -184
- package/.claude/agents/v3/aidefence-guardian.md +282 -282
- package/.claude/agents/v3/claims-authorizer.md +208 -208
- package/.claude/agents/v3/collective-intelligence-coordinator.md +993 -993
- package/.claude/agents/v3/ddd-domain-expert.md +220 -220
- package/.claude/agents/v3/injection-analyst.md +236 -236
- package/.claude/agents/v3/memory-specialist.md +995 -995
- package/.claude/agents/v3/performance-engineer.md +1233 -1233
- package/.claude/agents/v3/pii-detector.md +151 -151
- package/.claude/agents/v3/reasoningbank-learner.md +213 -213
- package/.claude/agents/v3/security-architect-aidefence.md +410 -410
- package/.claude/agents/v3/security-architect.md +867 -867
- package/.claude/agents/v3/security-auditor.md +771 -771
- package/.claude/agents/v3/sparc-orchestrator.md +182 -182
- package/.claude/agents/v3/swarm-memory-manager.md +157 -157
- package/.claude/agents/v3/v3-integration-architect.md +205 -205
- package/.claude/commands/agents/README.md +50 -50
- package/.claude/commands/agents/agent-capabilities.md +140 -140
- package/.claude/commands/agents/agent-coordination.md +28 -28
- package/.claude/commands/agents/agent-spawning.md +28 -28
- package/.claude/commands/agents/agent-types.md +216 -216
- package/.claude/commands/agents/health.md +139 -139
- package/.claude/commands/agents/list.md +100 -100
- package/.claude/commands/agents/logs.md +130 -130
- package/.claude/commands/agents/metrics.md +122 -122
- package/.claude/commands/agents/pool.md +127 -127
- package/.claude/commands/agents/spawn.md +140 -140
- package/.claude/commands/agents/status.md +115 -115
- package/.claude/commands/agents/stop.md +102 -102
- package/.claude/commands/analysis/COMMAND_COMPLIANCE_REPORT.md +53 -53
- package/.claude/commands/analysis/README.md +9 -9
- package/.claude/commands/analysis/bottleneck-detect.md +162 -162
- package/.claude/commands/analysis/performance-bottlenecks.md +58 -58
- package/.claude/commands/analysis/performance-report.md +25 -25
- package/.claude/commands/analysis/token-efficiency.md +44 -44
- package/.claude/commands/analysis/token-usage.md +25 -25
- package/.claude/commands/automation/README.md +9 -9
- package/.claude/commands/automation/auto-agent.md +122 -122
- package/.claude/commands/automation/self-healing.md +105 -105
- package/.claude/commands/automation/session-memory.md +89 -89
- package/.claude/commands/automation/smart-agents.md +72 -72
- package/.claude/commands/automation/smart-spawn.md +25 -25
- package/.claude/commands/automation/workflow-select.md +25 -25
- package/.claude/commands/claude-flow-help.md +103 -103
- package/.claude/commands/claude-flow-memory.md +107 -107
- package/.claude/commands/claude-flow-swarm.md +205 -205
- package/.claude/commands/coordination/README.md +9 -9
- package/.claude/commands/coordination/agent-spawn.md +25 -25
- package/.claude/commands/coordination/init.md +44 -44
- package/.claude/commands/coordination/orchestrate.md +43 -43
- package/.claude/commands/coordination/spawn.md +45 -45
- package/.claude/commands/coordination/swarm-init.md +85 -85
- package/.claude/commands/coordination/task-orchestrate.md +25 -25
- package/.claude/commands/flow-nexus/app-store.md +123 -123
- package/.claude/commands/flow-nexus/challenges.md +119 -119
- package/.claude/commands/flow-nexus/login-registration.md +64 -64
- package/.claude/commands/flow-nexus/neural-network.md +133 -133
- package/.claude/commands/flow-nexus/payments.md +115 -115
- package/.claude/commands/flow-nexus/sandbox.md +82 -82
- package/.claude/commands/flow-nexus/swarm.md +86 -86
- package/.claude/commands/flow-nexus/user-tools.md +151 -151
- package/.claude/commands/flow-nexus/workflow.md +114 -114
- package/.claude/commands/github/README.md +11 -11
- package/.claude/commands/github/code-review-swarm.md +513 -513
- package/.claude/commands/github/code-review.md +25 -25
- package/.claude/commands/github/github-modes.md +146 -146
- package/.claude/commands/github/github-swarm.md +121 -121
- package/.claude/commands/github/issue-tracker.md +291 -291
- package/.claude/commands/github/issue-triage.md +25 -25
- package/.claude/commands/github/multi-repo-swarm.md +518 -518
- package/.claude/commands/github/pr-enhance.md +26 -26
- package/.claude/commands/github/pr-manager.md +169 -169
- package/.claude/commands/github/project-board-sync.md +470 -470
- package/.claude/commands/github/release-manager.md +337 -337
- package/.claude/commands/github/release-swarm.md +543 -543
- package/.claude/commands/github/repo-analyze.md +25 -25
- package/.claude/commands/github/repo-architect.md +366 -366
- package/.claude/commands/github/swarm-issue.md +481 -481
- package/.claude/commands/github/swarm-pr.md +284 -284
- package/.claude/commands/github/sync-coordinator.md +300 -300
- package/.claude/commands/github/workflow-automation.md +441 -441
- package/.claude/commands/hive-mind/README.md +17 -17
- package/.claude/commands/hive-mind/hive-mind-consensus.md +8 -8
- package/.claude/commands/hive-mind/hive-mind-init.md +18 -18
- package/.claude/commands/hive-mind/hive-mind-memory.md +8 -8
- package/.claude/commands/hive-mind/hive-mind-metrics.md +8 -8
- package/.claude/commands/hive-mind/hive-mind-resume.md +8 -8
- package/.claude/commands/hive-mind/hive-mind-sessions.md +8 -8
- package/.claude/commands/hive-mind/hive-mind-spawn.md +21 -21
- package/.claude/commands/hive-mind/hive-mind-status.md +8 -8
- package/.claude/commands/hive-mind/hive-mind-stop.md +8 -8
- package/.claude/commands/hive-mind/hive-mind-wizard.md +8 -8
- package/.claude/commands/hive-mind/hive-mind.md +27 -27
- package/.claude/commands/hooks/README.md +11 -11
- package/.claude/commands/hooks/overview.md +57 -57
- package/.claude/commands/hooks/post-edit.md +117 -117
- package/.claude/commands/hooks/post-task.md +112 -112
- package/.claude/commands/hooks/pre-edit.md +113 -113
- package/.claude/commands/hooks/pre-task.md +111 -111
- package/.claude/commands/hooks/session-end.md +118 -118
- package/.claude/commands/hooks/setup.md +102 -102
- package/.claude/commands/memory/README.md +9 -9
- package/.claude/commands/memory/memory-persist.md +25 -25
- package/.claude/commands/memory/memory-search.md +25 -25
- package/.claude/commands/memory/memory-usage.md +25 -25
- package/.claude/commands/memory/neural.md +47 -47
- package/.claude/commands/monitoring/README.md +9 -9
- package/.claude/commands/monitoring/agent-metrics.md +25 -25
- package/.claude/commands/monitoring/agents.md +44 -44
- package/.claude/commands/monitoring/real-time-view.md +25 -25
- package/.claude/commands/monitoring/status.md +46 -46
- package/.claude/commands/monitoring/swarm-monitor.md +25 -25
- package/.claude/commands/optimization/README.md +9 -9
- package/.claude/commands/optimization/auto-topology.md +61 -61
- package/.claude/commands/optimization/cache-manage.md +25 -25
- package/.claude/commands/optimization/parallel-execute.md +25 -25
- package/.claude/commands/optimization/parallel-execution.md +49 -49
- package/.claude/commands/optimization/topology-optimize.md +25 -25
- package/.claude/commands/pair/README.md +260 -260
- package/.claude/commands/pair/commands.md +545 -545
- package/.claude/commands/pair/config.md +509 -509
- package/.claude/commands/pair/examples.md +511 -511
- package/.claude/commands/pair/modes.md +347 -347
- package/.claude/commands/pair/session.md +406 -406
- package/.claude/commands/pair/start.md +208 -208
- package/.claude/commands/sparc/analyzer.md +51 -51
- package/.claude/commands/sparc/architect.md +53 -53
- package/.claude/commands/sparc/ask.md +97 -97
- package/.claude/commands/sparc/batch-executor.md +54 -54
- package/.claude/commands/sparc/code.md +89 -89
- package/.claude/commands/sparc/coder.md +54 -54
- package/.claude/commands/sparc/debug.md +83 -83
- package/.claude/commands/sparc/debugger.md +54 -54
- package/.claude/commands/sparc/designer.md +53 -53
- package/.claude/commands/sparc/devops.md +109 -109
- package/.claude/commands/sparc/docs-writer.md +80 -80
- package/.claude/commands/sparc/documenter.md +54 -54
- package/.claude/commands/sparc/innovator.md +54 -54
- package/.claude/commands/sparc/integration.md +83 -83
- package/.claude/commands/sparc/mcp.md +117 -117
- package/.claude/commands/sparc/memory-manager.md +54 -54
- package/.claude/commands/sparc/optimizer.md +54 -54
- package/.claude/commands/sparc/orchestrator.md +131 -131
- package/.claude/commands/sparc/post-deployment-monitoring-mode.md +83 -83
- package/.claude/commands/sparc/refinement-optimization-mode.md +83 -83
- package/.claude/commands/sparc/researcher.md +54 -54
- package/.claude/commands/sparc/reviewer.md +54 -54
- package/.claude/commands/sparc/security-review.md +80 -80
- package/.claude/commands/sparc/sparc-modes.md +174 -174
- package/.claude/commands/sparc/sparc.md +111 -111
- package/.claude/commands/sparc/spec-pseudocode.md +80 -80
- package/.claude/commands/sparc/supabase-admin.md +348 -348
- package/.claude/commands/sparc/swarm-coordinator.md +54 -54
- package/.claude/commands/sparc/tdd.md +54 -54
- package/.claude/commands/sparc/tester.md +54 -54
- package/.claude/commands/sparc/tutorial.md +79 -79
- package/.claude/commands/sparc/workflow-manager.md +54 -54
- package/.claude/commands/sparc.md +166 -166
- package/.claude/commands/stream-chain/pipeline.md +120 -120
- package/.claude/commands/stream-chain/run.md +69 -69
- package/.claude/commands/swarm/README.md +15 -15
- package/.claude/commands/swarm/analysis.md +95 -95
- package/.claude/commands/swarm/development.md +96 -96
- package/.claude/commands/swarm/examples.md +168 -168
- package/.claude/commands/swarm/maintenance.md +102 -102
- package/.claude/commands/swarm/optimization.md +117 -117
- package/.claude/commands/swarm/research.md +136 -136
- package/.claude/commands/swarm/swarm-analysis.md +8 -8
- package/.claude/commands/swarm/swarm-background.md +8 -8
- package/.claude/commands/swarm/swarm-init.md +19 -19
- package/.claude/commands/swarm/swarm-modes.md +8 -8
- package/.claude/commands/swarm/swarm-monitor.md +8 -8
- package/.claude/commands/swarm/swarm-spawn.md +19 -19
- package/.claude/commands/swarm/swarm-status.md +8 -8
- package/.claude/commands/swarm/swarm-strategies.md +8 -8
- package/.claude/commands/swarm/swarm.md +87 -87
- package/.claude/commands/swarm/testing.md +131 -131
- package/.claude/commands/training/README.md +9 -9
- package/.claude/commands/training/model-update.md +25 -25
- package/.claude/commands/training/neural-patterns.md +107 -107
- package/.claude/commands/training/neural-train.md +75 -75
- package/.claude/commands/training/pattern-learn.md +25 -25
- package/.claude/commands/training/specialization.md +62 -62
- package/.claude/commands/truth/start.md +142 -142
- package/.claude/commands/verify/check.md +49 -49
- package/.claude/commands/verify/start.md +127 -127
- package/.claude/commands/workflows/README.md +9 -9
- package/.claude/commands/workflows/development.md +77 -77
- package/.claude/commands/workflows/research.md +62 -62
- package/.claude/commands/workflows/workflow-create.md +25 -25
- package/.claude/commands/workflows/workflow-execute.md +25 -25
- package/.claude/commands/workflows/workflow-export.md +25 -25
- package/.claude/helpers/README.md +96 -96
- package/.claude/helpers/adr-compliance.sh +186 -186
- package/.claude/helpers/auto-commit.sh +178 -178
- package/.claude/helpers/auto-memory-hook.mjs +368 -368
- package/.claude/helpers/checkpoint-manager.sh +251 -251
- package/.claude/helpers/daemon-manager.sh +252 -252
- package/.claude/helpers/ddd-tracker.sh +144 -144
- package/.claude/helpers/github-safe.js +121 -121
- package/.claude/helpers/github-setup.sh +28 -28
- package/.claude/helpers/guidance-hook.sh +13 -13
- package/.claude/helpers/guidance-hooks.sh +102 -102
- package/.claude/helpers/health-monitor.sh +108 -108
- package/.claude/helpers/hook-handler.cjs +278 -278
- package/.claude/helpers/intelligence.cjs +1031 -1031
- package/.claude/helpers/learning-hooks.sh +329 -329
- package/.claude/helpers/learning-optimizer.sh +127 -127
- package/.claude/helpers/learning-service.mjs +1144 -1144
- package/.claude/helpers/memory.js +83 -83
- package/.claude/helpers/metrics-db.mjs +488 -488
- package/.claude/helpers/pattern-consolidator.sh +86 -86
- package/.claude/helpers/perf-worker.sh +160 -160
- package/.claude/helpers/post-commit +16 -16
- package/.claude/helpers/pre-commit +26 -26
- package/.claude/helpers/quick-start.sh +19 -19
- package/.claude/helpers/router.js +66 -66
- package/.claude/helpers/security-scanner.sh +127 -127
- package/.claude/helpers/session.js +135 -135
- package/.claude/helpers/setup-mcp.sh +18 -18
- package/.claude/helpers/standard-checkpoint-hooks.sh +189 -189
- package/.claude/helpers/statusline-hook.sh +21 -21
- package/.claude/helpers/statusline.cjs +575 -575
- package/.claude/helpers/statusline.js +321 -321
- package/.claude/helpers/swarm-comms.sh +353 -353
- package/.claude/helpers/swarm-hooks.sh +761 -761
- package/.claude/helpers/swarm-monitor.sh +210 -210
- package/.claude/helpers/sync-v3-metrics.sh +245 -245
- package/.claude/helpers/update-v3-progress.sh +165 -165
- package/.claude/helpers/v3-quick-status.sh +57 -57
- package/.claude/helpers/v3.sh +110 -110
- package/.claude/helpers/validate-v3-config.sh +215 -215
- package/.claude/helpers/worker-manager.sh +170 -170
- package/.claude/settings.json +182 -182
- package/.claude/skills/agentdb-advanced/SKILL.md +550 -550
- package/.claude/skills/agentdb-learning/SKILL.md +545 -545
- package/.claude/skills/agentdb-memory-patterns/SKILL.md +339 -339
- package/.claude/skills/agentdb-optimization/SKILL.md +509 -509
- package/.claude/skills/agentdb-vector-search/SKILL.md +339 -339
- package/.claude/skills/agentic-jujutsu/SKILL.md +645 -645
- package/.claude/skills/aidefence-scan.md +151 -151
- package/.claude/skills/aidefence.yaml +297 -297
- package/.claude/skills/browser/SKILL.md +204 -204
- package/.claude/skills/flow-nexus-neural/SKILL.md +738 -738
- package/.claude/skills/flow-nexus-platform/SKILL.md +1157 -1157
- package/.claude/skills/flow-nexus-swarm/SKILL.md +610 -610
- package/.claude/skills/github-code-review/SKILL.md +1140 -1140
- package/.claude/skills/github-multi-repo/SKILL.md +874 -874
- package/.claude/skills/github-project-management/SKILL.md +1290 -1277
- package/.claude/skills/github-release-management/SKILL.md +1081 -1081
- package/.claude/skills/github-workflow-automation/SKILL.md +1065 -1065
- package/.claude/skills/hive-mind-advanced/SKILL.md +712 -712
- package/.claude/skills/hooks-automation/SKILL.md +1201 -1201
- package/.claude/skills/pair-programming/SKILL.md +1202 -1202
- package/.claude/skills/performance-analysis/SKILL.md +563 -563
- package/.claude/skills/reasoningbank-agentdb/SKILL.md +446 -446
- package/.claude/skills/reasoningbank-intelligence/SKILL.md +201 -201
- package/.claude/skills/secure-review.md +181 -181
- package/.claude/skills/skill-builder/SKILL.md +910 -910
- package/.claude/skills/sparc-methodology/SKILL.md +1115 -1115
- package/.claude/skills/stream-chain/SKILL.md +563 -563
- package/.claude/skills/swarm-advanced/SKILL.md +973 -973
- package/.claude/skills/swarm-orchestration/SKILL.md +179 -179
- package/.claude/skills/v3-cli-modernization/SKILL.md +871 -871
- package/.claude/skills/v3-core-implementation/SKILL.md +796 -796
- package/.claude/skills/v3-ddd-architecture/SKILL.md +441 -441
- package/.claude/skills/v3-integration-deep/SKILL.md +240 -240
- package/.claude/skills/v3-mcp-optimization/SKILL.md +776 -776
- package/.claude/skills/v3-memory-unification/SKILL.md +173 -173
- package/.claude/skills/v3-performance-optimization/SKILL.md +389 -389
- package/.claude/skills/v3-security-overhaul/SKILL.md +81 -81
- package/.claude/skills/v3-swarm-coordination/SKILL.md +339 -339
- package/.claude/skills/verification-quality/SKILL.md +649 -649
- package/.claude/skills/worker-benchmarks/skill.md +135 -135
- package/.claude/skills/worker-integration/skill.md +154 -154
- package/README.md +393 -391
- package/bin/cli.js +220 -220
- package/bin/mcp-server.js +224 -224
- package/bin/preinstall.cjs +2 -2
- package/dist/src/commands/agent-wasm.js +2 -2
- package/dist/src/commands/agent-wasm.js.map +1 -1
- package/dist/src/commands/completions.js +409 -409
- package/dist/src/commands/daemon.d.ts.map +1 -1
- package/dist/src/commands/daemon.js +19 -3
- package/dist/src/commands/daemon.js.map +1 -1
- package/dist/src/commands/doctor.d.ts.map +1 -1
- package/dist/src/commands/doctor.js +105 -23
- package/dist/src/commands/doctor.js.map +1 -1
- package/dist/src/commands/embeddings.js +26 -26
- package/dist/src/commands/hive-mind.d.ts.map +1 -1
- package/dist/src/commands/hive-mind.js +122 -104
- package/dist/src/commands/hive-mind.js.map +1 -1
- package/dist/src/commands/hooks.d.ts.map +1 -1
- package/dist/src/commands/hooks.js +34 -21
- package/dist/src/commands/hooks.js.map +1 -1
- package/dist/src/commands/memory.d.ts.map +1 -1
- package/dist/src/commands/memory.js +68 -0
- package/dist/src/commands/memory.js.map +1 -1
- package/dist/src/commands/ruvector/backup.js +23 -23
- package/dist/src/commands/ruvector/benchmark.js +31 -31
- package/dist/src/commands/ruvector/import.js +14 -14
- package/dist/src/commands/ruvector/init.js +115 -115
- package/dist/src/commands/ruvector/migrate.js +99 -99
- package/dist/src/commands/ruvector/optimize.js +51 -51
- package/dist/src/commands/ruvector/setup.js +624 -624
- package/dist/src/commands/ruvector/status.js +38 -38
- package/dist/src/index.d.ts +5 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +59 -18
- package/dist/src/index.js.map +1 -1
- package/dist/src/init/claudemd-generator.js +226 -226
- package/dist/src/init/executor.d.ts.map +1 -1
- package/dist/src/init/executor.js +511 -453
- package/dist/src/init/executor.js.map +1 -1
- package/dist/src/init/helpers-generator.js +645 -645
- package/dist/src/init/settings-generator.d.ts.map +1 -1
- package/dist/src/init/settings-generator.js +11 -5
- package/dist/src/init/settings-generator.js.map +1 -1
- package/dist/src/init/statusline-generator.js +858 -858
- package/dist/src/init/types.d.ts +7 -0
- package/dist/src/init/types.d.ts.map +1 -1
- package/dist/src/init/types.js.map +1 -1
- package/dist/src/mcp-tools/agentdb-tools.d.ts +3 -0
- package/dist/src/mcp-tools/agentdb-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/agentdb-tools.js +108 -0
- package/dist/src/mcp-tools/agentdb-tools.js.map +1 -1
- package/dist/src/mcp-tools/hooks-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/hooks-tools.js +4 -2
- package/dist/src/mcp-tools/hooks-tools.js.map +1 -1
- package/dist/src/mcp-tools/memory-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/memory-tools.js +19 -0
- package/dist/src/mcp-tools/memory-tools.js.map +1 -1
- package/dist/src/mcp-tools/neural-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/neural-tools.js +14 -1
- package/dist/src/mcp-tools/neural-tools.js.map +1 -1
- package/dist/src/mcp-tools/security-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/security-tools.js +28 -3
- package/dist/src/mcp-tools/security-tools.js.map +1 -1
- package/dist/src/mcp-tools/swarm-tools.d.ts.map +1 -1
- package/dist/src/mcp-tools/swarm-tools.js +72 -3
- package/dist/src/mcp-tools/swarm-tools.js.map +1 -1
- package/dist/src/mcp-tools/wasm-agent-tools.js +1 -1
- package/dist/src/mcp-tools/wasm-agent-tools.js.map +1 -1
- package/dist/src/memory/intelligence.d.ts.map +1 -1
- package/dist/src/memory/intelligence.js +28 -3
- package/dist/src/memory/intelligence.js.map +1 -1
- package/dist/src/memory/memory-bridge.d.ts +69 -0
- package/dist/src/memory/memory-bridge.d.ts.map +1 -1
- package/dist/src/memory/memory-bridge.js +319 -66
- package/dist/src/memory/memory-bridge.js.map +1 -1
- package/dist/src/memory/memory-initializer.d.ts +5 -0
- package/dist/src/memory/memory-initializer.d.ts.map +1 -1
- package/dist/src/memory/memory-initializer.js +369 -363
- package/dist/src/memory/memory-initializer.js.map +1 -1
- package/dist/src/memory/neural-package-bridge.d.ts +48 -0
- package/dist/src/memory/neural-package-bridge.d.ts.map +1 -0
- package/dist/src/memory/neural-package-bridge.js +87 -0
- package/dist/src/memory/neural-package-bridge.js.map +1 -0
- package/dist/src/memory/rabitq-index.js +5 -5
- package/dist/src/memory/sona-optimizer.d.ts.map +1 -1
- package/dist/src/memory/sona-optimizer.js +1 -0
- package/dist/src/memory/sona-optimizer.js.map +1 -1
- package/dist/src/parser.d.ts +9 -0
- package/dist/src/parser.d.ts.map +1 -1
- package/dist/src/parser.js +11 -0
- package/dist/src/parser.js.map +1 -1
- package/dist/src/runtime/headless.js +28 -28
- package/dist/src/ruvector/agent-wasm.d.ts.map +1 -1
- package/dist/src/ruvector/agent-wasm.js +4 -1
- package/dist/src/ruvector/agent-wasm.js.map +1 -1
- package/dist/src/ruvector/index.d.ts +0 -2
- package/dist/src/ruvector/index.d.ts.map +1 -1
- package/dist/src/ruvector/index.js +8 -2
- package/dist/src/ruvector/index.js.map +1 -1
- package/dist/src/ruvector/model-router.d.ts +22 -1
- package/dist/src/ruvector/model-router.d.ts.map +1 -1
- package/dist/src/ruvector/model-router.js +125 -5
- package/dist/src/ruvector/model-router.js.map +1 -1
- package/dist/src/services/headless-worker-executor.js +84 -84
- package/dist/src/transfer/deploy-seraphine.js +23 -23
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +5 -4
- package/scripts/deploy-ipfs-node.sh +153 -153
- package/scripts/postinstall.cjs +153 -153
- package/scripts/publish-registry.ts +345 -345
- package/scripts/publish.sh +57 -57
- package/scripts/setup-ipfs-registry.md +366 -366
- package/dist/src/services/event-stream.d.ts.map +0 -1
- package/dist/src/services/event-stream.js.map +0 -1
- package/dist/src/services/loop-worker-runner.d.ts.map +0 -1
- package/dist/src/services/loop-worker-runner.js.map +0 -1
- package/dist/src/services/runtime-capabilities.d.ts.map +0 -1
- package/dist/src/services/runtime-capabilities.js.map +0 -1
|
@@ -208,8 +208,8 @@ export const initCommand = {
|
|
|
208
208
|
let vectorExtName = 'vector'; // default pgvector type name
|
|
209
209
|
let vectorTypeName = 'vector'; // SQL type used in column definitions
|
|
210
210
|
// Check for ruvector extension first (ships with ruvector-postgres image)
|
|
211
|
-
const ruvectorResult = await client.query(`
|
|
212
|
-
SELECT extname, extversion FROM pg_extension WHERE extname = 'ruvector'
|
|
211
|
+
const ruvectorResult = await client.query(`
|
|
212
|
+
SELECT extname, extversion FROM pg_extension WHERE extname = 'ruvector'
|
|
213
213
|
`);
|
|
214
214
|
if (ruvectorResult.rows.length > 0) {
|
|
215
215
|
vectorExtName = 'ruvector';
|
|
@@ -218,8 +218,8 @@ export const initCommand = {
|
|
|
218
218
|
}
|
|
219
219
|
else {
|
|
220
220
|
// Fall back to pgvector
|
|
221
|
-
const pgvectorResult = await client.query(`
|
|
222
|
-
SELECT extname, extversion FROM pg_extension WHERE extname = 'vector'
|
|
221
|
+
const pgvectorResult = await client.query(`
|
|
222
|
+
SELECT extname, extversion FROM pg_extension WHERE extname = 'vector'
|
|
223
223
|
`);
|
|
224
224
|
if (pgvectorResult.rows.length > 0) {
|
|
225
225
|
vectorExtName = 'vector';
|
|
@@ -275,153 +275,153 @@ export const initCommand = {
|
|
|
275
275
|
spinner.setText('Creating RuVector tables...');
|
|
276
276
|
spinner.start();
|
|
277
277
|
// Vector embeddings table
|
|
278
|
-
await client.query(`
|
|
279
|
-
CREATE TABLE IF NOT EXISTS ${config.schema}.embeddings (
|
|
280
|
-
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
281
|
-
key VARCHAR(512) NOT NULL,
|
|
282
|
-
namespace VARCHAR(128) NOT NULL DEFAULT 'default',
|
|
283
|
-
content TEXT,
|
|
284
|
-
embedding ${vectorTypeName}(${dimensions}),
|
|
285
|
-
metadata JSONB DEFAULT '{}',
|
|
286
|
-
created_at TIMESTAMPTZ DEFAULT NOW(),
|
|
287
|
-
updated_at TIMESTAMPTZ DEFAULT NOW(),
|
|
288
|
-
UNIQUE(key, namespace)
|
|
289
|
-
)
|
|
278
|
+
await client.query(`
|
|
279
|
+
CREATE TABLE IF NOT EXISTS ${config.schema}.embeddings (
|
|
280
|
+
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
281
|
+
key VARCHAR(512) NOT NULL,
|
|
282
|
+
namespace VARCHAR(128) NOT NULL DEFAULT 'default',
|
|
283
|
+
content TEXT,
|
|
284
|
+
embedding ${vectorTypeName}(${dimensions}),
|
|
285
|
+
metadata JSONB DEFAULT '{}',
|
|
286
|
+
created_at TIMESTAMPTZ DEFAULT NOW(),
|
|
287
|
+
updated_at TIMESTAMPTZ DEFAULT NOW(),
|
|
288
|
+
UNIQUE(key, namespace)
|
|
289
|
+
)
|
|
290
290
|
`);
|
|
291
291
|
// Attention patterns table
|
|
292
|
-
await client.query(`
|
|
293
|
-
CREATE TABLE IF NOT EXISTS ${config.schema}.attention_patterns (
|
|
294
|
-
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
295
|
-
pattern_name VARCHAR(256) NOT NULL,
|
|
296
|
-
query_embedding ${vectorTypeName}(${dimensions}),
|
|
297
|
-
key_embedding ${vectorTypeName}(${dimensions}),
|
|
298
|
-
value_embedding ${vectorTypeName}(${dimensions}),
|
|
299
|
-
attention_weights JSONB,
|
|
300
|
-
context TEXT,
|
|
301
|
-
created_at TIMESTAMPTZ DEFAULT NOW()
|
|
302
|
-
)
|
|
292
|
+
await client.query(`
|
|
293
|
+
CREATE TABLE IF NOT EXISTS ${config.schema}.attention_patterns (
|
|
294
|
+
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
295
|
+
pattern_name VARCHAR(256) NOT NULL,
|
|
296
|
+
query_embedding ${vectorTypeName}(${dimensions}),
|
|
297
|
+
key_embedding ${vectorTypeName}(${dimensions}),
|
|
298
|
+
value_embedding ${vectorTypeName}(${dimensions}),
|
|
299
|
+
attention_weights JSONB,
|
|
300
|
+
context TEXT,
|
|
301
|
+
created_at TIMESTAMPTZ DEFAULT NOW()
|
|
302
|
+
)
|
|
303
303
|
`);
|
|
304
304
|
// GNN adjacency table
|
|
305
|
-
await client.query(`
|
|
306
|
-
CREATE TABLE IF NOT EXISTS ${config.schema}.gnn_edges (
|
|
307
|
-
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
308
|
-
source_id UUID NOT NULL,
|
|
309
|
-
target_id UUID NOT NULL,
|
|
310
|
-
edge_type VARCHAR(64) NOT NULL DEFAULT 'related',
|
|
311
|
-
weight FLOAT DEFAULT 1.0,
|
|
312
|
-
metadata JSONB DEFAULT '{}',
|
|
313
|
-
created_at TIMESTAMPTZ DEFAULT NOW(),
|
|
314
|
-
UNIQUE(source_id, target_id, edge_type)
|
|
315
|
-
)
|
|
305
|
+
await client.query(`
|
|
306
|
+
CREATE TABLE IF NOT EXISTS ${config.schema}.gnn_edges (
|
|
307
|
+
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
308
|
+
source_id UUID NOT NULL,
|
|
309
|
+
target_id UUID NOT NULL,
|
|
310
|
+
edge_type VARCHAR(64) NOT NULL DEFAULT 'related',
|
|
311
|
+
weight FLOAT DEFAULT 1.0,
|
|
312
|
+
metadata JSONB DEFAULT '{}',
|
|
313
|
+
created_at TIMESTAMPTZ DEFAULT NOW(),
|
|
314
|
+
UNIQUE(source_id, target_id, edge_type)
|
|
315
|
+
)
|
|
316
316
|
`);
|
|
317
317
|
// Hyperbolic embeddings table (Poincare ball)
|
|
318
|
-
await client.query(`
|
|
319
|
-
CREATE TABLE IF NOT EXISTS ${config.schema}.hyperbolic_embeddings (
|
|
320
|
-
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
321
|
-
entity_id UUID NOT NULL,
|
|
322
|
-
embedding ${vectorTypeName}(${dimensions}),
|
|
323
|
-
curvature FLOAT DEFAULT -1.0,
|
|
324
|
-
hierarchy_level INTEGER DEFAULT 0,
|
|
325
|
-
parent_id UUID,
|
|
326
|
-
created_at TIMESTAMPTZ DEFAULT NOW()
|
|
327
|
-
)
|
|
318
|
+
await client.query(`
|
|
319
|
+
CREATE TABLE IF NOT EXISTS ${config.schema}.hyperbolic_embeddings (
|
|
320
|
+
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
321
|
+
entity_id UUID NOT NULL,
|
|
322
|
+
embedding ${vectorTypeName}(${dimensions}),
|
|
323
|
+
curvature FLOAT DEFAULT -1.0,
|
|
324
|
+
hierarchy_level INTEGER DEFAULT 0,
|
|
325
|
+
parent_id UUID,
|
|
326
|
+
created_at TIMESTAMPTZ DEFAULT NOW()
|
|
327
|
+
)
|
|
328
328
|
`);
|
|
329
329
|
// Migrations tracking table
|
|
330
|
-
await client.query(`
|
|
331
|
-
CREATE TABLE IF NOT EXISTS ${config.schema}.migrations (
|
|
332
|
-
id SERIAL PRIMARY KEY,
|
|
333
|
-
version VARCHAR(64) NOT NULL UNIQUE,
|
|
334
|
-
name VARCHAR(256) NOT NULL,
|
|
335
|
-
applied_at TIMESTAMPTZ DEFAULT NOW(),
|
|
336
|
-
checksum VARCHAR(64)
|
|
337
|
-
)
|
|
330
|
+
await client.query(`
|
|
331
|
+
CREATE TABLE IF NOT EXISTS ${config.schema}.migrations (
|
|
332
|
+
id SERIAL PRIMARY KEY,
|
|
333
|
+
version VARCHAR(64) NOT NULL UNIQUE,
|
|
334
|
+
name VARCHAR(256) NOT NULL,
|
|
335
|
+
applied_at TIMESTAMPTZ DEFAULT NOW(),
|
|
336
|
+
checksum VARCHAR(64)
|
|
337
|
+
)
|
|
338
338
|
`);
|
|
339
339
|
// RuVector metadata table
|
|
340
|
-
await client.query(`
|
|
341
|
-
CREATE TABLE IF NOT EXISTS ${config.schema}.metadata (
|
|
342
|
-
key VARCHAR(128) PRIMARY KEY,
|
|
343
|
-
value JSONB NOT NULL,
|
|
344
|
-
updated_at TIMESTAMPTZ DEFAULT NOW()
|
|
345
|
-
)
|
|
340
|
+
await client.query(`
|
|
341
|
+
CREATE TABLE IF NOT EXISTS ${config.schema}.metadata (
|
|
342
|
+
key VARCHAR(128) PRIMARY KEY,
|
|
343
|
+
value JSONB NOT NULL,
|
|
344
|
+
updated_at TIMESTAMPTZ DEFAULT NOW()
|
|
345
|
+
)
|
|
346
346
|
`);
|
|
347
347
|
// Store initialization metadata
|
|
348
|
-
await client.query(`
|
|
349
|
-
INSERT INTO ${config.schema}.metadata (key, value)
|
|
350
|
-
VALUES ('ruvector_version', '"1.0.0"')
|
|
351
|
-
ON CONFLICT (key) DO UPDATE SET value = EXCLUDED.value, updated_at = NOW()
|
|
348
|
+
await client.query(`
|
|
349
|
+
INSERT INTO ${config.schema}.metadata (key, value)
|
|
350
|
+
VALUES ('ruvector_version', '"1.0.0"')
|
|
351
|
+
ON CONFLICT (key) DO UPDATE SET value = EXCLUDED.value, updated_at = NOW()
|
|
352
352
|
`);
|
|
353
|
-
await client.query(`
|
|
354
|
-
INSERT INTO ${config.schema}.metadata (key, value)
|
|
355
|
-
VALUES ('dimensions', '${dimensions}')
|
|
356
|
-
ON CONFLICT (key) DO UPDATE SET value = EXCLUDED.value, updated_at = NOW()
|
|
353
|
+
await client.query(`
|
|
354
|
+
INSERT INTO ${config.schema}.metadata (key, value)
|
|
355
|
+
VALUES ('dimensions', '${dimensions}')
|
|
356
|
+
ON CONFLICT (key) DO UPDATE SET value = EXCLUDED.value, updated_at = NOW()
|
|
357
357
|
`);
|
|
358
|
-
await client.query(`
|
|
359
|
-
INSERT INTO ${config.schema}.metadata (key, value)
|
|
360
|
-
VALUES ('initialized_at', '"${new Date().toISOString()}"')
|
|
361
|
-
ON CONFLICT (key) DO UPDATE SET value = EXCLUDED.value, updated_at = NOW()
|
|
358
|
+
await client.query(`
|
|
359
|
+
INSERT INTO ${config.schema}.metadata (key, value)
|
|
360
|
+
VALUES ('initialized_at', '"${new Date().toISOString()}"')
|
|
361
|
+
ON CONFLICT (key) DO UPDATE SET value = EXCLUDED.value, updated_at = NOW()
|
|
362
362
|
`);
|
|
363
363
|
spinner.succeed('RuVector tables created');
|
|
364
364
|
// Create indexes
|
|
365
365
|
spinner.setText(`Creating ${indexType.toUpperCase()} indexes...`);
|
|
366
366
|
spinner.start();
|
|
367
367
|
if (indexType === 'hnsw') {
|
|
368
|
-
await client.query(`
|
|
369
|
-
CREATE INDEX IF NOT EXISTS idx_embeddings_vector_hnsw
|
|
370
|
-
ON ${config.schema}.embeddings
|
|
371
|
-
USING hnsw (embedding ${cosineOps})
|
|
372
|
-
WITH (m = 16, ef_construction = 64)
|
|
368
|
+
await client.query(`
|
|
369
|
+
CREATE INDEX IF NOT EXISTS idx_embeddings_vector_hnsw
|
|
370
|
+
ON ${config.schema}.embeddings
|
|
371
|
+
USING hnsw (embedding ${cosineOps})
|
|
372
|
+
WITH (m = 16, ef_construction = 64)
|
|
373
373
|
`);
|
|
374
|
-
await client.query(`
|
|
375
|
-
CREATE INDEX IF NOT EXISTS idx_attention_query_hnsw
|
|
376
|
-
ON ${config.schema}.attention_patterns
|
|
377
|
-
USING hnsw (query_embedding ${cosineOps})
|
|
378
|
-
WITH (m = 16, ef_construction = 64)
|
|
374
|
+
await client.query(`
|
|
375
|
+
CREATE INDEX IF NOT EXISTS idx_attention_query_hnsw
|
|
376
|
+
ON ${config.schema}.attention_patterns
|
|
377
|
+
USING hnsw (query_embedding ${cosineOps})
|
|
378
|
+
WITH (m = 16, ef_construction = 64)
|
|
379
379
|
`);
|
|
380
|
-
await client.query(`
|
|
381
|
-
CREATE INDEX IF NOT EXISTS idx_hyperbolic_embedding_hnsw
|
|
382
|
-
ON ${config.schema}.hyperbolic_embeddings
|
|
383
|
-
USING hnsw (embedding ${cosineOps})
|
|
384
|
-
WITH (m = 16, ef_construction = 64)
|
|
380
|
+
await client.query(`
|
|
381
|
+
CREATE INDEX IF NOT EXISTS idx_hyperbolic_embedding_hnsw
|
|
382
|
+
ON ${config.schema}.hyperbolic_embeddings
|
|
383
|
+
USING hnsw (embedding ${cosineOps})
|
|
384
|
+
WITH (m = 16, ef_construction = 64)
|
|
385
385
|
`);
|
|
386
386
|
}
|
|
387
387
|
else {
|
|
388
388
|
// IVFFlat indexes
|
|
389
|
-
await client.query(`
|
|
390
|
-
CREATE INDEX IF NOT EXISTS idx_embeddings_vector_ivfflat
|
|
391
|
-
ON ${config.schema}.embeddings
|
|
392
|
-
USING ivfflat (embedding ${cosineOps})
|
|
393
|
-
WITH (lists = 100)
|
|
389
|
+
await client.query(`
|
|
390
|
+
CREATE INDEX IF NOT EXISTS idx_embeddings_vector_ivfflat
|
|
391
|
+
ON ${config.schema}.embeddings
|
|
392
|
+
USING ivfflat (embedding ${cosineOps})
|
|
393
|
+
WITH (lists = 100)
|
|
394
394
|
`);
|
|
395
|
-
await client.query(`
|
|
396
|
-
CREATE INDEX IF NOT EXISTS idx_attention_query_ivfflat
|
|
397
|
-
ON ${config.schema}.attention_patterns
|
|
398
|
-
USING ivfflat (query_embedding ${cosineOps})
|
|
399
|
-
WITH (lists = 100)
|
|
395
|
+
await client.query(`
|
|
396
|
+
CREATE INDEX IF NOT EXISTS idx_attention_query_ivfflat
|
|
397
|
+
ON ${config.schema}.attention_patterns
|
|
398
|
+
USING ivfflat (query_embedding ${cosineOps})
|
|
399
|
+
WITH (lists = 100)
|
|
400
400
|
`);
|
|
401
401
|
}
|
|
402
402
|
// Additional standard indexes
|
|
403
|
-
await client.query(`
|
|
404
|
-
CREATE INDEX IF NOT EXISTS idx_embeddings_namespace
|
|
405
|
-
ON ${config.schema}.embeddings (namespace)
|
|
403
|
+
await client.query(`
|
|
404
|
+
CREATE INDEX IF NOT EXISTS idx_embeddings_namespace
|
|
405
|
+
ON ${config.schema}.embeddings (namespace)
|
|
406
406
|
`);
|
|
407
|
-
await client.query(`
|
|
408
|
-
CREATE INDEX IF NOT EXISTS idx_embeddings_key
|
|
409
|
-
ON ${config.schema}.embeddings (key)
|
|
407
|
+
await client.query(`
|
|
408
|
+
CREATE INDEX IF NOT EXISTS idx_embeddings_key
|
|
409
|
+
ON ${config.schema}.embeddings (key)
|
|
410
410
|
`);
|
|
411
|
-
await client.query(`
|
|
412
|
-
CREATE INDEX IF NOT EXISTS idx_gnn_source
|
|
413
|
-
ON ${config.schema}.gnn_edges (source_id)
|
|
411
|
+
await client.query(`
|
|
412
|
+
CREATE INDEX IF NOT EXISTS idx_gnn_source
|
|
413
|
+
ON ${config.schema}.gnn_edges (source_id)
|
|
414
414
|
`);
|
|
415
|
-
await client.query(`
|
|
416
|
-
CREATE INDEX IF NOT EXISTS idx_gnn_target
|
|
417
|
-
ON ${config.schema}.gnn_edges (target_id)
|
|
415
|
+
await client.query(`
|
|
416
|
+
CREATE INDEX IF NOT EXISTS idx_gnn_target
|
|
417
|
+
ON ${config.schema}.gnn_edges (target_id)
|
|
418
418
|
`);
|
|
419
419
|
spinner.succeed(`${indexType.toUpperCase()} indexes created`);
|
|
420
420
|
// Record initial migration
|
|
421
|
-
await client.query(`
|
|
422
|
-
INSERT INTO ${config.schema}.migrations (version, name)
|
|
423
|
-
VALUES ('1.0.0', 'Initial RuVector setup')
|
|
424
|
-
ON CONFLICT (version) DO NOTHING
|
|
421
|
+
await client.query(`
|
|
422
|
+
INSERT INTO ${config.schema}.migrations (version, name)
|
|
423
|
+
VALUES ('1.0.0', 'Initial RuVector setup')
|
|
424
|
+
ON CONFLICT (version) DO NOTHING
|
|
425
425
|
`);
|
|
426
426
|
await client.end();
|
|
427
427
|
output.writeln();
|
|
@@ -18,116 +18,116 @@ const MIGRATIONS = [
|
|
|
18
18
|
{
|
|
19
19
|
version: '1.1.0',
|
|
20
20
|
name: 'Add full-text search',
|
|
21
|
-
up: `
|
|
22
|
-
CREATE INDEX IF NOT EXISTS idx_embeddings_content_fts
|
|
23
|
-
ON {{schema}}.embeddings
|
|
24
|
-
USING gin (to_tsvector('english', COALESCE(content, '')));
|
|
25
|
-
|
|
26
|
-
ALTER TABLE {{schema}}.embeddings
|
|
27
|
-
ADD COLUMN IF NOT EXISTS search_vector tsvector
|
|
28
|
-
GENERATED ALWAYS AS (to_tsvector('english', COALESCE(content, ''))) STORED;
|
|
21
|
+
up: `
|
|
22
|
+
CREATE INDEX IF NOT EXISTS idx_embeddings_content_fts
|
|
23
|
+
ON {{schema}}.embeddings
|
|
24
|
+
USING gin (to_tsvector('english', COALESCE(content, '')));
|
|
25
|
+
|
|
26
|
+
ALTER TABLE {{schema}}.embeddings
|
|
27
|
+
ADD COLUMN IF NOT EXISTS search_vector tsvector
|
|
28
|
+
GENERATED ALWAYS AS (to_tsvector('english', COALESCE(content, ''))) STORED;
|
|
29
29
|
`,
|
|
30
|
-
down: `
|
|
31
|
-
DROP INDEX IF EXISTS {{schema}}.idx_embeddings_content_fts;
|
|
32
|
-
ALTER TABLE {{schema}}.embeddings DROP COLUMN IF EXISTS search_vector;
|
|
30
|
+
down: `
|
|
31
|
+
DROP INDEX IF EXISTS {{schema}}.idx_embeddings_content_fts;
|
|
32
|
+
ALTER TABLE {{schema}}.embeddings DROP COLUMN IF EXISTS search_vector;
|
|
33
33
|
`,
|
|
34
34
|
},
|
|
35
35
|
{
|
|
36
36
|
version: '1.2.0',
|
|
37
37
|
name: 'Add embedding statistics',
|
|
38
|
-
up: `
|
|
39
|
-
CREATE TABLE IF NOT EXISTS {{schema}}.embedding_stats (
|
|
40
|
-
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
41
|
-
namespace VARCHAR(128) NOT NULL,
|
|
42
|
-
total_vectors INTEGER DEFAULT 0,
|
|
43
|
-
avg_magnitude FLOAT,
|
|
44
|
-
dimension_stats JSONB,
|
|
45
|
-
computed_at TIMESTAMPTZ DEFAULT NOW()
|
|
46
|
-
);
|
|
47
|
-
|
|
48
|
-
CREATE INDEX IF NOT EXISTS idx_embedding_stats_namespace
|
|
49
|
-
ON {{schema}}.embedding_stats (namespace);
|
|
38
|
+
up: `
|
|
39
|
+
CREATE TABLE IF NOT EXISTS {{schema}}.embedding_stats (
|
|
40
|
+
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
41
|
+
namespace VARCHAR(128) NOT NULL,
|
|
42
|
+
total_vectors INTEGER DEFAULT 0,
|
|
43
|
+
avg_magnitude FLOAT,
|
|
44
|
+
dimension_stats JSONB,
|
|
45
|
+
computed_at TIMESTAMPTZ DEFAULT NOW()
|
|
46
|
+
);
|
|
47
|
+
|
|
48
|
+
CREATE INDEX IF NOT EXISTS idx_embedding_stats_namespace
|
|
49
|
+
ON {{schema}}.embedding_stats (namespace);
|
|
50
50
|
`,
|
|
51
|
-
down: `
|
|
52
|
-
DROP TABLE IF EXISTS {{schema}}.embedding_stats;
|
|
51
|
+
down: `
|
|
52
|
+
DROP TABLE IF EXISTS {{schema}}.embedding_stats;
|
|
53
53
|
`,
|
|
54
54
|
},
|
|
55
55
|
{
|
|
56
56
|
version: '1.3.0',
|
|
57
57
|
name: 'Add query cache',
|
|
58
|
-
up: `
|
|
59
|
-
CREATE TABLE IF NOT EXISTS {{schema}}.query_cache (
|
|
60
|
-
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
61
|
-
query_hash VARCHAR(64) NOT NULL UNIQUE,
|
|
62
|
-
query_embedding {{vector_type}}(1536),
|
|
63
|
-
result_ids UUID[],
|
|
64
|
-
result_scores FLOAT[],
|
|
65
|
-
hit_count INTEGER DEFAULT 1,
|
|
66
|
-
created_at TIMESTAMPTZ DEFAULT NOW(),
|
|
67
|
-
last_accessed TIMESTAMPTZ DEFAULT NOW()
|
|
68
|
-
);
|
|
69
|
-
|
|
70
|
-
CREATE INDEX IF NOT EXISTS idx_query_cache_hash
|
|
71
|
-
ON {{schema}}.query_cache (query_hash);
|
|
72
|
-
|
|
73
|
-
CREATE INDEX IF NOT EXISTS idx_query_cache_last_accessed
|
|
74
|
-
ON {{schema}}.query_cache (last_accessed);
|
|
58
|
+
up: `
|
|
59
|
+
CREATE TABLE IF NOT EXISTS {{schema}}.query_cache (
|
|
60
|
+
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
61
|
+
query_hash VARCHAR(64) NOT NULL UNIQUE,
|
|
62
|
+
query_embedding {{vector_type}}(1536),
|
|
63
|
+
result_ids UUID[],
|
|
64
|
+
result_scores FLOAT[],
|
|
65
|
+
hit_count INTEGER DEFAULT 1,
|
|
66
|
+
created_at TIMESTAMPTZ DEFAULT NOW(),
|
|
67
|
+
last_accessed TIMESTAMPTZ DEFAULT NOW()
|
|
68
|
+
);
|
|
69
|
+
|
|
70
|
+
CREATE INDEX IF NOT EXISTS idx_query_cache_hash
|
|
71
|
+
ON {{schema}}.query_cache (query_hash);
|
|
72
|
+
|
|
73
|
+
CREATE INDEX IF NOT EXISTS idx_query_cache_last_accessed
|
|
74
|
+
ON {{schema}}.query_cache (last_accessed);
|
|
75
75
|
`,
|
|
76
|
-
down: `
|
|
77
|
-
DROP TABLE IF EXISTS {{schema}}.query_cache;
|
|
76
|
+
down: `
|
|
77
|
+
DROP TABLE IF EXISTS {{schema}}.query_cache;
|
|
78
78
|
`,
|
|
79
79
|
},
|
|
80
80
|
{
|
|
81
81
|
version: '1.4.0',
|
|
82
82
|
name: 'Add batch operations support',
|
|
83
|
-
up: `
|
|
84
|
-
CREATE TABLE IF NOT EXISTS {{schema}}.batch_jobs (
|
|
85
|
-
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
86
|
-
job_type VARCHAR(64) NOT NULL,
|
|
87
|
-
status VARCHAR(32) DEFAULT 'pending',
|
|
88
|
-
total_items INTEGER DEFAULT 0,
|
|
89
|
-
processed_items INTEGER DEFAULT 0,
|
|
90
|
-
error_count INTEGER DEFAULT 0,
|
|
91
|
-
metadata JSONB DEFAULT '{}',
|
|
92
|
-
started_at TIMESTAMPTZ,
|
|
93
|
-
completed_at TIMESTAMPTZ,
|
|
94
|
-
created_at TIMESTAMPTZ DEFAULT NOW()
|
|
95
|
-
);
|
|
96
|
-
|
|
97
|
-
CREATE INDEX IF NOT EXISTS idx_batch_jobs_status
|
|
98
|
-
ON {{schema}}.batch_jobs (status);
|
|
83
|
+
up: `
|
|
84
|
+
CREATE TABLE IF NOT EXISTS {{schema}}.batch_jobs (
|
|
85
|
+
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
86
|
+
job_type VARCHAR(64) NOT NULL,
|
|
87
|
+
status VARCHAR(32) DEFAULT 'pending',
|
|
88
|
+
total_items INTEGER DEFAULT 0,
|
|
89
|
+
processed_items INTEGER DEFAULT 0,
|
|
90
|
+
error_count INTEGER DEFAULT 0,
|
|
91
|
+
metadata JSONB DEFAULT '{}',
|
|
92
|
+
started_at TIMESTAMPTZ,
|
|
93
|
+
completed_at TIMESTAMPTZ,
|
|
94
|
+
created_at TIMESTAMPTZ DEFAULT NOW()
|
|
95
|
+
);
|
|
96
|
+
|
|
97
|
+
CREATE INDEX IF NOT EXISTS idx_batch_jobs_status
|
|
98
|
+
ON {{schema}}.batch_jobs (status);
|
|
99
99
|
`,
|
|
100
|
-
down: `
|
|
101
|
-
DROP TABLE IF EXISTS {{schema}}.batch_jobs;
|
|
100
|
+
down: `
|
|
101
|
+
DROP TABLE IF EXISTS {{schema}}.batch_jobs;
|
|
102
102
|
`,
|
|
103
103
|
},
|
|
104
104
|
{
|
|
105
105
|
version: '1.5.0',
|
|
106
106
|
name: 'Add neural pattern learning',
|
|
107
|
-
up: `
|
|
108
|
-
CREATE TABLE IF NOT EXISTS {{schema}}.neural_patterns (
|
|
109
|
-
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
110
|
-
pattern_type VARCHAR(64) NOT NULL,
|
|
111
|
-
input_embedding {{vector_type}}(1536),
|
|
112
|
-
output_embedding {{vector_type}}(1536),
|
|
113
|
-
weight_matrix JSONB,
|
|
114
|
-
activation VARCHAR(32) DEFAULT 'relu',
|
|
115
|
-
accuracy FLOAT,
|
|
116
|
-
training_steps INTEGER DEFAULT 0,
|
|
117
|
-
created_at TIMESTAMPTZ DEFAULT NOW(),
|
|
118
|
-
updated_at TIMESTAMPTZ DEFAULT NOW()
|
|
119
|
-
);
|
|
120
|
-
|
|
121
|
-
CREATE INDEX IF NOT EXISTS idx_neural_patterns_type
|
|
122
|
-
ON {{schema}}.neural_patterns (pattern_type);
|
|
123
|
-
|
|
124
|
-
CREATE INDEX IF NOT EXISTS idx_neural_patterns_input_hnsw
|
|
125
|
-
ON {{schema}}.neural_patterns
|
|
126
|
-
USING hnsw (input_embedding {{cosine_ops}})
|
|
127
|
-
WITH (m = 16, ef_construction = 64);
|
|
107
|
+
up: `
|
|
108
|
+
CREATE TABLE IF NOT EXISTS {{schema}}.neural_patterns (
|
|
109
|
+
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
110
|
+
pattern_type VARCHAR(64) NOT NULL,
|
|
111
|
+
input_embedding {{vector_type}}(1536),
|
|
112
|
+
output_embedding {{vector_type}}(1536),
|
|
113
|
+
weight_matrix JSONB,
|
|
114
|
+
activation VARCHAR(32) DEFAULT 'relu',
|
|
115
|
+
accuracy FLOAT,
|
|
116
|
+
training_steps INTEGER DEFAULT 0,
|
|
117
|
+
created_at TIMESTAMPTZ DEFAULT NOW(),
|
|
118
|
+
updated_at TIMESTAMPTZ DEFAULT NOW()
|
|
119
|
+
);
|
|
120
|
+
|
|
121
|
+
CREATE INDEX IF NOT EXISTS idx_neural_patterns_type
|
|
122
|
+
ON {{schema}}.neural_patterns (pattern_type);
|
|
123
|
+
|
|
124
|
+
CREATE INDEX IF NOT EXISTS idx_neural_patterns_input_hnsw
|
|
125
|
+
ON {{schema}}.neural_patterns
|
|
126
|
+
USING hnsw (input_embedding {{cosine_ops}})
|
|
127
|
+
WITH (m = 16, ef_construction = 64);
|
|
128
128
|
`,
|
|
129
|
-
down: `
|
|
130
|
-
DROP TABLE IF EXISTS {{schema}}.neural_patterns;
|
|
129
|
+
down: `
|
|
130
|
+
DROP TABLE IF EXISTS {{schema}}.neural_patterns;
|
|
131
131
|
`,
|
|
132
132
|
},
|
|
133
133
|
];
|
|
@@ -288,8 +288,8 @@ export const migrateCommand = {
|
|
|
288
288
|
// Detect vector extension type: prefer ruvector, fall back to pgvector
|
|
289
289
|
let vectorTypeName = 'vector';
|
|
290
290
|
let cosineOps = 'vector_cosine_ops';
|
|
291
|
-
const ruvectorCheck = await client.query(`
|
|
292
|
-
SELECT extname FROM pg_extension WHERE extname = 'ruvector'
|
|
291
|
+
const ruvectorCheck = await client.query(`
|
|
292
|
+
SELECT extname FROM pg_extension WHERE extname = 'ruvector'
|
|
293
293
|
`);
|
|
294
294
|
if (ruvectorCheck.rows.length > 0) {
|
|
295
295
|
vectorTypeName = 'ruvector';
|
|
@@ -298,8 +298,8 @@ export const migrateCommand = {
|
|
|
298
298
|
// Check if schema and migrations table exist
|
|
299
299
|
spinner.setText('Checking migration status...');
|
|
300
300
|
spinner.start();
|
|
301
|
-
const schemaExists = await client.query(`
|
|
302
|
-
SELECT schema_name FROM information_schema.schemata WHERE schema_name = $1
|
|
301
|
+
const schemaExists = await client.query(`
|
|
302
|
+
SELECT schema_name FROM information_schema.schemata WHERE schema_name = $1
|
|
303
303
|
`, [config.schema]);
|
|
304
304
|
if (schemaExists.rows.length === 0) {
|
|
305
305
|
spinner.fail(`Schema "${config.schema}" not found`);
|
|
@@ -308,10 +308,10 @@ export const migrateCommand = {
|
|
|
308
308
|
return { success: false, exitCode: 1 };
|
|
309
309
|
}
|
|
310
310
|
// Get applied migrations
|
|
311
|
-
const appliedResult = await client.query(`
|
|
312
|
-
SELECT version, name, applied_at, checksum
|
|
313
|
-
FROM ${config.schema}.migrations
|
|
314
|
-
ORDER BY version ASC
|
|
311
|
+
const appliedResult = await client.query(`
|
|
312
|
+
SELECT version, name, applied_at, checksum
|
|
313
|
+
FROM ${config.schema}.migrations
|
|
314
|
+
ORDER BY version ASC
|
|
315
315
|
`);
|
|
316
316
|
const appliedVersions = new Set(appliedResult.rows.map(r => r.version));
|
|
317
317
|
spinner.succeed(`Found ${appliedVersions.size} applied migrations`);
|
|
@@ -443,15 +443,15 @@ export const migrateCommand = {
|
|
|
443
443
|
// Update migrations table
|
|
444
444
|
if (direction === 'up') {
|
|
445
445
|
const checksum = calculateChecksum(resolvedSql);
|
|
446
|
-
await client.query(`
|
|
447
|
-
INSERT INTO ${config.schema}.migrations (version, name, checksum)
|
|
448
|
-
VALUES ($1, $2, $3)
|
|
449
|
-
ON CONFLICT (version) DO UPDATE SET applied_at = NOW()
|
|
446
|
+
await client.query(`
|
|
447
|
+
INSERT INTO ${config.schema}.migrations (version, name, checksum)
|
|
448
|
+
VALUES ($1, $2, $3)
|
|
449
|
+
ON CONFLICT (version) DO UPDATE SET applied_at = NOW()
|
|
450
450
|
`, [migration.version, migration.name, checksum]);
|
|
451
451
|
}
|
|
452
452
|
else {
|
|
453
|
-
await client.query(`
|
|
454
|
-
DELETE FROM ${config.schema}.migrations WHERE version = $1
|
|
453
|
+
await client.query(`
|
|
454
|
+
DELETE FROM ${config.schema}.migrations WHERE version = $1
|
|
455
455
|
`, [migration.version]);
|
|
456
456
|
}
|
|
457
457
|
await client.query('COMMIT');
|