agentdb 1.0.0 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/CHANGELOG.md +104 -0
  2. package/README.md +5 -5
  3. package/bin/agentdb.js +296 -65
  4. package/dist/mcp/learning/core/experience-buffer.d.ts +61 -0
  5. package/dist/mcp/learning/core/experience-buffer.d.ts.map +1 -0
  6. package/dist/mcp/learning/core/experience-buffer.js +175 -0
  7. package/dist/mcp/learning/core/experience-buffer.js.map +1 -0
  8. package/dist/mcp/learning/core/experience-buffer.mjs +170 -0
  9. package/dist/mcp/learning/core/experience-recorder.d.ts +40 -0
  10. package/dist/mcp/learning/core/experience-recorder.d.ts.map +1 -0
  11. package/dist/mcp/learning/core/experience-recorder.js +200 -0
  12. package/dist/mcp/learning/core/experience-recorder.js.map +1 -0
  13. package/dist/mcp/learning/core/experience-recorder.mjs +195 -0
  14. package/dist/mcp/learning/core/learning-manager.d.ts +66 -0
  15. package/dist/mcp/learning/core/learning-manager.d.ts.map +1 -0
  16. package/dist/mcp/learning/core/learning-manager.js +252 -0
  17. package/dist/mcp/learning/core/learning-manager.js.map +1 -0
  18. package/dist/mcp/learning/core/learning-manager.mjs +247 -0
  19. package/dist/mcp/learning/core/policy-optimizer.d.ts +53 -0
  20. package/dist/mcp/learning/core/policy-optimizer.d.ts.map +1 -0
  21. package/dist/mcp/learning/core/policy-optimizer.js +251 -0
  22. package/dist/mcp/learning/core/policy-optimizer.js.map +1 -0
  23. package/dist/mcp/learning/core/policy-optimizer.mjs +246 -0
  24. package/dist/mcp/learning/core/reward-estimator.d.ts +44 -0
  25. package/dist/mcp/learning/core/reward-estimator.d.ts.map +1 -0
  26. package/dist/mcp/learning/core/reward-estimator.js +158 -0
  27. package/dist/mcp/learning/core/reward-estimator.js.map +1 -0
  28. package/dist/mcp/learning/core/reward-estimator.mjs +153 -0
  29. package/dist/mcp/learning/core/session-manager.d.ts +63 -0
  30. package/dist/mcp/learning/core/session-manager.d.ts.map +1 -0
  31. package/dist/mcp/learning/core/session-manager.js +202 -0
  32. package/dist/mcp/learning/core/session-manager.js.map +1 -0
  33. package/dist/mcp/learning/core/session-manager.mjs +197 -0
  34. package/dist/mcp/learning/index.d.ts +19 -0
  35. package/dist/mcp/learning/index.d.ts.map +1 -0
  36. package/dist/mcp/learning/index.js +30 -0
  37. package/dist/mcp/learning/index.js.map +1 -0
  38. package/dist/mcp/learning/index.mjs +19 -0
  39. package/dist/mcp/learning/tools/mcp-learning-tools.d.ts +369 -0
  40. package/dist/mcp/learning/tools/mcp-learning-tools.d.ts.map +1 -0
  41. package/dist/mcp/learning/tools/mcp-learning-tools.js +361 -0
  42. package/dist/mcp/learning/tools/mcp-learning-tools.js.map +1 -0
  43. package/dist/mcp/learning/tools/mcp-learning-tools.mjs +356 -0
  44. package/dist/mcp/learning/types/index.d.ts +138 -0
  45. package/dist/mcp/learning/types/index.d.ts.map +1 -0
  46. package/dist/mcp/learning/types/index.js +6 -0
  47. package/dist/mcp/learning/types/index.js.map +1 -0
  48. package/dist/mcp/learning/types/index.mjs +4 -0
  49. package/dist/mcp-server.d.ts +2 -0
  50. package/dist/mcp-server.d.ts.map +1 -1
  51. package/dist/mcp-server.js +72 -4
  52. package/dist/mcp-server.js.map +1 -1
  53. package/dist/mcp-server.mjs +72 -4
  54. package/dist/wasm/sql-wasm-debug.js +6989 -0
  55. package/dist/wasm/sql-wasm-debug.wasm +0 -0
  56. package/dist/wasm/sql-wasm.js +188 -0
  57. package/dist/wasm/sql-wasm.wasm +0 -0
  58. package/dist/wasm-loader.d.ts.map +1 -1
  59. package/dist/wasm-loader.js +5 -2
  60. package/dist/wasm-loader.js.map +1 -1
  61. package/dist/wasm-loader.mjs +5 -2
  62. package/examples/mcp-learning-example.ts +220 -0
  63. package/package.json +26 -5
