agentdb 2.0.0-alpha.2 → 2.0.0-alpha.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (314) hide show
  1. package/dist/agentdb.min.js +4 -4
  2. package/dist/simulation/cli.js +0 -0
  3. package/dist/src/cli/agentdb-cli.d.ts.map +1 -1
  4. package/dist/src/cli/agentdb-cli.js +78 -0
  5. package/dist/src/cli/agentdb-cli.js.map +1 -1
  6. package/package.json +3 -3
  7. package/src/cli/agentdb-cli.ts +78 -0
  8. package/dist/agentdb-advanced.js +0 -2110
  9. package/dist/agentdb-advanced.min.js +0 -1
  10. package/dist/backends/GraphBackend.d.ts +0 -196
  11. package/dist/backends/GraphBackend.d.ts.map +0 -1
  12. package/dist/backends/GraphBackend.js +0 -33
  13. package/dist/backends/GraphBackend.js.map +0 -1
  14. package/dist/backends/LearningBackend.d.ts +0 -148
  15. package/dist/backends/LearningBackend.d.ts.map +0 -1
  16. package/dist/backends/LearningBackend.js +0 -27
  17. package/dist/backends/LearningBackend.js.map +0 -1
  18. package/dist/backends/VectorBackend.d.ts +0 -119
  19. package/dist/backends/VectorBackend.d.ts.map +0 -1
  20. package/dist/backends/VectorBackend.js +0 -14
  21. package/dist/backends/VectorBackend.js.map +0 -1
  22. package/dist/backends/detector.d.ts +0 -81
  23. package/dist/backends/detector.d.ts.map +0 -1
  24. package/dist/backends/detector.js +0 -192
  25. package/dist/backends/detector.js.map +0 -1
  26. package/dist/backends/factory.d.ts +0 -50
  27. package/dist/backends/factory.d.ts.map +0 -1
  28. package/dist/backends/factory.js +0 -161
  29. package/dist/backends/factory.js.map +0 -1
  30. package/dist/backends/graph/GraphDatabaseAdapter.d.ts +0 -139
  31. package/dist/backends/graph/GraphDatabaseAdapter.d.ts.map +0 -1
  32. package/dist/backends/graph/GraphDatabaseAdapter.js +0 -194
  33. package/dist/backends/graph/GraphDatabaseAdapter.js.map +0 -1
  34. package/dist/backends/hnswlib/HNSWLibBackend.d.ts +0 -92
  35. package/dist/backends/hnswlib/HNSWLibBackend.d.ts.map +0 -1
  36. package/dist/backends/hnswlib/HNSWLibBackend.js +0 -316
  37. package/dist/backends/hnswlib/HNSWLibBackend.js.map +0 -1
  38. package/dist/backends/hnswlib/index.d.ts +0 -7
  39. package/dist/backends/hnswlib/index.d.ts.map +0 -1
  40. package/dist/backends/hnswlib/index.js +0 -7
  41. package/dist/backends/hnswlib/index.js.map +0 -1
  42. package/dist/backends/index.d.ts +0 -14
  43. package/dist/backends/index.d.ts.map +0 -1
  44. package/dist/backends/index.js +0 -13
  45. package/dist/backends/index.js.map +0 -1
  46. package/dist/backends/ruvector/RuVectorBackend.d.ts +0 -75
  47. package/dist/backends/ruvector/RuVectorBackend.d.ts.map +0 -1
  48. package/dist/backends/ruvector/RuVectorBackend.js +0 -198
  49. package/dist/backends/ruvector/RuVectorBackend.js.map +0 -1
  50. package/dist/backends/ruvector/RuVectorLearning.d.ts +0 -104
  51. package/dist/backends/ruvector/RuVectorLearning.d.ts.map +0 -1
  52. package/dist/backends/ruvector/RuVectorLearning.js +0 -177
  53. package/dist/backends/ruvector/RuVectorLearning.js.map +0 -1
  54. package/dist/backends/ruvector/index.d.ts +0 -9
  55. package/dist/backends/ruvector/index.d.ts.map +0 -1
  56. package/dist/backends/ruvector/index.js +0 -8
  57. package/dist/backends/ruvector/index.js.map +0 -1
  58. package/dist/benchmarks/wasm-vector-benchmark.d.ts +0 -10
  59. package/dist/benchmarks/wasm-vector-benchmark.d.ts.map +0 -1
  60. package/dist/benchmarks/wasm-vector-benchmark.js +0 -196
  61. package/dist/benchmarks/wasm-vector-benchmark.js.map +0 -1
  62. package/dist/browser/AdvancedFeatures.d.ts +0 -144
  63. package/dist/browser/AdvancedFeatures.d.ts.map +0 -1
  64. package/dist/browser/AdvancedFeatures.js +0 -430
  65. package/dist/browser/AdvancedFeatures.js.map +0 -1
  66. package/dist/browser/HNSWIndex.d.ts +0 -117
  67. package/dist/browser/HNSWIndex.d.ts.map +0 -1
  68. package/dist/browser/HNSWIndex.js +0 -402
  69. package/dist/browser/HNSWIndex.js.map +0 -1
  70. package/dist/browser/ProductQuantization.d.ts +0 -107
  71. package/dist/browser/ProductQuantization.d.ts.map +0 -1
  72. package/dist/browser/ProductQuantization.js +0 -337
  73. package/dist/browser/ProductQuantization.js.map +0 -1
  74. package/dist/browser/browser/AdvancedFeatures.d.ts +0 -144
  75. package/dist/browser/browser/AdvancedFeatures.d.ts.map +0 -1
  76. package/dist/browser/browser/AdvancedFeatures.js +0 -427
  77. package/dist/browser/browser/HNSWIndex.d.ts +0 -117
  78. package/dist/browser/browser/HNSWIndex.d.ts.map +0 -1
  79. package/dist/browser/browser/HNSWIndex.js +0 -402
  80. package/dist/browser/browser/ProductQuantization.d.ts +0 -107
  81. package/dist/browser/browser/ProductQuantization.d.ts.map +0 -1
  82. package/dist/browser/browser/ProductQuantization.js +0 -348
  83. package/dist/browser/browser/index.d.ts +0 -223
  84. package/dist/browser/browser/index.d.ts.map +0 -1
  85. package/dist/browser/browser/index.js +0 -233
  86. package/dist/browser/index.d.ts +0 -223
  87. package/dist/browser/index.d.ts.map +0 -1
  88. package/dist/browser/index.js +0 -225
  89. package/dist/browser/index.js.map +0 -1
  90. package/dist/cli/agentdb-cli.d.ts +0 -154
  91. package/dist/cli/agentdb-cli.d.ts.map +0 -1
  92. package/dist/cli/agentdb-cli.js +0 -2273
  93. package/dist/cli/agentdb-cli.js.map +0 -1
  94. package/dist/cli/agentdb.db +0 -0
  95. package/dist/cli/commands/init.d.ts +0 -12
  96. package/dist/cli/commands/init.d.ts.map +0 -1
  97. package/dist/cli/commands/init.js +0 -115
  98. package/dist/cli/commands/init.js.map +0 -1
  99. package/dist/cli/commands/install-embeddings.d.ts +0 -10
  100. package/dist/cli/commands/install-embeddings.d.ts.map +0 -1
  101. package/dist/cli/commands/install-embeddings.js +0 -68
  102. package/dist/cli/commands/install-embeddings.js.map +0 -1
  103. package/dist/cli/commands/migrate.d.ts +0 -15
  104. package/dist/cli/commands/migrate.d.ts.map +0 -1
  105. package/dist/cli/commands/migrate.js +0 -425
  106. package/dist/cli/commands/migrate.js.map +0 -1
  107. package/dist/cli/commands/status.d.ts +0 -10
  108. package/dist/cli/commands/status.d.ts.map +0 -1
  109. package/dist/cli/commands/status.js +0 -129
  110. package/dist/cli/commands/status.js.map +0 -1
  111. package/dist/controllers/CausalMemoryGraph.d.ts +0 -126
  112. package/dist/controllers/CausalMemoryGraph.d.ts.map +0 -1
  113. package/dist/controllers/CausalMemoryGraph.js +0 -323
  114. package/dist/controllers/CausalMemoryGraph.js.map +0 -1
  115. package/dist/controllers/CausalRecall.d.ts +0 -139
  116. package/dist/controllers/CausalRecall.d.ts.map +0 -1
  117. package/dist/controllers/CausalRecall.js +0 -356
  118. package/dist/controllers/CausalRecall.js.map +0 -1
  119. package/dist/controllers/ContextSynthesizer.d.ts +0 -65
  120. package/dist/controllers/ContextSynthesizer.d.ts.map +0 -1
  121. package/dist/controllers/ContextSynthesizer.js +0 -208
  122. package/dist/controllers/ContextSynthesizer.js.map +0 -1
  123. package/dist/controllers/EmbeddingService.d.ts +0 -37
  124. package/dist/controllers/EmbeddingService.d.ts.map +0 -1
  125. package/dist/controllers/EmbeddingService.js +0 -136
  126. package/dist/controllers/EmbeddingService.js.map +0 -1
  127. package/dist/controllers/EnhancedEmbeddingService.d.ts +0 -50
  128. package/dist/controllers/EnhancedEmbeddingService.d.ts.map +0 -1
  129. package/dist/controllers/EnhancedEmbeddingService.js +0 -119
  130. package/dist/controllers/EnhancedEmbeddingService.js.map +0 -1
  131. package/dist/controllers/ExplainableRecall.d.ts +0 -163
  132. package/dist/controllers/ExplainableRecall.d.ts.map +0 -1
  133. package/dist/controllers/ExplainableRecall.js +0 -485
  134. package/dist/controllers/ExplainableRecall.js.map +0 -1
  135. package/dist/controllers/HNSWIndex.d.ts +0 -128
  136. package/dist/controllers/HNSWIndex.d.ts.map +0 -1
  137. package/dist/controllers/HNSWIndex.js +0 -361
  138. package/dist/controllers/HNSWIndex.js.map +0 -1
  139. package/dist/controllers/LearningSystem.d.ts +0 -195
  140. package/dist/controllers/LearningSystem.d.ts.map +0 -1
  141. package/dist/controllers/LearningSystem.js +0 -929
  142. package/dist/controllers/LearningSystem.js.map +0 -1
  143. package/dist/controllers/MMRDiversityRanker.d.ts +0 -50
  144. package/dist/controllers/MMRDiversityRanker.d.ts.map +0 -1
  145. package/dist/controllers/MMRDiversityRanker.js +0 -130
  146. package/dist/controllers/MMRDiversityRanker.js.map +0 -1
  147. package/dist/controllers/MetadataFilter.d.ts +0 -70
  148. package/dist/controllers/MetadataFilter.d.ts.map +0 -1
  149. package/dist/controllers/MetadataFilter.js +0 -243
  150. package/dist/controllers/MetadataFilter.js.map +0 -1
  151. package/dist/controllers/NightlyLearner.d.ts +0 -114
  152. package/dist/controllers/NightlyLearner.d.ts.map +0 -1
  153. package/dist/controllers/NightlyLearner.js +0 -394
  154. package/dist/controllers/NightlyLearner.js.map +0 -1
  155. package/dist/controllers/QUICClient.d.ts +0 -109
  156. package/dist/controllers/QUICClient.d.ts.map +0 -1
  157. package/dist/controllers/QUICClient.js +0 -299
  158. package/dist/controllers/QUICClient.js.map +0 -1
  159. package/dist/controllers/QUICServer.d.ts +0 -121
  160. package/dist/controllers/QUICServer.d.ts.map +0 -1
  161. package/dist/controllers/QUICServer.js +0 -383
  162. package/dist/controllers/QUICServer.js.map +0 -1
  163. package/dist/controllers/ReasoningBank.d.ts +0 -196
  164. package/dist/controllers/ReasoningBank.d.ts.map +0 -1
  165. package/dist/controllers/ReasoningBank.js +0 -494
  166. package/dist/controllers/ReasoningBank.js.map +0 -1
  167. package/dist/controllers/ReflexionMemory.d.ts +0 -125
  168. package/dist/controllers/ReflexionMemory.d.ts.map +0 -1
  169. package/dist/controllers/ReflexionMemory.js +0 -521
  170. package/dist/controllers/ReflexionMemory.js.map +0 -1
  171. package/dist/controllers/SkillLibrary.d.ts +0 -149
  172. package/dist/controllers/SkillLibrary.d.ts.map +0 -1
  173. package/dist/controllers/SkillLibrary.js +0 -547
  174. package/dist/controllers/SkillLibrary.js.map +0 -1
  175. package/dist/controllers/SyncCoordinator.d.ts +0 -120
  176. package/dist/controllers/SyncCoordinator.d.ts.map +0 -1
  177. package/dist/controllers/SyncCoordinator.js +0 -441
  178. package/dist/controllers/SyncCoordinator.js.map +0 -1
  179. package/dist/controllers/WASMVectorSearch.d.ts +0 -89
  180. package/dist/controllers/WASMVectorSearch.d.ts.map +0 -1
  181. package/dist/controllers/WASMVectorSearch.js +0 -234
  182. package/dist/controllers/WASMVectorSearch.js.map +0 -1
  183. package/dist/controllers/frontier-index.d.ts +0 -14
  184. package/dist/controllers/frontier-index.d.ts.map +0 -1
  185. package/dist/controllers/frontier-index.js +0 -10
  186. package/dist/controllers/frontier-index.js.map +0 -1
  187. package/dist/controllers/index.d.ts +0 -30
  188. package/dist/controllers/index.d.ts.map +0 -1
  189. package/dist/controllers/index.js +0 -18
  190. package/dist/controllers/index.js.map +0 -1
  191. package/dist/db-fallback.d.ts +0 -26
  192. package/dist/db-fallback.d.ts.map +0 -1
  193. package/dist/db-fallback.js +0 -264
  194. package/dist/db-fallback.js.map +0 -1
  195. package/dist/db-test.d.ts +0 -13
  196. package/dist/db-test.d.ts.map +0 -1
  197. package/dist/db-test.js +0 -55
  198. package/dist/db-test.js.map +0 -1
  199. package/dist/db-unified.d.ts +0 -76
  200. package/dist/db-unified.d.ts.map +0 -1
  201. package/dist/db-unified.js +0 -278
  202. package/dist/db-unified.js.map +0 -1
  203. package/dist/examples/quic-sync-example.d.ts +0 -9
  204. package/dist/examples/quic-sync-example.d.ts.map +0 -1
  205. package/dist/examples/quic-sync-example.js +0 -169
  206. package/dist/examples/quic-sync-example.js.map +0 -1
  207. package/dist/examples/wasm-vector-usage.d.ts +0 -12
  208. package/dist/examples/wasm-vector-usage.d.ts.map +0 -1
  209. package/dist/examples/wasm-vector-usage.js +0 -190
  210. package/dist/examples/wasm-vector-usage.js.map +0 -1
  211. package/dist/index.d.ts +0 -28
  212. package/dist/index.d.ts.map +0 -1
  213. package/dist/index.js +0 -35
  214. package/dist/index.js.map +0 -1
  215. package/dist/malp/core/ccc.d.ts +0 -99
  216. package/dist/malp/core/ccc.d.ts.map +0 -1
  217. package/dist/malp/core/ccc.js +0 -181
  218. package/dist/malp/core/ccc.js.map +0 -1
  219. package/dist/malp/core/index.d.ts +0 -9
  220. package/dist/malp/core/index.d.ts.map +0 -1
  221. package/dist/malp/core/index.js +0 -9
  222. package/dist/malp/core/index.js.map +0 -1
  223. package/dist/malp/core/linalg.d.ts +0 -101
  224. package/dist/malp/core/linalg.d.ts.map +0 -1
  225. package/dist/malp/core/linalg.js +0 -278
  226. package/dist/malp/core/linalg.js.map +0 -1
  227. package/dist/malp/core/optimizer.d.ts +0 -68
  228. package/dist/malp/core/optimizer.d.ts.map +0 -1
  229. package/dist/malp/core/optimizer.js +0 -160
  230. package/dist/malp/core/optimizer.js.map +0 -1
  231. package/dist/malp/index.d.ts +0 -33
  232. package/dist/malp/index.d.ts.map +0 -1
  233. package/dist/malp/index.js +0 -37
  234. package/dist/malp/index.js.map +0 -1
  235. package/dist/malp/metrics/agreement.d.ts +0 -106
  236. package/dist/malp/metrics/agreement.d.ts.map +0 -1
  237. package/dist/malp/metrics/agreement.js +0 -199
  238. package/dist/malp/metrics/agreement.js.map +0 -1
  239. package/dist/malp/metrics/comparison.d.ts +0 -93
  240. package/dist/malp/metrics/comparison.d.ts.map +0 -1
  241. package/dist/malp/metrics/comparison.js +0 -256
  242. package/dist/malp/metrics/comparison.js.map +0 -1
  243. package/dist/malp/metrics/index.d.ts +0 -8
  244. package/dist/malp/metrics/index.d.ts.map +0 -1
  245. package/dist/malp/metrics/index.js +0 -8
  246. package/dist/malp/metrics/index.js.map +0 -1
  247. package/dist/malp/metrics/performance.d.ts +0 -61
  248. package/dist/malp/metrics/performance.d.ts.map +0 -1
  249. package/dist/malp/metrics/performance.js +0 -190
  250. package/dist/malp/metrics/performance.js.map +0 -1
  251. package/dist/malp/models/index.d.ts +0 -7
  252. package/dist/malp/models/index.d.ts.map +0 -1
  253. package/dist/malp/models/index.js +0 -7
  254. package/dist/malp/models/index.js.map +0 -1
  255. package/dist/malp/models/malp.d.ts +0 -116
  256. package/dist/malp/models/malp.d.ts.map +0 -1
  257. package/dist/malp/models/malp.js +0 -206
  258. package/dist/malp/models/malp.js.map +0 -1
  259. package/dist/malp/models/regressor.d.ts +0 -80
  260. package/dist/malp/models/regressor.d.ts.map +0 -1
  261. package/dist/malp/models/regressor.js +0 -229
  262. package/dist/malp/models/regressor.js.map +0 -1
  263. package/dist/malp/reasoningbank_validator.d.ts +0 -187
  264. package/dist/malp/reasoningbank_validator.d.ts.map +0 -1
  265. package/dist/malp/reasoningbank_validator.js +0 -246
  266. package/dist/malp/reasoningbank_validator.js.map +0 -1
  267. package/dist/malp/wasm_bindings.d.ts +0 -344
  268. package/dist/malp/wasm_bindings.d.ts.map +0 -1
  269. package/dist/malp/wasm_bindings.js +0 -9
  270. package/dist/malp/wasm_bindings.js.map +0 -1
  271. package/dist/mcp/agentdb-mcp-server.d.ts +0 -8
  272. package/dist/mcp/agentdb-mcp-server.d.ts.map +0 -1
  273. package/dist/mcp/agentdb-mcp-server.js +0 -2116
  274. package/dist/mcp/agentdb-mcp-server.js.map +0 -1
  275. package/dist/mcp/learning-tools-handlers.d.ts +0 -16
  276. package/dist/mcp/learning-tools-handlers.d.ts.map +0 -1
  277. package/dist/mcp/learning-tools-handlers.js +0 -105
  278. package/dist/mcp/learning-tools-handlers.js.map +0 -1
  279. package/dist/optimizations/BatchOperations.d.ts +0 -109
  280. package/dist/optimizations/BatchOperations.d.ts.map +0 -1
  281. package/dist/optimizations/BatchOperations.js +0 -407
  282. package/dist/optimizations/BatchOperations.js.map +0 -1
  283. package/dist/optimizations/QueryOptimizer.d.ts +0 -83
  284. package/dist/optimizations/QueryOptimizer.d.ts.map +0 -1
  285. package/dist/optimizations/QueryOptimizer.js +0 -228
  286. package/dist/optimizations/QueryOptimizer.js.map +0 -1
  287. package/dist/optimizations/ToolCache.d.ts +0 -137
  288. package/dist/optimizations/ToolCache.d.ts.map +0 -1
  289. package/dist/optimizations/ToolCache.js +0 -281
  290. package/dist/optimizations/ToolCache.js.map +0 -1
  291. package/dist/optimizations/index.d.ts +0 -10
  292. package/dist/optimizations/index.d.ts.map +0 -1
  293. package/dist/optimizations/index.js +0 -8
  294. package/dist/optimizations/index.js.map +0 -1
  295. package/dist/security/input-validation.d.ts +0 -109
  296. package/dist/security/input-validation.d.ts.map +0 -1
  297. package/dist/security/input-validation.js +0 -398
  298. package/dist/security/input-validation.js.map +0 -1
  299. package/dist/security/limits.d.ts +0 -150
  300. package/dist/security/limits.d.ts.map +0 -1
  301. package/dist/security/limits.js +0 -288
  302. package/dist/security/limits.js.map +0 -1
  303. package/dist/security/path-security.d.ts +0 -100
  304. package/dist/security/path-security.d.ts.map +0 -1
  305. package/dist/security/path-security.js +0 -337
  306. package/dist/security/path-security.js.map +0 -1
  307. package/dist/security/validation.d.ts +0 -95
  308. package/dist/security/validation.d.ts.map +0 -1
  309. package/dist/security/validation.js +0 -315
  310. package/dist/security/validation.js.map +0 -1
  311. package/dist/types/quic.d.ts +0 -518
  312. package/dist/types/quic.d.ts.map +0 -1
  313. package/dist/types/quic.js +0 -272
  314. package/dist/types/quic.js.map +0 -1
