vesper-memory 0.3.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.
- package/.env.example +28 -0
- package/CHANGELOG.md +137 -0
- package/LICENSE +21 -0
- package/README.md +665 -0
- package/config/sqlite-schema.sql +413 -0
- package/dist/benchmark/index.d.ts +18 -0
- package/dist/benchmark/index.d.ts.map +1 -0
- package/dist/benchmark/index.js +19 -0
- package/dist/benchmark/index.js.map +1 -0
- package/dist/benchmark/metrics-collector.d.ts +90 -0
- package/dist/benchmark/metrics-collector.d.ts.map +1 -0
- package/dist/benchmark/metrics-collector.js +196 -0
- package/dist/benchmark/metrics-collector.js.map +1 -0
- package/dist/benchmark/report-generator.d.ts +35 -0
- package/dist/benchmark/report-generator.d.ts.map +1 -0
- package/dist/benchmark/report-generator.js +221 -0
- package/dist/benchmark/report-generator.js.map +1 -0
- package/dist/benchmark/runner.d.ts +30 -0
- package/dist/benchmark/runner.d.ts.map +1 -0
- package/dist/benchmark/runner.js +308 -0
- package/dist/benchmark/runner.js.map +1 -0
- package/dist/benchmark/scenarios/context-recall.d.ts +65 -0
- package/dist/benchmark/scenarios/context-recall.d.ts.map +1 -0
- package/dist/benchmark/scenarios/context-recall.js +180 -0
- package/dist/benchmark/scenarios/context-recall.js.map +1 -0
- package/dist/benchmark/scenarios/index.d.ts +34 -0
- package/dist/benchmark/scenarios/index.d.ts.map +1 -0
- package/dist/benchmark/scenarios/index.js +230 -0
- package/dist/benchmark/scenarios/index.js.map +1 -0
- package/dist/benchmark/statistics.d.ts +125 -0
- package/dist/benchmark/statistics.d.ts.map +1 -0
- package/dist/benchmark/statistics.js +520 -0
- package/dist/benchmark/statistics.js.map +1 -0
- package/dist/benchmark/types.d.ts +458 -0
- package/dist/benchmark/types.d.ts.map +1 -0
- package/dist/benchmark/types.js +297 -0
- package/dist/benchmark/types.js.map +1 -0
- package/dist/cli 2.js +583 -0
- package/dist/cli.d 2.ts +8 -0
- package/dist/cli.d.ts +8 -0
- package/dist/cli.d.ts 2.map +1 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +583 -0
- package/dist/cli.js 2.map +1 -0
- package/dist/cli.js.map +1 -0
- package/dist/config/rate-limits.d.ts +76 -0
- package/dist/config/rate-limits.d.ts.map +1 -0
- package/dist/config/rate-limits.js +161 -0
- package/dist/config/rate-limits.js.map +1 -0
- package/dist/config 2/rate-limits.d.ts +76 -0
- package/dist/config 2/rate-limits.d.ts.map +1 -0
- package/dist/config 2/rate-limits.js +161 -0
- package/dist/config 2/rate-limits.js.map +1 -0
- package/dist/consolidation/pipeline.d.ts +52 -0
- package/dist/consolidation/pipeline.d.ts.map +1 -0
- package/dist/consolidation/pipeline.js +193 -0
- package/dist/consolidation/pipeline.js.map +1 -0
- package/dist/consolidation 2/pipeline.d.ts +52 -0
- package/dist/consolidation 2/pipeline.d.ts.map +1 -0
- package/dist/consolidation 2/pipeline.js +193 -0
- package/dist/consolidation 2/pipeline.js.map +1 -0
- package/dist/embeddings/client.d.ts +95 -0
- package/dist/embeddings/client.d.ts.map +1 -0
- package/dist/embeddings/client.js +162 -0
- package/dist/embeddings/client.js.map +1 -0
- package/dist/embeddings 2/client.d.ts +94 -0
- package/dist/embeddings 2/client.d.ts.map +1 -0
- package/dist/embeddings 2/client.js +144 -0
- package/dist/embeddings 2/client.js.map +1 -0
- package/dist/memory-layers/semantic-memory.d.ts +76 -0
- package/dist/memory-layers/semantic-memory.d.ts.map +1 -0
- package/dist/memory-layers/semantic-memory.js +231 -0
- package/dist/memory-layers/semantic-memory.js.map +1 -0
- package/dist/memory-layers/skill-library.d.ts +25 -0
- package/dist/memory-layers/skill-library.d.ts.map +1 -0
- package/dist/memory-layers/skill-library.js +54 -0
- package/dist/memory-layers/skill-library.js.map +1 -0
- package/dist/memory-layers/working-memory.d.ts +57 -0
- package/dist/memory-layers/working-memory.d.ts.map +1 -0
- package/dist/memory-layers/working-memory.js +153 -0
- package/dist/memory-layers/working-memory.js.map +1 -0
- package/dist/memory-layers 2/semantic-memory.d.ts +33 -0
- package/dist/memory-layers 2/semantic-memory.d.ts.map +1 -0
- package/dist/memory-layers 2/semantic-memory.js +114 -0
- package/dist/memory-layers 2/semantic-memory.js.map +1 -0
- package/dist/memory-layers 2/skill-library.d.ts +25 -0
- package/dist/memory-layers 2/skill-library.d.ts.map +1 -0
- package/dist/memory-layers 2/skill-library.js +54 -0
- package/dist/memory-layers 2/skill-library.js.map +1 -0
- package/dist/memory-layers 2/working-memory.d.ts +57 -0
- package/dist/memory-layers 2/working-memory.d.ts.map +1 -0
- package/dist/memory-layers 2/working-memory.js +153 -0
- package/dist/memory-layers 2/working-memory.js.map +1 -0
- package/dist/middleware/auth.d.ts +287 -0
- package/dist/middleware/auth.d.ts.map +1 -0
- package/dist/middleware/auth.js +610 -0
- package/dist/middleware/auth.js.map +1 -0
- package/dist/middleware 2/auth.d.ts +287 -0
- package/dist/middleware 2/auth.d.ts.map +1 -0
- package/dist/middleware 2/auth.js +610 -0
- package/dist/middleware 2/auth.js.map +1 -0
- package/dist/monitoring/health.d.ts +241 -0
- package/dist/monitoring/health.d.ts.map +1 -0
- package/dist/monitoring/health.js +649 -0
- package/dist/monitoring/health.js.map +1 -0
- package/dist/monitoring/metrics.d.ts +153 -0
- package/dist/monitoring/metrics.d.ts.map +1 -0
- package/dist/monitoring/metrics.js +349 -0
- package/dist/monitoring/metrics.js.map +1 -0
- package/dist/monitoring 2/health.d.ts +241 -0
- package/dist/monitoring 2/health.d.ts.map +1 -0
- package/dist/monitoring 2/health.js +649 -0
- package/dist/monitoring 2/health.js.map +1 -0
- package/dist/monitoring 2/metrics.d.ts +153 -0
- package/dist/monitoring 2/metrics.d.ts.map +1 -0
- package/dist/monitoring 2/metrics.js +349 -0
- package/dist/monitoring 2/metrics.js.map +1 -0
- package/dist/retrieval/hybrid-search.d.ts +186 -0
- package/dist/retrieval/hybrid-search.d.ts.map +1 -0
- package/dist/retrieval/hybrid-search.js +330 -0
- package/dist/retrieval/hybrid-search.js.map +1 -0
- package/dist/retrieval 2/hybrid-search.d.ts +186 -0
- package/dist/retrieval 2/hybrid-search.d.ts.map +1 -0
- package/dist/retrieval 2/hybrid-search.js +327 -0
- package/dist/retrieval 2/hybrid-search.js.map +1 -0
- package/dist/router/smart-router.d.ts +157 -0
- package/dist/router/smart-router.d.ts.map +1 -0
- package/dist/router/smart-router.js +524 -0
- package/dist/router/smart-router.js.map +1 -0
- package/dist/router 2/smart-router.d.ts +111 -0
- package/dist/router 2/smart-router.d.ts.map +1 -0
- package/dist/router 2/smart-router.js +383 -0
- package/dist/router 2/smart-router.js.map +1 -0
- package/dist/security/rate-limit-middleware.d.ts +119 -0
- package/dist/security/rate-limit-middleware.d.ts.map +1 -0
- package/dist/security/rate-limit-middleware.js +193 -0
- package/dist/security/rate-limit-middleware.js.map +1 -0
- package/dist/security 2/rate-limit-middleware.d.ts +119 -0
- package/dist/security 2/rate-limit-middleware.d.ts.map +1 -0
- package/dist/security 2/rate-limit-middleware.js +193 -0
- package/dist/security 2/rate-limit-middleware.js.map +1 -0
- package/dist/server 2.js +861 -0
- package/dist/server-wrapper 2.js +170 -0
- package/dist/server-wrapper.d 2.ts +12 -0
- package/dist/server-wrapper.d.ts +12 -0
- package/dist/server-wrapper.d.ts 2.map +1 -0
- package/dist/server-wrapper.d.ts.map +1 -0
- package/dist/server-wrapper.js +170 -0
- package/dist/server-wrapper.js 2.map +1 -0
- package/dist/server-wrapper.js.map +1 -0
- package/dist/server.d 2.ts +14 -0
- package/dist/server.d.ts +14 -0
- package/dist/server.d.ts 2.map +1 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +656 -0
- package/dist/server.js 2.map +1 -0
- package/dist/server.js.map +1 -0
- package/dist/synthesis/conflict-detector.d.ts +43 -0
- package/dist/synthesis/conflict-detector.d.ts.map +1 -0
- package/dist/synthesis/conflict-detector.js +125 -0
- package/dist/synthesis/conflict-detector.js.map +1 -0
- package/dist/synthesis 2/conflict-detector.d.ts +43 -0
- package/dist/synthesis 2/conflict-detector.d.ts.map +1 -0
- package/dist/synthesis 2/conflict-detector.js +125 -0
- package/dist/synthesis 2/conflict-detector.js.map +1 -0
- package/dist/utils/monitoring.d.ts +25 -0
- package/dist/utils/monitoring.d.ts.map +1 -0
- package/dist/utils/monitoring.js +41 -0
- package/dist/utils/monitoring.js.map +1 -0
- package/dist/utils/rate-limiter.d.ts +97 -0
- package/dist/utils/rate-limiter.d.ts.map +1 -0
- package/dist/utils/rate-limiter.js +166 -0
- package/dist/utils/rate-limiter.js.map +1 -0
- package/dist/utils/validation.d.ts +139 -0
- package/dist/utils/validation.d.ts.map +1 -0
- package/dist/utils/validation.js +195 -0
- package/dist/utils/validation.js.map +1 -0
- package/dist/utils 2/monitoring.d.ts +25 -0
- package/dist/utils 2/monitoring.d.ts.map +1 -0
- package/dist/utils 2/monitoring.js +41 -0
- package/dist/utils 2/monitoring.js.map +1 -0
- package/dist/utils 2/rate-limiter.d.ts +97 -0
- package/dist/utils 2/rate-limiter.d.ts.map +1 -0
- package/dist/utils 2/rate-limiter.js +166 -0
- package/dist/utils 2/rate-limiter.js.map +1 -0
- package/dist/utils 2/validation.d.ts +139 -0
- package/dist/utils 2/validation.d.ts.map +1 -0
- package/dist/utils 2/validation.js +195 -0
- package/dist/utils 2/validation.js.map +1 -0
- package/docker-compose.yml +65 -0
- package/embedding-service/Dockerfile +29 -0
- package/embedding-service/README.md +68 -0
- package/embedding-service/requirements.txt +6 -0
- package/embedding-service/server.py +110 -0
- package/package.json +92 -0
- package/scripts/FRESH_INSTALL.md +280 -0
- package/scripts/README.md +101 -0
- package/scripts/ensure-infrastructure.sh +38 -0
- package/scripts/fresh-install-auto.sh +96 -0
- package/scripts/fresh-install.sh +167 -0
- package/scripts/health-check.sh +72 -0
- package/scripts/init-qdrant.ts +201 -0
- package/scripts/postinstall.js +94 -0
- package/scripts/run-accuracy-benchmark.ts +1237 -0
- package/scripts/run-real-benchmark.ts +581 -0
- package/scripts/test-mcp-server.sh +38 -0
|
@@ -0,0 +1,170 @@
|
|
|
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
|
|
@@ -0,0 +1,12 @@
|
|
|
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
|
|
@@ -0,0 +1,12 @@
|
|
|
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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server-wrapper.d.ts","sourceRoot":"","sources":["../src/server-wrapper.ts"],"names":[],"mappings":";AAEA;;;;;;;;GAQG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server-wrapper.d.ts","sourceRoot":"","sources":["../src/server-wrapper.ts"],"names":[],"mappings":";AAEA;;;;;;;;GAQG"}
|
|
@@ -0,0 +1,170 @@
|
|
|
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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server-wrapper.js","sourceRoot":"","sources":["../src/server-wrapper.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server-wrapper.js","sourceRoot":"","sources":["../src/server-wrapper.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
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
|
package/dist/server.d.ts
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Vesper - AI Memory System (Simplified)
|
|
3
|
+
*
|
|
4
|
+
* Main entry point for the Model Context Protocol server.
|
|
5
|
+
* This is a simplified version with NO authentication, rate limiting, or monitoring.
|
|
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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG"}
|