agentdb 1.0.0

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 (361) hide show
  1. package/LICENSE +38 -0
  2. package/LICENSE-APACHE +190 -0
  3. package/LICENSE-MIT +21 -0
  4. package/README.md +953 -0
  5. package/bin/agentdb.js +485 -0
  6. package/bin/plugin-cli-wrapper.mjs +21 -0
  7. package/dist/cache/query-cache.d.ts +105 -0
  8. package/dist/cache/query-cache.d.ts.map +1 -0
  9. package/dist/cache/query-cache.js +224 -0
  10. package/dist/cache/query-cache.js.map +1 -0
  11. package/dist/cache/query-cache.mjs +219 -0
  12. package/dist/cli/cache/query-cache.d.ts +104 -0
  13. package/dist/cli/cache/query-cache.js +244 -0
  14. package/dist/cli/cli/db-commands.d.ts +48 -0
  15. package/dist/cli/cli/db-commands.js +613 -0
  16. package/dist/cli/commands.d.ts +7 -0
  17. package/dist/cli/commands.d.ts.map +1 -0
  18. package/dist/cli/commands.js +113 -0
  19. package/dist/cli/commands.js.map +1 -0
  20. package/dist/cli/commands.mjs +104 -0
  21. package/dist/cli/core/backend-interface.d.ts +70 -0
  22. package/dist/cli/core/backend-interface.js +15 -0
  23. package/dist/cli/core/native-backend.d.ts +140 -0
  24. package/dist/cli/core/native-backend.js +432 -0
  25. package/dist/cli/core/vector-db.d.ts +126 -0
  26. package/dist/cli/core/vector-db.js +338 -0
  27. package/dist/cli/core/wasm-backend.d.ts +95 -0
  28. package/dist/cli/core/wasm-backend.js +418 -0
  29. package/dist/cli/db-commands.d.ts +49 -0
  30. package/dist/cli/db-commands.d.ts.map +1 -0
  31. package/dist/cli/db-commands.js +533 -0
  32. package/dist/cli/db-commands.js.map +1 -0
  33. package/dist/cli/db-commands.mjs +522 -0
  34. package/dist/cli/generator.d.ts +11 -0
  35. package/dist/cli/generator.d.ts.map +1 -0
  36. package/dist/cli/generator.js +567 -0
  37. package/dist/cli/generator.js.map +1 -0
  38. package/dist/cli/generator.mjs +527 -0
  39. package/dist/cli/help.d.ts +18 -0
  40. package/dist/cli/help.d.ts.map +1 -0
  41. package/dist/cli/help.js +676 -0
  42. package/dist/cli/help.js.map +1 -0
  43. package/dist/cli/help.mjs +667 -0
  44. package/dist/cli/index/hnsw.d.ts +164 -0
  45. package/dist/cli/index/hnsw.js +558 -0
  46. package/dist/cli/plugin-cli.d.ts +7 -0
  47. package/dist/cli/plugin-cli.d.ts.map +1 -0
  48. package/dist/cli/plugin-cli.js +295 -0
  49. package/dist/cli/plugin-cli.js.map +1 -0
  50. package/dist/cli/plugin-cli.mjs +289 -0
  51. package/dist/cli/quantization/product-quantization.d.ts +108 -0
  52. package/dist/cli/quantization/product-quantization.js +350 -0
  53. package/dist/cli/query/query-builder.d.ts +322 -0
  54. package/dist/cli/query/query-builder.js +600 -0
  55. package/dist/cli/templates.d.ts +14 -0
  56. package/dist/cli/templates.d.ts.map +1 -0
  57. package/dist/cli/templates.js +182 -0
  58. package/dist/cli/templates.js.map +1 -0
  59. package/dist/cli/templates.mjs +176 -0
  60. package/dist/cli/types/index.d.ts +116 -0
  61. package/dist/cli/types/index.js +5 -0
  62. package/dist/cli/types.d.ts +91 -0
  63. package/dist/cli/types.d.ts.map +1 -0
  64. package/dist/cli/types.js +6 -0
  65. package/dist/cli/types.js.map +1 -0
  66. package/dist/cli/types.mjs +4 -0
  67. package/dist/cli/wizard/index.d.ts +6 -0
  68. package/dist/cli/wizard/index.d.ts.map +1 -0
  69. package/dist/cli/wizard/index.js +138 -0
  70. package/dist/cli/wizard/index.js.map +1 -0
  71. package/dist/cli/wizard/index.mjs +131 -0
  72. package/dist/cli/wizard/prompts.d.ts +11 -0
  73. package/dist/cli/wizard/prompts.d.ts.map +1 -0
  74. package/dist/cli/wizard/prompts.js +482 -0
  75. package/dist/cli/wizard/prompts.js.map +1 -0
  76. package/dist/cli/wizard/prompts.mjs +470 -0
  77. package/dist/cli/wizard/validator.d.ts +13 -0
  78. package/dist/cli/wizard/validator.d.ts.map +1 -0
  79. package/dist/cli/wizard/validator.js +234 -0
  80. package/dist/cli/wizard/validator.js.map +1 -0
  81. package/dist/cli/wizard/validator.mjs +224 -0
  82. package/dist/core/backend-interface.d.ts +71 -0
  83. package/dist/core/backend-interface.d.ts.map +1 -0
  84. package/dist/core/backend-interface.js +16 -0
  85. package/dist/core/backend-interface.js.map +1 -0
  86. package/dist/core/backend-interface.mjs +12 -0
  87. package/dist/core/native-backend.d.ts +141 -0
  88. package/dist/core/native-backend.d.ts.map +1 -0
  89. package/dist/core/native-backend.js +457 -0
  90. package/dist/core/native-backend.js.map +1 -0
  91. package/dist/core/native-backend.mjs +449 -0
  92. package/dist/core/vector-db.d.ts +127 -0
  93. package/dist/core/vector-db.d.ts.map +1 -0
  94. package/dist/core/vector-db.js +266 -0
  95. package/dist/core/vector-db.js.map +1 -0
  96. package/dist/core/vector-db.mjs +261 -0
  97. package/dist/core/wasm-backend.d.ts +96 -0
  98. package/dist/core/wasm-backend.d.ts.map +1 -0
  99. package/dist/core/wasm-backend.js +393 -0
  100. package/dist/core/wasm-backend.js.map +1 -0
  101. package/dist/core/wasm-backend.mjs +385 -0
  102. package/dist/index/hnsw-optimized.d.ts +75 -0
  103. package/dist/index/hnsw-optimized.d.ts.map +1 -0
  104. package/dist/index/hnsw-optimized.js +412 -0
  105. package/dist/index/hnsw-optimized.js.map +1 -0
  106. package/dist/index/hnsw-optimized.mjs +407 -0
  107. package/dist/index/hnsw.d.ts +165 -0
  108. package/dist/index/hnsw.d.ts.map +1 -0
  109. package/dist/index/hnsw.js +521 -0
  110. package/dist/index/hnsw.js.map +1 -0
  111. package/dist/index/hnsw.mjs +516 -0
  112. package/dist/index.d.ts +57 -0
  113. package/dist/index.d.ts.map +1 -0
  114. package/dist/index.js +82 -0
  115. package/dist/index.js.map +1 -0
  116. package/dist/index.mjs +63 -0
  117. package/dist/mcp-server.d.ts +27 -0
  118. package/dist/mcp-server.d.ts.map +1 -0
  119. package/dist/mcp-server.js +789 -0
  120. package/dist/mcp-server.js.map +1 -0
  121. package/dist/mcp-server.mjs +784 -0
  122. package/dist/plugins/base-plugin.d.ts +114 -0
  123. package/dist/plugins/base-plugin.d.ts.map +1 -0
  124. package/dist/plugins/base-plugin.js +313 -0
  125. package/dist/plugins/base-plugin.js.map +1 -0
  126. package/dist/plugins/base-plugin.mjs +275 -0
  127. package/dist/plugins/implementations/active-learning.d.ts +135 -0
  128. package/dist/plugins/implementations/active-learning.d.ts.map +1 -0
  129. package/dist/plugins/implementations/active-learning.js +372 -0
  130. package/dist/plugins/implementations/active-learning.js.map +1 -0
  131. package/dist/plugins/implementations/active-learning.mjs +367 -0
  132. package/dist/plugins/implementations/actor-critic.d.ts +64 -0
  133. package/dist/plugins/implementations/actor-critic.d.ts.map +1 -0
  134. package/dist/plugins/implementations/actor-critic.js +363 -0
  135. package/dist/plugins/implementations/actor-critic.js.map +1 -0
  136. package/dist/plugins/implementations/actor-critic.mjs +358 -0
  137. package/dist/plugins/implementations/adversarial-training.d.ts +133 -0
  138. package/dist/plugins/implementations/adversarial-training.d.ts.map +1 -0
  139. package/dist/plugins/implementations/adversarial-training.js +409 -0
  140. package/dist/plugins/implementations/adversarial-training.js.map +1 -0
  141. package/dist/plugins/implementations/adversarial-training.mjs +404 -0
  142. package/dist/plugins/implementations/curriculum-learning.d.ts +132 -0
  143. package/dist/plugins/implementations/curriculum-learning.d.ts.map +1 -0
  144. package/dist/plugins/implementations/curriculum-learning.js +354 -0
  145. package/dist/plugins/implementations/curriculum-learning.js.map +1 -0
  146. package/dist/plugins/implementations/curriculum-learning.mjs +349 -0
  147. package/dist/plugins/implementations/decision-transformer.d.ts +77 -0
  148. package/dist/plugins/implementations/decision-transformer.d.ts.map +1 -0
  149. package/dist/plugins/implementations/decision-transformer.js +422 -0
  150. package/dist/plugins/implementations/decision-transformer.js.map +1 -0
  151. package/dist/plugins/implementations/decision-transformer.mjs +417 -0
  152. package/dist/plugins/implementations/federated-learning.d.ts +126 -0
  153. package/dist/plugins/implementations/federated-learning.d.ts.map +1 -0
  154. package/dist/plugins/implementations/federated-learning.js +436 -0
  155. package/dist/plugins/implementations/federated-learning.js.map +1 -0
  156. package/dist/plugins/implementations/federated-learning.mjs +431 -0
  157. package/dist/plugins/implementations/index.d.ts +30 -0
  158. package/dist/plugins/implementations/index.d.ts.map +1 -0
  159. package/dist/plugins/implementations/index.js +45 -0
  160. package/dist/plugins/implementations/index.js.map +1 -0
  161. package/dist/plugins/implementations/index.mjs +31 -0
  162. package/dist/plugins/implementations/multi-task-learning.d.ts +115 -0
  163. package/dist/plugins/implementations/multi-task-learning.d.ts.map +1 -0
  164. package/dist/plugins/implementations/multi-task-learning.js +369 -0
  165. package/dist/plugins/implementations/multi-task-learning.js.map +1 -0
  166. package/dist/plugins/implementations/multi-task-learning.mjs +364 -0
  167. package/dist/plugins/implementations/neural-architecture-search.d.ts +148 -0
  168. package/dist/plugins/implementations/neural-architecture-search.d.ts.map +1 -0
  169. package/dist/plugins/implementations/neural-architecture-search.js +379 -0
  170. package/dist/plugins/implementations/neural-architecture-search.js.map +1 -0
  171. package/dist/plugins/implementations/neural-architecture-search.mjs +374 -0
  172. package/dist/plugins/implementations/q-learning.d.ts +98 -0
  173. package/dist/plugins/implementations/q-learning.d.ts.map +1 -0
  174. package/dist/plugins/implementations/q-learning.js +435 -0
  175. package/dist/plugins/implementations/q-learning.js.map +1 -0
  176. package/dist/plugins/implementations/q-learning.mjs +430 -0
  177. package/dist/plugins/implementations/sarsa.d.ts +103 -0
  178. package/dist/plugins/implementations/sarsa.d.ts.map +1 -0
  179. package/dist/plugins/implementations/sarsa.js +347 -0
  180. package/dist/plugins/implementations/sarsa.js.map +1 -0
  181. package/dist/plugins/implementations/sarsa.mjs +342 -0
  182. package/dist/plugins/index.d.ts +107 -0
  183. package/dist/plugins/index.d.ts.map +1 -0
  184. package/dist/plugins/index.js +179 -0
  185. package/dist/plugins/index.js.map +1 -0
  186. package/dist/plugins/index.mjs +168 -0
  187. package/dist/plugins/interface.d.ts +439 -0
  188. package/dist/plugins/interface.d.ts.map +1 -0
  189. package/dist/plugins/interface.js +12 -0
  190. package/dist/plugins/interface.js.map +1 -0
  191. package/dist/plugins/interface.mjs +10 -0
  192. package/dist/plugins/learning-plugin.interface.d.ts +257 -0
  193. package/dist/plugins/learning-plugin.interface.d.ts.map +1 -0
  194. package/dist/plugins/learning-plugin.interface.js +7 -0
  195. package/dist/plugins/learning-plugin.interface.js.map +1 -0
  196. package/dist/plugins/learning-plugin.interface.mjs +5 -0
  197. package/dist/plugins/plugin-exports.d.ts +71 -0
  198. package/dist/plugins/plugin-exports.d.ts.map +1 -0
  199. package/dist/plugins/plugin-exports.js +78 -0
  200. package/dist/plugins/plugin-exports.js.map +1 -0
  201. package/dist/plugins/plugin-exports.mjs +69 -0
  202. package/dist/plugins/registry.d.ts +206 -0
  203. package/dist/plugins/registry.d.ts.map +1 -0
  204. package/dist/plugins/registry.js +365 -0
  205. package/dist/plugins/registry.js.map +1 -0
  206. package/dist/plugins/registry.mjs +356 -0
  207. package/dist/plugins/validator.d.ts +63 -0
  208. package/dist/plugins/validator.d.ts.map +1 -0
  209. package/dist/plugins/validator.js +464 -0
  210. package/dist/plugins/validator.js.map +1 -0
  211. package/dist/plugins/validator.mjs +458 -0
  212. package/dist/quantization/binary-quantization.d.ts +104 -0
  213. package/dist/quantization/binary-quantization.d.ts.map +1 -0
  214. package/dist/quantization/binary-quantization.js +246 -0
  215. package/dist/quantization/binary-quantization.js.map +1 -0
  216. package/dist/quantization/binary-quantization.mjs +240 -0
  217. package/dist/quantization/optimized-pq.d.ts +138 -0
  218. package/dist/quantization/optimized-pq.d.ts.map +1 -0
  219. package/dist/quantization/optimized-pq.js +320 -0
  220. package/dist/quantization/optimized-pq.js.map +1 -0
  221. package/dist/quantization/optimized-pq.mjs +313 -0
  222. package/dist/quantization/product-quantization.d.ts +109 -0
  223. package/dist/quantization/product-quantization.d.ts.map +1 -0
  224. package/dist/quantization/product-quantization.js +287 -0
  225. package/dist/quantization/product-quantization.js.map +1 -0
  226. package/dist/quantization/product-quantization.mjs +282 -0
  227. package/dist/quantization/scalar-quantization.d.ts +100 -0
  228. package/dist/quantization/scalar-quantization.d.ts.map +1 -0
  229. package/dist/quantization/scalar-quantization.js +324 -0
  230. package/dist/quantization/scalar-quantization.js.map +1 -0
  231. package/dist/quantization/scalar-quantization.mjs +319 -0
  232. package/dist/query/index.d.ts +6 -0
  233. package/dist/query/index.d.ts.map +1 -0
  234. package/dist/query/index.js +9 -0
  235. package/dist/query/index.js.map +1 -0
  236. package/dist/query/index.mjs +4 -0
  237. package/dist/query/query-builder.d.ts +323 -0
  238. package/dist/query/query-builder.d.ts.map +1 -0
  239. package/dist/query/query-builder.js +524 -0
  240. package/dist/query/query-builder.js.map +1 -0
  241. package/dist/query/query-builder.mjs +519 -0
  242. package/dist/reasoning/context-synthesizer.d.ts +57 -0
  243. package/dist/reasoning/context-synthesizer.d.ts.map +1 -0
  244. package/dist/reasoning/context-synthesizer.js +224 -0
  245. package/dist/reasoning/context-synthesizer.js.map +1 -0
  246. package/dist/reasoning/context-synthesizer.mjs +219 -0
  247. package/dist/reasoning/experience-curator.d.ts +66 -0
  248. package/dist/reasoning/experience-curator.d.ts.map +1 -0
  249. package/dist/reasoning/experience-curator.js +288 -0
  250. package/dist/reasoning/experience-curator.js.map +1 -0
  251. package/dist/reasoning/experience-curator.mjs +283 -0
  252. package/dist/reasoning/memory-optimizer.d.ts +69 -0
  253. package/dist/reasoning/memory-optimizer.d.ts.map +1 -0
  254. package/dist/reasoning/memory-optimizer.js +331 -0
  255. package/dist/reasoning/memory-optimizer.js.map +1 -0
  256. package/dist/reasoning/memory-optimizer.mjs +326 -0
  257. package/dist/reasoning/pattern-matcher.d.ts +59 -0
  258. package/dist/reasoning/pattern-matcher.d.ts.map +1 -0
  259. package/dist/reasoning/pattern-matcher.js +229 -0
  260. package/dist/reasoning/pattern-matcher.js.map +1 -0
  261. package/dist/reasoning/pattern-matcher.mjs +224 -0
  262. package/dist/reasoningbank/adapter/agentdb-adapter.d.ts +118 -0
  263. package/dist/reasoningbank/adapter/agentdb-adapter.d.ts.map +1 -0
  264. package/dist/reasoningbank/adapter/agentdb-adapter.js +477 -0
  265. package/dist/reasoningbank/adapter/agentdb-adapter.js.map +1 -0
  266. package/dist/reasoningbank/adapter/types.d.ts +113 -0
  267. package/dist/reasoningbank/adapter/types.d.ts.map +1 -0
  268. package/dist/reasoningbank/adapter/types.js +9 -0
  269. package/dist/reasoningbank/adapter/types.js.map +1 -0
  270. package/dist/reasoningbank/cli/commands.d.ts +16 -0
  271. package/dist/reasoningbank/cli/commands.d.ts.map +1 -0
  272. package/dist/reasoningbank/cli/commands.js +272 -0
  273. package/dist/reasoningbank/cli/commands.js.map +1 -0
  274. package/dist/reasoningbank/mcp/agentdb-tools.d.ts +319 -0
  275. package/dist/reasoningbank/mcp/agentdb-tools.d.ts.map +1 -0
  276. package/dist/reasoningbank/mcp/agentdb-tools.js +301 -0
  277. package/dist/reasoningbank/mcp/agentdb-tools.js.map +1 -0
  278. package/dist/reasoningbank/migration/migrate.d.ts +25 -0
  279. package/dist/reasoningbank/migration/migrate.d.ts.map +1 -0
  280. package/dist/reasoningbank/migration/migrate.js +178 -0
  281. package/dist/reasoningbank/migration/migrate.js.map +1 -0
  282. package/dist/reasoningbank/reasoning/context-synthesizer.d.ts +37 -0
  283. package/dist/reasoningbank/reasoning/context-synthesizer.d.ts.map +1 -0
  284. package/dist/reasoningbank/reasoning/context-synthesizer.js +114 -0
  285. package/dist/reasoningbank/reasoning/context-synthesizer.js.map +1 -0
  286. package/dist/reasoningbank/reasoning/experience-curator.d.ts +39 -0
  287. package/dist/reasoningbank/reasoning/experience-curator.d.ts.map +1 -0
  288. package/dist/reasoningbank/reasoning/experience-curator.js +98 -0
  289. package/dist/reasoningbank/reasoning/experience-curator.js.map +1 -0
  290. package/dist/reasoningbank/reasoning/memory-optimizer.d.ts +44 -0
  291. package/dist/reasoningbank/reasoning/memory-optimizer.d.ts.map +1 -0
  292. package/dist/reasoningbank/reasoning/memory-optimizer.js +184 -0
  293. package/dist/reasoningbank/reasoning/memory-optimizer.js.map +1 -0
  294. package/dist/reasoningbank/reasoning/pattern-matcher.d.ts +40 -0
  295. package/dist/reasoningbank/reasoning/pattern-matcher.d.ts.map +1 -0
  296. package/dist/reasoningbank/reasoning/pattern-matcher.js +87 -0
  297. package/dist/reasoningbank/reasoning/pattern-matcher.js.map +1 -0
  298. package/dist/reasoningbank/sync/quic-sync.d.ts +77 -0
  299. package/dist/reasoningbank/sync/quic-sync.d.ts.map +1 -0
  300. package/dist/reasoningbank/sync/quic-sync.js +165 -0
  301. package/dist/reasoningbank/sync/quic-sync.js.map +1 -0
  302. package/dist/sync/conflict.d.ts +78 -0
  303. package/dist/sync/conflict.d.ts.map +1 -0
  304. package/dist/sync/conflict.js +202 -0
  305. package/dist/sync/conflict.js.map +1 -0
  306. package/dist/sync/conflict.mjs +196 -0
  307. package/dist/sync/coordinator.d.ts +111 -0
  308. package/dist/sync/coordinator.d.ts.map +1 -0
  309. package/dist/sync/coordinator.js +256 -0
  310. package/dist/sync/coordinator.js.map +1 -0
  311. package/dist/sync/coordinator.mjs +250 -0
  312. package/dist/sync/delta.d.ts +81 -0
  313. package/dist/sync/delta.d.ts.map +1 -0
  314. package/dist/sync/delta.js +245 -0
  315. package/dist/sync/delta.js.map +1 -0
  316. package/dist/sync/delta.mjs +238 -0
  317. package/dist/sync/index.d.ts +11 -0
  318. package/dist/sync/index.d.ts.map +1 -0
  319. package/dist/sync/index.js +22 -0
  320. package/dist/sync/index.js.map +1 -0
  321. package/dist/sync/index.mjs +9 -0
  322. package/dist/sync/quic-sync.d.ts +81 -0
  323. package/dist/sync/quic-sync.d.ts.map +1 -0
  324. package/dist/sync/quic-sync.js +329 -0
  325. package/dist/sync/quic-sync.js.map +1 -0
  326. package/dist/sync/quic-sync.mjs +323 -0
  327. package/dist/sync/types.d.ts +168 -0
  328. package/dist/sync/types.d.ts.map +1 -0
  329. package/dist/sync/types.js +8 -0
  330. package/dist/sync/types.js.map +1 -0
  331. package/dist/sync/types.mjs +6 -0
  332. package/dist/types/index.d.ts +117 -0
  333. package/dist/types/index.d.ts.map +1 -0
  334. package/dist/types/index.js +6 -0
  335. package/dist/types/index.js.map +1 -0
  336. package/dist/types/index.mjs +4 -0
  337. package/dist/wasm-loader.d.ts +32 -0
  338. package/dist/wasm-loader.d.ts.map +1 -0
  339. package/dist/wasm-loader.js +75 -0
  340. package/dist/wasm-loader.js.map +1 -0
  341. package/dist/wasm-loader.mjs +64 -0
  342. package/examples/adaptive-learning.ts +284 -0
  343. package/examples/browser/README.md +732 -0
  344. package/examples/browser/adaptive-recommendations/index.html +427 -0
  345. package/examples/browser/collaborative-filtering/index.html +310 -0
  346. package/examples/browser/continual-learning/index.html +736 -0
  347. package/examples/browser/experience-replay/index.html +616 -0
  348. package/examples/browser/index.html +369 -0
  349. package/examples/browser/meta-learning/index.html +789 -0
  350. package/examples/browser/neuro-symbolic/index.html +692 -0
  351. package/examples/browser/pattern-learning/index.html +620 -0
  352. package/examples/browser/quantum-inspired/index.html +728 -0
  353. package/examples/browser/rag/index.html +624 -0
  354. package/examples/browser/swarm-intelligence/index.html +811 -0
  355. package/examples/browser-basic.html +170 -0
  356. package/examples/hnsw-example.ts +148 -0
  357. package/examples/node-basic.js +70 -0
  358. package/examples/quic-sync-example.ts +310 -0
  359. package/examples/quick-start.js +68 -0
  360. package/examples/wasm-example.ts +222 -0
  361. package/package.json +118 -0
