overmind-mcp 2.6.1 → 2.7.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/dist/bin/cli.js +0 -0
- package/dist/lib/config.js +1 -1
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/orchestration/swarm.d.ts.map +1 -1
- package/dist/lib/orchestration/swarm.js +0 -1
- package/dist/lib/orchestration/swarm.js.map +1 -1
- package/dist/lib/processRegistry.d.ts +0 -10
- package/dist/lib/processRegistry.d.ts.map +1 -1
- package/dist/lib/processRegistry.js +29 -85
- package/dist/lib/processRegistry.js.map +1 -1
- package/dist/memory/PostgresMemoryProvider.d.ts.map +1 -1
- package/dist/memory/PostgresMemoryProvider.js +12 -0
- package/dist/memory/PostgresMemoryProvider.js.map +1 -1
- package/dist/services/AgentManager.d.ts.map +1 -1
- package/dist/services/AgentManager.js +10 -1
- package/dist/services/AgentManager.js.map +1 -1
- package/dist/services/ClaudeRunner.d.ts +0 -12
- package/dist/services/ClaudeRunner.d.ts.map +1 -1
- package/dist/services/ClaudeRunner.js +1 -126
- package/dist/services/ClaudeRunner.js.map +1 -1
- package/dist/services/NousHermesRunner.d.ts +4 -0
- package/dist/services/NousHermesRunner.d.ts.map +1 -1
- package/dist/services/NousHermesRunner.js +131 -34
- package/dist/services/NousHermesRunner.js.map +1 -1
- package/dist/tools/agent_control.d.ts.map +1 -1
- package/dist/tools/agent_control.js +50 -79
- package/dist/tools/agent_control.js.map +1 -1
- package/dist/tools/memory_store.d.ts +1 -1
- package/dist/tools/run_agent.d.ts +0 -1
- package/dist/tools/run_agent.d.ts.map +1 -1
- package/dist/tools/run_agent.js +0 -11
- package/dist/tools/run_agent.js.map +1 -1
- package/dist/tools/run_agent_cli.js +14 -22
- package/dist/tools/run_agent_cli.js.map +1 -1
- package/dist/tools/run_agents_parallel.d.ts +0 -1
- package/dist/tools/run_agents_parallel.d.ts.map +1 -1
- package/dist/tools/run_claude.d.ts +0 -1
- package/dist/tools/run_claude.d.ts.map +1 -1
- package/dist/tools/run_claude.js +1 -9
- package/dist/tools/run_claude.js.map +1 -1
- package/dist/tools/run_hermes.d.ts +1 -0
- package/dist/tools/run_hermes.d.ts.map +1 -1
- package/dist/tools/run_hermes.js +4 -3
- package/dist/tools/run_hermes.js.map +1 -1
- package/package.json +114 -112
- package/scripts/postgres-manager.mjs +0 -0
- package/scripts/setup.mjs +0 -0
- package/scripts/uninstall.mjs +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import fs from 'fs';
|
|
2
2
|
import path from 'path';
|
|
3
3
|
import { fileURLToPath } from 'url';
|
|
4
|
-
import { spawn, exec
|
|
4
|
+
import { spawn, exec } from 'child_process';
|
|
5
5
|
import { CONFIG, resolveConfigPath, getWorkspaceDir } from '../lib/config.js';
|
|
6
6
|
import { getLastSessionId, saveSessionId } from '../lib/sessions.js';
|
|
7
7
|
import { interpolateEnvVars } from '../lib/envUtils.js';
|
|
@@ -15,54 +15,6 @@ const __dirname = path.dirname(__filename);
|
|
|
15
15
|
// devient orphelin et garde la session bound au token initial côté provider.
|
|
16
16
|
// On utilise `taskkill /F /T /PID` pour propager le kill au sous-arbre,
|
|
17
17
|
// puis on attend l'event 'exit' avant de respawn.
|
|
18
|
-
/**
|
|
19
|
-
* On Windows, `claude` on PATH is a `.cmd` shim. cmd.exe-based shims don't
|
|
20
|
-
* reliably forward inherited file FDs to their child `.exe` when the whole
|
|
21
|
-
* thing is spawned `detached`, which leaves the log file empty. To dodge that,
|
|
22
|
-
* the detached path needs to invoke `claude.exe` directly.
|
|
23
|
-
*
|
|
24
|
-
* Returns null if we cannot locate the .exe — caller falls back to cmd.exe.
|
|
25
|
-
*/
|
|
26
|
-
let cachedClaudeExe;
|
|
27
|
-
function resolveClaudeExePath() {
|
|
28
|
-
if (cachedClaudeExe !== undefined)
|
|
29
|
-
return cachedClaudeExe;
|
|
30
|
-
try {
|
|
31
|
-
const out = execSync('where claude.exe', {
|
|
32
|
-
encoding: 'utf-8',
|
|
33
|
-
stdio: ['ignore', 'pipe', 'ignore'],
|
|
34
|
-
});
|
|
35
|
-
const found = out.split(/\r?\n/).map((l) => l.trim()).find((l) => l.toLowerCase().endsWith('.exe'));
|
|
36
|
-
if (found && fs.existsSync(found)) {
|
|
37
|
-
cachedClaudeExe = found;
|
|
38
|
-
return found;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
catch {
|
|
42
|
-
// `where` may not be on PATH (extremely unusual) — fall through.
|
|
43
|
-
}
|
|
44
|
-
try {
|
|
45
|
-
// Fallback: derive from `claude.cmd` location → npm prefix → node_modules path.
|
|
46
|
-
const cmdOut = execSync('where claude', {
|
|
47
|
-
encoding: 'utf-8',
|
|
48
|
-
stdio: ['ignore', 'pipe', 'ignore'],
|
|
49
|
-
});
|
|
50
|
-
const cmdPath = cmdOut.split(/\r?\n/).map((l) => l.trim()).find((l) => l.toLowerCase().endsWith('.cmd'));
|
|
51
|
-
if (cmdPath) {
|
|
52
|
-
const npmPrefix = path.dirname(cmdPath);
|
|
53
|
-
const exePath = path.join(npmPrefix, 'node_modules', '@anthropic-ai', 'claude-code', 'bin', 'claude.exe');
|
|
54
|
-
if (fs.existsSync(exePath)) {
|
|
55
|
-
cachedClaudeExe = exePath;
|
|
56
|
-
return exePath;
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
catch {
|
|
61
|
-
// ignored
|
|
62
|
-
}
|
|
63
|
-
cachedClaudeExe = null;
|
|
64
|
-
return null;
|
|
65
|
-
}
|
|
66
18
|
const killProcessTree = (child) => {
|
|
67
19
|
return new Promise((resolve) => {
|
|
68
20
|
if (!child || child.exitCode !== null || child.killed) {
|
|
@@ -336,83 +288,6 @@ export class ClaudeRunner {
|
|
|
336
288
|
if (currentChildRef)
|
|
337
289
|
void killProcessTree(currentChildRef);
|
|
338
290
|
});
|
|
339
|
-
// ─── DETACHED FAST-PATH ─────────────────────────────────────────────────────
|
|
340
|
-
// Fire-and-forget: parent returns immediately after spawn. Monitoring is done
|
|
341
|
-
// via the process registry + agent_control. No token retry, no in-process
|
|
342
|
-
// output capture — stdio is redirected to a log file the child writes to
|
|
343
|
-
// directly, so output keeps flowing even if our MCP server exits.
|
|
344
|
-
if (options.detached) {
|
|
345
|
-
const tokenInfo = getTokenForIndex(0);
|
|
346
|
-
const spawnEnv = {
|
|
347
|
-
...process.env,
|
|
348
|
-
...agentCustomEnv,
|
|
349
|
-
};
|
|
350
|
-
if (tokenInfo) {
|
|
351
|
-
for (const tk of TOKEN_KEYS)
|
|
352
|
-
delete spawnEnv[tk];
|
|
353
|
-
let resolvedToken = tokenInfo.tokenValue;
|
|
354
|
-
if (resolvedToken.startsWith('$')) {
|
|
355
|
-
resolvedToken = process.env[resolvedToken.slice(1)] || resolvedToken;
|
|
356
|
-
}
|
|
357
|
-
spawnEnv['ANTHROPIC_AUTH_TOKEN'] = resolvedToken;
|
|
358
|
-
}
|
|
359
|
-
const logDir = path.resolve(options.configPath || getWorkspaceDir(), '.claude/agent_logs');
|
|
360
|
-
fs.mkdirSync(logDir, { recursive: true });
|
|
361
|
-
const stamp = `${Date.now()}`;
|
|
362
|
-
const logFile = path.join(logDir, `${agentName || 'agent'}_${stamp}.log`);
|
|
363
|
-
const promptFile = path.join(logDir, `${agentName || 'agent'}_${stamp}.prompt`);
|
|
364
|
-
fs.writeFileSync(promptFile, prompt, 'utf-8');
|
|
365
|
-
// On Windows the `claude` shim is a .cmd file. Inherited file FDs survive
|
|
366
|
-
// a direct .exe spawn fine, but cmd.exe (in detached mode) silently drops
|
|
367
|
-
// them before they reach claude.cmd → log file ends up empty. We resolve
|
|
368
|
-
// `claude.exe` directly to skip the shim entirely. On Unix we just call
|
|
369
|
-
// `claude` (a real executable on PATH).
|
|
370
|
-
const promptFd = fs.openSync(promptFile, 'r');
|
|
371
|
-
const logFd = fs.openSync(logFile, 'a');
|
|
372
|
-
const claudeExe = process.platform === 'win32' ? resolveClaudeExePath() : null;
|
|
373
|
-
const detachedCommand = claudeExe ?? 'claude';
|
|
374
|
-
const detachedArgs = [...argsSpawn, '-p'];
|
|
375
|
-
const child = spawn(detachedCommand, detachedArgs, {
|
|
376
|
-
cwd: options.cwd || process.cwd(),
|
|
377
|
-
windowsHide: true,
|
|
378
|
-
env: spawnEnv,
|
|
379
|
-
shell: false,
|
|
380
|
-
detached: true,
|
|
381
|
-
stdio: [promptFd, logFd, logFd],
|
|
382
|
-
});
|
|
383
|
-
try {
|
|
384
|
-
fs.closeSync(promptFd);
|
|
385
|
-
}
|
|
386
|
-
catch { /* ignored */ }
|
|
387
|
-
try {
|
|
388
|
-
fs.closeSync(logFd);
|
|
389
|
-
}
|
|
390
|
-
catch { /* ignored */ }
|
|
391
|
-
if (child.pid) {
|
|
392
|
-
await registerProcess(child.pid, {
|
|
393
|
-
agentName: agentName || '',
|
|
394
|
-
runner: 'claude',
|
|
395
|
-
configPath: options.configPath,
|
|
396
|
-
logFile,
|
|
397
|
-
detached: true,
|
|
398
|
-
});
|
|
399
|
-
}
|
|
400
|
-
// Best-effort cleanup of the prompt file once the child is done reading it.
|
|
401
|
-
// 30s is generous: claude reads stdin within the first second normally.
|
|
402
|
-
setTimeout(() => {
|
|
403
|
-
try {
|
|
404
|
-
fs.unlinkSync(promptFile);
|
|
405
|
-
}
|
|
406
|
-
catch { /* ignored */ }
|
|
407
|
-
}, 30000).unref();
|
|
408
|
-
child.unref();
|
|
409
|
-
return {
|
|
410
|
-
result: `DETACHED: pid=${child.pid ?? 'unknown'}, agentName=${agentName || ''}\n` +
|
|
411
|
-
`logFile=${logFile}\n` +
|
|
412
|
-
`Use agent_control({action:"status"|"stream"|"wait"|"kill", agentName, runner:"claude"}) to monitor.`,
|
|
413
|
-
sessionId: undefined,
|
|
414
|
-
};
|
|
415
|
-
}
|
|
416
291
|
const runImpl = async (span) => {
|
|
417
292
|
span.setAttribute('agentName', agentName || '');
|
|
418
293
|
span.setAttribute('model', modelUsed || '');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClaudeRunner.js","sourceRoot":"","sources":["../../src/services/ClaudeRunner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ClaudeRunner.js","sourceRoot":"","sources":["../../src/services/ClaudeRunner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NousHermesRunner.d.ts","sourceRoot":"","sources":["../../src/services/NousHermesRunner.ts"],"names":[],"mappings":"AA+CA,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"NousHermesRunner.d.ts","sourceRoot":"","sources":["../../src/services/NousHermesRunner.ts"],"names":[],"mappings":"AA+CA,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAsFD;;;;;;GAMG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAgB;IACjC,OAAO,CAAC,OAAO,CAAoB;;IAMnC,gBAAgB,IAAI,IAAI;IAclB,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC;IAI3D,gBAAgB,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC;CA2lB1E"}
|
|
@@ -70,6 +70,8 @@ async function findHermesBinary() {
|
|
|
70
70
|
// 3. Platform-specific paths
|
|
71
71
|
const platformPaths = isWin
|
|
72
72
|
? [
|
|
73
|
+
// Hermes venv (Nous Research install) — PRIORITÉ haute (v0.13.0, supporte -z)
|
|
74
|
+
path.join(process.env.LOCALAPPDATA || '', 'hermes', 'hermes-agent', 'venv', 'Scripts', 'hermes.exe'),
|
|
73
75
|
// Officiel installer Windows (install.ps1) — chemin natif
|
|
74
76
|
path.join(process.env.LOCALAPPDATA || '', 'hermes', 'bin', 'hermes.exe'),
|
|
75
77
|
path.join(process.env.LOCALAPPDATA || '', 'hermes', 'hermes.exe'),
|
|
@@ -207,9 +209,16 @@ export class NousHermesRunner {
|
|
|
207
209
|
'MINIMAXI_API_KEY',
|
|
208
210
|
'MINIMAX_API_KEY',
|
|
209
211
|
'ANTHROPIC_AUTH_TOKEN',
|
|
212
|
+
'ANTHROPIC_AUTH_TOKEN_1',
|
|
213
|
+
'ANTHROPIC_AUTH_TOKEN_2',
|
|
214
|
+
'ANTHROPIC_AUTH_TOKEN_3',
|
|
215
|
+
'ANTHROPIC_AUTH_TOKEN_4',
|
|
216
|
+
'MINIMAX_CN_API_KEY',
|
|
210
217
|
'OPENROUTER_API_KEY',
|
|
211
218
|
'OPENAI_API_KEY',
|
|
212
219
|
'Z_AI_API_KEY',
|
|
220
|
+
'GLM_API_KEY',
|
|
221
|
+
'Z_AI_API_KEY_2',
|
|
213
222
|
'MISTRAL_API_KEY',
|
|
214
223
|
'NVIDIA_API_KEY',
|
|
215
224
|
];
|
|
@@ -229,15 +238,6 @@ export class NousHermesRunner {
|
|
|
229
238
|
console.error(`[NousHermesRunner] Wrote ${dotEnvEntries.length} keys to ${dotEnvPath}`);
|
|
230
239
|
}
|
|
231
240
|
};
|
|
232
|
-
// Write to our isolation dir
|
|
233
|
-
writeHermesDotEnv(path.join(overmindHermesSubPath, '.env'));
|
|
234
|
-
// Also write to default ~/.hermes/.env (Hermes init peut lire ~/.hermes avant HERMES_HOME)
|
|
235
|
-
const defaultHermesHome = path.join(process.env.HOME || process.env.USERPROFILE || '', '.hermes');
|
|
236
|
-
if (defaultHermesHome !== overmindHermesSubPath) {
|
|
237
|
-
if (!fs.existsSync(defaultHermesHome))
|
|
238
|
-
fs.mkdirSync(defaultHermesHome, { recursive: true });
|
|
239
|
-
writeHermesDotEnv(path.join(defaultHermesHome, '.env'));
|
|
240
|
-
}
|
|
241
241
|
let systemPrompt = '';
|
|
242
242
|
if (agentName) {
|
|
243
243
|
try {
|
|
@@ -268,13 +268,24 @@ export class NousHermesRunner {
|
|
|
268
268
|
}
|
|
269
269
|
const rawSettings = JSON.parse(fs.readFileSync(agentSettingsPath, 'utf8'));
|
|
270
270
|
const settings = interpolateEnvVars(rawSettings);
|
|
271
|
+
// Create a temporary settings file with interpolated values (same approach as ClaudeRunner)
|
|
272
|
+
// This ensures $VAR placeholders are resolved before Hermes reads them
|
|
273
|
+
const tmpSettingsPath = path.join(path.dirname(agentSettingsPath), `settings_${agentName}_tmp.json`);
|
|
274
|
+
fs.writeFileSync(tmpSettingsPath, JSON.stringify(settings, null, 2), 'utf8');
|
|
275
|
+
this.tempFiles.push(tmpSettingsPath);
|
|
276
|
+
const interpolatedSettingsPath = tmpSettingsPath;
|
|
271
277
|
// Only use settings.model if it's a string (not a config object like {provider:"custom",...})
|
|
272
278
|
if (!options.model && typeof settings.model === 'string') {
|
|
273
279
|
options.model = settings.model;
|
|
274
280
|
}
|
|
275
|
-
|
|
281
|
+
// Extract ANTHROPIC_MODEL from env (used by some agents like sniperbot_analyst)
|
|
282
|
+
if (!options.model && settings.env?.ANTHROPIC_MODEL && !settings.env.ANTHROPIC_MODEL.startsWith('$')) {
|
|
276
283
|
options.model = settings.env.ANTHROPIC_MODEL;
|
|
277
284
|
}
|
|
285
|
+
// Extract ANTHROPIC_PROVIDER from env if present
|
|
286
|
+
if (!options.provider && settings.env?.ANTHROPIC_PROVIDER && !settings.env.ANTHROPIC_PROVIDER.startsWith('$')) {
|
|
287
|
+
options.provider = settings.env.ANTHROPIC_PROVIDER;
|
|
288
|
+
}
|
|
278
289
|
if (settings.env) {
|
|
279
290
|
// Fusion intelligente : préserver les clés critiques (API keys)
|
|
280
291
|
const criticalKeys = [
|
|
@@ -340,6 +351,16 @@ export class NousHermesRunner {
|
|
|
340
351
|
}
|
|
341
352
|
}
|
|
342
353
|
}
|
|
354
|
+
// Map ANTHROPIC_AUTH_TOKEN to provider-specific env vars
|
|
355
|
+
// Hermes z-ai provider needs GLM_API_KEY, not ANTHROPIC_AUTH_TOKEN
|
|
356
|
+
const providerForEnv = options.provider || settings.env?.ANTHROPIC_PROVIDER || '';
|
|
357
|
+
if (providerForEnv.toLowerCase().includes('z-ai') || providerForEnv.toLowerCase().includes('zai')) {
|
|
358
|
+
if (agentCustomEnv.ANTHROPIC_AUTH_TOKEN && !agentCustomEnv['GLM_API_KEY']) {
|
|
359
|
+
agentCustomEnv['GLM_API_KEY'] = agentCustomEnv.ANTHROPIC_AUTH_TOKEN;
|
|
360
|
+
if (!silent)
|
|
361
|
+
console.error(`[NousHermesRunner] Mapped ANTHROPIC_AUTH_TOKEN → GLM_API_KEY for z-ai provider`);
|
|
362
|
+
}
|
|
363
|
+
}
|
|
343
364
|
}
|
|
344
365
|
// --- Load System Prompt (agents/agentName.md) ---
|
|
345
366
|
const agentPromptPath = resolveConfigPath(path.join(path.dirname(settingsDir), 'agents', `${agentName}.md`), options.configPath);
|
|
@@ -408,10 +429,12 @@ export class NousHermesRunner {
|
|
|
408
429
|
console.warn(`[NousHermesRunner] ⚠️ Prompt tronqué de ${cliPrompt.length} à ${MAX_PROMPT_LEN} chars`);
|
|
409
430
|
cliPrompt = cliPrompt.substring(0, MAX_PROMPT_LEN);
|
|
410
431
|
}
|
|
411
|
-
//
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
432
|
+
// Hermes CLI modes:
|
|
433
|
+
// - `hermes -z <prompt>` : top-level one-shot (no banner, clean stdout, auto-exit)
|
|
434
|
+
// - `hermes chat -q <prompt>` : query mode with banner (interactive)
|
|
435
|
+
// - `hermes chat -z <prompt>` : INVALID (subcommand doesn't accept -z)
|
|
436
|
+
// We use top-level `-z` for runner mode (clean output, auto-exit).
|
|
437
|
+
const cleanArgs = ['-z', cliPrompt];
|
|
415
438
|
// --- Model & Provider selection ---
|
|
416
439
|
const DEFAULT_MODEL = 'tencent/hy3-preview:free'; // Modèle OpenRouter gratuit
|
|
417
440
|
const originalModel = options.model || DEFAULT_MODEL;
|
|
@@ -428,7 +451,12 @@ export class NousHermesRunner {
|
|
|
428
451
|
lowModel.includes('o3');
|
|
429
452
|
const hasOpenAIKey = !!agentCustomEnv.OPENAI_API_KEY;
|
|
430
453
|
const isMiniMaxModel = lowModel.includes('minimax') || lowModel.includes('mini-max');
|
|
431
|
-
const hasMiniMaxKey = !!(agentCustomEnv.MINIMAXI_API_KEY ||
|
|
454
|
+
const hasMiniMaxKey = !!(agentCustomEnv.MINIMAXI_API_KEY ||
|
|
455
|
+
agentCustomEnv.ANTHROPIC_AUTH_TOKEN ||
|
|
456
|
+
agentCustomEnv.ANTHROPIC_AUTH_TOKEN_1 ||
|
|
457
|
+
agentCustomEnv.ANTHROPIC_AUTH_TOKEN_2 ||
|
|
458
|
+
agentCustomEnv.ANTHROPIC_AUTH_TOKEN_3 ||
|
|
459
|
+
agentCustomEnv.ANTHROPIC_AUTH_TOKEN_4);
|
|
432
460
|
const isGLMModel = lowModel.includes('glm');
|
|
433
461
|
const hasGLMKey = !!agentCustomEnv.Z_AI_API_KEY;
|
|
434
462
|
const isMistralModel = model.includes('mistral') || model.includes('codestral') || model.includes('devstral');
|
|
@@ -450,23 +478,38 @@ export class NousHermesRunner {
|
|
|
450
478
|
logger.info({ model, provider: 'minimax-cn' }, 'Using MiniMax via minimax-cn provider');
|
|
451
479
|
cleanArgs.push('--provider', 'minimax-cn');
|
|
452
480
|
// Write base_url to config.yaml later (see below, after config generation)
|
|
453
|
-
const resolvedMiniMaxKey = agentCustomEnv.
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
481
|
+
const resolvedMiniMaxKey = agentCustomEnv.ANTHROPIC_AUTH_TOKEN_4 ||
|
|
482
|
+
agentCustomEnv.ANTHROPIC_AUTH_TOKEN_3 ||
|
|
483
|
+
agentCustomEnv.ANTHROPIC_AUTH_TOKEN_2 ||
|
|
484
|
+
agentCustomEnv.ANTHROPIC_AUTH_TOKEN ||
|
|
485
|
+
agentCustomEnv.MINIMAXI_API_KEY ||
|
|
458
486
|
process.env.MINIMAXI_API_KEY;
|
|
459
487
|
if (resolvedMiniMaxKey) {
|
|
460
488
|
agentCustomEnv.ANTHROPIC_TOKEN = resolvedMiniMaxKey;
|
|
461
489
|
agentCustomEnv.ANTHROPIC_AUTH_TOKEN = resolvedMiniMaxKey;
|
|
490
|
+
agentCustomEnv.ANTHROPIC_AUTH_TOKEN_4 = resolvedMiniMaxKey;
|
|
462
491
|
agentCustomEnv.MINIMAXI_API_KEY = resolvedMiniMaxKey;
|
|
463
492
|
agentCustomEnv.MINIMAX_API_KEY = resolvedMiniMaxKey;
|
|
464
493
|
// minimax-cn provider reads MINIMAX_CN_API_KEY specifically
|
|
465
494
|
agentCustomEnv.MINIMAX_CN_API_KEY = resolvedMiniMaxKey;
|
|
466
|
-
//
|
|
467
|
-
|
|
495
|
+
// Force rewrite the auth.json so Hermes picks up the new key
|
|
496
|
+
try {
|
|
497
|
+
const authPath = path.join(process.env.HOME || process.env.USERPROFILE || '', '.hermes', 'auth.json');
|
|
498
|
+
if (fs.existsSync(authPath)) {
|
|
499
|
+
const auth = JSON.parse(fs.readFileSync(authPath, 'utf8'));
|
|
500
|
+
if (auth.credential_pool?.['minimax-cn']?.[0]) {
|
|
501
|
+
auth.credential_pool['minimax-cn'][0].access_token = resolvedMiniMaxKey;
|
|
502
|
+
auth.credential_pool['minimax-cn'][0].last_status = null;
|
|
503
|
+
auth.credential_pool['minimax-cn'][0].last_error_code = null;
|
|
504
|
+
fs.writeFileSync(authPath, JSON.stringify(auth, null, 2), 'utf8');
|
|
505
|
+
if (!silent)
|
|
506
|
+
console.error(`[NousHermesRunner] Updated minimax-cn credential in auth.json`);
|
|
507
|
+
}
|
|
508
|
+
}
|
|
509
|
+
}
|
|
510
|
+
catch (e) { /* non-critical */ }
|
|
468
511
|
if (!silent)
|
|
469
|
-
console.error(`[NousHermesRunner] Set
|
|
512
|
+
console.error(`[NousHermesRunner] Set ANTHROPIC_AUTH_TOKEN_4 for MiniMax via minimax-cn`);
|
|
470
513
|
}
|
|
471
514
|
delete agentCustomEnv.OPENROUTER_API_KEY;
|
|
472
515
|
delete agentCustomEnv.OVERMIND_EMBEDDING_KEY;
|
|
@@ -477,14 +520,20 @@ export class NousHermesRunner {
|
|
|
477
520
|
delete agentCustomEnv.Z_AI_API_KEY;
|
|
478
521
|
}
|
|
479
522
|
else if (isGLMModel && hasGLMKey) {
|
|
480
|
-
logger.info({ model, provider: '
|
|
481
|
-
cleanArgs.push('--provider', '
|
|
523
|
+
logger.info({ model, provider: 'z-ai' }, 'Using ZhipuAI/GLM provider');
|
|
524
|
+
cleanArgs.push('--provider', 'z-ai');
|
|
525
|
+
// Hermes z-ai provider needs GLM_API_KEY specifically
|
|
526
|
+
const resolvedGLMKey = agentCustomEnv.Z_AI_API_KEY;
|
|
527
|
+
if (resolvedGLMKey) {
|
|
528
|
+
agentCustomEnv['GLM_API_KEY'] = resolvedGLMKey;
|
|
529
|
+
}
|
|
482
530
|
// Nettoyage des clés conflictuelles
|
|
483
531
|
delete agentCustomEnv.OPENROUTER_API_KEY;
|
|
484
532
|
delete agentCustomEnv.NVIDIA_API_KEY;
|
|
485
533
|
delete agentCustomEnv.NVAPI_KEY;
|
|
486
534
|
delete agentCustomEnv.OPENAI_API_KEY;
|
|
487
535
|
delete agentCustomEnv.MINIMAXI_API_KEY;
|
|
536
|
+
delete agentCustomEnv.ANTHROPIC_AUTH_TOKEN_4;
|
|
488
537
|
}
|
|
489
538
|
else if (isMistralModel && hasMistralKey) {
|
|
490
539
|
logger.info({ model, provider: 'mistral' }, 'Using Mistral provider');
|
|
@@ -504,15 +553,32 @@ export class NousHermesRunner {
|
|
|
504
553
|
logger.info({ model, provider: 'openrouter' }, 'Using OpenRouter provider');
|
|
505
554
|
cleanArgs.push('--provider', 'openrouter');
|
|
506
555
|
}
|
|
556
|
+
// Re-write .env with all provider-specific keys now resolved (e.g. GLM_API_KEY for z-ai)
|
|
557
|
+
const defaultHermesHome = path.join(process.env.HOME || process.env.USERPROFILE || '', '.hermes');
|
|
558
|
+
writeHermesDotEnv(path.join(overmindHermesSubPath, '.env'));
|
|
559
|
+
writeHermesDotEnv(path.join(defaultHermesHome, '.env'));
|
|
560
|
+
// --- Hermes-native flags: --resume, --mcp-config ---
|
|
561
|
+
// NOTE: --name is NOT supported by Hermes CLI v0.11.0+ (unrecognized argument error).
|
|
562
|
+
// Session naming works via --resume or --continue, not --name.
|
|
563
|
+
// --resume: continue existing session
|
|
564
|
+
if (sessionId) {
|
|
565
|
+
cleanArgs.push('--resume', sessionId);
|
|
566
|
+
}
|
|
567
|
+
// --mcp-config: point Hermes to our generated config.yaml
|
|
568
|
+
// Generated at lines 419-448 in overmindHermesSubPath
|
|
569
|
+
const configYamlPath = path.join(overmindHermesSubPath, 'config.yaml');
|
|
570
|
+
if (fs.existsSync(configYamlPath)) {
|
|
571
|
+
cleanArgs.push('--mcp-config', configYamlPath);
|
|
572
|
+
this.tempFiles.push(path.join(overmindHermesSubPath, 'mcp.json'), configYamlPath);
|
|
573
|
+
}
|
|
574
|
+
// --hermes-dir: isolate this agent's hermes state (auth.json, .env, sessions)
|
|
575
|
+
// Pass via HERMES_DIR env var (not as CLI flag — --hermes-dir is only for subcommands like "chat")
|
|
576
|
+
const hermesDirEnv = { HERMES_DIR: overmindHermesSubPath };
|
|
507
577
|
// --- Find Hermes Binary (cross-platform) ---
|
|
508
578
|
const spawnCommand = await findHermesBinary();
|
|
509
579
|
if (!silent) {
|
|
510
580
|
logger.info({ command: spawnCommand, args: cleanArgs }, 'Starting Hermes Agent');
|
|
511
581
|
}
|
|
512
|
-
// Track temp files for MCP config
|
|
513
|
-
const mcpJsonPath = path.join(overmindHermesSubPath, 'mcp.json');
|
|
514
|
-
const configYamlPath = path.join(overmindHermesSubPath, 'config.yaml');
|
|
515
|
-
this.tempFiles.push(mcpJsonPath, configYamlPath);
|
|
516
582
|
return new Promise((resolve) => {
|
|
517
583
|
let resolved = false;
|
|
518
584
|
const safeResolve = (value) => {
|
|
@@ -527,7 +593,7 @@ export class NousHermesRunner {
|
|
|
527
593
|
cwd: options.cwd || process.cwd(),
|
|
528
594
|
shell: useShell,
|
|
529
595
|
windowsHide: true,
|
|
530
|
-
env: agentCustomEnv,
|
|
596
|
+
env: { ...agentCustomEnv, HERMES_DIR: overmindHermesSubPath },
|
|
531
597
|
});
|
|
532
598
|
if (child.pid) {
|
|
533
599
|
void registerProcess(child.pid, { agentName: agentName || '', runner: 'hermes', configPath: options.configPath });
|
|
@@ -568,22 +634,54 @@ export class NousHermesRunner {
|
|
|
568
634
|
nickname: originalModel !== model ? originalModel : undefined,
|
|
569
635
|
});
|
|
570
636
|
}, this.timeoutMs);
|
|
637
|
+
// AbortSignal support (like ClaudeRunner)
|
|
638
|
+
if (options.signal) {
|
|
639
|
+
const onAbort = () => {
|
|
640
|
+
clearTimeout(timeout);
|
|
641
|
+
killProcessTree(child);
|
|
642
|
+
if (child.pid)
|
|
643
|
+
void updateProcessStatus(child.pid, 'failed', null, options.configPath);
|
|
644
|
+
safeResolve({
|
|
645
|
+
result: stdout.trim(),
|
|
646
|
+
error: 'ABORTED',
|
|
647
|
+
rawOutput: stdout + '\n\n' + stderr,
|
|
648
|
+
model,
|
|
649
|
+
nickname: originalModel !== model ? originalModel : undefined,
|
|
650
|
+
});
|
|
651
|
+
};
|
|
652
|
+
if (options.signal.aborted) {
|
|
653
|
+
onAbort();
|
|
654
|
+
}
|
|
655
|
+
else {
|
|
656
|
+
options.signal.addEventListener('abort', onAbort, { once: true });
|
|
657
|
+
}
|
|
658
|
+
}
|
|
571
659
|
child.on('close', async (code) => {
|
|
572
660
|
clearTimeout(timeout);
|
|
573
661
|
if (child.pid)
|
|
574
662
|
void updateProcessStatus(child.pid, code === 0 ? 'done' : 'failed', code, options.configPath);
|
|
663
|
+
// Parse session ID from Hermes output (e.g. "Session: 20260515_204158_7093cd")
|
|
664
|
+
// This works even when Hermes exits with error, as the banner is still printed
|
|
665
|
+
let parsedSessionId = sessionId;
|
|
666
|
+
const sessionMatch = stdout.match(/Session:\s+(\S+)/);
|
|
667
|
+
if (sessionMatch) {
|
|
668
|
+
parsedSessionId = sessionMatch[1];
|
|
669
|
+
}
|
|
670
|
+
// Hermes exits code 2 on API errors (e.g. max_tokens > 40000).
|
|
671
|
+
// When stdout has content, return it even on non-zero exit — it's useful output.
|
|
575
672
|
if (code !== 0 && !stdout) {
|
|
576
673
|
return safeResolve({
|
|
577
674
|
result: '',
|
|
578
675
|
error: `EXIT_CODE_${code}`,
|
|
579
676
|
rawOutput: stderr || stdout,
|
|
677
|
+
sessionId: parsedSessionId,
|
|
580
678
|
model,
|
|
581
679
|
nickname: originalModel !== model ? originalModel : undefined,
|
|
582
680
|
});
|
|
583
681
|
}
|
|
584
682
|
safeResolve({
|
|
585
683
|
result: stdout.trim(),
|
|
586
|
-
sessionId:
|
|
684
|
+
sessionId: parsedSessionId,
|
|
587
685
|
rawOutput: stdout,
|
|
588
686
|
model,
|
|
589
687
|
nickname: originalModel !== model ? originalModel : undefined,
|
|
@@ -595,9 +693,8 @@ export class NousHermesRunner {
|
|
|
595
693
|
void updateProcessStatus(child.pid, 'failed', null, options.configPath);
|
|
596
694
|
safeResolve({ result: '', error: `SPAWN_ERROR: ${err.message}`, rawOutput: '' });
|
|
597
695
|
});
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
}
|
|
696
|
+
// Do NOT call child.stdin.end() — it sends EOF and Hermes closes.
|
|
697
|
+
// Keep stdin open so Hermes stays alive for resume.
|
|
601
698
|
});
|
|
602
699
|
}
|
|
603
700
|
}
|