@@ -1,139 +0,0 @@
1
- /**
2
- * RuVector Graph Database Adapter - Primary Database for AgentDB v2
3
- *
4
- * Replaces SQLite with RuVector's graph database for:
5
- * - Episodes as nodes with vector embeddings
6
- * - Skills as nodes with code embeddings
7
- * - Causal relationships as hyperedges
8
- * - Cypher queries instead of SQL
9
- *
10
- * Features:
11
- * - 10x faster than WASM SQLite
12
- * - ACID transactions with persistence
13
- * - Vector similarity search integrated
14
- * - Hypergraph support for complex relationships
15
- * - Neo4j-compatible Cypher syntax
16
- */
17
- type JsNode = {
18
- id: string;
19
- embedding: Float32Array;
20
- labels?: Array<string>;
21
- properties?: Record<string, string>;
22
- };
23
- type JsEdge = {
24
- from: string;
25
- to: string;
26
- description: string;
27
- embedding: Float32Array;
28
- confidence?: number;
29
- metadata?: Record<string, string>;
30
- };
31
- type JsQueryResult = {
32
- nodes: Array<any>;
33
- edges: Array<any>;
34
- stats?: any;
35
- };
36
- export interface GraphDatabaseConfig {
37
- storagePath: string;
38
- dimensions: number;
39
- distanceMetric?: 'Cosine' | 'Euclidean' | 'DotProduct' | 'Manhattan';
40
- }
41
- export interface EpisodeNode {
42
- id: string;
43
- sessionId: string;
44
- task: string;
45
- reward: number;
46
- success: boolean;
47
- input?: string;
48
- output?: string;
49
- critique?: string;
50
- createdAt: number;
51
- tokensUsed?: number;
52
- latencyMs?: number;
53
- }
54
- export interface SkillNode {
55
- id: string;
56
- name: string;
57
- description: string;
58
- code: string;
59
- usageCount: number;
60
- avgReward: number;
61
- createdAt: number;
62
- updatedAt: number;
63
- tags?: string;
64
- }
65
- export interface CausalEdge {
66
- from: string;
67
- to: string;
68
- mechanism: string;
69
- uplift: number;
70
- confidence: number;
71
- sampleSize: number;
72
- }
73
- /**
74
- * Graph Database Adapter for AgentDB
75
- *
76
- * This replaces SQL.js as the primary database, using RuVector's graph DB
77
- * with Cypher queries, hyperedges, and integrated vector search.
78
- */
79
- export declare class GraphDatabaseAdapter {
80
- private db;
81
- private config;
82
- private embedder;
83
- constructor(config: GraphDatabaseConfig, embedder: any);
84
- /**
85
- * Initialize graph database (create new or open existing)
86
- */
87
- initialize(): Promise<void>;
88
- /**
89
- * Store an episode as a graph node
90
- */
91
- storeEpisode(episode: EpisodeNode, embedding: Float32Array): Promise<string>;
92
- /**
93
- * Store a skill as a graph node
94
- */
95
- storeSkill(skill: SkillNode, embedding: Float32Array): Promise<string>;
96
- /**
97
- * Create a causal relationship edge
98
- */
99
- createCausalEdge(edge: CausalEdge, embedding: Float32Array): Promise<string>;
100
- /**
101
- * Query using Cypher syntax
102
- *
103
- * Examples:
104
- * - MATCH (e:Episode) WHERE e.success = 'true' RETURN e
105
- * - MATCH (s:Skill) RETURN s ORDER BY s.avgReward DESC LIMIT 10
106
- * - MATCH (e1:Episode)-[r]->(e2:Episode) RETURN e1, r, e2
107
- */
108
- query(cypher: string): Promise<JsQueryResult>;
109
- /**
110
- * Search for similar episodes by embedding
111
- */
112
- searchSimilarEpisodes(embedding: Float32Array, k?: number): Promise<any[]>;
113
- /**
114
- * Get graph statistics
115
- */
116
- getStats(): Promise<any>;
117
- /**
118
- * Begin transaction
119
- */
120
- beginTransaction(): Promise<string>;
121
- /**
122
- * Commit transaction
123
- */
124
- commitTransaction(txId: string): Promise<void>;
125
- /**
126
- * Rollback transaction
127
- */
128
- rollbackTransaction(txId: string): Promise<void>;
129
- /**
130
- * Batch insert nodes and edges
131
- */
132
- batchInsert(nodes: JsNode[], edges: JsEdge[]): Promise<any>;
133
- /**
134
- * Close database
135
- */
136
- close(): void;
137
- }
138
- export {};
139
- //# sourceMappingURL=GraphDatabaseAdapter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"GraphDatabaseAdapter.d.ts","sourceRoot":"","sources":["../../../src/backends/graph/GraphDatabaseAdapter.ts"],"names":[],"mappings":"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"}
@@ -1,194 +0,0 @@
1
- /**
2
- * RuVector Graph Database Adapter - Primary Database for AgentDB v2
3
- *
4
- * Replaces SQLite with RuVector's graph database for:
5
- * - Episodes as nodes with vector embeddings
6
- * - Skills as nodes with code embeddings
7
- * - Causal relationships as hyperedges
8
- * - Cypher queries instead of SQL
9
- *
10
- * Features:
11
- * - 10x faster than WASM SQLite
12
- * - ACID transactions with persistence
13
- * - Vector similarity search integrated
14
- * - Hypergraph support for complex relationships
15
- * - Neo4j-compatible Cypher syntax
16
- */
17
- /**
18
- * Graph Database Adapter for AgentDB
19
- *
20
- * This replaces SQL.js as the primary database, using RuVector's graph DB
21
- * with Cypher queries, hyperedges, and integrated vector search.
22
- */
23
- export class GraphDatabaseAdapter {
24
- db;
25
- config;
26
- embedder; // EmbeddingService
27
- constructor(config, embedder) {
28
- this.config = config;
29
- this.embedder = embedder;
30
- this.db = null; // Will be initialized
31
- }
32
- /**
33
- * Initialize graph database (create new or open existing)
34
- */
35
- async initialize() {
36
- try {
37
- // Try to import graph-node package
38
- const graphNodeModule = await import('@ruvector/graph-node');
39
- const GraphDatabase = graphNodeModule.GraphDatabase;
40
- if (!GraphDatabase) {
41
- throw new Error('GraphDatabase class not found in @ruvector/graph-node');
42
- }
43
- // Try to open existing database first
44
- try {
45
- if (require('fs').existsSync(this.config.storagePath)) {
46
- this.db = GraphDatabase.open(this.config.storagePath);
47
- console.log('✅ Opened existing RuVector graph database');
48
- return;
49
- }
50
- }
51
- catch (e) {
52
- // Database doesn't exist or is corrupt, create new one
53
- }
54
- // Create new database
55
- this.db = new GraphDatabase({
56
- distanceMetric: this.config.distanceMetric || 'Cosine',
57
- dimensions: this.config.dimensions,
58
- storagePath: this.config.storagePath
59
- });
60
- console.log('✅ Created new RuVector graph database');
61
- }
62
- catch (error) {
63
- throw new Error(`Failed to initialize RuVector Graph Database.\n` +
64
- `Please install: npm install @ruvector/graph-node\n` +
65
- `Error: ${error.message}`);
66
- }
67
- }
68
- /**
69
- * Store an episode as a graph node
70
- */
71
- async storeEpisode(episode, embedding) {
72
- const node = {
73
- id: episode.id || `episode-${Date.now()}-${Math.random().toString(36).slice(2)}`,
74
- embedding: embedding,
75
- labels: ['Episode'],
76
- properties: {
77
- sessionId: episode.sessionId,
78
- task: episode.task,
79
- reward: episode.reward.toString(),
80
- success: episode.success.toString(),
81
- input: episode.input || '',
82
- output: episode.output || '',
83
- critique: episode.critique || '',
84
- createdAt: episode.createdAt.toString(),
85
- tokensUsed: episode.tokensUsed?.toString() || '0',
86
- latencyMs: episode.latencyMs?.toString() || '0'
87
- }
88
- };
89
- return await this.db.createNode(node);
90
- }
91
- /**
92
- * Store a skill as a graph node
93
- */
94
- async storeSkill(skill, embedding) {
95
- const node = {
96
- id: skill.id || `skill-${Date.now()}-${Math.random().toString(36).slice(2)}`,
97
- embedding: embedding,
98
- labels: ['Skill'],
99
- properties: {
100
- name: skill.name,
101
- description: skill.description,
102
- code: skill.code,
103
- usageCount: skill.usageCount.toString(),
104
- avgReward: skill.avgReward.toString(),
105
- createdAt: skill.createdAt.toString(),
106
- updatedAt: skill.updatedAt.toString(),
107
- tags: skill.tags || ''
108
- }
109
- };
110
- return await this.db.createNode(node);
111
- }
112
- /**
113
- * Create a causal relationship edge
114
- */
115
- async createCausalEdge(edge, embedding) {
116
- const graphEdge = {
117
- from: edge.from,
118
- to: edge.to,
119
- description: edge.mechanism,
120
- embedding: embedding,
121
- confidence: edge.confidence,
122
- metadata: {
123
- uplift: edge.uplift.toString(),
124
- sampleSize: edge.sampleSize.toString()
125
- }
126
- };
127
- return await this.db.createEdge(graphEdge);
128
- }
129
- /**
130
- * Query using Cypher syntax
131
- *
132
- * Examples:
133
- * - MATCH (e:Episode) WHERE e.success = 'true' RETURN e
134
- * - MATCH (s:Skill) RETURN s ORDER BY s.avgReward DESC LIMIT 10
135
- * - MATCH (e1:Episode)-[r]->(e2:Episode) RETURN e1, r, e2
136
- */
137
- async query(cypher) {
138
- return await this.db.query(cypher);
139
- }
140
- /**
141
- * Search for similar episodes by embedding
142
- */
143
- async searchSimilarEpisodes(embedding, k = 10) {
144
- // Use Cypher with vector similarity
145
- // Note: This is a simplified version - actual implementation would use
146
- // the integrated vector search capabilities
147
- const result = await this.query(`MATCH (e:Episode) RETURN e ORDER BY vector_similarity(e.embedding, $embedding) DESC LIMIT ${k}`);
148
- return result.nodes.map(node => ({
149
- id: node.id,
150
- ...node.properties,
151
- reward: parseFloat(node.properties.reward),
152
- success: node.properties.success === 'true',
153
- createdAt: parseInt(node.properties.createdAt)
154
- }));
155
- }
156
- /**
157
- * Get graph statistics
158
- */
159
- async getStats() {
160
- return await this.db.stats();
161
- }
162
- /**
163
- * Begin transaction
164
- */
165
- async beginTransaction() {
166
- return await this.db.begin();
167
- }
168
- /**
169
- * Commit transaction
170
- */
171
- async commitTransaction(txId) {
172
- await this.db.commit(txId);
173
- }
174
- /**
175
- * Rollback transaction
176
- */
177
- async rollbackTransaction(txId) {
178
- await this.db.rollback(txId);
179
- }
180
- /**
181
- * Batch insert nodes and edges
182
- */
183
- async batchInsert(nodes, edges) {
184
- return await this.db.batchInsert({ nodes, edges });
185
- }
186
- /**
187
- * Close database
188
- */
189
- close() {
190
- // Graph database handles persistence automatically
191
- // No explicit close needed
192
- }
193
- }
194
- //# sourceMappingURL=GraphDatabaseAdapter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"GraphDatabaseAdapter.js","sourceRoot":"","sources":["../../../src/backends/graph/GraphDatabaseAdapter.ts"],"names":[],"mappings":"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"}
@@ -1,92 +0,0 @@
1
- /**
2
- * HNSWLibBackend - Vector backend adapter for hnswlib-node
3
- *
4
- * Wraps existing HNSWIndex controller to implement VectorBackend interface.
5
- * Handles string ID to numeric label mapping required by hnswlib.
6
- *
7
- * Features:
8
- * - String ID support (maps to hnswlib numeric labels)
9
- * - Metadata storage alongside vectors
10
- * - Persistent save/load with mappings
11
- * - Backward compatible with existing HNSWIndex usage
12
- *
13
- * Note: hnswlib-node doesn't support true deletion - removed IDs are
14
- * tracked but vectors remain until rebuild.
15
- */
16
- import type { VectorBackend, VectorConfig, SearchResult, SearchOptions, VectorStats } from '../VectorBackend.js';
17
- export declare class HNSWLibBackend implements VectorBackend {
18
- readonly name: "hnswlib";
19
- private index;
20
- private config;
21
- private idToLabel;
22
- private labelToId;
23
- private metadata;
24
- private nextLabel;
25
- private deletedIds;
26
- constructor(config: VectorConfig);
27
- /**
28
- * Initialize the HNSW index
29
- * Must be called after construction
30
- */
31
- initialize(): Promise<void>;
32
- /**
33
- * Insert a single vector with optional metadata
34
- */
35
- insert(id: string, embedding: Float32Array, metadata?: Record<string, any>): void;
36
- /**
37
- * Insert multiple vectors in batch
38
- */
39
- insertBatch(items: Array<{
40
- id: string;
41
- embedding: Float32Array;
42
- metadata?: Record<string, any>;
43
- }>): void;
44
- /**
45
- * Search for k-nearest neighbors
46
- */
47
- search(query: Float32Array, k: number, options?: SearchOptions): SearchResult[];
48
- /**
49
- * Remove a vector by ID
50
- * Note: hnswlib doesn't support true deletion - we mark as deleted
51
- */
52
- remove(id: string): boolean;
53
- /**
54
- * Get backend statistics
55
- */
56
- getStats(): VectorStats;
57
- /**
58
- * Save index to disk with mappings
59
- */
60
- save(savePath: string): Promise<void>;
61
- /**
62
- * Load index from disk with mappings
63
- */
64
- load(loadPath: string): Promise<void>;
65
- /**
66
- * Close and cleanup resources
67
- */
68
- close(): void;
69
- /**
70
- * Convert distance to similarity based on metric
71
- * Maps to [0, 1] range where 1 = most similar
72
- */
73
- private distanceToSimilarity;
74
- /**
75
- * Apply metadata filters (post-filtering)
76
- */
77
- private applyFilters;
78
- /**
79
- * Check if needs rebuilding (for backward compat with HNSWIndex)
80
- * @param updateThreshold - Percentage of deletes to trigger rebuild (default: 0.1)
81
- */
82
- needsRebuild(updateThreshold?: number): boolean;
83
- /**
84
- * Update efSearch parameter
85
- */
86
- setEfSearch(ef: number): void;
87
- /**
88
- * Check if backend is ready
89
- */
90
- isReady(): boolean;
91
- }
92
- //# sourceMappingURL=HNSWLibBackend.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"HNSWLibBackend.d.ts","sourceRoot":"","sources":["../../../src/backends/hnswlib/HNSWLibBackend.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EACV,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,WAAW,EACZ,MAAM,qBAAqB,CAAC;AAgB7B,qBAAa,cAAe,YAAW,aAAa;IAClD,QAAQ,CAAC,IAAI,EAAG,SAAS,CAAU;IAEnC,OAAO,CAAC,KAAK,CAAoB;IACjC,OAAO,CAAC,MAAM,CAAe;IAG7B,OAAO,CAAC,SAAS,CAAkC;IACnD,OAAO,CAAC,SAAS,CAAkC;IACnD,OAAO,CAAC,QAAQ,CAA+C;IAC/D,OAAO,CAAC,SAAS,CAAa;IAG9B,OAAO,CAAC,UAAU,CAA0B;gBAEhC,MAAM,EAAE,YAAY;IAUhC;;;OAGG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAyBjC;;OAEG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IA6BjF;;OAEG;IACH,WAAW,CACT,KAAK,EAAE,KAAK,CAAC;QACX,EAAE,EAAE,MAAM,CAAC;QACX,SAAS,EAAE,YAAY,CAAC;QACxB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAChC,CAAC,GACD,IAAI;IAMP;;OAEG;IACH,MAAM,CAAC,KAAK,EAAE,YAAY,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,YAAY,EAAE;IAuD/E;;;OAGG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAgB3B;;OAEG;IACH,QAAQ,IAAI,WAAW;IAYvB;;OAEG;IACG,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAqC3C;;OAEG;IACG,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyD3C;;OAEG;IACH,KAAK,IAAI,IAAI;IASb;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAmB5B;;OAEG;IACH,OAAO,CAAC,YAAY;IAcpB;;;OAGG;IACH,YAAY,CAAC,eAAe,GAAE,MAAY,GAAG,OAAO;IAOpD;;OAEG;IACH,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAQ7B;;OAEG;IACH,OAAO,IAAI,OAAO;CAGnB"}