overmind-mcp 2.2.0 → 2.2.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.
- package/package.json +1 -1
- package/scripts/postinstall.mjs +44 -26
- package/scripts/uninstall.mjs +33 -6
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "overmind-mcp",
|
|
3
|
-
"version": "2.2.
|
|
3
|
+
"version": "2.2.2",
|
|
4
4
|
"preferGlobal": true,
|
|
5
5
|
"description": "Orchestrateur universel agents IA multi-modeles via MCP. Inclut le protocole 'Custom-Nickname' pour identifier vos agents avec des surnoms originaux (The Chaos Prophet, Shadow Sniper, etc.), l'isolation mémoire (Private Memory Context) et le support pour QwenCli et Nous Hermes. Installation automatique des dépendances Docker (PostgreSQL, pgvector) inclus.",
|
|
6
6
|
"type": "module",
|
package/scripts/postinstall.mjs
CHANGED
|
@@ -221,8 +221,8 @@ async function installPostgresMCP() {
|
|
|
221
221
|
log(COLORS.green, '✅ overmind-postgres-mcp installé avec succès !');
|
|
222
222
|
return true;
|
|
223
223
|
} catch (error) {
|
|
224
|
-
log(COLORS.yellow,
|
|
225
|
-
log(COLORS.cyan,
|
|
224
|
+
log(COLORS.yellow, "⚠️ Erreur installation overmind-postgres-mcp: " + error.message);
|
|
225
|
+
log(COLORS.cyan, "💡 Vous pouvez l'installer manuellement: npm install -g overmind-postgres-mcp");
|
|
226
226
|
return false; // Non bloquant
|
|
227
227
|
}
|
|
228
228
|
}
|
|
@@ -329,24 +329,42 @@ EMBEDDING_CACHE_SIZE=1000
|
|
|
329
329
|
}
|
|
330
330
|
|
|
331
331
|
async function startPostgreSQL() {
|
|
332
|
-
logSection('
|
|
332
|
+
logSection('VÉRIFICATION POSTGRESQL + PGVECTOR');
|
|
333
333
|
|
|
334
334
|
try {
|
|
335
|
-
|
|
336
|
-
|
|
335
|
+
// Vérifier si PostgreSQL existe déjà (n'importe quel container postgres)
|
|
336
|
+
const anyPostgres = runCommand(
|
|
337
|
+
'docker ps --filter "name=postgres" --filter "publish=5432" --format "{{.Names}}"',
|
|
337
338
|
{ stdio: 'pipe' }
|
|
338
339
|
);
|
|
339
340
|
|
|
340
|
-
if (
|
|
341
|
-
log(COLORS.green, '✅ PostgreSQL
|
|
341
|
+
if (anyPostgres) {
|
|
342
|
+
log(COLORS.green, '✅ PostgreSQL déjà actif sur le port 5432');
|
|
343
|
+
log(COLORS.cyan, ' Container: ' + anyPostgres.trim());
|
|
344
|
+
log(COLORS.yellow, ' 💡 Utilisation de PostgreSQL existant (pas de création OverMind)');
|
|
342
345
|
return true;
|
|
343
346
|
}
|
|
344
347
|
|
|
345
|
-
|
|
348
|
+
// Vérifier si le container OverMind existe déjà
|
|
349
|
+
const overmindContainer = runCommand(
|
|
350
|
+
'docker ps -a --filter "name=overmind-postgres-pgvector" --format "{{.Names}}"',
|
|
351
|
+
{ stdio: 'pipe' }
|
|
352
|
+
);
|
|
353
|
+
|
|
354
|
+
if (overmindContainer) {
|
|
355
|
+
log(COLORS.yellow, '⚠️ Container OverMind existe mais non démarré');
|
|
356
|
+
await runCommandAsync(
|
|
357
|
+
'docker start overmind-postgres-pgvector',
|
|
358
|
+
'Démarrage container OverMind existant'
|
|
359
|
+
);
|
|
360
|
+
return true;
|
|
361
|
+
}
|
|
362
|
+
|
|
363
|
+
log(COLORS.yellow, '🚀 Création et démarrage PostgreSQL + pgvector...');
|
|
346
364
|
|
|
347
365
|
await runCommandAsync(
|
|
348
366
|
'docker run -d --name overmind-postgres-pgvector -p 5432:5432 -e POSTGRES_PASSWORD=overmind_temp_password_change_me -e POSTGRES_USER=postgres -v overmind_postgres_data:/var/lib/postgresql/data --restart unless-stopped pgvector/pgvector:pg16',
|
|
349
|
-
'
|
|
367
|
+
'Création PostgreSQL OverMind'
|
|
350
368
|
);
|
|
351
369
|
|
|
352
370
|
log(COLORS.cyan, '\n⏳ Attente démarrage PostgreSQL (20s)...');
|
|
@@ -385,7 +403,7 @@ function showSummary() {
|
|
|
385
403
|
console.log('║' + ' '.repeat(64) + '║');
|
|
386
404
|
console.log('╚══════════════════════════════════════════════════════════════════╝');
|
|
387
405
|
console.log('');
|
|
388
|
-
log(COLORS.yellow,
|
|
406
|
+
log(COLORS.yellow, "📋 COMPOSANTS INSTALLÉS:");
|
|
389
407
|
console.log('');
|
|
390
408
|
console.log('┌─────────────────────────────────────────────────────────────────┐');
|
|
391
409
|
console.log('│ ' + COLORS.cyan + 'Ouvrez Docker Desktop → onglet "Containers"' + COLORS.reset + ' │');
|
|
@@ -402,25 +420,25 @@ function showSummary() {
|
|
|
402
420
|
console.log('│ • Database: overmind_memory' + ' │');
|
|
403
421
|
console.log('└─────────────────────────────────────────────────────────────────┘');
|
|
404
422
|
console.log('');
|
|
405
|
-
log(COLORS.yellow,
|
|
406
|
-
console.log(
|
|
407
|
-
console.log(
|
|
408
|
-
console.log(
|
|
423
|
+
log(COLORS.yellow, "📁 FICHIERS DE CONFIGURATION:");
|
|
424
|
+
console.log(" • ~/.overmind/.env (Configuration OverMind)");
|
|
425
|
+
console.log(" • ~/.overmind/.env.postgres (Configuration PostgreSQL MCP)");
|
|
426
|
+
console.log(" • ~/.overmind/.mcp.json (Configuration serveurs MCP)");
|
|
409
427
|
console.log('');
|
|
410
|
-
log(COLORS.yellow,
|
|
411
|
-
console.log(
|
|
412
|
-
console.log(
|
|
413
|
-
console.log(
|
|
428
|
+
log(COLORS.yellow, "🔧 SERVEURS MCP ACTIFS:");
|
|
429
|
+
console.log(" • overmind (Orchestration d'agents)");
|
|
430
|
+
console.log(" • memory (Gestion mémoire vectorielle)");
|
|
431
|
+
console.log(" • overmind-postgres (PostgreSQL vectoriel)");
|
|
414
432
|
console.log('');
|
|
415
|
-
log(COLORS.yellow,
|
|
416
|
-
console.log(
|
|
417
|
-
console.log(
|
|
418
|
-
console.log(
|
|
433
|
+
log(COLORS.yellow, "📚 DOCUMENTATION:");
|
|
434
|
+
console.log(" • https://github.com/DeamonDev888/overmind-mcp");
|
|
435
|
+
console.log(" • https://www.npmjs.com/package/overmind-mcp");
|
|
436
|
+
console.log(" • https://github.com/DeamonDev888/PostgreSQL-MCP-Serveur");
|
|
419
437
|
console.log('');
|
|
420
|
-
log(COLORS.yellow,
|
|
421
|
-
console.log(
|
|
422
|
-
console.log(
|
|
423
|
-
console.log(
|
|
438
|
+
log(COLORS.yellow, "🎉 PROCHAINE ÉTAPE:");
|
|
439
|
+
console.log(" • Créez votre premier agent: overmind create-agent");
|
|
440
|
+
console.log(" • Ou listez les agents: overmind list-agents");
|
|
441
|
+
console.log(" • Gestion PostgreSQL: overmind-postgres up/status/down");
|
|
424
442
|
console.log('');
|
|
425
443
|
}
|
|
426
444
|
|
package/scripts/uninstall.mjs
CHANGED
|
@@ -69,20 +69,42 @@ function cmd(command, label) {
|
|
|
69
69
|
// ─────────────────────────────────────────────────────────────────────────────
|
|
70
70
|
|
|
71
71
|
function listContainers() {
|
|
72
|
-
|
|
73
|
-
|
|
72
|
+
// ⚠️ CORRECTION CRITIQUE: Ne cibler que les containers OverMind, pas les containers personnels
|
|
73
|
+
// Les containers personnels comme "postgres-pgvector" ne doivent JAMAIS être supprimés
|
|
74
|
+
const overmindContainers = [
|
|
75
|
+
'overmind-postgres-pgvector', // Container créé par OverMind 2.2.0+
|
|
76
|
+
'overmind-rabbitmq', // Ancien container OverMind
|
|
77
|
+
'overmind-temporal', // Ancien container OverMind
|
|
78
|
+
'overmind-temporal-web', // Ancien container OverMind
|
|
79
|
+
'overmind-postgres', // Variant possible
|
|
80
|
+
'overmind-redis', // Variant possible
|
|
81
|
+
'overmind-prometheus', // Variant possible
|
|
82
|
+
'overmind-grafana', // Variant possible
|
|
83
|
+
'overmind-jaeger' // Variant possible
|
|
84
|
+
];
|
|
85
|
+
|
|
86
|
+
return overmindContainers.filter((containerName) => {
|
|
74
87
|
try {
|
|
75
|
-
execSync(`docker inspect ${
|
|
88
|
+
execSync(`docker inspect ${containerName}`, { stdio: 'pipe' });
|
|
76
89
|
return true;
|
|
77
90
|
} catch { return false; }
|
|
78
91
|
});
|
|
79
92
|
}
|
|
80
93
|
|
|
81
94
|
function listVolumes() {
|
|
82
|
-
|
|
83
|
-
|
|
95
|
+
// ⚠️ CORRECTION CRITIQUE: Ne cibler que les volumes OverMind, pas les volumes personnels
|
|
96
|
+
const overmindVolumes = [
|
|
97
|
+
'overmind_postgres_data', // Volume créé par OverMind 2.2.0+
|
|
98
|
+
'overmind-rabbitmq_data', // Ancien volume OverMind
|
|
99
|
+
'overmind-temporal_data', // Ancien volume OverMind
|
|
100
|
+
'overmind_prometheus_data', // Ancien volume OverMind
|
|
101
|
+
'overmind-grafana_data', // Ancien volume OverMind
|
|
102
|
+
'overmind-jaeger_data' // Ancien volume OverMind
|
|
103
|
+
];
|
|
104
|
+
|
|
105
|
+
return overmindVolumes.filter((volumeName) => {
|
|
84
106
|
try {
|
|
85
|
-
execSync(`docker volume inspect ${
|
|
107
|
+
execSync(`docker volume inspect ${volumeName}`, { stdio: 'pipe' });
|
|
86
108
|
return true;
|
|
87
109
|
} catch { return false; }
|
|
88
110
|
});
|
|
@@ -109,6 +131,11 @@ async function main() {
|
|
|
109
131
|
console.log(`║ ║`);
|
|
110
132
|
console.log(`╚${'═'.repeat(68)}╝`);
|
|
111
133
|
|
|
134
|
+
// ⚠️ AVERTISSEMENT DE SÉCURITÉ
|
|
135
|
+
console.log('\n⚠️ SÉCURITÉ: Ce script ne supprime QUE les containers/volumes OverMind.');
|
|
136
|
+
console.log(' Vos containers personnels (comme postgres-pgvector) sont PROTÉGÉS.');
|
|
137
|
+
console.log(' Seuls les containers commençant par "overmind-" seront supprimés.\n');
|
|
138
|
+
|
|
112
139
|
// ── 1. Containers actifs ──────────────────────────────────────────────
|
|
113
140
|
const containers = listContainers();
|
|
114
141
|
const volumes = listVolumes();
|