@@ -0,0 +1,257 @@
1
+ /**
2
+ * Core interface for learning plugins in the SQLite Vector system
3
+ * Defines the contract that all learning methodologies must implement
4
+ */
5
+ import { SearchResult } from '../types';
6
+ /**
7
+ * Vector type alias for learning plugins
8
+ */
9
+ export type Vector = number[];
10
+ /**
11
+ * Configuration for a learning plugin
12
+ */
13
+ export interface PluginConfig {
14
+ /** Plugin name */
15
+ name: string;
16
+ /** Plugin version */
17
+ version: string;
18
+ /** Algorithm-specific parameters */
19
+ algorithm: AlgorithmConfig;
20
+ /** Experience replay configuration */
21
+ experienceReplay?: ExperienceReplayConfig;
22
+ /** Training configuration */
23
+ training: TrainingConfig;
24
+ /** Storage configuration */
25
+ storage: StorageConfig;
26
+ /** Optional reward shaping */
27
+ reward?: RewardConfig;
28
+ }
29
+ /**
30
+ * Algorithm-specific configuration
31
+ */
32
+ export interface AlgorithmConfig {
33
+ type: 'decision_transformer' | 'q_learning' | 'sarsa' | 'actor_critic';
34
+ learningRate: number;
35
+ discountFactor: number;
36
+ [key: string]: any;
37
+ }
38
+ /**
39
+ * Experience replay configuration
40
+ */
41
+ export interface ExperienceReplayConfig {
42
+ type: 'none' | 'uniform' | 'prioritized';
43
+ capacity: number;
44
+ alpha?: number;
45
+ beta?: number;
46
+ betaIncrement?: number;
47
+ }
48
+ /**
49
+ * Training configuration
50
+ */
51
+ export interface TrainingConfig {
52
+ batchSize: number;
53
+ epochs?: number;
54
+ minExperiences: number;
55
+ trainEvery?: number;
56
+ online?: boolean;
57
+ validationSplit?: number;
58
+ earlyStoppingPatience?: number;
59
+ }
60
+ /**
61
+ * Storage configuration
62
+ */
63
+ export interface StorageConfig {
64
+ path: string;
65
+ hnsw?: {
66
+ enabled: boolean;
67
+ M: number;
68
+ efConstruction: number;
69
+ efSearch?: number;
70
+ };
71
+ quantization?: {
72
+ enabled: boolean;
73
+ bits: 8 | 16;
74
+ };
75
+ }
76
+ /**
77
+ * Reward configuration
78
+ */
79
+ export interface RewardConfig {
80
+ type: 'success_based' | 'time_aware' | 'token_aware' | 'custom';
81
+ function?: string;
82
+ shaping?: {
83
+ gamma: number;
84
+ lambda: number;
85
+ };
86
+ }
87
+ /**
88
+ * A single experience/transition in the RL environment
89
+ */
90
+ export interface Experience {
91
+ /** Unique identifier */
92
+ id?: string;
93
+ /** State vector */
94
+ state: number[];
95
+ /** Action taken (can be action ID or embedding) */
96
+ action: any;
97
+ /** Reward received */
98
+ reward: number;
99
+ /** Next state vector */
100
+ nextState: number[];
101
+ /** Whether episode terminated */
102
+ done: boolean;
103
+ /** Episode identifier for grouping */
104
+ episodeId?: string;
105
+ /** Step index within episode */
106
+ stepIndex?: number;
107
+ /** Additional metadata */
108
+ metadata?: {
109
+ taskType?: string;
110
+ duration?: number;
111
+ tokensUsed?: number;
112
+ success?: boolean;
113
+ quality?: number;
114
+ [key: string]: any;
115
+ };
116
+ /** Timestamp */
117
+ timestamp?: number;
118
+ }
119
+ /**
120
+ * Action representation
121
+ */
122
+ export interface Action {
123
+ /** Action identifier */
124
+ id: string;
125
+ /** Action embedding or parameters */
126
+ embedding: number[];
127
+ /** Source of the action */
128
+ source?: 'exact_retrieval' | 'knn_interpolation' | 'neural_network' | 'policy';
129
+ /** Confidence/similarity score */
130
+ confidence?: number;
131
+ /** Additional metadata */
132
+ metadata?: any;
133
+ }
134
+ /**
135
+ * Context for action selection
136
+ */
137
+ export interface Context {
138
+ /** Task description */
139
+ taskDescription?: string;
140
+ /** Task type */
141
+ taskType?: string;
142
+ /** Desired return-to-go */
143
+ desiredReturn?: number;
144
+ /** Episode history */
145
+ history?: Experience[];
146
+ /** Additional context */
147
+ [key: string]: any;
148
+ }
149
+ /**
150
+ * Training options
151
+ */
152
+ export interface TrainOptions {
153
+ /** Number of epochs */
154
+ epochs?: number;
155
+ /** Batch size */
156
+ batchSize?: number;
157
+ /** Learning rate */
158
+ learningRate?: number;
159
+ /** Validation split */
160
+ validationSplit?: number;
161
+ /** Verbose logging */
162
+ verbose?: boolean;
163
+ }
164
+ /**
165
+ * Training metrics
166
+ */
167
+ export interface TrainingMetrics {
168
+ /** Average loss */
169
+ loss: number;
170
+ /** Validation loss (if applicable) */
171
+ validationLoss?: number;
172
+ /** Average Q-value (for value-based methods) */
173
+ avgQValue?: number;
174
+ /** Policy entropy (for policy gradient methods) */
175
+ policyEntropy?: number;
176
+ /** Exploration rate (epsilon for epsilon-greedy) */
177
+ epsilon?: number;
178
+ /** Number of episodes trained on */
179
+ episodesTrained?: number;
180
+ /** Additional metrics */
181
+ [key: string]: any;
182
+ }
183
+ /**
184
+ * Plugin metrics for monitoring
185
+ */
186
+ export interface PluginMetrics {
187
+ /** Total experiences stored */
188
+ totalExperiences: number;
189
+ /** Number of episodes */
190
+ totalEpisodes: number;
191
+ /** Success rate */
192
+ successRate: number;
193
+ /** Average reward */
194
+ avgReward: number;
195
+ /** Average episode duration */
196
+ avgDuration: number;
197
+ /** Current training metrics */
198
+ currentTraining?: TrainingMetrics;
199
+ /** Additional metrics */
200
+ [key: string]: any;
201
+ }
202
+ /**
203
+ * Main interface that all learning plugins must implement
204
+ */
205
+ export interface LearningPlugin {
206
+ /** Plugin name */
207
+ name: string;
208
+ /** Plugin version */
209
+ version: string;
210
+ /** Plugin configuration */
211
+ config: PluginConfig;
212
+ /**
213
+ * Initialize the plugin with configuration
214
+ */
215
+ initialize(config: PluginConfig): Promise<void>;
216
+ /**
217
+ * Destroy the plugin and cleanup resources
218
+ */
219
+ destroy(): Promise<void>;
220
+ /**
221
+ * Store a single experience/transition
222
+ */
223
+ storeExperience(experience: Experience): Promise<void>;
224
+ /**
225
+ * Store a batch of experiences
226
+ */
227
+ storeBatch(experiences: Experience[]): Promise<void>;
228
+ /**
229
+ * Retrieve similar experiences from storage
230
+ */
231
+ retrieveSimilar(state: number[], k: number): Promise<SearchResult<Experience>[]>;
232
+ /**
233
+ * Select an action given current state
234
+ */
235
+ selectAction(state: number[], context?: Context): Promise<Action>;
236
+ /**
237
+ * Train the plugin on stored experiences
238
+ */
239
+ train(options?: TrainOptions): Promise<TrainingMetrics>;
240
+ /**
241
+ * Get current plugin metrics
242
+ */
243
+ getMetrics(): Promise<PluginMetrics>;
244
+ /**
245
+ * Get plugin configuration
246
+ */
247
+ getConfig(): PluginConfig;
248
+ /**
249
+ * Save plugin state to disk
250
+ */
251
+ save(path: string): Promise<void>;
252
+ /**
253
+ * Load plugin state from disk
254
+ */
255
+ load(path: string): Promise<void>;
256
+ }
257
+ //# sourceMappingURL=learning-plugin.interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"learning-plugin.interface.d.ts","sourceRoot":"","sources":["../../src/plugins/learning-plugin.interface.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ /**
3
+ * Core interface for learning plugins in the SQLite Vector system
4
+ * Defines the contract that all learning methodologies must implement
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ //# sourceMappingURL=learning-plugin.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"learning-plugin.interface.js","sourceRoot":"","sources":["../../src/plugins/learning-plugin.interface.ts"],"names":[],"mappings":";AAAA;;;GAGG"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Core interface for learning plugins in the SQLite Vector system
3
+ * Defines the contract that all learning methodologies must implement
4
+ */
5
+ export {};
@@ -0,0 +1,71 @@
1
+ /**
2
+ * Learning Plugin System for SQLite Vector
3
+ *
4
+ * This module provides an extensible plugin architecture for implementing
5
+ * various reinforcement learning and adaptive learning algorithms.
6
+ *
7
+ * @example Basic usage
8
+ * ```typescript
9
+ * import { DecisionTransformerPlugin, PluginConfig } from '@agentic-flow/agentdb/plugins';
10
+ *
11
+ * const config: PluginConfig = {
12
+ * name: 'my-dt-plugin',
13
+ * version: '1.0.0',
14
+ * algorithm: {
15
+ * type: 'decision_transformer',
16
+ * learningRate: 0.001,
17
+ * discountFactor: 0.99,
18
+ * stateDim: 768,
19
+ * hiddenSize: 256,
20
+ * },
21
+ * training: {
22
+ * batchSize: 32,
23
+ * minExperiences: 100,
24
+ * },
25
+ * storage: {
26
+ * path: './data/plugin.db',
27
+ * },
28
+ * };
29
+ *
30
+ * const plugin = new DecisionTransformerPlugin();
31
+ * await plugin.initialize(config);
32
+ *
33
+ * // Store experiences
34
+ * await plugin.storeExperience({
35
+ * state: stateVector,
36
+ * action: actionTaken,
37
+ * reward: 1.0,
38
+ * nextState: nextStateVector,
39
+ * done: false,
40
+ * });
41
+ *
42
+ * // Select action
43
+ * const action = await plugin.selectAction(currentState, { desiredReturn: 1.0 });
44
+ *
45
+ * // Train
46
+ * const metrics = await plugin.train({ epochs: 10 });
47
+ * ```
48
+ *
49
+ * @example Creating a custom plugin
50
+ * ```typescript
51
+ * import { BasePlugin, LearningPlugin, PluginConfig } from '@agentic-flow/agentdb/plugins';
52
+ *
53
+ * export class MyCustomPlugin extends BasePlugin {
54
+ * public name = 'my-custom-plugin';
55
+ * public version = '1.0.0';
56
+ *
57
+ * async selectAction(state: number[], context?: Context): Promise<Action> {
58
+ * // Your custom action selection logic
59
+ * }
60
+ *
61
+ * async train(options?: TrainOptions): Promise<TrainingMetrics> {
62
+ * // Your custom training logic
63
+ * }
64
+ * }
65
+ * ```
66
+ */
67
+ export { LearningPlugin } from './learning-plugin.interface';
68
+ export { BasePlugin } from './base-plugin';
69
+ export type { PluginConfig, AlgorithmConfig, ExperienceReplayConfig, TrainingConfig, StorageConfig, RewardConfig, Experience, Action, Context, TrainOptions, TrainingMetrics, PluginMetrics, } from './learning-plugin.interface';
70
+ export { DecisionTransformerPlugin, QLearningPlugin, SARSAPlugin, ActorCriticPlugin, } from './implementations';
71
+ //# sourceMappingURL=plugin-exports.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-exports.d.ts","sourceRoot":"","sources":["../../src/plugins/plugin-exports.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiEG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,YAAY,EACV,YAAY,EACZ,eAAe,EACf,sBAAsB,EACtB,cAAc,EACd,aAAa,EACb,YAAY,EACZ,UAAU,EACV,MAAM,EACN,OAAO,EACP,YAAY,EACZ,eAAe,EACf,aAAa,GACd,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EACL,yBAAyB,EACzB,eAAe,EACf,WAAW,EACX,iBAAiB,GAClB,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ /**
3
+ * Learning Plugin System for SQLite Vector
4
+ *
5
+ * This module provides an extensible plugin architecture for implementing
6
+ * various reinforcement learning and adaptive learning algorithms.
7
+ *
8
+ * @example Basic usage
9
+ * ```typescript
10
+ * import { DecisionTransformerPlugin, PluginConfig } from '@agentic-flow/agentdb/plugins';
11
+ *
12
+ * const config: PluginConfig = {
13
+ * name: 'my-dt-plugin',
14
+ * version: '1.0.0',
15
+ * algorithm: {
16
+ * type: 'decision_transformer',
17
+ * learningRate: 0.001,
18
+ * discountFactor: 0.99,
19
+ * stateDim: 768,
20
+ * hiddenSize: 256,
21
+ * },
22
+ * training: {
23
+ * batchSize: 32,
24
+ * minExperiences: 100,
25
+ * },
26
+ * storage: {
27
+ * path: './data/plugin.db',
28
+ * },
29
+ * };
30
+ *
31
+ * const plugin = new DecisionTransformerPlugin();
32
+ * await plugin.initialize(config);
33
+ *
34
+ * // Store experiences
35
+ * await plugin.storeExperience({
36
+ * state: stateVector,
37
+ * action: actionTaken,
38
+ * reward: 1.0,
39
+ * nextState: nextStateVector,
40
+ * done: false,
41
+ * });
42
+ *
43
+ * // Select action
44
+ * const action = await plugin.selectAction(currentState, { desiredReturn: 1.0 });
45
+ *
46
+ * // Train
47
+ * const metrics = await plugin.train({ epochs: 10 });
48
+ * ```
49
+ *
50
+ * @example Creating a custom plugin
51
+ * ```typescript
52
+ * import { BasePlugin, LearningPlugin, PluginConfig } from '@agentic-flow/agentdb/plugins';
53
+ *
54
+ * export class MyCustomPlugin extends BasePlugin {
55
+ * public name = 'my-custom-plugin';
56
+ * public version = '1.0.0';
57
+ *
58
+ * async selectAction(state: number[], context?: Context): Promise<Action> {
59
+ * // Your custom action selection logic
60
+ * }
61
+ *
62
+ * async train(options?: TrainOptions): Promise<TrainingMetrics> {
63
+ * // Your custom training logic
64
+ * }
65
+ * }
66
+ * ```
67
+ */
68
+ Object.defineProperty(exports, "__esModule", { value: true });
69
+ exports.ActorCriticPlugin = exports.SARSAPlugin = exports.QLearningPlugin = exports.DecisionTransformerPlugin = exports.BasePlugin = void 0;
70
+ var base_plugin_1 = require("./base-plugin");
71
+ Object.defineProperty(exports, "BasePlugin", { enumerable: true, get: function () { return base_plugin_1.BasePlugin; } });
72
+ // Concrete implementations
73
+ var implementations_1 = require("./implementations");
74
+ Object.defineProperty(exports, "DecisionTransformerPlugin", { enumerable: true, get: function () { return implementations_1.DecisionTransformerPlugin; } });
75
+ Object.defineProperty(exports, "QLearningPlugin", { enumerable: true, get: function () { return implementations_1.QLearningPlugin; } });
76
+ Object.defineProperty(exports, "SARSAPlugin", { enumerable: true, get: function () { return implementations_1.SARSAPlugin; } });
77
+ Object.defineProperty(exports, "ActorCriticPlugin", { enumerable: true, get: function () { return implementations_1.ActorCriticPlugin; } });
78
+ //# sourceMappingURL=plugin-exports.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-exports.js","sourceRoot":"","sources":["../../src/plugins/plugin-exports.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiEG;;;AAIH,6CAA2C;AAAlC,yGAAA,UAAU,OAAA;AAkBnB,2BAA2B;AAC3B,qDAK2B;AAJzB,4HAAA,yBAAyB,OAAA;AACzB,kHAAA,eAAe,OAAA;AACf,8GAAA,WAAW,OAAA;AACX,oHAAA,iBAAiB,OAAA"}
@@ -0,0 +1,69 @@
1
+ /**
2
+ * Learning Plugin System for SQLite Vector
3
+ *
4
+ * This module provides an extensible plugin architecture for implementing
5
+ * various reinforcement learning and adaptive learning algorithms.
6
+ *
7
+ * @example Basic usage
8
+ * ```typescript
9
+ * import { DecisionTransformerPlugin, PluginConfig } from '@agentic-flow/agentdb/plugins';
10
+ *
11
+ * const config: PluginConfig = {
12
+ * name: 'my-dt-plugin',
13
+ * version: '1.0.0',
14
+ * algorithm: {
15
+ * type: 'decision_transformer',
16
+ * learningRate: 0.001,
17
+ * discountFactor: 0.99,
18
+ * stateDim: 768,
19
+ * hiddenSize: 256,
20
+ * },
21
+ * training: {
22
+ * batchSize: 32,
23
+ * minExperiences: 100,
24
+ * },
25
+ * storage: {
26
+ * path: './data/plugin.db',
27
+ * },
28
+ * };
29
+ *
30
+ * const plugin = new DecisionTransformerPlugin();
31
+ * await plugin.initialize(config);
32
+ *
33
+ * // Store experiences
34
+ * await plugin.storeExperience({
35
+ * state: stateVector,
36
+ * action: actionTaken,
37
+ * reward: 1.0,
38
+ * nextState: nextStateVector,
39
+ * done: false,
40
+ * });
41
+ *
42
+ * // Select action
43
+ * const action = await plugin.selectAction(currentState, { desiredReturn: 1.0 });
44
+ *
45
+ * // Train
46
+ * const metrics = await plugin.train({ epochs: 10 });
47
+ * ```
48
+ *
49
+ * @example Creating a custom plugin
50
+ * ```typescript
51
+ * import { BasePlugin, LearningPlugin, PluginConfig } from '@agentic-flow/agentdb/plugins';
52
+ *
53
+ * export class MyCustomPlugin extends BasePlugin {
54
+ * public name = 'my-custom-plugin';
55
+ * public version = '1.0.0';
56
+ *
57
+ * async selectAction(state: number[], context?: Context): Promise<Action> {
58
+ * // Your custom action selection logic
59
+ * }
60
+ *
61
+ * async train(options?: TrainOptions): Promise<TrainingMetrics> {
62
+ * // Your custom training logic
63
+ * }
64
+ * }
65
+ * ```
66
+ */
67
+ export { BasePlugin } from './base-plugin.mjs';
68
+ // Concrete implementations
69
+ export { DecisionTransformerPlugin, QLearningPlugin, SARSAPlugin, ActorCriticPlugin, } from './implementations.mjs';