claude-flow 3.32.9 → 3.32.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.
Files changed (451) hide show
  1. package/.claude/.proven-config-version +1 -0
  2. package/.claude/agents/MIGRATION_SUMMARY.md +221 -221
  3. package/.claude/agents/analysis/analyze-code-quality.md +57 -57
  4. package/.claude/agents/analysis/code-analyzer.md +188 -188
  5. package/.claude/agents/analysis/code-review/analyze-code-quality.md +57 -57
  6. package/.claude/agents/architecture/system-design/arch-system-design.md +35 -35
  7. package/.claude/agents/base-template-generator.md +41 -41
  8. package/.claude/agents/consensus/byzantine-coordinator.md +42 -42
  9. package/.claude/agents/consensus/crdt-synchronizer.md +976 -976
  10. package/.claude/agents/consensus/gossip-coordinator.md +42 -42
  11. package/.claude/agents/consensus/performance-benchmarker.md +830 -830
  12. package/.claude/agents/consensus/quorum-manager.md +802 -802
  13. package/.claude/agents/consensus/raft-manager.md +42 -42
  14. package/.claude/agents/consensus/security-manager.md +601 -601
  15. package/.claude/agents/core/coder.md +254 -254
  16. package/.claude/agents/core/planner.md +151 -151
  17. package/.claude/agents/core/researcher.md +173 -173
  18. package/.claude/agents/core/reviewer.md +308 -308
  19. package/.claude/agents/core/tester.md +299 -299
  20. package/.claude/agents/custom/test-long-runner.md +43 -43
  21. package/.claude/agents/data/ml/data-ml-model.md +75 -75
  22. package/.claude/agents/database-specialist.md +9 -9
  23. package/.claude/agents/development/backend/dev-backend-api.md +28 -28
  24. package/.claude/agents/development/dev-backend-api.md +177 -177
  25. package/.claude/agents/devops/ci-cd/ops-cicd-github.md +51 -51
  26. package/.claude/agents/documentation/api-docs/docs-api-openapi.md +62 -62
  27. package/.claude/agents/dual-mode/codex-coordinator.md +206 -206
  28. package/.claude/agents/dual-mode/codex-worker.md +190 -190
  29. package/.claude/agents/dual-mode/dual-orchestrator.md +253 -253
  30. package/.claude/agents/flow-nexus/app-store.md +87 -87
  31. package/.claude/agents/flow-nexus/authentication.md +68 -68
  32. package/.claude/agents/flow-nexus/challenges.md +80 -80
  33. package/.claude/agents/flow-nexus/neural-network.md +87 -87
  34. package/.claude/agents/flow-nexus/payments.md +82 -82
  35. package/.claude/agents/flow-nexus/sandbox.md +75 -75
  36. package/.claude/agents/flow-nexus/swarm.md +75 -75
  37. package/.claude/agents/flow-nexus/user-tools.md +95 -95
  38. package/.claude/agents/flow-nexus/workflow.md +83 -83
  39. package/.claude/agents/github/code-review-swarm.md +520 -520
  40. package/.claude/agents/github/github-modes.md +153 -153
  41. package/.claude/agents/github/issue-tracker.md +298 -298
  42. package/.claude/agents/github/multi-repo-swarm.md +524 -524
  43. package/.claude/agents/github/pr-manager.md +162 -162
  44. package/.claude/agents/github/project-board-sync.md +477 -477
  45. package/.claude/agents/github/release-manager.md +337 -337
  46. package/.claude/agents/github/release-swarm.md +550 -550
  47. package/.claude/agents/github/repo-architect.md +364 -364
  48. package/.claude/agents/github/swarm-issue.md +550 -550
  49. package/.claude/agents/github/swarm-pr.md +401 -401
  50. package/.claude/agents/github/sync-coordinator.md +424 -424
  51. package/.claude/agents/github/workflow-automation.md +604 -604
  52. package/.claude/agents/goal/agent.md +816 -816
  53. package/.claude/agents/goal/code-goal-planner.md +444 -444
  54. package/.claude/agents/goal/goal-planner.md +167 -167
  55. package/.claude/agents/hive-mind/collective-intelligence-coordinator.md +128 -128
  56. package/.claude/agents/hive-mind/queen-coordinator.md +201 -201
  57. package/.claude/agents/hive-mind/scout-explorer.md +240 -240
  58. package/.claude/agents/hive-mind/swarm-memory-manager.md +191 -191
  59. package/.claude/agents/hive-mind/worker-specialist.md +215 -215
  60. package/.claude/agents/neural/safla-neural.md +73 -73
  61. package/.claude/agents/optimization/benchmark-suite.md +662 -662
  62. package/.claude/agents/optimization/load-balancer.md +428 -428
  63. package/.claude/agents/optimization/performance-monitor.md +669 -669
  64. package/.claude/agents/optimization/resource-allocator.md +671 -671
  65. package/.claude/agents/optimization/topology-optimizer.md +805 -805
  66. package/.claude/agents/payments/agentic-payments.md +126 -126
  67. package/.claude/agents/project-coordinator.md +8 -8
  68. package/.claude/agents/python-specialist.md +9 -9
  69. package/.claude/agents/reasoning/agent.md +816 -816
  70. package/.claude/agents/reasoning/goal-planner.md +72 -72
  71. package/.claude/agents/security-auditor.md +9 -9
  72. package/.claude/agents/sona/sona-learning-optimizer.md +65 -65
  73. package/.claude/agents/sparc/architecture.md +452 -452
  74. package/.claude/agents/sparc/pseudocode.md +298 -298
  75. package/.claude/agents/sparc/refinement.md +503 -503
  76. package/.claude/agents/sparc/specification.md +257 -257
  77. package/.claude/agents/specialized/mobile/spec-mobile-react-native.md +87 -87
  78. package/.claude/agents/sublinear/consensus-coordinator.md +337 -337
  79. package/.claude/agents/sublinear/matrix-optimizer.md +184 -184
  80. package/.claude/agents/sublinear/pagerank-analyzer.md +298 -298
  81. package/.claude/agents/sublinear/performance-optimizer.md +367 -367
  82. package/.claude/agents/sublinear/trading-predictor.md +245 -245
  83. package/.claude/agents/swarm/adaptive-coordinator.md +363 -363
  84. package/.claude/agents/swarm/hierarchical-coordinator.md +299 -299
  85. package/.claude/agents/swarm/mesh-coordinator.md +362 -362
  86. package/.claude/agents/templates/automation-smart-agent.md +184 -184
  87. package/.claude/agents/templates/coordinator-swarm-init.md +82 -82
  88. package/.claude/agents/templates/github-pr-manager.md +154 -154
  89. package/.claude/agents/templates/implementer-sparc-coder.md +242 -242
  90. package/.claude/agents/templates/memory-coordinator.md +162 -162
  91. package/.claude/agents/templates/migration-plan.md +723 -723
  92. package/.claude/agents/templates/orchestrator-task.md +119 -119
  93. package/.claude/agents/templates/performance-analyzer.md +178 -178
  94. package/.claude/agents/templates/sparc-coordinator.md +162 -162
  95. package/.claude/agents/testing/production-validator.md +372 -372
  96. package/.claude/agents/testing/tdd-london-swarm.md +221 -221
  97. package/.claude/agents/testing/unit/tdd-london-swarm.md +221 -221
  98. package/.claude/agents/testing/validation/production-validator.md +372 -372
  99. package/.claude/agents/typescript-specialist.md +9 -9
  100. package/.claude/agents/v3/database-specialist.md +9 -9
  101. package/.claude/agents/v3/project-coordinator.md +8 -8
  102. package/.claude/agents/v3/python-specialist.md +9 -9
  103. package/.claude/agents/v3/test-architect.md +9 -9
  104. package/.claude/agents/v3/typescript-specialist.md +9 -9
  105. package/.claude/agents/v3/v3-integration-architect.md +311 -311
  106. package/.claude/agents/v3/v3-memory-specialist.md +280 -280
  107. package/.claude/agents/v3/v3-performance-engineer.md +362 -362
  108. package/.claude/agents/v3/v3-queen-coordinator.md +62 -62
  109. package/.claude/agents/v3/v3-security-architect.md +139 -139
  110. package/.claude/checkpoints/1767754460.json +8 -8
  111. package/.claude/commands/agents/README.md +10 -10
  112. package/.claude/commands/agents/agent-capabilities.md +21 -21
  113. package/.claude/commands/agents/agent-coordination.md +28 -28
  114. package/.claude/commands/agents/agent-spawning.md +28 -28
  115. package/.claude/commands/agents/agent-types.md +26 -26
  116. package/.claude/commands/analysis/COMMAND_COMPLIANCE_REPORT.md +53 -53
  117. package/.claude/commands/analysis/README.md +9 -9
  118. package/.claude/commands/analysis/bottleneck-detect.md +162 -162
  119. package/.claude/commands/analysis/performance-bottlenecks.md +58 -58
  120. package/.claude/commands/analysis/performance-report.md +25 -25
  121. package/.claude/commands/analysis/token-efficiency.md +44 -44
  122. package/.claude/commands/analysis/token-usage.md +25 -25
  123. package/.claude/commands/automation/README.md +9 -9
  124. package/.claude/commands/automation/auto-agent.md +122 -122
  125. package/.claude/commands/automation/self-healing.md +105 -105
  126. package/.claude/commands/automation/session-memory.md +89 -89
  127. package/.claude/commands/automation/smart-agents.md +72 -72
  128. package/.claude/commands/automation/smart-spawn.md +25 -25
  129. package/.claude/commands/automation/workflow-select.md +25 -25
  130. package/.claude/commands/claude-flow-help.md +103 -103
  131. package/.claude/commands/claude-flow-memory.md +107 -107
  132. package/.claude/commands/claude-flow-swarm.md +205 -205
  133. package/.claude/commands/coordination/README.md +9 -9
  134. package/.claude/commands/coordination/agent-spawn.md +25 -25
  135. package/.claude/commands/coordination/init.md +44 -44
  136. package/.claude/commands/coordination/orchestrate.md +43 -43
  137. package/.claude/commands/coordination/spawn.md +45 -45
  138. package/.claude/commands/coordination/swarm-init.md +85 -85
  139. package/.claude/commands/coordination/task-orchestrate.md +25 -25
  140. package/.claude/commands/flow-nexus/app-store.md +123 -123
  141. package/.claude/commands/flow-nexus/challenges.md +119 -119
  142. package/.claude/commands/flow-nexus/login-registration.md +64 -64
  143. package/.claude/commands/flow-nexus/neural-network.md +133 -133
  144. package/.claude/commands/flow-nexus/payments.md +115 -115
  145. package/.claude/commands/flow-nexus/sandbox.md +82 -82
  146. package/.claude/commands/flow-nexus/swarm.md +86 -86
  147. package/.claude/commands/flow-nexus/user-tools.md +151 -151
  148. package/.claude/commands/flow-nexus/workflow.md +114 -114
  149. package/.claude/commands/github/README.md +11 -11
  150. package/.claude/commands/github/code-review-swarm.md +513 -513
  151. package/.claude/commands/github/code-review.md +25 -25
  152. package/.claude/commands/github/github-modes.md +146 -146
  153. package/.claude/commands/github/github-swarm.md +121 -121
  154. package/.claude/commands/github/issue-tracker.md +291 -291
  155. package/.claude/commands/github/issue-triage.md +25 -25
  156. package/.claude/commands/github/multi-repo-swarm.md +518 -518
  157. package/.claude/commands/github/pr-enhance.md +26 -26
  158. package/.claude/commands/github/pr-manager.md +169 -169
  159. package/.claude/commands/github/project-board-sync.md +470 -470
  160. package/.claude/commands/github/release-manager.md +337 -337
  161. package/.claude/commands/github/release-swarm.md +543 -543
  162. package/.claude/commands/github/repo-analyze.md +25 -25
  163. package/.claude/commands/github/repo-architect.md +366 -366
  164. package/.claude/commands/github/swarm-issue.md +481 -481
  165. package/.claude/commands/github/swarm-pr.md +284 -284
  166. package/.claude/commands/github/sync-coordinator.md +300 -300
  167. package/.claude/commands/github/workflow-automation.md +441 -441
  168. package/.claude/commands/hive-mind/README.md +17 -17
  169. package/.claude/commands/hive-mind/hive-mind-consensus.md +8 -8
  170. package/.claude/commands/hive-mind/hive-mind-init.md +18 -18
  171. package/.claude/commands/hive-mind/hive-mind-memory.md +8 -8
  172. package/.claude/commands/hive-mind/hive-mind-metrics.md +8 -8
  173. package/.claude/commands/hive-mind/hive-mind-resume.md +8 -8
  174. package/.claude/commands/hive-mind/hive-mind-sessions.md +8 -8
  175. package/.claude/commands/hive-mind/hive-mind-spawn.md +21 -21
  176. package/.claude/commands/hive-mind/hive-mind-status.md +8 -8
  177. package/.claude/commands/hive-mind/hive-mind-stop.md +8 -8
  178. package/.claude/commands/hive-mind/hive-mind-wizard.md +8 -8
  179. package/.claude/commands/hive-mind/hive-mind.md +27 -27
  180. package/.claude/commands/hooks/README.md +11 -11
  181. package/.claude/commands/hooks/overview.md +57 -57
  182. package/.claude/commands/hooks/post-edit.md +117 -117
  183. package/.claude/commands/hooks/post-task.md +112 -112
  184. package/.claude/commands/hooks/pre-edit.md +113 -113
  185. package/.claude/commands/hooks/pre-task.md +111 -111
  186. package/.claude/commands/hooks/session-end.md +118 -118
  187. package/.claude/commands/hooks/setup.md +102 -102
  188. package/.claude/commands/memory/README.md +9 -9
  189. package/.claude/commands/memory/memory-persist.md +25 -25
  190. package/.claude/commands/memory/memory-search.md +25 -25
  191. package/.claude/commands/memory/memory-usage.md +25 -25
  192. package/.claude/commands/memory/neural.md +47 -47
  193. package/.claude/commands/monitoring/README.md +9 -9
  194. package/.claude/commands/monitoring/agent-metrics.md +25 -25
  195. package/.claude/commands/monitoring/agents.md +44 -44
  196. package/.claude/commands/monitoring/real-time-view.md +25 -25
  197. package/.claude/commands/monitoring/status.md +46 -46
  198. package/.claude/commands/monitoring/swarm-monitor.md +25 -25
  199. package/.claude/commands/optimization/README.md +9 -9
  200. package/.claude/commands/optimization/auto-topology.md +61 -61
  201. package/.claude/commands/optimization/cache-manage.md +25 -25
  202. package/.claude/commands/optimization/parallel-execute.md +25 -25
  203. package/.claude/commands/optimization/parallel-execution.md +49 -49
  204. package/.claude/commands/optimization/topology-optimize.md +25 -25
  205. package/.claude/commands/pair/README.md +260 -260
  206. package/.claude/commands/pair/commands.md +545 -545
  207. package/.claude/commands/pair/config.md +509 -509
  208. package/.claude/commands/pair/examples.md +511 -511
  209. package/.claude/commands/pair/modes.md +347 -347
  210. package/.claude/commands/pair/session.md +406 -406
  211. package/.claude/commands/pair/start.md +208 -208
  212. package/.claude/commands/sparc/analyzer.md +51 -51
  213. package/.claude/commands/sparc/architect.md +53 -53
  214. package/.claude/commands/sparc/ask.md +97 -97
  215. package/.claude/commands/sparc/batch-executor.md +54 -54
  216. package/.claude/commands/sparc/code.md +89 -89
  217. package/.claude/commands/sparc/coder.md +54 -54
  218. package/.claude/commands/sparc/debug.md +83 -83
  219. package/.claude/commands/sparc/debugger.md +54 -54
  220. package/.claude/commands/sparc/designer.md +53 -53
  221. package/.claude/commands/sparc/devops.md +109 -109
  222. package/.claude/commands/sparc/docs-writer.md +80 -80
  223. package/.claude/commands/sparc/documenter.md +54 -54
  224. package/.claude/commands/sparc/innovator.md +54 -54
  225. package/.claude/commands/sparc/integration.md +83 -83
  226. package/.claude/commands/sparc/mcp.md +117 -117
  227. package/.claude/commands/sparc/memory-manager.md +54 -54
  228. package/.claude/commands/sparc/optimizer.md +54 -54
  229. package/.claude/commands/sparc/orchestrator.md +131 -131
  230. package/.claude/commands/sparc/post-deployment-monitoring-mode.md +83 -83
  231. package/.claude/commands/sparc/refinement-optimization-mode.md +83 -83
  232. package/.claude/commands/sparc/researcher.md +54 -54
  233. package/.claude/commands/sparc/reviewer.md +54 -54
  234. package/.claude/commands/sparc/security-review.md +80 -80
  235. package/.claude/commands/sparc/sparc-modes.md +174 -174
  236. package/.claude/commands/sparc/sparc.md +111 -111
  237. package/.claude/commands/sparc/spec-pseudocode.md +80 -80
  238. package/.claude/commands/sparc/supabase-admin.md +348 -348
  239. package/.claude/commands/sparc/swarm-coordinator.md +54 -54
  240. package/.claude/commands/sparc/tdd.md +54 -54
  241. package/.claude/commands/sparc/tester.md +54 -54
  242. package/.claude/commands/sparc/tutorial.md +79 -79
  243. package/.claude/commands/sparc/workflow-manager.md +54 -54
  244. package/.claude/commands/sparc.md +166 -166
  245. package/.claude/commands/stream-chain/pipeline.md +120 -120
  246. package/.claude/commands/stream-chain/run.md +69 -69
  247. package/.claude/commands/swarm/README.md +15 -15
  248. package/.claude/commands/swarm/analysis.md +95 -95
  249. package/.claude/commands/swarm/development.md +96 -96
  250. package/.claude/commands/swarm/examples.md +168 -168
  251. package/.claude/commands/swarm/maintenance.md +102 -102
  252. package/.claude/commands/swarm/optimization.md +117 -117
  253. package/.claude/commands/swarm/research.md +136 -136
  254. package/.claude/commands/swarm/swarm-analysis.md +8 -8
  255. package/.claude/commands/swarm/swarm-background.md +8 -8
  256. package/.claude/commands/swarm/swarm-init.md +19 -19
  257. package/.claude/commands/swarm/swarm-modes.md +8 -8
  258. package/.claude/commands/swarm/swarm-monitor.md +8 -8
  259. package/.claude/commands/swarm/swarm-spawn.md +19 -19
  260. package/.claude/commands/swarm/swarm-status.md +8 -8
  261. package/.claude/commands/swarm/swarm-strategies.md +8 -8
  262. package/.claude/commands/swarm/swarm.md +27 -27
  263. package/.claude/commands/swarm/testing.md +131 -131
  264. package/.claude/commands/training/README.md +9 -9
  265. package/.claude/commands/training/model-update.md +25 -25
  266. package/.claude/commands/training/neural-patterns.md +73 -73
  267. package/.claude/commands/training/neural-train.md +25 -25
  268. package/.claude/commands/training/pattern-learn.md +25 -25
  269. package/.claude/commands/training/specialization.md +62 -62
  270. package/.claude/commands/truth/start.md +142 -142
  271. package/.claude/commands/verify/check.md +49 -49
  272. package/.claude/commands/verify/start.md +127 -127
  273. package/.claude/commands/workflows/README.md +9 -9
  274. package/.claude/commands/workflows/development.md +77 -77
  275. package/.claude/commands/workflows/research.md +62 -62
  276. package/.claude/commands/workflows/workflow-create.md +25 -25
  277. package/.claude/commands/workflows/workflow-execute.md +25 -25
  278. package/.claude/commands/workflows/workflow-export.md +25 -25
  279. package/.claude/config/v3-dependency-optimization.json +265 -265
  280. package/.claude/config/v3-performance-targets.json +250 -250
  281. package/.claude/helpers/.LOCKED +2 -2
  282. package/.claude/helpers/.helpers-version +1 -0
  283. package/.claude/helpers/README.md +96 -96
  284. package/.claude/helpers/adr-compliance.sh +186 -186
  285. package/.claude/helpers/aggressive-microcompact.mjs +36 -36
  286. package/.claude/helpers/auto-commit.sh +178 -178
  287. package/.claude/helpers/auto-memory-hook.mjs +430 -430
  288. package/.claude/helpers/checkpoint-manager.sh +251 -251
  289. package/.claude/helpers/context-persistence-hook.mjs +2001 -2001
  290. package/.claude/helpers/daemon-manager.sh +252 -252
  291. package/.claude/helpers/ddd-tracker.sh +144 -144
  292. package/.claude/helpers/github-safe.js +156 -156
  293. package/.claude/helpers/github-setup.sh +45 -45
  294. package/.claude/helpers/guidance-hook.sh +13 -13
  295. package/.claude/helpers/guidance-hooks.sh +102 -102
  296. package/.claude/helpers/health-monitor.sh +108 -108
  297. package/.claude/helpers/helpers.manifest.json +13 -0
  298. package/.claude/helpers/hook-handler.cjs +464 -464
  299. package/.claude/helpers/intelligence.cjs +1058 -1058
  300. package/.claude/helpers/learning-hooks.sh +329 -329
  301. package/.claude/helpers/learning-optimizer.sh +127 -127
  302. package/.claude/helpers/learning-service.mjs +1144 -1144
  303. package/.claude/helpers/memory.cjs +84 -84
  304. package/.claude/helpers/metrics-db.mjs +503 -503
  305. package/.claude/helpers/patch-aggressive-prune.mjs +184 -184
  306. package/.claude/helpers/pattern-consolidator.sh +86 -86
  307. package/.claude/helpers/perf-worker.sh +160 -160
  308. package/.claude/helpers/quick-start.sh +19 -19
  309. package/.claude/helpers/router.cjs +62 -62
  310. package/.claude/helpers/security-scanner.sh +127 -127
  311. package/.claude/helpers/session.cjs +125 -125
  312. package/.claude/helpers/setup-mcp.sh +18 -18
  313. package/.claude/helpers/standard-checkpoint-hooks.sh +189 -189
  314. package/.claude/helpers/statusline.cjs +156 -1
  315. package/.claude/helpers/swarm-comms.sh +353 -353
  316. package/.claude/helpers/swarm-hooks.sh +761 -761
  317. package/.claude/helpers/swarm-monitor.sh +210 -210
  318. package/.claude/helpers/sync-v3-metrics.sh +245 -245
  319. package/.claude/helpers/update-v3-progress.sh +165 -165
  320. package/.claude/helpers/v3-quick-status.sh +57 -57
  321. package/.claude/helpers/v3.sh +110 -110
  322. package/.claude/helpers/validate-v3-config.sh +215 -215
  323. package/.claude/helpers/worker-manager.sh +170 -170
  324. package/.claude/mcp.json +12 -12
  325. package/.claude/proven-config.json +42 -0
  326. package/.claude/settings.json +284 -284
  327. package/.claude/settings.json.bak +526 -526
  328. package/.claude/skills/agentdb-advanced/SKILL.md +550 -550
  329. package/.claude/skills/agentdb-learning/SKILL.md +545 -545
  330. package/.claude/skills/agentdb-memory-patterns/SKILL.md +339 -339
  331. package/.claude/skills/agentdb-optimization/SKILL.md +509 -509
  332. package/.claude/skills/agentdb-vector-search/SKILL.md +339 -339
  333. package/.claude/skills/agentic-jujutsu/SKILL.md +645 -645
  334. package/.claude/skills/browser/SKILL.md +204 -204
  335. package/.claude/skills/dual-mode/README.md +71 -71
  336. package/.claude/skills/dual-mode/dual-collect.md +103 -103
  337. package/.claude/skills/dual-mode/dual-coordinate.md +85 -85
  338. package/.claude/skills/dual-mode/dual-spawn.md +81 -81
  339. package/.claude/skills/flow-nexus-neural/SKILL.md +727 -727
  340. package/.claude/skills/flow-nexus-platform/SKILL.md +1154 -1154
  341. package/.claude/skills/flow-nexus-swarm/SKILL.md +604 -604
  342. package/.claude/skills/github-code-review/SKILL.md +1125 -1125
  343. package/.claude/skills/github-multi-repo/SKILL.md +862 -862
  344. package/.claude/skills/github-project-management/SKILL.md +1262 -1262
  345. package/.claude/skills/github-release-management/SKILL.md +1064 -1064
  346. package/.claude/skills/github-workflow-automation/SKILL.md +1047 -1047
  347. package/.claude/skills/hive-mind-advanced/SKILL.md +709 -709
  348. package/.claude/skills/hooks-automation/SKILL.md +1201 -1201
  349. package/.claude/skills/pair-programming/SKILL.md +1202 -1202
  350. package/.claude/skills/performance-analysis/SKILL.md +560 -560
  351. package/.claude/skills/reasoningbank-agentdb/SKILL.md +446 -446
  352. package/.claude/skills/reasoningbank-intelligence/SKILL.md +201 -201
  353. package/.claude/skills/skill-builder/SKILL.md +910 -910
  354. package/.claude/skills/sparc-methodology/SKILL.md +1106 -1106
  355. package/.claude/skills/stream-chain/SKILL.md +560 -560
  356. package/.claude/skills/swarm-advanced/SKILL.md +970 -970
  357. package/.claude/skills/swarm-orchestration/SKILL.md +179 -179
  358. package/.claude/skills/v3-cli-modernization/SKILL.md +871 -871
  359. package/.claude/skills/v3-core-implementation/SKILL.md +796 -796
  360. package/.claude/skills/v3-ddd-architecture/SKILL.md +441 -441
  361. package/.claude/skills/v3-integration-deep/SKILL.md +240 -240
  362. package/.claude/skills/v3-mcp-optimization/SKILL.md +776 -776
  363. package/.claude/skills/v3-memory-unification/SKILL.md +173 -173
  364. package/.claude/skills/v3-performance-optimization/SKILL.md +389 -389
  365. package/.claude/skills/v3-security-overhaul/SKILL.md +81 -81
  366. package/.claude/skills/v3-swarm-coordination/SKILL.md +339 -339
  367. package/.claude/skills/verification-quality/SKILL.md +691 -691
  368. package/.claude/skills/worker-benchmarks/SKILL.md +129 -129
  369. package/.claude/skills/worker-integration/SKILL.md +147 -147
  370. package/.claude/statusline-command.sh +176 -176
  371. package/.claude/statusline.mjs +109 -109
  372. package/.claude/statusline.sh +431 -431
  373. package/.claude/workflows/full-system-test.js +65 -65
  374. package/.claude/workflows/intelligence-system-hardening.js +120 -120
  375. package/.claude/workflows/plugin-contract-audit.js +91 -91
  376. package/.claude-plugin/README.md +720 -720
  377. package/.claude-plugin/docs/INSTALLATION.md +261 -261
  378. package/.claude-plugin/docs/PLUGIN_SUMMARY.md +361 -361
  379. package/.claude-plugin/docs/QUICKSTART.md +361 -361
  380. package/.claude-plugin/docs/STRUCTURE.md +128 -128
  381. package/.claude-plugin/hooks/hooks.json +79 -79
  382. package/.claude-plugin/marketplace.json +185 -185
  383. package/.claude-plugin/plugin.json +71 -71
  384. package/.claude-plugin/scripts/install.sh +234 -234
  385. package/.claude-plugin/scripts/ruflo-hook.cjs +166 -166
  386. package/.claude-plugin/scripts/ruflo-hook.sh +52 -52
  387. package/.claude-plugin/scripts/uninstall.sh +36 -36
  388. package/.claude-plugin/scripts/verify.sh +108 -108
  389. package/LICENSE +21 -21
  390. package/README.md +419 -419
  391. package/bin/cli.js +11 -11
  392. package/bin/npx-repair.js +7 -7
  393. package/bin/npx-safe-launch.js +9 -9
  394. package/package.json +192 -192
  395. package/v3/@claude-flow/cli/README.md +419 -419
  396. package/v3/@claude-flow/cli/bin/cli.js +314 -314
  397. package/v3/@claude-flow/cli/bin/mcp-server.js +224 -224
  398. package/v3/@claude-flow/cli/bin/preinstall.cjs +2 -2
  399. package/v3/@claude-flow/cli/catalog-manifest.json +2 -2
  400. package/v3/@claude-flow/cli/dist/src/autopilot-state.js +24 -7
  401. package/v3/@claude-flow/cli/dist/src/benchmarks/gaia-critic.js +24 -24
  402. package/v3/@claude-flow/cli/dist/src/business-pods/bbs-budget-tracker.js +53 -53
  403. package/v3/@claude-flow/cli/dist/src/commands/completions.js +409 -409
  404. package/v3/@claude-flow/cli/dist/src/commands/daemon.js +44 -44
  405. package/v3/@claude-flow/cli/dist/src/commands/embeddings.js +26 -26
  406. package/v3/@claude-flow/cli/dist/src/commands/hive-mind.js +97 -97
  407. package/v3/@claude-flow/cli/dist/src/commands/hooks.js +31 -10
  408. package/v3/@claude-flow/cli/dist/src/commands/init.js +202 -34
  409. package/v3/@claude-flow/cli/dist/src/commands/memory.js +12 -1
  410. package/v3/@claude-flow/cli/dist/src/commands/ruvector/backup.js +23 -23
  411. package/v3/@claude-flow/cli/dist/src/commands/ruvector/benchmark.js +31 -31
  412. package/v3/@claude-flow/cli/dist/src/commands/ruvector/import.js +14 -14
  413. package/v3/@claude-flow/cli/dist/src/commands/ruvector/init.js +115 -115
  414. package/v3/@claude-flow/cli/dist/src/commands/ruvector/migrate.js +99 -99
  415. package/v3/@claude-flow/cli/dist/src/commands/ruvector/optimize.js +51 -51
  416. package/v3/@claude-flow/cli/dist/src/commands/ruvector/setup.js +624 -624
  417. package/v3/@claude-flow/cli/dist/src/commands/ruvector/status.js +38 -38
  418. package/v3/@claude-flow/cli/dist/src/config/proven-config.js +2 -2
  419. package/v3/@claude-flow/cli/dist/src/funnel/disclosure.js +13 -2
  420. package/v3/@claude-flow/cli/dist/src/funnel/messages.d.ts +12 -10
  421. package/v3/@claude-flow/cli/dist/src/funnel/messages.js +83 -11
  422. package/v3/@claude-flow/cli/dist/src/init/claudemd-generator.js +231 -231
  423. package/v3/@claude-flow/cli/dist/src/init/executor.js +453 -453
  424. package/v3/@claude-flow/cli/dist/src/init/helper-signing.js +2 -2
  425. package/v3/@claude-flow/cli/dist/src/init/helpers-generator.js +751 -751
  426. package/v3/@claude-flow/cli/dist/src/init/statusline-generator.js +24 -24
  427. package/v3/@claude-flow/cli/dist/src/mcp-tools/agentdb-tools.js +15 -15
  428. package/v3/@claude-flow/cli/dist/src/mcp-tools/browser-intent-tools.js +19 -19
  429. package/v3/@claude-flow/cli/dist/src/mcp-tools/browser-tools.js +8 -0
  430. package/v3/@claude-flow/cli/dist/src/mcp-tools/hooks-tools.js +21 -0
  431. package/v3/@claude-flow/cli/dist/src/mcp-tools/memory-tools.js +4 -3
  432. package/v3/@claude-flow/cli/dist/src/memory/graph-edge-writer.js +22 -22
  433. package/v3/@claude-flow/cli/dist/src/memory/memory-bridge.js +192 -123
  434. package/v3/@claude-flow/cli/dist/src/memory/memory-initializer.js +407 -407
  435. package/v3/@claude-flow/cli/dist/src/memory/rabitq-index.js +5 -5
  436. package/v3/@claude-flow/cli/dist/src/parser.js +25 -9
  437. package/v3/@claude-flow/cli/dist/src/proxy/verify.js +2 -2
  438. package/v3/@claude-flow/cli/dist/src/runtime/headless.js +28 -28
  439. package/v3/@claude-flow/cli/dist/src/services/distill-tuning.js +7 -7
  440. package/v3/@claude-flow/cli/dist/src/services/headless-worker-executor.js +84 -84
  441. package/v3/@claude-flow/cli/dist/src/services/memory-distillation.js +4 -4
  442. package/v3/@claude-flow/cli/dist/src/services/worker-daemon.js +7 -4
  443. package/v3/@claude-flow/cli/dist/src/transfer/deploy-seraphine.js +23 -23
  444. package/v3/@claude-flow/cli/package.json +137 -137
  445. package/v3/@claude-flow/guidance/README.md +1195 -1195
  446. package/v3/@claude-flow/guidance/package.json +198 -198
  447. package/v3/@claude-flow/shared/README.md +323 -323
  448. package/v3/@claude-flow/shared/dist/events/event-store.js +31 -31
  449. package/v3/@claude-flow/shared/dist/hooks/safety/git-commit.js +3 -3
  450. package/v3/@claude-flow/shared/package.json +43 -43
  451. package/v3/README.md +493 -493
