overmind-mcp 2.3.2 → 2.3.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.
- package/.mcp.json.example +21 -21
- package/README.md +187 -187
- package/bin/README.md +34 -34
- package/bin/install-overmind-unix.sh +412 -412
- package/bin/install-overmind-windows.bat +407 -407
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/orchestration/dispatcher.d.ts.map +1 -1
- package/dist/lib/orchestration/dispatcher.js +34 -19
- package/dist/lib/orchestration/dispatcher.js.map +1 -1
- package/dist/memory/MemoryFactory.js +1 -1
- package/dist/memory/MemoryFactory.js.map +1 -1
- package/dist/memory/PostgresMemoryProvider.d.ts.map +1 -1
- package/dist/memory/PostgresMemoryProvider.js +1 -1
- package/dist/memory/PostgresMemoryProvider.js.map +1 -1
- package/dist/services/AgentManager.d.ts.map +1 -1
- package/dist/services/AgentManager.js +1 -1
- package/dist/services/AgentManager.js.map +1 -1
- package/dist/services/ClaudeRunner.d.ts.map +1 -1
- package/dist/services/ClaudeRunner.js +4 -13
- package/dist/services/ClaudeRunner.js.map +1 -1
- package/dist/tools/test_agent_control.d.ts +2 -0
- package/dist/tools/test_agent_control.d.ts.map +1 -0
- package/dist/tools/test_agent_control.js +92 -0
- package/dist/tools/test_agent_control.js.map +1 -0
- package/docs/agent_control.md +655 -655
- package/docs/index.html +493 -493
- package/package.json +15 -15
- package/scripts/auto-changelog.mjs +132 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "overmind-mcp",
|
|
3
|
-
"version": "2.3.
|
|
3
|
+
"version": "2.3.4",
|
|
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",
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"test": "vitest run",
|
|
43
43
|
"test:install": "node scripts/test-installation.mjs",
|
|
44
44
|
"changeset": "changeset",
|
|
45
|
-
"version": "changeset version",
|
|
45
|
+
"version": "changeset version && node scripts/auto-changelog.mjs",
|
|
46
46
|
"release": "pnpm run build && changeset publish",
|
|
47
47
|
"prepublishOnly": "pnpm run rebuild",
|
|
48
48
|
"postinstall": "node scripts/postinstall.mjs",
|
|
@@ -82,31 +82,31 @@
|
|
|
82
82
|
"packageManager": "pnpm@10.18.0",
|
|
83
83
|
"devDependencies": {
|
|
84
84
|
"@changesets/cli": "^2.31.0",
|
|
85
|
-
"@eslint/js": "^
|
|
86
|
-
"@types/node": "^
|
|
85
|
+
"@eslint/js": "^10.0.1",
|
|
86
|
+
"@types/node": "^25.6.2",
|
|
87
87
|
"@types/pg": "^8.20.0",
|
|
88
88
|
"@types/pino": "^7.0.5",
|
|
89
|
-
"eslint": "^
|
|
89
|
+
"eslint": "^10.3.0",
|
|
90
90
|
"eslint-config-prettier": "^10.1.8",
|
|
91
|
-
"globals": "^17.
|
|
91
|
+
"globals": "^17.6.0",
|
|
92
92
|
"prettier": "^3.8.3",
|
|
93
93
|
"rimraf": "^6.1.3",
|
|
94
|
-
"typescript": "^
|
|
95
|
-
"typescript-eslint": "^8.
|
|
96
|
-
"vitest": "^4.1.
|
|
94
|
+
"typescript": "^6.0.3",
|
|
95
|
+
"typescript-eslint": "^8.59.2",
|
|
96
|
+
"vitest": "^4.1.5"
|
|
97
97
|
},
|
|
98
98
|
"dependencies": {
|
|
99
99
|
"async-mutex": "^0.5.0",
|
|
100
100
|
"dotenv": "^17.4.2",
|
|
101
|
-
"fastmcp": "^
|
|
102
|
-
"overmind-postgres-mcp": "^1.
|
|
101
|
+
"fastmcp": "^4.0.1",
|
|
102
|
+
"overmind-postgres-mcp": "^1.2.0",
|
|
103
103
|
"pg": "^8.20.0",
|
|
104
|
-
"pino": "^
|
|
104
|
+
"pino": "^10.3.1",
|
|
105
105
|
"pino-pretty": "^13.1.3",
|
|
106
|
-
"pino-roll": "^
|
|
106
|
+
"pino-roll": "^4.0.0",
|
|
107
107
|
"tinyglobby": "^0.2.16",
|
|
108
|
-
"tslib": "^2.
|
|
109
|
-
"zod": "^4.3
|
|
108
|
+
"tslib": "^2.8.1",
|
|
109
|
+
"zod": "^4.4.3"
|
|
110
110
|
},
|
|
111
111
|
"peerDependencies": {
|
|
112
112
|
"tslib": "^2.0.0"
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* Auto-update CHANGELOG.md when version bumps
|
|
4
|
+
* Runs after `pnpm run version`
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { readFileSync, writeFileSync } from 'fs';
|
|
8
|
+
import { execSync } from 'child_process';
|
|
9
|
+
import { fileURLToPath } from 'url';
|
|
10
|
+
import { dirname, join } from 'path';
|
|
11
|
+
|
|
12
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
13
|
+
const __dirname = dirname(__filename);
|
|
14
|
+
const rootDir = join(__dirname, '..');
|
|
15
|
+
|
|
16
|
+
function getCurrentVersion() {
|
|
17
|
+
const pkg = JSON.parse(readFileSync(join(rootDir, 'package.json'), 'utf8'));
|
|
18
|
+
return pkg.version;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
function getCommitsSinceLastTag() {
|
|
22
|
+
try {
|
|
23
|
+
const output = execSync('git describe --tags --abbrev=0 HEAD~1 2>/dev/null', {
|
|
24
|
+
encoding: 'utf8',
|
|
25
|
+
cwd: rootDir,
|
|
26
|
+
}).trim();
|
|
27
|
+
|
|
28
|
+
const commits = execSync(`git log ${output}..HEAD --oneline --no-merges`, {
|
|
29
|
+
encoding: 'utf8',
|
|
30
|
+
cwd: rootDir,
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
return commits.split('\n').filter(Boolean);
|
|
34
|
+
} catch {
|
|
35
|
+
return [];
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
function categorizeCommits(commits) {
|
|
40
|
+
const features = [];
|
|
41
|
+
const fixes = [];
|
|
42
|
+
const docs = [];
|
|
43
|
+
const infra = [];
|
|
44
|
+
const deps = [];
|
|
45
|
+
|
|
46
|
+
for (const commit of commits) {
|
|
47
|
+
const msg = commit.replace(/^[a-f0-9]+ /, '');
|
|
48
|
+
if (msg.startsWith('feat') || msg.startsWith('feat:')) {
|
|
49
|
+
features.push(msg);
|
|
50
|
+
} else if (msg.startsWith('fix') || msg.startsWith('fix:')) {
|
|
51
|
+
fixes.push(msg);
|
|
52
|
+
} else if (msg.startsWith('docs') || msg.startsWith('doc:')) {
|
|
53
|
+
docs.push(msg);
|
|
54
|
+
} else if (msg.startsWith('chore') || msg.startsWith('refactor') || msg.startsWith('infra')) {
|
|
55
|
+
infra.push(msg);
|
|
56
|
+
} else if (msg.startsWith('deps')) {
|
|
57
|
+
deps.push(msg);
|
|
58
|
+
} else {
|
|
59
|
+
infra.push(msg);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
return { features, fixes, docs, infra, deps };
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
function formatChangelogSection(version, commits) {
|
|
67
|
+
const date = new Date().toISOString().split('T')[0];
|
|
68
|
+
const { features, fixes, docs, infra, deps } = categorizeCommits(commits);
|
|
69
|
+
|
|
70
|
+
let section = `## [${version}] - ${date}\n\n`;
|
|
71
|
+
|
|
72
|
+
if (features.length > 0) {
|
|
73
|
+
section += '### 🚀 Features\n\n';
|
|
74
|
+
for (const f of features) section += `- ${f}\n`;
|
|
75
|
+
section += '\n';
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
if (fixes.length > 0) {
|
|
79
|
+
section += '### 🐛 Fixes\n\n';
|
|
80
|
+
for (const f of fixes) section += `- ${f}\n`;
|
|
81
|
+
section += '\n';
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
if (docs.length > 0) {
|
|
85
|
+
section += '### 📝 Documentation\n\n';
|
|
86
|
+
for (const d of docs) section += `- ${d}\n`;
|
|
87
|
+
section += '\n';
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
if (infra.length > 0) {
|
|
91
|
+
section += '### 🔧 Infrastructure\n\n';
|
|
92
|
+
for (const i of infra) section += `- ${i}\n`;
|
|
93
|
+
section += '\n';
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
if (deps.length > 0) {
|
|
97
|
+
section += '### 📦 Dependencies\n\n';
|
|
98
|
+
for (const d of deps) section += `- ${d}\n`;
|
|
99
|
+
section += '\n';
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
return section;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
function updateChangelog() {
|
|
106
|
+
const version = getCurrentVersion();
|
|
107
|
+
const commits = getCommitsSinceLastTag();
|
|
108
|
+
|
|
109
|
+
if (commits.length === 0) {
|
|
110
|
+
console.log('No commits to add to changelog');
|
|
111
|
+
return;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
const changelogPath = join(rootDir, 'CHANGELOG.md');
|
|
115
|
+
let changelog = readFileSync(changelogPath, 'utf8');
|
|
116
|
+
|
|
117
|
+
// Remove existing placeholder if present
|
|
118
|
+
changelog = changelog.replace(`## [${version}] - YYYY-MM-DD\n\n---\n\n`, '');
|
|
119
|
+
|
|
120
|
+
const newSection = formatChangelogSection(version, commits);
|
|
121
|
+
|
|
122
|
+
// Insert after the header comment block
|
|
123
|
+
const insertPoint = changelog.indexOf('---\n\n## ');
|
|
124
|
+
if (insertPoint !== -1) {
|
|
125
|
+
changelog = changelog.slice(0, insertPoint + 5) + newSection + changelog.slice(insertPoint + 5);
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
writeFileSync(changelogPath, changelog);
|
|
129
|
+
console.log(`✅ CHANGELOG.md updated with v${version}`);
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
updateChangelog();
|