vesper-memory 0.5.2 → 0.5.4

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 (82) hide show
  1. package/README.md +49 -14
  2. package/config/claude-rules/memory-discipline.md +39 -0
  3. package/config/claude-rules/vesper.md +218 -0
  4. package/dist/cli.js +59 -0
  5. package/dist/cli.js.map +1 -1
  6. package/package.json +1 -2
  7. package/dist/cli 2.js +0 -583
  8. package/dist/cli.d 2.ts +0 -8
  9. package/dist/cli.d.ts 2.map +0 -1
  10. package/dist/cli.js 2.map +0 -1
  11. package/dist/config 2/rate-limits.d.ts +0 -76
  12. package/dist/config 2/rate-limits.d.ts.map +0 -1
  13. package/dist/config 2/rate-limits.js +0 -161
  14. package/dist/config 2/rate-limits.js.map +0 -1
  15. package/dist/consolidation 2/pipeline.d.ts +0 -52
  16. package/dist/consolidation 2/pipeline.d.ts.map +0 -1
  17. package/dist/consolidation 2/pipeline.js +0 -193
  18. package/dist/consolidation 2/pipeline.js.map +0 -1
  19. package/dist/embeddings 2/client.d.ts +0 -94
  20. package/dist/embeddings 2/client.d.ts.map +0 -1
  21. package/dist/embeddings 2/client.js +0 -144
  22. package/dist/embeddings 2/client.js.map +0 -1
  23. package/dist/memory-layers 2/semantic-memory.d.ts +0 -33
  24. package/dist/memory-layers 2/semantic-memory.d.ts.map +0 -1
  25. package/dist/memory-layers 2/semantic-memory.js +0 -114
  26. package/dist/memory-layers 2/semantic-memory.js.map +0 -1
  27. package/dist/memory-layers 2/skill-library.d.ts +0 -25
  28. package/dist/memory-layers 2/skill-library.d.ts.map +0 -1
  29. package/dist/memory-layers 2/skill-library.js +0 -54
  30. package/dist/memory-layers 2/skill-library.js.map +0 -1
  31. package/dist/memory-layers 2/working-memory.d.ts +0 -57
  32. package/dist/memory-layers 2/working-memory.d.ts.map +0 -1
  33. package/dist/memory-layers 2/working-memory.js +0 -153
  34. package/dist/memory-layers 2/working-memory.js.map +0 -1
  35. package/dist/middleware 2/auth.d.ts +0 -287
  36. package/dist/middleware 2/auth.d.ts.map +0 -1
  37. package/dist/middleware 2/auth.js +0 -610
  38. package/dist/middleware 2/auth.js.map +0 -1
  39. package/dist/monitoring 2/health.d.ts +0 -241
  40. package/dist/monitoring 2/health.d.ts.map +0 -1
  41. package/dist/monitoring 2/health.js +0 -649
  42. package/dist/monitoring 2/health.js.map +0 -1
  43. package/dist/monitoring 2/metrics.d.ts +0 -153
  44. package/dist/monitoring 2/metrics.d.ts.map +0 -1
  45. package/dist/monitoring 2/metrics.js +0 -349
  46. package/dist/monitoring 2/metrics.js.map +0 -1
  47. package/dist/retrieval 2/hybrid-search.d.ts +0 -186
  48. package/dist/retrieval 2/hybrid-search.d.ts.map +0 -1
  49. package/dist/retrieval 2/hybrid-search.js +0 -327
  50. package/dist/retrieval 2/hybrid-search.js.map +0 -1
  51. package/dist/router 2/smart-router.d.ts +0 -111
  52. package/dist/router 2/smart-router.d.ts.map +0 -1
  53. package/dist/router 2/smart-router.js +0 -383
  54. package/dist/router 2/smart-router.js.map +0 -1
  55. package/dist/security 2/rate-limit-middleware.d.ts +0 -119
  56. package/dist/security 2/rate-limit-middleware.d.ts.map +0 -1
  57. package/dist/security 2/rate-limit-middleware.js +0 -193
  58. package/dist/security 2/rate-limit-middleware.js.map +0 -1
  59. package/dist/server 2.js +0 -861
  60. package/dist/server-wrapper 2.js +0 -170
  61. package/dist/server-wrapper.d 2.ts +0 -12
  62. package/dist/server-wrapper.d.ts 2.map +0 -1
  63. package/dist/server-wrapper.js 2.map +0 -1
  64. package/dist/server.d 2.ts +0 -14
  65. package/dist/server.d.ts 2.map +0 -1
  66. package/dist/server.js 2.map +0 -1
  67. package/dist/synthesis 2/conflict-detector.d.ts +0 -43
  68. package/dist/synthesis 2/conflict-detector.d.ts.map +0 -1
  69. package/dist/synthesis 2/conflict-detector.js +0 -125
  70. package/dist/synthesis 2/conflict-detector.js.map +0 -1
  71. package/dist/utils 2/monitoring.d.ts +0 -25
  72. package/dist/utils 2/monitoring.d.ts.map +0 -1
  73. package/dist/utils 2/monitoring.js +0 -41
  74. package/dist/utils 2/monitoring.js.map +0 -1
  75. package/dist/utils 2/rate-limiter.d.ts +0 -97
  76. package/dist/utils 2/rate-limiter.d.ts.map +0 -1
  77. package/dist/utils 2/rate-limiter.js +0 -166
  78. package/dist/utils 2/rate-limiter.js.map +0 -1
  79. package/dist/utils 2/validation.d.ts +0 -139
  80. package/dist/utils 2/validation.d.ts.map +0 -1
  81. package/dist/utils 2/validation.js +0 -195
  82. package/dist/utils 2/validation.js.map +0 -1