@@ -15,638 +15,638 @@ import * as path from 'path';
15
15
  /**
16
16
  * Docker Compose template for RuVector PostgreSQL
17
17
  */
18
- const DOCKER_COMPOSE_TEMPLATE = `# RuVector PostgreSQL Testing Environment
19
- # Official RuVector extension from ruvnet/ruvector-postgres
20
- #
21
- # Features:
22
- # - 77+ SQL functions for vector operations
23
- # - HNSW/IVFFlat indexing with SIMD acceleration
24
- # - Hyperbolic embeddings (Poincaré ball)
25
- # - Graph operations and GNN support
26
- # - Agent routing and learning
27
- #
28
- # Performance: ~61µs latency, 16,400 QPS with HNSW
29
-
30
- services:
31
- postgres:
32
- image: ruvnet/ruvector-postgres:latest
33
- container_name: ruvector-postgres
34
- environment:
35
- POSTGRES_USER: claude
36
- POSTGRES_PASSWORD: claude-flow-test
37
- POSTGRES_DB: claude_flow
38
- ports:
39
- - "5432:5432"
40
- volumes:
41
- - postgres_data:/var/lib/postgresql/data
42
- - ./scripts/init-db.sql:/docker-entrypoint-initdb.d/01-init.sql
43
- healthcheck:
44
- test: ["CMD-SHELL", "pg_isready -U claude -d claude_flow"]
45
- interval: 5s
46
- timeout: 5s
47
- retries: 10
48
- command: >
49
- postgres
50
- -c work_mem=256MB
51
- -c maintenance_work_mem=512MB
52
-
53
- # Optional: pgAdmin for visual database management
54
- pgadmin:
55
- image: dpage/pgadmin4:latest
56
- container_name: ruvector-pgadmin
57
- environment:
58
- PGADMIN_DEFAULT_EMAIL: admin@claude-flow.local
59
- PGADMIN_DEFAULT_PASSWORD: admin
60
- PGADMIN_CONFIG_SERVER_MODE: 'False'
61
- ports:
62
- - "5050:80"
63
- depends_on:
64
- postgres:
65
- condition: service_healthy
66
- profiles:
67
- - gui
68
-
69
- volumes:
70
- postgres_data:
18
+ const DOCKER_COMPOSE_TEMPLATE = `# RuVector PostgreSQL Testing Environment
19
+ # Official RuVector extension from ruvnet/ruvector-postgres
20
+ #
21
+ # Features:
22
+ # - 77+ SQL functions for vector operations
23
+ # - HNSW/IVFFlat indexing with SIMD acceleration
24
+ # - Hyperbolic embeddings (Poincaré ball)
25
+ # - Graph operations and GNN support
26
+ # - Agent routing and learning
27
+ #
28
+ # Performance: ~61µs latency, 16,400 QPS with HNSW
29
+
30
+ services:
31
+ postgres:
32
+ image: ruvnet/ruvector-postgres:latest
33
+ container_name: ruvector-postgres
34
+ environment:
35
+ POSTGRES_USER: claude
36
+ POSTGRES_PASSWORD: claude-flow-test
37
+ POSTGRES_DB: claude_flow
38
+ ports:
39
+ - "5432:5432"
40
+ volumes:
41
+ - postgres_data:/var/lib/postgresql/data
42
+ - ./scripts/init-db.sql:/docker-entrypoint-initdb.d/01-init.sql
43
+ healthcheck:
44
+ test: ["CMD-SHELL", "pg_isready -U claude -d claude_flow"]
45
+ interval: 5s
46
+ timeout: 5s
47
+ retries: 10
48
+ command: >
49
+ postgres
50
+ -c work_mem=256MB
51
+ -c maintenance_work_mem=512MB
52
+
53
+ # Optional: pgAdmin for visual database management
54
+ pgadmin:
55
+ image: dpage/pgadmin4:latest
56
+ container_name: ruvector-pgadmin
57
+ environment:
58
+ PGADMIN_DEFAULT_EMAIL: admin@claude-flow.local
59
+ PGADMIN_DEFAULT_PASSWORD: admin
60
+ PGADMIN_CONFIG_SERVER_MODE: 'False'
61
+ ports:
62
+ - "5050:80"
63
+ depends_on:
64
+ postgres:
65
+ condition: service_healthy
66
+ profiles:
67
+ - gui
68
+
69
+ volumes:
70
+ postgres_data:
71
71
  `;
72
72
  /**
73
73
  * Init SQL template for RuVector PostgreSQL
74
74
  */
75
- const INIT_SQL_TEMPLATE = `-- ============================================
76
- -- RUVECTOR POSTGRESQL INITIALIZATION SCRIPT
77
- -- ============================================
78
- --
79
- -- This script initializes RuVector PostgreSQL extension
80
- -- from ruvnet/ruvector-postgres with Claude-Flow V3 integration.
81
- --
82
- -- RuVector provides 77+ SQL functions including:
83
- -- - Vector similarity search (HNSW with SIMD)
84
- -- - Hyperbolic embeddings (Poincaré/Lorentz)
85
- -- - Graph operations (Cypher queries)
86
- -- - Agent routing and learning
87
- --
88
- -- Performance: ~61µs latency, 16,400 QPS
89
-
90
- -- ============================================
91
- -- PART 1: EXTENSION AND SCHEMA SETUP
92
- -- ============================================
93
-
94
- -- IMPORTANT: RuVector requires explicit VERSION
95
- -- The control file says 2.0.0 but only 0.1.0 SQL exists
96
- CREATE EXTENSION IF NOT EXISTS ruvector VERSION '0.1.0';
97
-
98
- -- Enable additional required extensions
99
- CREATE EXTENSION IF NOT EXISTS pgcrypto;
100
-
101
- -- Create the claude_flow schema
102
- CREATE SCHEMA IF NOT EXISTS claude_flow;
103
-
104
- -- Grant permissions
105
- GRANT ALL ON SCHEMA claude_flow TO claude;
106
-
107
- -- Set search path
108
- SET search_path TO claude_flow, public;
109
-
110
- -- ============================================
111
- -- PART 2: CORE TABLES
112
- -- ============================================
113
-
114
- -- Embeddings table with RuVector vector type (384-dim for all-MiniLM-L6-v2)
115
- CREATE TABLE IF NOT EXISTS claude_flow.embeddings (
116
- id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
117
- content TEXT NOT NULL,
118
- embedding ruvector(384),
119
- metadata JSONB DEFAULT '{}',
120
- namespace VARCHAR(100) DEFAULT 'default',
121
- created_at TIMESTAMPTZ DEFAULT NOW(),
122
- updated_at TIMESTAMPTZ DEFAULT NOW()
123
- );
124
-
125
- -- Patterns table for learned patterns (ReasoningBank)
126
- CREATE TABLE IF NOT EXISTS claude_flow.patterns (
127
- id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
128
- name VARCHAR(255) NOT NULL,
129
- description TEXT,
130
- embedding ruvector(384),
131
- pattern_type VARCHAR(50),
132
- confidence FLOAT DEFAULT 0.5,
133
- success_count INT DEFAULT 0,
134
- failure_count INT DEFAULT 0,
135
- ewc_importance FLOAT DEFAULT 1.0,
136
- metadata JSONB DEFAULT '{}',
137
- created_at TIMESTAMPTZ DEFAULT NOW()
138
- );
139
-
140
- -- Agents table for multi-agent memory coordination
141
- CREATE TABLE IF NOT EXISTS claude_flow.agents (
142
- id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
143
- agent_id VARCHAR(255) NOT NULL UNIQUE,
144
- agent_type VARCHAR(50),
145
- state JSONB DEFAULT '{}',
146
- memory_embedding ruvector(384),
147
- last_active TIMESTAMPTZ DEFAULT NOW(),
148
- created_at TIMESTAMPTZ DEFAULT NOW()
149
- );
150
-
151
- -- Trajectories table for SONA reinforcement learning
152
- CREATE TABLE IF NOT EXISTS claude_flow.trajectories (
153
- id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
154
- trajectory_id VARCHAR(255) NOT NULL UNIQUE,
155
- agent_type VARCHAR(50),
156
- task_description TEXT,
157
- status VARCHAR(20) DEFAULT 'in_progress',
158
- steps JSONB DEFAULT '[]',
159
- outcome VARCHAR(20),
160
- quality_score FLOAT,
161
- started_at TIMESTAMPTZ DEFAULT NOW(),
162
- ended_at TIMESTAMPTZ
163
- );
164
-
165
- -- Memory entries table (main storage for Claude-Flow memory)
166
- CREATE TABLE IF NOT EXISTS claude_flow.memory_entries (
167
- id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
168
- key VARCHAR(255) NOT NULL,
169
- value TEXT NOT NULL,
170
- embedding ruvector(384),
171
- namespace VARCHAR(100) DEFAULT 'default',
172
- metadata JSONB DEFAULT '{}',
173
- ttl TIMESTAMPTZ,
174
- created_at TIMESTAMPTZ DEFAULT NOW(),
175
- updated_at TIMESTAMPTZ DEFAULT NOW(),
176
- UNIQUE(key, namespace)
177
- );
178
-
179
- -- Hyperbolic embeddings for hierarchical data
180
- CREATE TABLE IF NOT EXISTS claude_flow.hyperbolic_embeddings (
181
- id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
182
- content TEXT NOT NULL,
183
- euclidean_embedding ruvector(384),
184
- poincare_embedding real[], -- Array for hyperbolic operations
185
- curvature FLOAT DEFAULT -1.0,
186
- hierarchy_level INT DEFAULT 0,
187
- parent_id UUID REFERENCES claude_flow.hyperbolic_embeddings(id),
188
- metadata JSONB DEFAULT '{}',
189
- created_at TIMESTAMPTZ DEFAULT NOW()
190
- );
191
-
192
- -- Graph nodes for GNN operations
193
- CREATE TABLE IF NOT EXISTS claude_flow.graph_nodes (
194
- id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
195
- node_id VARCHAR(255) NOT NULL UNIQUE,
196
- node_type VARCHAR(50),
197
- embedding ruvector(384),
198
- features JSONB DEFAULT '{}',
199
- created_at TIMESTAMPTZ DEFAULT NOW()
200
- );
201
-
202
- -- Graph edges for message passing
203
- CREATE TABLE IF NOT EXISTS claude_flow.graph_edges (
204
- id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
205
- source_id UUID REFERENCES claude_flow.graph_nodes(id),
206
- target_id UUID REFERENCES claude_flow.graph_nodes(id),
207
- edge_type VARCHAR(50),
208
- weight FLOAT DEFAULT 1.0,
209
- metadata JSONB DEFAULT '{}',
210
- created_at TIMESTAMPTZ DEFAULT NOW()
211
- );
212
-
213
- -- ============================================
214
- -- PART 3: HNSW INDICES (150x-12,500x faster)
215
- -- ============================================
216
-
217
- -- HNSW index for embeddings (cosine distance)
218
- CREATE INDEX IF NOT EXISTS idx_embeddings_hnsw
219
- ON claude_flow.embeddings
220
- USING hnsw (embedding ruvector_cosine_ops)
221
- WITH (m = 16, ef_construction = 100);
222
-
223
- -- HNSW index for patterns
224
- CREATE INDEX IF NOT EXISTS idx_patterns_hnsw
225
- ON claude_flow.patterns
226
- USING hnsw (embedding ruvector_cosine_ops)
227
- WITH (m = 16, ef_construction = 100);
228
-
229
- -- HNSW index for agent memory
230
- CREATE INDEX IF NOT EXISTS idx_agents_hnsw
231
- ON claude_flow.agents
232
- USING hnsw (memory_embedding ruvector_cosine_ops)
233
- WITH (m = 16, ef_construction = 64);
234
-
235
- -- HNSW index for memory entries
236
- CREATE INDEX IF NOT EXISTS idx_memory_entries_hnsw
237
- ON claude_flow.memory_entries
238
- USING hnsw (embedding ruvector_cosine_ops)
239
- WITH (m = 16, ef_construction = 100);
240
-
241
- -- HNSW index for hyperbolic embeddings
242
- CREATE INDEX IF NOT EXISTS idx_hyperbolic_hnsw
243
- ON claude_flow.hyperbolic_embeddings
244
- USING hnsw (euclidean_embedding ruvector_cosine_ops)
245
- WITH (m = 16, ef_construction = 100);
246
-
247
- -- HNSW index for graph nodes
248
- CREATE INDEX IF NOT EXISTS idx_graph_nodes_hnsw
249
- ON claude_flow.graph_nodes
250
- USING hnsw (embedding ruvector_cosine_ops)
251
- WITH (m = 16, ef_construction = 64);
252
-
253
- -- Additional indices for common queries
254
- CREATE INDEX IF NOT EXISTS idx_embeddings_namespace ON claude_flow.embeddings(namespace);
255
- CREATE INDEX IF NOT EXISTS idx_memory_entries_namespace ON claude_flow.memory_entries(namespace);
256
- CREATE INDEX IF NOT EXISTS idx_memory_entries_key ON claude_flow.memory_entries(key);
257
-
258
- -- ============================================
259
- -- PART 4: CORE SEARCH FUNCTIONS
260
- -- ============================================
261
-
262
- -- Semantic similarity search using RuVector HNSW
263
- CREATE OR REPLACE FUNCTION claude_flow.search_similar(
264
- query_embedding ruvector(384),
265
- limit_count INT DEFAULT 10,
266
- min_similarity FLOAT DEFAULT 0.5
267
- )
268
- RETURNS TABLE (
269
- id UUID,
270
- content TEXT,
271
- similarity FLOAT,
272
- metadata JSONB
273
- ) AS $$
274
- BEGIN
275
- RETURN QUERY
276
- SELECT
277
- e.id,
278
- e.content,
279
- (1 - (e.embedding <=> query_embedding))::FLOAT AS similarity,
280
- e.metadata
281
- FROM claude_flow.embeddings e
282
- WHERE e.embedding IS NOT NULL
283
- AND (1 - (e.embedding <=> query_embedding)) >= min_similarity
284
- ORDER BY e.embedding <=> query_embedding
285
- LIMIT limit_count;
286
- END;
287
- $$ LANGUAGE plpgsql STABLE;
288
-
289
- -- Memory search with namespace filtering
290
- CREATE OR REPLACE FUNCTION claude_flow.search_memory(
291
- query_embedding ruvector(384),
292
- namespace_filter VARCHAR(100) DEFAULT NULL,
293
- limit_count INT DEFAULT 10,
294
- min_similarity FLOAT DEFAULT 0.5
295
- )
296
- RETURNS TABLE (
297
- id UUID,
298
- key VARCHAR(255),
299
- value TEXT,
300
- namespace VARCHAR(100),
301
- similarity FLOAT,
302
- metadata JSONB
303
- ) AS $$
304
- BEGIN
305
- RETURN QUERY
306
- SELECT
307
- m.id,
308
- m.key,
309
- m.value,
310
- m.namespace,
311
- (1 - (m.embedding <=> query_embedding))::FLOAT AS similarity,
312
- m.metadata
313
- FROM claude_flow.memory_entries m
314
- WHERE m.embedding IS NOT NULL
315
- AND (1 - (m.embedding <=> query_embedding)) >= min_similarity
316
- AND (namespace_filter IS NULL OR m.namespace = namespace_filter)
317
- AND (m.ttl IS NULL OR m.ttl > NOW())
318
- ORDER BY m.embedding <=> query_embedding
319
- LIMIT limit_count;
320
- END;
321
- $$ LANGUAGE plpgsql STABLE;
322
-
323
- -- Pattern search with type filtering
324
- CREATE OR REPLACE FUNCTION claude_flow.search_patterns(
325
- query_embedding ruvector(384),
326
- pattern_type_filter VARCHAR(50) DEFAULT NULL,
327
- limit_count INT DEFAULT 10,
328
- min_confidence FLOAT DEFAULT 0.5
329
- )
330
- RETURNS TABLE (
331
- id UUID,
332
- name VARCHAR(255),
333
- description TEXT,
334
- similarity FLOAT,
335
- confidence FLOAT,
336
- metadata JSONB
337
- ) AS $$
338
- BEGIN
339
- RETURN QUERY
340
- SELECT
341
- p.id,
342
- p.name,
343
- p.description,
344
- (1 - (p.embedding <=> query_embedding))::FLOAT AS similarity,
345
- p.confidence,
346
- p.metadata
347
- FROM claude_flow.patterns p
348
- WHERE p.embedding IS NOT NULL
349
- AND p.confidence >= min_confidence
350
- AND (pattern_type_filter IS NULL OR p.pattern_type = pattern_type_filter)
351
- ORDER BY p.embedding <=> query_embedding
352
- LIMIT limit_count;
353
- END;
354
- $$ LANGUAGE plpgsql STABLE;
355
-
356
- -- Agent routing by expertise similarity
357
- CREATE OR REPLACE FUNCTION claude_flow.find_agents(
358
- query_embedding ruvector(384),
359
- agent_type_filter VARCHAR(50) DEFAULT NULL,
360
- limit_count INT DEFAULT 5
361
- )
362
- RETURNS TABLE (
363
- agent_id VARCHAR(255),
364
- agent_type VARCHAR(50),
365
- similarity FLOAT,
366
- state JSONB
367
- ) AS $$
368
- BEGIN
369
- RETURN QUERY
370
- SELECT
371
- a.agent_id,
372
- a.agent_type,
373
- (1 - (a.memory_embedding <=> query_embedding))::FLOAT AS similarity,
374
- a.state
375
- FROM claude_flow.agents a
376
- WHERE a.memory_embedding IS NOT NULL
377
- AND (agent_type_filter IS NULL OR a.agent_type = agent_type_filter)
378
- ORDER BY a.memory_embedding <=> query_embedding
379
- LIMIT limit_count;
380
- END;
381
- $$ LANGUAGE plpgsql STABLE;
382
-
383
- -- ============================================
384
- -- PART 5: HYPERBOLIC OPERATIONS
385
- -- ============================================
386
-
387
- -- Convert Euclidean to Poincaré embedding
388
- CREATE OR REPLACE FUNCTION claude_flow.to_poincare(
389
- euclidean real[],
390
- curvature FLOAT DEFAULT -1.0
391
- )
392
- RETURNS real[] AS $$
393
- BEGIN
394
- RETURN ruvector_exp_map(ARRAY_FILL(0.0::real, ARRAY[array_length(euclidean, 1)]), euclidean, curvature);
395
- END;
396
- $$ LANGUAGE plpgsql IMMUTABLE;
397
-
398
- -- Poincaré distance (geodesic)
399
- CREATE OR REPLACE FUNCTION claude_flow.poincare_distance(
400
- x real[],
401
- y real[],
402
- curvature FLOAT DEFAULT -1.0
403
- )
404
- RETURNS FLOAT AS $$
405
- BEGIN
406
- RETURN ruvector_poincare_distance(x, y, curvature);
407
- END;
408
- $$ LANGUAGE plpgsql IMMUTABLE;
409
-
410
- -- Hyperbolic search in Poincaré ball
411
- CREATE OR REPLACE FUNCTION claude_flow.hyperbolic_search(
412
- query ruvector(384),
413
- limit_count INT DEFAULT 10,
414
- curvature FLOAT DEFAULT -1.0
415
- )
416
- RETURNS TABLE (
417
- id UUID,
418
- content TEXT,
419
- euclidean_dist FLOAT,
420
- hyperbolic_dist FLOAT,
421
- hierarchy_level INT,
422
- metadata JSONB
423
- ) AS $$
424
- DECLARE
425
- query_arr real[];
426
- query_poincare real[];
427
- BEGIN
428
- -- Convert query to array and then to Poincaré
429
- SELECT array_agg(x::real ORDER BY ordinality) INTO query_arr
430
- FROM unnest(string_to_array(trim(both '[]' from query::text), ',')) WITH ORDINALITY AS t(x, ordinality);
431
-
432
- query_poincare := claude_flow.to_poincare(query_arr, curvature);
433
-
434
- RETURN QUERY
435
- SELECT
436
- he.id,
437
- he.content,
438
- (he.euclidean_embedding <-> query)::FLOAT AS euc_dist,
439
- COALESCE(ruvector_poincare_distance(he.poincare_embedding, query_poincare, curvature), 999.0)::FLOAT AS hyp_dist,
440
- he.hierarchy_level,
441
- he.metadata
442
- FROM claude_flow.hyperbolic_embeddings he
443
- WHERE he.euclidean_embedding IS NOT NULL
444
- ORDER BY he.euclidean_embedding <-> query
445
- LIMIT limit_count;
446
- END;
447
- $$ LANGUAGE plpgsql STABLE;
448
-
449
- -- ============================================
450
- -- PART 6: UTILITY FUNCTIONS
451
- -- ============================================
452
-
453
- -- Get RuVector version info
454
- CREATE OR REPLACE FUNCTION claude_flow.ruvector_info()
455
- RETURNS TABLE (
456
- version TEXT,
457
- simd_info TEXT
458
- ) AS $$
459
- BEGIN
460
- RETURN QUERY
461
- SELECT ruvector_version(), ruvector_simd_info();
462
- END;
463
- $$ LANGUAGE plpgsql STABLE;
464
-
465
- -- Cosine similarity helper (converts cosine distance to similarity)
466
- CREATE OR REPLACE FUNCTION claude_flow.cosine_similarity(
467
- a ruvector,
468
- b ruvector
469
- )
470
- RETURNS FLOAT AS $$
471
- BEGIN
472
- RETURN (1 - (a <=> b))::FLOAT;
473
- END;
474
- $$ LANGUAGE plpgsql IMMUTABLE;
475
-
476
- -- L2 distance helper
477
- CREATE OR REPLACE FUNCTION claude_flow.l2_distance(
478
- a ruvector,
479
- b ruvector
480
- )
481
- RETURNS FLOAT AS $$
482
- BEGIN
483
- RETURN (a <-> b)::FLOAT;
484
- END;
485
- $$ LANGUAGE plpgsql IMMUTABLE;
486
-
487
- -- Upsert memory entry
488
- CREATE OR REPLACE FUNCTION claude_flow.upsert_memory(
489
- p_key VARCHAR(255),
490
- p_value TEXT,
491
- p_embedding ruvector(384) DEFAULT NULL,
492
- p_namespace VARCHAR(100) DEFAULT 'default',
493
- p_metadata JSONB DEFAULT '{}',
494
- p_ttl TIMESTAMPTZ DEFAULT NULL
495
- )
496
- RETURNS UUID AS $$
497
- DECLARE
498
- v_id UUID;
499
- BEGIN
500
- INSERT INTO claude_flow.memory_entries (key, value, embedding, namespace, metadata, ttl, updated_at)
501
- VALUES (p_key, p_value, p_embedding, p_namespace, p_metadata, p_ttl, NOW())
502
- ON CONFLICT (key, namespace) DO UPDATE SET
503
- value = EXCLUDED.value,
504
- embedding = COALESCE(EXCLUDED.embedding, claude_flow.memory_entries.embedding),
505
- metadata = EXCLUDED.metadata,
506
- ttl = EXCLUDED.ttl,
507
- updated_at = NOW()
508
- RETURNING id INTO v_id;
509
-
510
- RETURN v_id;
511
- END;
512
- $$ LANGUAGE plpgsql;
513
-
514
- -- ============================================
515
- -- COMPLETION
516
- -- ============================================
517
-
518
- DO $$
519
- DECLARE
520
- v_version TEXT;
521
- v_simd TEXT;
522
- BEGIN
523
- SELECT ruvector_version() INTO v_version;
524
- SELECT ruvector_simd_info() INTO v_simd;
525
-
526
- RAISE NOTICE '';
527
- RAISE NOTICE '============================================';
528
- RAISE NOTICE 'RuVector PostgreSQL Initialization Complete!';
529
- RAISE NOTICE '============================================';
530
- RAISE NOTICE '';
531
- RAISE NOTICE 'RuVector Version: %', v_version;
532
- RAISE NOTICE 'SIMD: %', v_simd;
533
- RAISE NOTICE '';
534
- RAISE NOTICE 'Schema: claude_flow';
535
- RAISE NOTICE 'Tables: embeddings, patterns, agents, trajectories,';
536
- RAISE NOTICE ' memory_entries, hyperbolic_embeddings,';
537
- RAISE NOTICE ' graph_nodes, graph_edges';
538
- RAISE NOTICE 'Indices: 6 HNSW indices + 3 B-tree indices';
539
- RAISE NOTICE '';
540
- RAISE NOTICE 'Key Functions:';
541
- RAISE NOTICE ' - claude_flow.search_similar(embedding, limit, min_sim)';
542
- RAISE NOTICE ' - claude_flow.search_memory(embedding, namespace, limit)';
543
- RAISE NOTICE ' - claude_flow.search_patterns(embedding, type, limit)';
544
- RAISE NOTICE ' - claude_flow.find_agents(embedding, type, limit)';
545
- RAISE NOTICE ' - claude_flow.hyperbolic_search(embedding, limit, curvature)';
546
- RAISE NOTICE ' - claude_flow.upsert_memory(key, value, embedding, namespace)';
547
- RAISE NOTICE '';
548
- RAISE NOTICE 'Operators: <=> (cosine), <-> (L2), <#> (neg inner product)';
549
- RAISE NOTICE '';
550
- END $$;
75
+ const INIT_SQL_TEMPLATE = `-- ============================================
76
+ -- RUVECTOR POSTGRESQL INITIALIZATION SCRIPT
77
+ -- ============================================
78
+ --
79
+ -- This script initializes RuVector PostgreSQL extension
80
+ -- from ruvnet/ruvector-postgres with Claude-Flow V3 integration.
81
+ --
82
+ -- RuVector provides 77+ SQL functions including:
83
+ -- - Vector similarity search (HNSW with SIMD)
84
+ -- - Hyperbolic embeddings (Poincaré/Lorentz)
85
+ -- - Graph operations (Cypher queries)
86
+ -- - Agent routing and learning
87
+ --
88
+ -- Performance: ~61µs latency, 16,400 QPS
89
+
90
+ -- ============================================
91
+ -- PART 1: EXTENSION AND SCHEMA SETUP
92
+ -- ============================================
93
+
94
+ -- IMPORTANT: RuVector requires explicit VERSION
95
+ -- The control file says 2.0.0 but only 0.1.0 SQL exists
96
+ CREATE EXTENSION IF NOT EXISTS ruvector VERSION '0.1.0';
97
+
98
+ -- Enable additional required extensions
99
+ CREATE EXTENSION IF NOT EXISTS pgcrypto;
100
+
101
+ -- Create the claude_flow schema
102
+ CREATE SCHEMA IF NOT EXISTS claude_flow;
103
+
104
+ -- Grant permissions
105
+ GRANT ALL ON SCHEMA claude_flow TO claude;
106
+
107
+ -- Set search path
108
+ SET search_path TO claude_flow, public;
109
+
110
+ -- ============================================
111
+ -- PART 2: CORE TABLES
112
+ -- ============================================
113
+
114
+ -- Embeddings table with RuVector vector type (384-dim for all-MiniLM-L6-v2)
115
+ CREATE TABLE IF NOT EXISTS claude_flow.embeddings (
116
+ id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
117
+ content TEXT NOT NULL,
118
+ embedding ruvector(384),
119
+ metadata JSONB DEFAULT '{}',
120
+ namespace VARCHAR(100) DEFAULT 'default',
121
+ created_at TIMESTAMPTZ DEFAULT NOW(),
122
+ updated_at TIMESTAMPTZ DEFAULT NOW()
123
+ );
124
+
125
+ -- Patterns table for learned patterns (ReasoningBank)
126
+ CREATE TABLE IF NOT EXISTS claude_flow.patterns (
127
+ id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
128
+ name VARCHAR(255) NOT NULL,
129
+ description TEXT,
130
+ embedding ruvector(384),
131
+ pattern_type VARCHAR(50),
132
+ confidence FLOAT DEFAULT 0.5,
133
+ success_count INT DEFAULT 0,
134
+ failure_count INT DEFAULT 0,
135
+ ewc_importance FLOAT DEFAULT 1.0,
136
+ metadata JSONB DEFAULT '{}',
137
+ created_at TIMESTAMPTZ DEFAULT NOW()
138
+ );
139
+
140
+ -- Agents table for multi-agent memory coordination
141
+ CREATE TABLE IF NOT EXISTS claude_flow.agents (
142
+ id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
143
+ agent_id VARCHAR(255) NOT NULL UNIQUE,
144
+ agent_type VARCHAR(50),
145
+ state JSONB DEFAULT '{}',
146
+ memory_embedding ruvector(384),
147
+ last_active TIMESTAMPTZ DEFAULT NOW(),
148
+ created_at TIMESTAMPTZ DEFAULT NOW()
149
+ );
150
+
151
+ -- Trajectories table for SONA reinforcement learning
152
+ CREATE TABLE IF NOT EXISTS claude_flow.trajectories (
153
+ id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
154
+ trajectory_id VARCHAR(255) NOT NULL UNIQUE,
155
+ agent_type VARCHAR(50),
156
+ task_description TEXT,
157
+ status VARCHAR(20) DEFAULT 'in_progress',
158
+ steps JSONB DEFAULT '[]',
159
+ outcome VARCHAR(20),
160
+ quality_score FLOAT,
161
+ started_at TIMESTAMPTZ DEFAULT NOW(),
162
+ ended_at TIMESTAMPTZ
163
+ );
164
+
165
+ -- Memory entries table (main storage for Claude-Flow memory)
166
+ CREATE TABLE IF NOT EXISTS claude_flow.memory_entries (
167
+ id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
168
+ key VARCHAR(255) NOT NULL,
169
+ value TEXT NOT NULL,
170
+ embedding ruvector(384),
171
+ namespace VARCHAR(100) DEFAULT 'default',
172
+ metadata JSONB DEFAULT '{}',
173
+ ttl TIMESTAMPTZ,
174
+ created_at TIMESTAMPTZ DEFAULT NOW(),
175
+ updated_at TIMESTAMPTZ DEFAULT NOW(),
176
+ UNIQUE(key, namespace)
177
+ );
178
+
179
+ -- Hyperbolic embeddings for hierarchical data
180
+ CREATE TABLE IF NOT EXISTS claude_flow.hyperbolic_embeddings (
181
+ id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
182
+ content TEXT NOT NULL,
183
+ euclidean_embedding ruvector(384),
184
+ poincare_embedding real[], -- Array for hyperbolic operations
185
+ curvature FLOAT DEFAULT -1.0,
186
+ hierarchy_level INT DEFAULT 0,
187
+ parent_id UUID REFERENCES claude_flow.hyperbolic_embeddings(id),
188
+ metadata JSONB DEFAULT '{}',
189
+ created_at TIMESTAMPTZ DEFAULT NOW()
190
+ );
191
+
192
+ -- Graph nodes for GNN operations
193
+ CREATE TABLE IF NOT EXISTS claude_flow.graph_nodes (
194
+ id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
195
+ node_id VARCHAR(255) NOT NULL UNIQUE,
196
+ node_type VARCHAR(50),
197
+ embedding ruvector(384),
198
+ features JSONB DEFAULT '{}',
199
+ created_at TIMESTAMPTZ DEFAULT NOW()
200
+ );
201
+
202
+ -- Graph edges for message passing
203
+ CREATE TABLE IF NOT EXISTS claude_flow.graph_edges (
204
+ id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
205
+ source_id UUID REFERENCES claude_flow.graph_nodes(id),
206
+ target_id UUID REFERENCES claude_flow.graph_nodes(id),
207
+ edge_type VARCHAR(50),
208
+ weight FLOAT DEFAULT 1.0,
209
+ metadata JSONB DEFAULT '{}',
210
+ created_at TIMESTAMPTZ DEFAULT NOW()
211
+ );
212
+
213
+ -- ============================================
214
+ -- PART 3: HNSW INDICES (150x-12,500x faster)
215
+ -- ============================================
216
+
217
+ -- HNSW index for embeddings (cosine distance)
218
+ CREATE INDEX IF NOT EXISTS idx_embeddings_hnsw
219
+ ON claude_flow.embeddings
220
+ USING hnsw (embedding ruvector_cosine_ops)
221
+ WITH (m = 16, ef_construction = 100);
222
+
223
+ -- HNSW index for patterns
224
+ CREATE INDEX IF NOT EXISTS idx_patterns_hnsw
225
+ ON claude_flow.patterns
226
+ USING hnsw (embedding ruvector_cosine_ops)
227
+ WITH (m = 16, ef_construction = 100);
228
+
229
+ -- HNSW index for agent memory
230
+ CREATE INDEX IF NOT EXISTS idx_agents_hnsw
231
+ ON claude_flow.agents
232
+ USING hnsw (memory_embedding ruvector_cosine_ops)
233
+ WITH (m = 16, ef_construction = 64);
234
+
235
+ -- HNSW index for memory entries
236
+ CREATE INDEX IF NOT EXISTS idx_memory_entries_hnsw
237
+ ON claude_flow.memory_entries
238
+ USING hnsw (embedding ruvector_cosine_ops)
239
+ WITH (m = 16, ef_construction = 100);
240
+
241
+ -- HNSW index for hyperbolic embeddings
242
+ CREATE INDEX IF NOT EXISTS idx_hyperbolic_hnsw
243
+ ON claude_flow.hyperbolic_embeddings
244
+ USING hnsw (euclidean_embedding ruvector_cosine_ops)
245
+ WITH (m = 16, ef_construction = 100);
246
+
247
+ -- HNSW index for graph nodes
248
+ CREATE INDEX IF NOT EXISTS idx_graph_nodes_hnsw
249
+ ON claude_flow.graph_nodes
250
+ USING hnsw (embedding ruvector_cosine_ops)
251
+ WITH (m = 16, ef_construction = 64);
252
+
253
+ -- Additional indices for common queries
254
+ CREATE INDEX IF NOT EXISTS idx_embeddings_namespace ON claude_flow.embeddings(namespace);
255
+ CREATE INDEX IF NOT EXISTS idx_memory_entries_namespace ON claude_flow.memory_entries(namespace);
256
+ CREATE INDEX IF NOT EXISTS idx_memory_entries_key ON claude_flow.memory_entries(key);
257
+
258
+ -- ============================================
259
+ -- PART 4: CORE SEARCH FUNCTIONS
260
+ -- ============================================
261
+
262
+ -- Semantic similarity search using RuVector HNSW
263
+ CREATE OR REPLACE FUNCTION claude_flow.search_similar(
264
+ query_embedding ruvector(384),
265
+ limit_count INT DEFAULT 10,
266
+ min_similarity FLOAT DEFAULT 0.5
267
+ )
268
+ RETURNS TABLE (
269
+ id UUID,
270
+ content TEXT,
271
+ similarity FLOAT,
272
+ metadata JSONB
273
+ ) AS $$
274
+ BEGIN
275
+ RETURN QUERY
276
+ SELECT
277
+ e.id,
278
+ e.content,
279
+ (1 - (e.embedding <=> query_embedding))::FLOAT AS similarity,
280
+ e.metadata
281
+ FROM claude_flow.embeddings e
282
+ WHERE e.embedding IS NOT NULL
283
+ AND (1 - (e.embedding <=> query_embedding)) >= min_similarity
284
+ ORDER BY e.embedding <=> query_embedding
285
+ LIMIT limit_count;
286
+ END;
287
+ $$ LANGUAGE plpgsql STABLE;
288
+
289
+ -- Memory search with namespace filtering
290
+ CREATE OR REPLACE FUNCTION claude_flow.search_memory(
291
+ query_embedding ruvector(384),
292
+ namespace_filter VARCHAR(100) DEFAULT NULL,
293
+ limit_count INT DEFAULT 10,
294
+ min_similarity FLOAT DEFAULT 0.5
295
+ )
296
+ RETURNS TABLE (
297
+ id UUID,
298
+ key VARCHAR(255),
299
+ value TEXT,
300
+ namespace VARCHAR(100),
301
+ similarity FLOAT,
302
+ metadata JSONB
303
+ ) AS $$
304
+ BEGIN
305
+ RETURN QUERY
306
+ SELECT
307
+ m.id,
308
+ m.key,
309
+ m.value,
310
+ m.namespace,
311
+ (1 - (m.embedding <=> query_embedding))::FLOAT AS similarity,
312
+ m.metadata
313
+ FROM claude_flow.memory_entries m
314
+ WHERE m.embedding IS NOT NULL
315
+ AND (1 - (m.embedding <=> query_embedding)) >= min_similarity
316
+ AND (namespace_filter IS NULL OR m.namespace = namespace_filter)
317
+ AND (m.ttl IS NULL OR m.ttl > NOW())
318
+ ORDER BY m.embedding <=> query_embedding
319
+ LIMIT limit_count;
320
+ END;
321
+ $$ LANGUAGE plpgsql STABLE;
322
+
323
+ -- Pattern search with type filtering
324
+ CREATE OR REPLACE FUNCTION claude_flow.search_patterns(
325
+ query_embedding ruvector(384),
326
+ pattern_type_filter VARCHAR(50) DEFAULT NULL,
327
+ limit_count INT DEFAULT 10,
328
+ min_confidence FLOAT DEFAULT 0.5
329
+ )
330
+ RETURNS TABLE (
331
+ id UUID,
332
+ name VARCHAR(255),
333
+ description TEXT,
334
+ similarity FLOAT,
335
+ confidence FLOAT,
336
+ metadata JSONB
337
+ ) AS $$
338
+ BEGIN
339
+ RETURN QUERY
340
+ SELECT
341
+ p.id,
342
+ p.name,
343
+ p.description,
344
+ (1 - (p.embedding <=> query_embedding))::FLOAT AS similarity,
345
+ p.confidence,
346
+ p.metadata
347
+ FROM claude_flow.patterns p
348
+ WHERE p.embedding IS NOT NULL
349
+ AND p.confidence >= min_confidence
350
+ AND (pattern_type_filter IS NULL OR p.pattern_type = pattern_type_filter)
351
+ ORDER BY p.embedding <=> query_embedding
352
+ LIMIT limit_count;
353
+ END;
354
+ $$ LANGUAGE plpgsql STABLE;
355
+
356
+ -- Agent routing by expertise similarity
357
+ CREATE OR REPLACE FUNCTION claude_flow.find_agents(
358
+ query_embedding ruvector(384),
359
+ agent_type_filter VARCHAR(50) DEFAULT NULL,
360
+ limit_count INT DEFAULT 5
361
+ )
362
+ RETURNS TABLE (
363
+ agent_id VARCHAR(255),
364
+ agent_type VARCHAR(50),
365
+ similarity FLOAT,
366
+ state JSONB
367
+ ) AS $$
368
+ BEGIN
369
+ RETURN QUERY
370
+ SELECT
371
+ a.agent_id,
372
+ a.agent_type,
373
+ (1 - (a.memory_embedding <=> query_embedding))::FLOAT AS similarity,
374
+ a.state
375
+ FROM claude_flow.agents a
376
+ WHERE a.memory_embedding IS NOT NULL
377
+ AND (agent_type_filter IS NULL OR a.agent_type = agent_type_filter)
378
+ ORDER BY a.memory_embedding <=> query_embedding
379
+ LIMIT limit_count;
380
+ END;
381
+ $$ LANGUAGE plpgsql STABLE;
382
+
383
+ -- ============================================
384
+ -- PART 5: HYPERBOLIC OPERATIONS
385
+ -- ============================================
386
+
387
+ -- Convert Euclidean to Poincaré embedding
388
+ CREATE OR REPLACE FUNCTION claude_flow.to_poincare(
389
+ euclidean real[],
390
+ curvature FLOAT DEFAULT -1.0
391
+ )
392
+ RETURNS real[] AS $$
393
+ BEGIN
394
+ RETURN ruvector_exp_map(ARRAY_FILL(0.0::real, ARRAY[array_length(euclidean, 1)]), euclidean, curvature);
395
+ END;
396
+ $$ LANGUAGE plpgsql IMMUTABLE;
397
+
398
+ -- Poincaré distance (geodesic)
399
+ CREATE OR REPLACE FUNCTION claude_flow.poincare_distance(
400
+ x real[],
401
+ y real[],
402
+ curvature FLOAT DEFAULT -1.0
403
+ )
404
+ RETURNS FLOAT AS $$
405
+ BEGIN
406
+ RETURN ruvector_poincare_distance(x, y, curvature);
407
+ END;
408
+ $$ LANGUAGE plpgsql IMMUTABLE;
409
+
410
+ -- Hyperbolic search in Poincaré ball
411
+ CREATE OR REPLACE FUNCTION claude_flow.hyperbolic_search(
412
+ query ruvector(384),
413
+ limit_count INT DEFAULT 10,
414
+ curvature FLOAT DEFAULT -1.0
415
+ )
416
+ RETURNS TABLE (
417
+ id UUID,
418
+ content TEXT,
419
+ euclidean_dist FLOAT,
420
+ hyperbolic_dist FLOAT,
421
+ hierarchy_level INT,
422
+ metadata JSONB
423
+ ) AS $$
424
+ DECLARE
425
+ query_arr real[];
426
+ query_poincare real[];
427
+ BEGIN
428
+ -- Convert query to array and then to Poincaré
429
+ SELECT array_agg(x::real ORDER BY ordinality) INTO query_arr
430
+ FROM unnest(string_to_array(trim(both '[]' from query::text), ',')) WITH ORDINALITY AS t(x, ordinality);
431
+
432
+ query_poincare := claude_flow.to_poincare(query_arr, curvature);
433
+
434
+ RETURN QUERY
435
+ SELECT
436
+ he.id,
437
+ he.content,
438
+ (he.euclidean_embedding <-> query)::FLOAT AS euc_dist,
439
+ COALESCE(ruvector_poincare_distance(he.poincare_embedding, query_poincare, curvature), 999.0)::FLOAT AS hyp_dist,
440
+ he.hierarchy_level,
441
+ he.metadata
442
+ FROM claude_flow.hyperbolic_embeddings he
443
+ WHERE he.euclidean_embedding IS NOT NULL
444
+ ORDER BY he.euclidean_embedding <-> query
445
+ LIMIT limit_count;
446
+ END;
447
+ $$ LANGUAGE plpgsql STABLE;
448
+
449
+ -- ============================================
450
+ -- PART 6: UTILITY FUNCTIONS
451
+ -- ============================================
452
+
453
+ -- Get RuVector version info
454
+ CREATE OR REPLACE FUNCTION claude_flow.ruvector_info()
455
+ RETURNS TABLE (
456
+ version TEXT,
457
+ simd_info TEXT
458
+ ) AS $$
459
+ BEGIN
460
+ RETURN QUERY
461
+ SELECT ruvector_version(), ruvector_simd_info();
462
+ END;
463
+ $$ LANGUAGE plpgsql STABLE;
464
+
465
+ -- Cosine similarity helper (converts cosine distance to similarity)
466
+ CREATE OR REPLACE FUNCTION claude_flow.cosine_similarity(
467
+ a ruvector,
468
+ b ruvector
469
+ )
470
+ RETURNS FLOAT AS $$
471
+ BEGIN
472
+ RETURN (1 - (a <=> b))::FLOAT;
473
+ END;
474
+ $$ LANGUAGE plpgsql IMMUTABLE;
475
+
476
+ -- L2 distance helper
477
+ CREATE OR REPLACE FUNCTION claude_flow.l2_distance(
478
+ a ruvector,
479
+ b ruvector
480
+ )
481
+ RETURNS FLOAT AS $$
482
+ BEGIN
483
+ RETURN (a <-> b)::FLOAT;
484
+ END;
485
+ $$ LANGUAGE plpgsql IMMUTABLE;
486
+
487
+ -- Upsert memory entry
488
+ CREATE OR REPLACE FUNCTION claude_flow.upsert_memory(
489
+ p_key VARCHAR(255),
490
+ p_value TEXT,
491
+ p_embedding ruvector(384) DEFAULT NULL,
492
+ p_namespace VARCHAR(100) DEFAULT 'default',
493
+ p_metadata JSONB DEFAULT '{}',
494
+ p_ttl TIMESTAMPTZ DEFAULT NULL
495
+ )
496
+ RETURNS UUID AS $$
497
+ DECLARE
498
+ v_id UUID;
499
+ BEGIN
500
+ INSERT INTO claude_flow.memory_entries (key, value, embedding, namespace, metadata, ttl, updated_at)
501
+ VALUES (p_key, p_value, p_embedding, p_namespace, p_metadata, p_ttl, NOW())
502
+ ON CONFLICT (key, namespace) DO UPDATE SET
503
+ value = EXCLUDED.value,
504
+ embedding = COALESCE(EXCLUDED.embedding, claude_flow.memory_entries.embedding),
505
+ metadata = EXCLUDED.metadata,
506
+ ttl = EXCLUDED.ttl,
507
+ updated_at = NOW()
508
+ RETURNING id INTO v_id;
509
+
510
+ RETURN v_id;
511
+ END;
512
+ $$ LANGUAGE plpgsql;
513
+
514
+ -- ============================================
515
+ -- COMPLETION
516
+ -- ============================================
517
+
518
+ DO $$
519
+ DECLARE
520
+ v_version TEXT;
521
+ v_simd TEXT;
522
+ BEGIN
523
+ SELECT ruvector_version() INTO v_version;
524
+ SELECT ruvector_simd_info() INTO v_simd;
525
+
526
+ RAISE NOTICE '';
527
+ RAISE NOTICE '============================================';
528
+ RAISE NOTICE 'RuVector PostgreSQL Initialization Complete!';
529
+ RAISE NOTICE '============================================';
530
+ RAISE NOTICE '';
531
+ RAISE NOTICE 'RuVector Version: %', v_version;
532
+ RAISE NOTICE 'SIMD: %', v_simd;
533
+ RAISE NOTICE '';
534
+ RAISE NOTICE 'Schema: claude_flow';
535
+ RAISE NOTICE 'Tables: embeddings, patterns, agents, trajectories,';
536
+ RAISE NOTICE ' memory_entries, hyperbolic_embeddings,';
537
+ RAISE NOTICE ' graph_nodes, graph_edges';
538
+ RAISE NOTICE 'Indices: 6 HNSW indices + 3 B-tree indices';
539
+ RAISE NOTICE '';
540
+ RAISE NOTICE 'Key Functions:';
541
+ RAISE NOTICE ' - claude_flow.search_similar(embedding, limit, min_sim)';
542
+ RAISE NOTICE ' - claude_flow.search_memory(embedding, namespace, limit)';
543
+ RAISE NOTICE ' - claude_flow.search_patterns(embedding, type, limit)';
544
+ RAISE NOTICE ' - claude_flow.find_agents(embedding, type, limit)';
545
+ RAISE NOTICE ' - claude_flow.hyperbolic_search(embedding, limit, curvature)';
546
+ RAISE NOTICE ' - claude_flow.upsert_memory(key, value, embedding, namespace)';
547
+ RAISE NOTICE '';
548
+ RAISE NOTICE 'Operators: <=> (cosine), <-> (L2), <#> (neg inner product)';
549
+ RAISE NOTICE '';
550
+ END $$;
551
551
  `;