@@ -14,6 +14,8 @@ const vector_db_js_1 = require("./core/vector-db.js");
14
14
  const pattern_matcher_js_1 = require("./reasoning/pattern-matcher.js");
15
15
  const backend_interface_js_1 = require("./core/backend-interface.js");
16
16
  const zod_1 = require("zod");
17
+ const learning_manager_js_1 = require("./mcp/learning/core/learning-manager.js");
18
+ const mcp_learning_tools_js_1 = require("./mcp/learning/tools/mcp-learning-tools.js");
17
19
  // ============================================================================
18
20
  // Type Definitions
19
21
  // ============================================================================
@@ -298,7 +300,12 @@ const tools = [
298
300
  properties: {},
299
301
  },
300
302
  },
303
+ // Learning tools - will be dynamically added
301
304
  ];
305
+ // Helper function to merge learning tools
306
+ function getAllTools() {
307
+ return [...tools];
308
+ }
302
309
  // ============================================================================
303
310
  // Database Registry
304
311
  // ============================================================================
@@ -306,6 +313,7 @@ class AgentDBRegistry {
306
313
  constructor() {
307
314
  this.db = null;
308
315
  this.patternMatcher = null;
316
+ this.learningManager = null;
309
317
  this.config = null;
310
318
  }
311
319
  async getOrCreate(config = {}) {
@@ -344,6 +352,18 @@ class AgentDBRegistry {
344
352
  getPatternMatcher() {
345
353
  return this.patternMatcher;
346
354
  }
355
+ getLearningManager() {
356
+ return this.learningManager;
357
+ }
358
+ getOrCreateLearningManager() {
359
+ if (!this.learningManager) {
360
+ if (!this.db) {
361
+ throw new Error('Database must be initialized before learning manager');
362
+ }
363
+ this.learningManager = new learning_manager_js_1.LearningManager(this.db);
364
+ }
365
+ return this.learningManager;
366
+ }
347
367
  close() {
348
368
  if (this.db) {
349
369
  this.db.close();
@@ -444,6 +464,7 @@ class ResourceHandler {
444
464
  // ============================================================================
445
465
  class AgentDBMCPServer {
446
466
  constructor() {
467
+ this.learningTools = null;
447
468
  this.registry = new AgentDBRegistry();
448
469
  this.resourceHandler = new ResourceHandler(this.registry);
449
470
  this.server = new index_js_1.Server({
@@ -460,9 +481,21 @@ class AgentDBMCPServer {
460
481
  }
461
482
  setupHandlers() {
462
483
  // List available tools
463
- this.server.setRequestHandler(types_js_1.ListToolsRequestSchema, async () => ({
464
- tools,
465
- }));
484
+ this.server.setRequestHandler(types_js_1.ListToolsRequestSchema, async () => {
485
+ const allTools = [...tools];
486
+ // Add learning tools if learning manager is available
487
+ if (this.learningTools) {
488
+ const learningToolDefs = this.learningTools.getToolDefinitions();
489
+ for (const [name, def] of Object.entries(learningToolDefs)) {
490
+ allTools.push({
491
+ name,
492
+ description: def.description,
493
+ inputSchema: def.inputSchema,
494
+ });
495
+ }
496
+ }
497
+ return { tools: allTools };
498
+ });
466
499
  // List available resources
467
500
  this.server.setRequestHandler(types_js_1.ListResourcesRequestSchema, async () => this.resourceHandler.listResources());
468
501
  // Read resource
@@ -492,6 +525,18 @@ class AgentDBMCPServer {
492
525
  return await this.handlePatternStats(args);
493
526
  case 'agentdb_clear_cache':
494
527
  return await this.handleClearCache(args);
528
+ // Learning tools
529
+ case 'learning_start_session':
530
+ case 'learning_end_session':
531
+ case 'learning_predict':
532
+ case 'learning_feedback':
533
+ case 'learning_train':
534
+ case 'learning_metrics':
535
+ case 'learning_transfer':
536
+ case 'learning_explain':
537
+ case 'experience_record':
538
+ case 'reward_signal':
539
+ return await this.handleLearningTool(name, args);
495
540
  default:
496
541
  throw new Error(`Unknown tool: ${name}`);
497
542
  }
@@ -532,13 +577,16 @@ class AgentDBMCPServer {
532
577
  // ============================================================================
533
578
  async handleInit(args) {
534
579
  const db = await this.registry.getOrCreate(args);
580
+ // Initialize learning tools
581
+ const learningManager = this.registry.getOrCreateLearningManager();
582
+ this.learningTools = new mcp_learning_tools_js_1.MCPLearningTools(learningManager);
535
583
  return {
536
584
  content: [
537
585
  {
538
586
  type: 'text',
539
587
  text: JSON.stringify({
540
588
  success: true,
541
- message: 'AgentDB initialized successfully',
589
+ message: 'AgentDB initialized successfully with learning capabilities',
542
590
  backend: db.getBackendType(),
543
591
  config: {
544
592
  path: args.path || 'in-memory',
@@ -546,6 +594,7 @@ class AgentDBMCPServer {
546
594
  queryCache: args.enableQueryCache ?? true,
547
595
  quantization: args.enableQuantization ?? false,
548
596
  },
597
+ learningEnabled: true,
549
598
  }, null, 2),
550
599
  },
551
600
  ],
@@ -756,6 +805,25 @@ class AgentDBMCPServer {
756
805
  ],
757
806
  };
758
807
  }
808
+ async handleLearningTool(toolName, args) {
809
+ if (!this.learningTools) {
810
+ throw new Error('Learning tools not initialized. Call agentdb_init first.');
811
+ }
812
+ const result = await this.learningTools.handleToolCall(toolName, args);
813
+ return {
814
+ content: [
815
+ {
816
+ type: 'text',
817
+ text: JSON.stringify({
818
+ success: true,
819
+ tool: toolName,
820
+ result,
821
+ timestamp: Date.now(),
822
+ }, null, 2),
823
+ },
824
+ ],
825
+ };
826
+ }
759
827
  async start() {
760
828
  const transport = new stdio_js_1.StdioServerTransport();
761
829
  await this.server.connect(transport);
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,8 @@ import { SQLiteVectorDB } from './core/vector-db.mjs';
11
11
  import { PatternMatcher } from './reasoning/pattern-matcher.mjs';
12
12
  import { BackendType } from './core/backend-interface.mjs';
13
13
  import { z } from 'zod';
14
+ import { LearningManager } from './mcp/learning/core/learning-manager.mjs';
15
+ import { MCPLearningTools } from './mcp/learning/tools/mcp-learning-tools.mjs';
14
16
  // ============================================================================
15
17
  // Type Definitions
16
18
  // ============================================================================
@@ -295,7 +297,12 @@ const tools = [
295
297
  properties: {},
296
298
  },
297
299
  },
300
+ // Learning tools - will be dynamically added
298
301
  ];
302
+ // Helper function to merge learning tools
303
+ function getAllTools() {
304
+ return [...tools];
305
+ }
299
306
  // ============================================================================
300
307
  // Database Registry
301
308
  // ============================================================================
@@ -303,6 +310,7 @@ class AgentDBRegistry {
303
310
  constructor() {
304
311
  this.db = null;
305
312
  this.patternMatcher = null;
313
+ this.learningManager = null;
306
314
  this.config = null;
307
315
  }
308
316
  async getOrCreate(config = {}) {
@@ -341,6 +349,18 @@ class AgentDBRegistry {
341
349
  getPatternMatcher() {
342
350
  return this.patternMatcher;
343
351
  }
352
+ getLearningManager() {
353
+ return this.learningManager;
354
+ }
355
+ getOrCreateLearningManager() {
356
+ if (!this.learningManager) {
357
+ if (!this.db) {
358
+ throw new Error('Database must be initialized before learning manager');
359
+ }
360
+ this.learningManager = new LearningManager(this.db);
361
+ }
362
+ return this.learningManager;
363
+ }
344
364
  close() {
345
365
  if (this.db) {
346
366
  this.db.close();
@@ -441,6 +461,7 @@ class ResourceHandler {
441
461
  // ============================================================================
442
462
  export class AgentDBMCPServer {
443
463
  constructor() {
464
+ this.learningTools = null;
444
465
  this.registry = new AgentDBRegistry();
445
466
  this.resourceHandler = new ResourceHandler(this.registry);
446
467
  this.server = new Server({
@@ -457,9 +478,21 @@ export class AgentDBMCPServer {
457
478
  }
458
479
  setupHandlers() {
459
480
  // List available tools
460
- this.server.setRequestHandler(ListToolsRequestSchema, async () => ({
461
- tools,
462
- }));
481
+ this.server.setRequestHandler(ListToolsRequestSchema, async () => {
482
+ const allTools = [...tools];
483
+ // Add learning tools if learning manager is available
484
+ if (this.learningTools) {
485
+ const learningToolDefs = this.learningTools.getToolDefinitions();
486
+ for (const [name, def] of Object.entries(learningToolDefs)) {
487
+ allTools.push({
488
+ name,
489
+ description: def.description,
490
+ inputSchema: def.inputSchema,
491
+ });
492
+ }
493
+ }
494
+ return { tools: allTools };
495
+ });
463
496
  // List available resources
464
497
  this.server.setRequestHandler(ListResourcesRequestSchema, async () => this.resourceHandler.listResources());
465
498
  // Read resource
@@ -489,6 +522,18 @@ export class AgentDBMCPServer {
489
522
  return await this.handlePatternStats(args);
490
523
  case 'agentdb_clear_cache':
491
524
  return await this.handleClearCache(args);
525
+ // Learning tools
526
+ case 'learning_start_session':
527
+ case 'learning_end_session':
528
+ case 'learning_predict':
529
+ case 'learning_feedback':
530
+ case 'learning_train':
531
+ case 'learning_metrics':
532
+ case 'learning_transfer':
533
+ case 'learning_explain':
534
+ case 'experience_record':
535
+ case 'reward_signal':
536
+ return await this.handleLearningTool(name, args);
492
537
  default:
493
538
  throw new Error(`Unknown tool: ${name}`);
494
539
  }
@@ -529,13 +574,16 @@ export class AgentDBMCPServer {
529
574
  // ============================================================================
530
575
  async handleInit(args) {
531
576
  const db = await this.registry.getOrCreate(args);
577
+ // Initialize learning tools
578
+ const learningManager = this.registry.getOrCreateLearningManager();
579
+ this.learningTools = new MCPLearningTools(learningManager);
532
580
  return {
533
581
  content: [
534
582
  {
535
583
  type: 'text',
536
584
  text: JSON.stringify({
537
585
  success: true,
538
- message: 'AgentDB initialized successfully',
586
+ message: 'AgentDB initialized successfully with learning capabilities',
539
587
  backend: db.getBackendType(),
540
588
  config: {
541
589
  path: args.path || 'in-memory',
@@ -543,6 +591,7 @@ export class AgentDBMCPServer {
543
591
  queryCache: args.enableQueryCache ?? true,
544
592
  quantization: args.enableQuantization ?? false,
545
593
  },
594
+ learningEnabled: true,
546
595
  }, null, 2),
547
596
  },
548
597
  ],
@@ -753,6 +802,25 @@ export class AgentDBMCPServer {
753
802
  ],
754
803
  };
755
804
  }
805
+ async handleLearningTool(toolName, args) {
806
+ if (!this.learningTools) {
807
+ throw new Error('Learning tools not initialized. Call agentdb_init first.');
808
+ }
809
+ const result = await this.learningTools.handleToolCall(toolName, args);
810
+ return {
811
+ content: [
812
+ {
813
+ type: 'text',
814
+ text: JSON.stringify({
815
+ success: true,
816
+ tool: toolName,
817
+ result,
818
+ timestamp: Date.now(),
819
+ }, null, 2),
820
+ },
821
+ ],
822
+ };
823
+ }
756
824
  async start() {
757
825
  const transport = new StdioServerTransport();
758
826
  await this.server.connect(transport);