@@ -1,170 +0,0 @@
1
- #!/usr/bin/env node
2
- /**
3
- * Vesper Server Wrapper
4
- *
5
- * Global bin entry point that:
6
- * - Detects package installation location
7
- * - Sets proper working directory for Docker, data, config access
8
- * - Checks Docker services before starting
9
- * - Starts the MCP server with correct context
10
- */
11
- import { dirname, join } from 'path';
12
- import { fileURLToPath } from 'url';
13
- import { existsSync } from 'fs';
14
- import { execSync } from 'child_process';
15
- const __filename = fileURLToPath(import.meta.url);
16
- const __dirname = dirname(__filename);
17
- // Colors for terminal output
18
- const colors = {
19
- reset: '\x1b[0m',
20
- red: '\x1b[31m',
21
- yellow: '\x1b[33m',
22
- blue: '\x1b[34m',
23
- green: '\x1b[32m',
24
- };
25
- function error(message) {
26
- console.error(`${colors.red}❌ ${message}${colors.reset}`);
27
- }
28
- function warning(message) {
29
- console.error(`${colors.yellow}⚠️ ${message}${colors.reset}`);
30
- }
31
- function info(message) {
32
- console.error(`${colors.blue}ℹ️ ${message}${colors.reset}`);
33
- }
34
- function success(message) {
35
- console.error(`${colors.green}✅ ${message}${colors.reset}`);
36
- }
37
- /**
38
- * Detect package root directory
39
- * This could be ~/.vesper or a local installation
40
- */
41
- function getPackageRoot() {
42
- // dist/server-wrapper.js -> package root
43
- return dirname(__dirname);
44
- }
45
- /**
46
- * Check if Docker is running
47
- */
48
- function isDockerRunning() {
49
- try {
50
- execSync('docker info', { stdio: 'ignore' });
51
- return true;
52
- }
53
- catch {
54
- return false;
55
- }
56
- }
57
- /**
58
- * Check if a Docker service is running and healthy
59
- */
60
- function checkDockerService(serviceName, packageRoot) {
61
- try {
62
- const output = execSync(`docker-compose ps --format json ${serviceName}`, {
63
- cwd: packageRoot,
64
- encoding: 'utf-8',
65
- stdio: ['pipe', 'pipe', 'ignore'],
66
- });
67
- if (!output.trim()) {
68
- return { running: false, healthy: false, error: 'Service not found' };
69
- }
70
- const service = JSON.parse(output.trim().split('\n')[0]);
71
- const running = service.State === 'running';
72
- const healthy = service.Health === 'healthy' || service.Health === '';
73
- return { running, healthy };
74
- }
75
- catch (err) {
76
- return { running: false, healthy: false, error: err.message };
77
- }
78
- }
79
- /**
80
- * Check all required Docker services
81
- * Note: This is informational only - the server will gracefully degrade if services are unavailable
82
- */
83
- function checkRequiredServices(packageRoot) {
84
- const requiredServices = ['redis', 'qdrant', 'embedding'];
85
- const errors = [];
86
- info('Checking required services...');
87
- // Only check if docker-compose.yml exists in package root
88
- const dockerComposePath = join(packageRoot, 'docker-compose.yml');
89
- if (!existsSync(dockerComposePath)) {
90
- info('docker-compose.yml not found - assuming services managed externally');
91
- info('The server will connect to services at configured URLs');
92
- return {
93
- allHealthy: true, // Don't block - let the server try to connect
94
- errors: [],
95
- };
96
- }
97
- for (const service of requiredServices) {
98
- const status = checkDockerService(service, packageRoot);
99
- if (!status.running) {
100
- errors.push(`${service}: Not running${status.error ? ` (${status.error})` : ''}`);
101
- }
102
- else if (!status.healthy) {
103
- warning(`${service}: Running but not healthy yet (may still be starting)`);
104
- }
105
- else {
106
- success(`${service}: Running and healthy`);
107
- }
108
- }
109
- return {
110
- allHealthy: errors.length === 0,
111
- errors,
112
- };
113
- }
114
- /**
115
- * Main entry point
116
- */
117
- async function main() {
118
- const packageRoot = getPackageRoot();
119
- // Verify server.js exists
120
- const serverPath = join(packageRoot, 'dist', 'server.js');
121
- if (!existsSync(serverPath)) {
122
- error(`Server not found at ${serverPath}`);
123
- error('The package may not be properly installed.');
124
- error('Try reinstalling: npm install -g vesper');
125
- process.exit(1);
126
- }
127
- // Note: docker-compose.yml is optional - services can be managed externally
128
- // The server will connect to services via environment variables
129
- // Set working directory to package root
130
- // This allows Docker Compose and the server to find config files, data, etc.
131
- process.chdir(packageRoot);
132
- info(`Working directory: ${packageRoot}`);
133
- // Check if Docker is running
134
- if (!isDockerRunning()) {
135
- error('Docker is not running');
136
- console.error('');
137
- console.error('Please start Docker Desktop and try again.');
138
- console.error('');
139
- console.error('After starting Docker, run:');
140
- console.error(` cd ${packageRoot}`);
141
- console.error(' docker-compose up -d redis qdrant embedding');
142
- console.error('');
143
- process.exit(1);
144
- }
145
- // Check required services (informational only)
146
- const servicesCheck = checkRequiredServices(packageRoot);
147
- if (!servicesCheck.allHealthy && servicesCheck.errors.length > 0) {
148
- warning('Some services may not be running:');
149
- servicesCheck.errors.forEach((err) => console.error(` • ${err}`));
150
- console.error('');
151
- info('The server will run in degraded mode without unavailable services');
152
- info('To start services, ensure Docker is running and:');
153
- console.error(` cd ${packageRoot}`);
154
- console.error(' docker-compose up -d redis qdrant embedding');
155
- console.error('');
156
- }
157
- // All checks passed, start the server
158
- info('Starting Vesper MCP server...');
159
- // Import and run the server
160
- // The server will inherit the working directory we set
161
- await import(serverPath);
162
- }
163
- // Run with error handling
164
- main().catch((err) => {
165
- error(`Failed to start server: ${err.message}`);
166
- console.error('');
167
- console.error('For help, visit: https://github.com/fitz2882/vesper/issues');
168
- process.exit(1);
169
- });
170
- //# sourceMappingURL=server-wrapper.js.map
@@ -1,12 +0,0 @@
1
- #!/usr/bin/env node
2
- /**
3
- * Vesper Server Wrapper
4
- *
5
- * Global bin entry point that:
6
- * - Detects package installation location
7
- * - Sets proper working directory for Docker, data, config access
8
- * - Checks Docker services before starting
9
- * - Starts the MCP server with correct context
10
- */
11
- export {};
12
- //# sourceMappingURL=server-wrapper.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"server-wrapper.d.ts","sourceRoot":"","sources":["../src/server-wrapper.ts"],"names":[],"mappings":";AAEA;;;;;;;;GAQG"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"server-wrapper.js","sourceRoot":"","sources":["../src/server-wrapper.ts"],"names":[],"mappings":"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"}
@@ -1,14 +0,0 @@
1
- /**
2
- * Vesper - AI Memory System
3
- *
4
- * Main entry point for the Model Context Protocol server.
5
- * Implements a neuroscience-inspired memory system for Claude Code agents.
6
- *
7
- * This server provides:
8
- * - store_memory: Add memories to working memory
9
- * - retrieve_memory: Query with smart routing
10
- * - list_recent: Get last 5 conversations
11
- * - get_stats: Return system metrics
12
- */
13
- export {};
14
- //# sourceMappingURL=server.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -1,43 +0,0 @@
1
- /**
2
- * Conflict Detection - v3.0 Implementation
3
- *
4
- * Detect contradictions, temporal impossibilities, preference shifts.
5
- * Flag but never auto-resolve - honesty over guessing.
6
- */
7
- import Database from 'better-sqlite3';
8
- export interface Conflict {
9
- id: string;
10
- factId1: string;
11
- factId2: string;
12
- conflictType: 'temporal_overlap' | 'contradiction' | 'preference_shift';
13
- description: string;
14
- severity: 'low' | 'medium' | 'high';
15
- }
16
- export declare class ConflictDetector {
17
- private db;
18
- constructor(db: Database.Database);
19
- /**
20
- * Detect all types of conflicts
21
- */
22
- detectAll(): Conflict[];
23
- /**
24
- * Temporal impossibilities
25
- * Example: "worked at A in 2020" vs "worked at B in 2020"
26
- */
27
- private detectTemporalConflicts;
28
- /**
29
- * Direct contradictions
30
- * Example: "allergic to peanuts" vs "loves peanut butter"
31
- */
32
- private detectDirectContradictions;
33
- /**
34
- * Preference changes over time
35
- * Example: "prefers Python" (old) vs "prefers Rust" (recent)
36
- */
37
- private detectPreferenceShifts;
38
- /**
39
- * Store detected conflict
40
- */
41
- storeConflict(conflict: Conflict): void;
42
- }
43
- //# sourceMappingURL=conflict-detector.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"conflict-detector.d.ts","sourceRoot":"","sources":["../../src/synthesis/conflict-detector.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAEtC,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,kBAAkB,GAAG,eAAe,GAAG,kBAAkB,CAAC;IACxE,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;CACrC;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,EAAE,CAAoB;gBAElB,EAAE,EAAE,QAAQ,CAAC,QAAQ;IAIjC;;OAEG;IACH,SAAS,IAAI,QAAQ,EAAE;IAWvB;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IA8B/B;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IA8BlC;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IA+B9B;;OAEG;IACH,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;CAoBxC"}
@@ -1,125 +0,0 @@
1
- /**
2
- * Conflict Detection - v3.0 Implementation
3
- *
4
- * Detect contradictions, temporal impossibilities, preference shifts.
5
- * Flag but never auto-resolve - honesty over guessing.
6
- */
7
- export class ConflictDetector {
8
- db;
9
- constructor(db) {
10
- this.db = db;
11
- }
12
- /**
13
- * Detect all types of conflicts
14
- */
15
- detectAll() {
16
- const conflicts = [];
17
- // Check direct contradictions first (more specific than temporal overlaps)
18
- conflicts.push(...this.detectDirectContradictions());
19
- conflicts.push(...this.detectTemporalConflicts());
20
- conflicts.push(...this.detectPreferenceShifts());
21
- return conflicts;
22
- }
23
- /**
24
- * Temporal impossibilities
25
- * Example: "worked at A in 2020" vs "worked at B in 2020"
26
- */
27
- detectTemporalConflicts() {
28
- const conflicts = [];
29
- // Detect temporal overlaps including open-ended periods
30
- // Note: Direct contradictions with same valid_from are handled separately
31
- const results = this.db.prepare(`
32
- SELECT f1.*, f2.id as f2_id, f2.value as f2_value, f2.valid_from as f2_valid_from
33
- FROM facts f1
34
- JOIN facts f2 ON f1.entity_id = f2.entity_id AND f1.property = f2.property
35
- WHERE f1.id < f2.id
36
- AND f1.value != f2.value
37
- AND f1.valid_from <= COALESCE(f2.valid_until, '9999-12-31')
38
- AND COALESCE(f1.valid_until, '9999-12-31') >= f2.valid_from
39
- AND NOT (f1.valid_until IS NULL AND f2.valid_until IS NULL AND f1.valid_from = f2.valid_from)
40
- `).all();
41
- for (const row of results) {
42
- conflicts.push({
43
- id: 'conflict_' + Date.now() + '_' + Math.random().toString(36).substr(2, 9),
44
- factId1: row.id,
45
- factId2: row.f2_id,
46
- conflictType: 'temporal_overlap',
47
- description: `Temporal overlap: "${row.value}" and "${row.f2_value}" both claim to be true for ${row.property}`,
48
- severity: 'high',
49
- });
50
- }
51
- return conflicts;
52
- }
53
- /**
54
- * Direct contradictions
55
- * Example: "allergic to peanuts" vs "loves peanut butter"
56
- */
57
- detectDirectContradictions() {
58
- const conflicts = [];
59
- // Direct contradictions: both indefinite AND same start date
60
- const results = this.db.prepare(`
61
- SELECT f1.*, f2.id as f2_id, f2.value as f2_value
62
- FROM facts f1
63
- JOIN facts f2 ON f1.entity_id = f2.entity_id
64
- WHERE f1.id < f2.id
65
- AND f1.property = f2.property
66
- AND f1.value != f2.value
67
- AND f1.valid_until IS NULL
68
- AND f2.valid_until IS NULL
69
- AND f1.valid_from = f2.valid_from
70
- `).all();
71
- for (const row of results) {
72
- conflicts.push({
73
- id: 'conflict_' + Date.now() + '_' + Math.random().toString(36).substr(2, 9),
74
- factId1: row.id,
75
- factId2: row.f2_id,
76
- conflictType: 'contradiction',
77
- description: `Contradiction: "${row.value}" vs "${row.f2_value}" for ${row.property}`,
78
- severity: 'medium',
79
- });
80
- }
81
- return conflicts;
82
- }
83
- /**
84
- * Preference changes over time
85
- * Example: "prefers Python" (old) vs "prefers Rust" (recent)
86
- */
87
- detectPreferenceShifts() {
88
- const conflicts = [];
89
- const results = this.db.prepare(`
90
- SELECT e1.*, e2.id as e2_id, e2.name as e2_name, e2.created_at as e2_created
91
- FROM entities e1
92
- JOIN entities e2 ON e1.type = e2.type AND e1.type = 'preference'
93
- WHERE e1.id < e2.id
94
- AND e1.name != e2.name
95
- AND e1.description = e2.description
96
- `).all();
97
- for (const row of results) {
98
- const timeDiff = new Date(row.e2_created).getTime() - new Date(row.created_at).getTime();
99
- const daysDiff = timeDiff / (1000 * 60 * 60 * 24);
100
- if (daysDiff > 7) {
101
- conflicts.push({
102
- id: 'conflict_' + Date.now() + '_' + Math.random().toString(36).substr(2, 9),
103
- factId1: row.id,
104
- factId2: row.e2_id,
105
- conflictType: 'preference_shift',
106
- description: `Preference shifted from "${row.name}" to "${row.e2_name}" over ${Math.round(daysDiff)} days`,
107
- severity: 'low',
108
- });
109
- }
110
- }
111
- return conflicts;
112
- }
113
- /**
114
- * Store detected conflict
115
- */
116
- storeConflict(conflict) {
117
- this.db.prepare(`
118
- INSERT INTO conflicts (id, fact_id_1, fact_id_2, conflict_type, description, severity, resolution_status)
119
- VALUES (?, ?, ?, ?, ?, ?, ?)
120
- `).run(conflict.id, conflict.factId1, conflict.factId2, conflict.conflictType, conflict.description, conflict.severity, 'flagged');
121
- // Lower confidence on both facts
122
- this.db.prepare('UPDATE facts SET confidence = 0.5 WHERE id IN (?, ?)').run(conflict.factId1, conflict.factId2);
123
- }
124
- }
125
- //# sourceMappingURL=conflict-detector.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"conflict-detector.js","sourceRoot":"","sources":["../../src/synthesis/conflict-detector.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAaH,MAAM,OAAO,gBAAgB;IACnB,EAAE,CAAoB;IAE9B,YAAY,EAAqB;QAC/B,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACf,CAAC;IAED;;OAEG;IACH,SAAS;QACP,MAAM,SAAS,GAAe,EAAE,CAAC;QAEjC,2EAA2E;QAC3E,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,0BAA0B,EAAE,CAAC,CAAC;QACrD,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,uBAAuB,EAAE,CAAC,CAAC;QAClD,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC,CAAC;QAEjD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;OAGG;IACK,uBAAuB;QAC7B,MAAM,SAAS,GAAe,EAAE,CAAC;QAEjC,wDAAwD;QACxD,0EAA0E;QAC1E,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;;;;;KAS/B,CAAC,CAAC,GAAG,EAAW,CAAC;QAElB,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;YAC1B,SAAS,CAAC,IAAI,CAAC;gBACb,EAAE,EAAE,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;gBAC5E,OAAO,EAAE,GAAG,CAAC,EAAE;gBACf,OAAO,EAAE,GAAG,CAAC,KAAK;gBAClB,YAAY,EAAE,kBAAkB;gBAChC,WAAW,EAAE,sBAAsB,GAAG,CAAC,KAAK,UAAU,GAAG,CAAC,QAAQ,+BAA+B,GAAG,CAAC,QAAQ,EAAE;gBAC/G,QAAQ,EAAE,MAAM;aACjB,CAAC,CAAC;QACL,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;OAGG;IACK,0BAA0B;QAChC,MAAM,SAAS,GAAe,EAAE,CAAC;QAEjC,6DAA6D;QAC7D,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;;;;;;KAU/B,CAAC,CAAC,GAAG,EAAW,CAAC;QAElB,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;YAC1B,SAAS,CAAC,IAAI,CAAC;gBACb,EAAE,EAAE,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;gBAC5E,OAAO,EAAE,GAAG,CAAC,EAAE;gBACf,OAAO,EAAE,GAAG,CAAC,KAAK;gBAClB,YAAY,EAAE,eAAe;gBAC7B,WAAW,EAAE,mBAAmB,GAAG,CAAC,KAAK,SAAS,GAAG,CAAC,QAAQ,SAAS,GAAG,CAAC,QAAQ,EAAE;gBACrF,QAAQ,EAAE,QAAQ;aACnB,CAAC,CAAC;QACL,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;OAGG;IACK,sBAAsB;QAC5B,MAAM,SAAS,GAAe,EAAE,CAAC;QAEjC,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;;;KAO/B,CAAC,CAAC,GAAG,EAAW,CAAC;QAElB,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;YAC1B,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC;YACzF,MAAM,QAAQ,GAAG,QAAQ,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;YAElD,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;gBACjB,SAAS,CAAC,IAAI,CAAC;oBACb,EAAE,EAAE,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;oBAC5E,OAAO,EAAE,GAAG,CAAC,EAAE;oBACf,OAAO,EAAE,GAAG,CAAC,KAAK;oBAClB,YAAY,EAAE,kBAAkB;oBAChC,WAAW,EAAE,4BAA4B,GAAG,CAAC,IAAI,SAAS,GAAG,CAAC,OAAO,UAAU,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO;oBAC1G,QAAQ,EAAE,KAAK;iBAChB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,QAAkB;QAC9B,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;KAGf,CAAC,CAAC,GAAG,CACJ,QAAQ,CAAC,EAAE,EACX,QAAQ,CAAC,OAAO,EAChB,QAAQ,CAAC,OAAO,EAChB,QAAQ,CAAC,YAAY,EACrB,QAAQ,CAAC,WAAW,EACpB,QAAQ,CAAC,QAAQ,EACjB,SAAS,CACV,CAAC;QAEF,iCAAiC;QACjC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,sDAAsD,CAAC,CAAC,GAAG,CACzE,QAAQ,CAAC,OAAO,EAChB,QAAQ,CAAC,OAAO,CACjB,CAAC;IACJ,CAAC;CACF"}
@@ -1,25 +0,0 @@
1
- /**
2
- * Monitoring & Logging - v3.0
3
- *
4
- * Track latency, accuracy, cache hit rates.
5
- */
6
- export interface PerformanceMetrics {
7
- p50: number;
8
- p95: number;
9
- p99: number;
10
- }
11
- export declare class PerformanceMonitor {
12
- private latencies;
13
- private cacheHits;
14
- private cacheMisses;
15
- recordLatency(ms: number): void;
16
- recordCacheHit(): void;
17
- recordCacheMiss(): void;
18
- getMetrics(): {
19
- latency: PerformanceMetrics;
20
- cacheHitRate: number;
21
- totalRequests: number;
22
- };
23
- reset(): void;
24
- }
25
- //# sourceMappingURL=monitoring.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"monitoring.d.ts","sourceRoot":"","sources":["../../src/utils/monitoring.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACb;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,SAAS,CAAgB;IACjC,OAAO,CAAC,SAAS,CAAa;IAC9B,OAAO,CAAC,WAAW,CAAa;IAEhC,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAO/B,cAAc,IAAI,IAAI;IAItB,eAAe,IAAI,IAAI;IAIvB,UAAU,IAAI;QACZ,OAAO,EAAE,kBAAkB,CAAC;QAC5B,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,EAAE,MAAM,CAAC;KACvB;IAgBD,KAAK,IAAI,IAAI;CAKd"}
@@ -1,41 +0,0 @@
1
- /**
2
- * Monitoring & Logging - v3.0
3
- *
4
- * Track latency, accuracy, cache hit rates.
5
- */
6
- export class PerformanceMonitor {
7
- latencies = [];
8
- cacheHits = 0;
9
- cacheMisses = 0;
10
- recordLatency(ms) {
11
- this.latencies.push(ms);
12
- if (this.latencies.length > 1000) {
13
- this.latencies.shift();
14
- }
15
- }
16
- recordCacheHit() {
17
- this.cacheHits++;
18
- }
19
- recordCacheMiss() {
20
- this.cacheMisses++;
21
- }
22
- getMetrics() {
23
- const sorted = [...this.latencies].sort((a, b) => a - b);
24
- const p50 = sorted[Math.floor(sorted.length * 0.5)] || 0;
25
- const p95 = sorted[Math.floor(sorted.length * 0.95)] || 0;
26
- const p99 = sorted[Math.floor(sorted.length * 0.99)] || 0;
27
- const total = this.cacheHits + this.cacheMisses;
28
- const hitRate = total > 0 ? this.cacheHits / total : 0;
29
- return {
30
- latency: { p50, p95, p99 },
31
- cacheHitRate: hitRate,
32
- totalRequests: this.latencies.length,
33
- };
34
- }
35
- reset() {
36
- this.latencies = [];
37
- this.cacheHits = 0;
38
- this.cacheMisses = 0;
39
- }
40
- }
41
- //# sourceMappingURL=monitoring.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"monitoring.js","sourceRoot":"","sources":["../../src/utils/monitoring.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,MAAM,OAAO,kBAAkB;IACrB,SAAS,GAAa,EAAE,CAAC;IACzB,SAAS,GAAW,CAAC,CAAC;IACtB,WAAW,GAAW,CAAC,CAAC;IAEhC,aAAa,CAAC,EAAU;QACtB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxB,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,IAAI,EAAE,CAAC;YACjC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QACzB,CAAC;IACH,CAAC;IAED,cAAc;QACZ,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;IAED,eAAe;QACb,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,UAAU;QAKR,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACzD,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;QACzD,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;QAE1D,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC;QAChD,MAAM,OAAO,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAEvD,OAAO;YACL,OAAO,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;YAC1B,YAAY,EAAE,OAAO;YACrB,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM;SACrC,CAAC;IACJ,CAAC;IAED,KAAK;QACH,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QACnB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;IACvB,CAAC;CACF"}
@@ -1,97 +0,0 @@
1
- /**
2
- * Rate Limiting Module
3
- *
4
- * Token bucket implementation for preventing DoS attacks and abuse.
5
- * Limits requests per user per time window.
6
- *
7
- * Security Features:
8
- * - Per-user rate limiting
9
- * - Configurable limits per operation type
10
- * - Redis-backed for distributed systems
11
- * - Automatic token refill
12
- */
13
- import { Redis } from 'ioredis';
14
- /**
15
- * Rate limit configuration per operation type
16
- */
17
- export interface RateLimitConfig {
18
- /** Maximum number of requests allowed */
19
- maxRequests: number;
20
- /** Time window in seconds */
21
- windowSeconds: number;
22
- }
23
- /**
24
- * Rate limit result
25
- */
26
- export interface RateLimitResult {
27
- /** Whether the request is allowed */
28
- allowed: boolean;
29
- /** Remaining requests in current window */
30
- remaining: number;
31
- /** Time until window resets (seconds) */
32
- resetIn: number;
33
- /** Total limit */
34
- limit: number;
35
- }
36
- /**
37
- * Default rate limits per operation
38
- */
39
- export declare const DEFAULT_RATE_LIMITS: Record<string, RateLimitConfig>;
40
- /**
41
- * Token Bucket Rate Limiter
42
- *
43
- * Implements the token bucket algorithm using Redis for distributed rate limiting.
44
- * Each user has a separate bucket per operation type.
45
- */
46
- export declare class RateLimiter {
47
- private redis;
48
- private limits;
49
- constructor(redis: Redis, limits?: Record<string, RateLimitConfig>);
50
- /**
51
- * Check if a request is allowed under rate limits
52
- *
53
- * @param userId - User identifier
54
- * @param operation - Operation name (e.g., "store_memory")
55
- * @returns Rate limit result with allowed status and metadata
56
- */
57
- checkLimit(userId: string, operation: string): Promise<RateLimitResult>;
58
- /**
59
- * Reset rate limit for a user and operation
60
- *
61
- * Useful for testing or administrative overrides.
62
- *
63
- * @param userId - User identifier
64
- * @param operation - Operation name
65
- */
66
- resetLimit(userId: string, operation: string): Promise<void>;
67
- /**
68
- * Get current usage for a user and operation
69
- *
70
- * @param userId - User identifier
71
- * @param operation - Operation name
72
- * @returns Current request count in window
73
- */
74
- getUsage(userId: string, operation: string): Promise<number>;
75
- /**
76
- * Update rate limit configuration
77
- *
78
- * @param operation - Operation name
79
- * @param config - New rate limit configuration
80
- */
81
- setLimit(operation: string, config: RateLimitConfig): void;
82
- /**
83
- * Get rate limit configuration for an operation
84
- *
85
- * @param operation - Operation name
86
- * @returns Rate limit configuration
87
- */
88
- getLimit(operation: string): RateLimitConfig | undefined;
89
- }
90
- /**
91
- * Factory function to create a rate limiter
92
- *
93
- * @param redis - Redis client
94
- * @param limits - Optional custom rate limits
95
- */
96
- export declare function createRateLimiter(redis: Redis, limits?: Record<string, RateLimitConfig>): RateLimiter;
97
- //# sourceMappingURL=rate-limiter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rate-limiter.d.ts","sourceRoot":"","sources":["../../src/utils/rate-limiter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAGhC;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,yCAAyC;IACzC,WAAW,EAAE,MAAM,CAAC;IACpB,6BAA6B;IAC7B,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,qCAAqC;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,2CAA2C;IAC3C,SAAS,EAAE,MAAM,CAAC;IAClB,yCAAyC;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB;IAClB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAiB/D,CAAC;AAEF;;;;;GAKG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,MAAM,CAAkC;gBAEpC,KAAK,EAAE,KAAK,EAAE,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAuB;IAKvF;;;;;;OAMG;IACG,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAgE7E;;;;;;;OAOG;IACG,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMlE;;;;;;OAMG;IACG,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAgBlE;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,IAAI;IAI1D;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;CAGzD;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,KAAK,EACZ,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GACvC,WAAW,CAEb"}