552
552
  /**
553
553
  * README template
554
554
  */
555
- const README_TEMPLATE = `# RuVector PostgreSQL Setup
556
-
557
- This directory contains the Docker configuration for RuVector PostgreSQL with Claude-Flow V3.
558
-
559
- ## Quick Start
560
-
561
- \`\`\`bash
562
- # Start the container
563
- docker-compose up -d
564
-
565
- # Verify it's running
566
- docker-compose ps
567
-
568
- # Check RuVector version
569
- docker exec ruvector-postgres psql -U claude -d claude_flow -c "SELECT ruvector_version();"
570
- \`\`\`
571
-
572
- ## Connection Details
573
-
574
- | Setting | Value |
575
- |---------|-------|
576
- | Host | localhost |
577
- | Port | 5432 |
578
- | Database | claude_flow |
579
- | Username | claude |
580
- | Password | claude-flow-test |
581
- | Schema | claude_flow |
582
-
583
- ## RuVector Syntax
584
-
585
- ### Extension Installation
586
- \`\`\`sql
587
- -- IMPORTANT: Requires explicit version
588
- CREATE EXTENSION IF NOT EXISTS ruvector VERSION '0.1.0';
589
- \`\`\`
590
-
591
- ### Vector Type
592
- \`\`\`sql
593
- -- Use ruvector(384), NOT vector(384)
594
- CREATE TABLE embeddings (
595
- id UUID PRIMARY KEY,
596
- embedding ruvector(384)
597
- );
598
- \`\`\`
599
-
600
- ### Distance Operators
601
- | Operator | Description |
602
- |----------|-------------|
603
- | \`<=>\` | Cosine distance |
604
- | \`<->\` | L2 (Euclidean) distance |
605
- | \`<#>\` | Negative inner product |
606
-
607
- ### HNSW Index
608
- \`\`\`sql
609
- CREATE INDEX idx_embeddings_hnsw
610
- ON embeddings
611
- USING hnsw (embedding ruvector_cosine_ops)
612
- WITH (m = 16, ef_construction = 100);
613
- \`\`\`
614
-
615
- ## Import from sql.js/JSON
616
-
617
- \`\`\`bash
618
- # Export current Claude-Flow memory
619
- npx claude-flow memory list --format json > memory-export.json
620
-
621
- # Import to RuVector PostgreSQL
622
- npx claude-flow ruvector import --input memory-export.json
623
- \`\`\`
624
-
625
- ## pgAdmin (Optional)
626
-
627
- \`\`\`bash
628
- docker-compose --profile gui up -d
629
- \`\`\`
630
-
631
- Access at: http://localhost:5050
632
- - Email: admin@claude-flow.local
633
- - Password: admin
634
-
635
- ## Troubleshooting
636
-
637
- ### Extension creation fails
638
- Use explicit version: \`CREATE EXTENSION ruvector VERSION '0.1.0';\`
639
-
640
- ### Container won't start
641
- \`\`\`bash
642
- docker-compose logs postgres
643
- docker-compose down -v
644
- docker-compose up -d
645
- \`\`\`
646
-
647
- ## Learn More
648
- - [RuVector Docker Hub](https://hub.docker.com/r/ruvnet/ruvector-postgres)
649
- - [Claude-Flow Documentation](https://github.com/ruvnet/claude-flow)
555
+ const README_TEMPLATE = `# RuVector PostgreSQL Setup
556
+
557
+ This directory contains the Docker configuration for RuVector PostgreSQL with Claude-Flow V3.
558
+
559
+ ## Quick Start
560
+
561
+ \`\`\`bash
562
+ # Start the container
563
+ docker-compose up -d
564
+
565
+ # Verify it's running
566
+ docker-compose ps
567
+
568
+ # Check RuVector version
569
+ docker exec ruvector-postgres psql -U claude -d claude_flow -c "SELECT ruvector_version();"
570
+ \`\`\`
571
+
572
+ ## Connection Details
573
+
574
+ | Setting | Value |
575
+ |---------|-------|
576
+ | Host | localhost |
577
+ | Port | 5432 |
578
+ | Database | claude_flow |
579
+ | Username | claude |
580
+ | Password | claude-flow-test |
581
+ | Schema | claude_flow |
582
+
583
+ ## RuVector Syntax
584
+
585
+ ### Extension Installation
586
+ \`\`\`sql
587
+ -- IMPORTANT: Requires explicit version
588
+ CREATE EXTENSION IF NOT EXISTS ruvector VERSION '0.1.0';
589
+ \`\`\`
590
+
591
+ ### Vector Type
592
+ \`\`\`sql
593
+ -- Use ruvector(384), NOT vector(384)
594
+ CREATE TABLE embeddings (
595
+ id UUID PRIMARY KEY,
596
+ embedding ruvector(384)
597
+ );
598
+ \`\`\`
599
+
600
+ ### Distance Operators
601
+ | Operator | Description |
602
+ |----------|-------------|
603
+ | \`<=>\` | Cosine distance |
604
+ | \`<->\` | L2 (Euclidean) distance |
605
+ | \`<#>\` | Negative inner product |
606
+
607
+ ### HNSW Index
608
+ \`\`\`sql
609
+ CREATE INDEX idx_embeddings_hnsw
610
+ ON embeddings
611
+ USING hnsw (embedding ruvector_cosine_ops)
612
+ WITH (m = 16, ef_construction = 100);
613
+ \`\`\`
614
+
615
+ ## Import from sql.js/JSON
616
+
617
+ \`\`\`bash
618
+ # Export current Claude-Flow memory
619
+ npx claude-flow memory list --format json > memory-export.json
620
+
621
+ # Import to RuVector PostgreSQL
622
+ npx claude-flow ruvector import --input memory-export.json
623
+ \`\`\`
624
+
625
+ ## pgAdmin (Optional)
626
+
627
+ \`\`\`bash
628
+ docker-compose --profile gui up -d
629
+ \`\`\`
630
+
631
+ Access at: http://localhost:5050
632
+ - Email: admin@claude-flow.local
633
+ - Password: admin
634
+
635
+ ## Troubleshooting
636
+
637
+ ### Extension creation fails
638
+ Use explicit version: \`CREATE EXTENSION ruvector VERSION '0.1.0';\`
639
+
640
+ ### Container won't start
641
+ \`\`\`bash
642
+ docker-compose logs postgres
643
+ docker-compose down -v
644
+ docker-compose up -d
645
+ \`\`\`
646
+
647
+ ## Learn More
648
+ - [RuVector Docker Hub](https://hub.docker.com/r/ruvnet/ruvector-postgres)
649
+ - [Claude-Flow Documentation](https://github.com/ruvnet/claude-flow)
650
650
  `;
651
651
  /**
652
652
  * RuVector Setup command - outputs Docker files and SQL