overmind-mcp 2.4.2 → 2.5.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.
Files changed (93) hide show
  1. package/dist/bin/cli.js +0 -0
  2. package/dist/server.d.ts.map +1 -1
  3. package/dist/server.js +22 -0
  4. package/dist/server.js.map +1 -1
  5. package/dist/services/ClaudeRunner.d.ts.map +1 -1
  6. package/dist/services/ClaudeRunner.js +88 -16
  7. package/dist/services/ClaudeRunner.js.map +1 -1
  8. package/dist/services/ClineRunner.d.ts.map +1 -1
  9. package/dist/services/ClineRunner.js +18 -3
  10. package/dist/services/ClineRunner.js.map +1 -1
  11. package/dist/services/GeminiRunner.d.ts.map +1 -1
  12. package/dist/services/GeminiRunner.js +14 -1
  13. package/dist/services/GeminiRunner.js.map +1 -1
  14. package/dist/services/KiloRunner.d.ts.map +1 -1
  15. package/dist/services/KiloRunner.js +18 -3
  16. package/dist/services/KiloRunner.js.map +1 -1
  17. package/dist/services/OpenClawRunner.d.ts.map +1 -1
  18. package/dist/services/OpenClawRunner.js +18 -3
  19. package/dist/services/OpenClawRunner.js.map +1 -1
  20. package/dist/services/OpenCodeRunner.d.ts.map +1 -1
  21. package/dist/services/OpenCodeRunner.js +18 -3
  22. package/dist/services/OpenCodeRunner.js.map +1 -1
  23. package/dist/services/QwenRunner.d.ts.map +1 -1
  24. package/dist/services/QwenRunner.js +18 -3
  25. package/dist/services/QwenRunner.js.map +1 -1
  26. package/dist/services/TraeRunner.d.ts.map +1 -1
  27. package/dist/services/TraeRunner.js +18 -3
  28. package/dist/services/TraeRunner.js.map +1 -1
  29. package/dist/tools/agent_control.d.ts +2 -2
  30. package/dist/tools/create_agent.d.ts +2 -2
  31. package/dist/tools/manage_agents.d.ts +2 -2
  32. package/dist/tools/run_agent.d.ts +2 -2
  33. package/package.json +83 -84
  34. package/dist/lib/InstallHelper.d.ts +0 -14
  35. package/dist/lib/InstallHelper.d.ts.map +0 -1
  36. package/dist/lib/InstallHelper.js +0 -113
  37. package/dist/lib/InstallHelper.js.map +0 -1
  38. package/dist/lib/envUtils.d.ts +0 -10
  39. package/dist/lib/envUtils.d.ts.map +0 -1
  40. package/dist/lib/envUtils.js +0 -24
  41. package/dist/lib/envUtils.js.map +0 -1
  42. package/dist/lib/loadEnv.d.ts +0 -2
  43. package/dist/lib/loadEnv.d.ts.map +0 -1
  44. package/dist/lib/loadEnv.js +0 -26
  45. package/dist/lib/loadEnv.js.map +0 -1
  46. package/dist/lib/logger.d.ts +0 -8
  47. package/dist/lib/logger.d.ts.map +0 -1
  48. package/dist/lib/logger.js +0 -81
  49. package/dist/lib/logger.js.map +0 -1
  50. package/dist/lib/modelMapping.d.ts +0 -18
  51. package/dist/lib/modelMapping.d.ts.map +0 -1
  52. package/dist/lib/modelMapping.js +0 -90
  53. package/dist/lib/modelMapping.js.map +0 -1
  54. package/dist/lib/orchestration/dispatcher.d.ts +0 -32
  55. package/dist/lib/orchestration/dispatcher.d.ts.map +0 -1
  56. package/dist/lib/orchestration/dispatcher.js +0 -113
  57. package/dist/lib/orchestration/dispatcher.js.map +0 -1
  58. package/dist/lib/orchestration/swarm.d.ts +0 -75
  59. package/dist/lib/orchestration/swarm.d.ts.map +0 -1
  60. package/dist/lib/orchestration/swarm.js +0 -238
  61. package/dist/lib/orchestration/swarm.js.map +0 -1
  62. package/dist/lib/telemetry.d.ts +0 -21
  63. package/dist/lib/telemetry.d.ts.map +0 -1
  64. package/dist/lib/telemetry.js +0 -30
  65. package/dist/lib/telemetry.js.map +0 -1
  66. package/dist/services/NousHermesRunner.d.ts +0 -28
  67. package/dist/services/NousHermesRunner.d.ts.map +0 -1
  68. package/dist/services/NousHermesRunner.js +0 -460
  69. package/dist/services/NousHermesRunner.js.map +0 -1
  70. package/dist/services/QwenCliRunner.d.ts +0 -26
  71. package/dist/services/QwenCliRunner.d.ts.map +0 -1
  72. package/dist/services/QwenCliRunner.js +0 -155
  73. package/dist/services/QwenCliRunner.js.map +0 -1
  74. package/dist/tools/initialization_check.d.ts +0 -2
  75. package/dist/tools/initialization_check.d.ts.map +0 -1
  76. package/dist/tools/initialization_check.js +0 -23
  77. package/dist/tools/initialization_check.js.map +0 -1
  78. package/dist/tools/run_agent_cli.d.ts +0 -21
  79. package/dist/tools/run_agent_cli.d.ts.map +0 -1
  80. package/dist/tools/run_agent_cli.js +0 -129
  81. package/dist/tools/run_agent_cli.js.map +0 -1
  82. package/dist/tools/run_agents_parallel.d.ts +0 -34
  83. package/dist/tools/run_agents_parallel.d.ts.map +0 -1
  84. package/dist/tools/run_agents_parallel.js +0 -28
  85. package/dist/tools/run_agents_parallel.js.map +0 -1
  86. package/dist/tools/run_hermes.d.ts +0 -25
  87. package/dist/tools/run_hermes.d.ts.map +0 -1
  88. package/dist/tools/run_hermes.js +0 -93
  89. package/dist/tools/run_hermes.js.map +0 -1
  90. package/dist/tools/run_qwencli.d.ts +0 -24
  91. package/dist/tools/run_qwencli.d.ts.map +0 -1
  92. package/dist/tools/run_qwencli.js +0 -59
  93. package/dist/tools/run_qwencli.js.map +0 -1
@@ -1,155 +0,0 @@
1
- import fs from 'fs';
2
- import path from 'path';
3
- import { spawn } from 'child_process';
4
- import { CONFIG, resolveConfigPath } from '../lib/config.js';
5
- import { getLastSessionId, saveSessionId } from '../lib/sessions.js';
6
- import { interpolateEnvVars } from '../lib/envUtils.js';
7
- import { withSpan } from '../lib/telemetry.js';
8
- import pino from 'pino';
9
- import { registerProcess, appendOutput, updateProcessStatus, } from '../lib/processRegistry.js';
10
- const logger = pino({ name: 'QwenCliRunner' });
11
- export class QwenCLIRunner {
12
- config;
13
- timeoutMs;
14
- tempFiles = [];
15
- MAX_BUF = 10 * 1024 * 1024; // 10MB
16
- constructor() {
17
- this.config = CONFIG.CLAUDE;
18
- this.timeoutMs = CONFIG.TIMEOUT_MS || 900000;
19
- }
20
- cleanupTempFiles() {
21
- for (const tempFile of this.tempFiles) {
22
- try {
23
- if (fs.existsSync(tempFile)) {
24
- fs.unlinkSync(tempFile);
25
- logger.debug({ tempFile }, 'Cleaned up temp file');
26
- }
27
- }
28
- catch (err) {
29
- logger.warn({ tempFile, error: err }, 'Failed to cleanup temp file');
30
- }
31
- }
32
- this.tempFiles = [];
33
- }
34
- async runAgent(options) {
35
- return withSpan('qwencli.runAgent', async (span) => {
36
- span.setAttribute('agentName', options.agentName || '');
37
- span.setAttribute('runner', 'qwencli');
38
- const result = await this.runAgentInternal(options);
39
- this.cleanupTempFiles();
40
- if (options.agentName && result.sessionId) {
41
- await saveSessionId(options.agentName, result.sessionId, options.configPath, 'qwencli');
42
- }
43
- return result;
44
- }, { agentName: options.agentName || '', runner: 'qwencli' });
45
- }
46
- async runAgentInternal(options) {
47
- const { prompt, agentName, autoResume } = options;
48
- let { sessionId } = options;
49
- const { PATHS } = this.config;
50
- // --- Auto Resume ---
51
- if (autoResume && agentName && !sessionId) {
52
- const lastId = await getLastSessionId(agentName, options.configPath, 'qwencli');
53
- if (lastId) {
54
- sessionId = lastId;
55
- }
56
- }
57
- let customTimeoutMs = this.timeoutMs;
58
- // --- Isolation ---
59
- if (agentName) {
60
- try {
61
- const agentSettingsPath = resolveConfigPath(path.join(path.dirname(PATHS.SETTINGS), `settings_${agentName}.json`), options.configPath);
62
- if (fs.existsSync(agentSettingsPath)) {
63
- let settings = JSON.parse(fs.readFileSync(agentSettingsPath, 'utf8'));
64
- // --- New interpolation logic ---
65
- settings = interpolateEnvVars(settings);
66
- if (settings.env && settings.env.AGENT_TIMEOUT_MS) {
67
- customTimeoutMs = parseInt(settings.env.AGENT_TIMEOUT_MS, 10) || customTimeoutMs;
68
- }
69
- }
70
- }
71
- catch (err) {
72
- logger.warn({ agentName, error: err }, 'Failed to load agent settings');
73
- }
74
- }
75
- // qwen-code CLI: `qwen -p "prompt"` (non-interactive mode via stdin)
76
- const argsSpawn = ['-p', prompt];
77
- return new Promise((resolve) => {
78
- const isWin = process.platform === 'win32';
79
- // `qwen` binary from @qwen-code/qwen-code global install
80
- const command = isWin ? 'qwen.cmd' : 'qwen';
81
- const child = spawn(command, argsSpawn, {
82
- cwd: options.cwd || process.cwd(),
83
- shell: isWin,
84
- windowsHide: true,
85
- env: {
86
- ...process.env,
87
- ...(agentName ? { OVERMIND_AGENT_NAME: agentName } : {}),
88
- },
89
- });
90
- if (child.pid) {
91
- void registerProcess(child.pid, { agentName: agentName || '', runner: 'qwencli', configPath: options.configPath });
92
- }
93
- let stdout = '';
94
- let stderr = '';
95
- let hardTimeoutTimer = null;
96
- const cleanup = () => {
97
- child.stdout?.removeAllListeners();
98
- child.stderr?.removeAllListeners();
99
- child.removeAllListeners();
100
- if (hardTimeoutTimer)
101
- clearTimeout(hardTimeoutTimer);
102
- };
103
- if (child.stdout)
104
- child.stdout.on('data', (d) => {
105
- const chunk = d.toString();
106
- if (child.pid)
107
- void appendOutput(child.pid, chunk, options.configPath);
108
- if (stdout.length + d.length > this.MAX_BUF)
109
- stdout = stdout.slice(-this.MAX_BUF);
110
- else
111
- stdout += chunk;
112
- });
113
- if (child.stderr)
114
- child.stderr.on('data', (d) => {
115
- if (stderr.length + d.length > this.MAX_BUF)
116
- stderr = stderr.slice(-this.MAX_BUF);
117
- else
118
- stderr += d.toString();
119
- });
120
- const timeout = setTimeout(() => {
121
- child.kill('SIGTERM');
122
- hardTimeoutTimer = setTimeout(() => {
123
- if (!child.killed)
124
- child.kill('SIGKILL');
125
- }, 5000);
126
- cleanup();
127
- if (child.pid)
128
- void updateProcessStatus(child.pid, 'failed', null, options.configPath);
129
- resolve({ result: '', error: 'TIMEOUT', rawOutput: stdout });
130
- }, customTimeoutMs);
131
- child.on('close', async (code) => {
132
- clearTimeout(timeout);
133
- if (child.pid)
134
- void updateProcessStatus(child.pid, code === 0 ? 'done' : 'failed', code, options.configPath);
135
- if (code !== 0 && !stdout) {
136
- return resolve({ result: '', error: `EXIT_CODE_${code}`, rawOutput: stderr });
137
- }
138
- if (agentName && sessionId) {
139
- await saveSessionId(agentName, sessionId, options.configPath, 'qwencli');
140
- }
141
- resolve({
142
- result: stdout.trim(),
143
- sessionId,
144
- rawOutput: stdout,
145
- });
146
- });
147
- child.on('error', (err) => {
148
- resolve({ result: '', error: err.message, rawOutput: '' });
149
- });
150
- if (child.stdin)
151
- child.stdin.end();
152
- });
153
- }
154
- }
155
- //# sourceMappingURL=QwenCliRunner.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"QwenCliRunner.js","sourceRoot":"","sources":["../../src/services/QwenCliRunner.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=initialization_check.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"initialization_check.d.ts","sourceRoot":"","sources":["../../src/tools/initialization_check.ts"],"names":[],"mappings":""}
@@ -1,23 +0,0 @@
1
- import { memorySearchTool } from './memory_search.js';
2
- import { memoryRunsTool } from './memory_runs.js';
3
- async function init() {
4
- console.error('--- Architecture Search ---');
5
- const architecture = await memorySearchTool({
6
- query: 'architecture projet standard overmind',
7
- limit: 3,
8
- include_runs: false,
9
- });
10
- console.error(JSON.stringify(architecture, null, 2));
11
- console.error('\n--- Context Search ---');
12
- const context = await memorySearchTool({
13
- query: 'contexte projet contremaitre',
14
- limit: 3,
15
- include_runs: false,
16
- });
17
- console.error(JSON.stringify(context, null, 2));
18
- console.error('\n--- Recent Runs ---');
19
- const runs = await memoryRunsTool({ limit: 5, stats: false });
20
- console.error(JSON.stringify(runs, null, 2));
21
- }
22
- init().catch(console.error);
23
- //# sourceMappingURL=initialization_check.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"initialization_check.js","sourceRoot":"","sources":["../../src/tools/initialization_check.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,KAAK,UAAU,IAAI;IACjB,OAAO,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;IAC7C,MAAM,YAAY,GAAG,MAAM,gBAAgB,CAAC;QAC1C,KAAK,EAAE,uCAAuC;QAC9C,KAAK,EAAE,CAAC;QACR,YAAY,EAAE,KAAK;KACpB,CAAC,CAAC;IACH,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAErD,OAAO,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC;QACrC,KAAK,EAAE,8BAA8B;QACrC,KAAK,EAAE,CAAC;QACR,YAAY,EAAE,KAAK;KACpB,CAAC,CAAC;IACH,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAEhD,OAAO,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;IACvC,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9D,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAC/C,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC"}
@@ -1,21 +0,0 @@
1
- /**
2
- * ╔══════════════════════════════════════════════════════════════╗
3
- * ║ 🚀 OVERMIND CLI TESTER — Mode Dual ║
4
- * ╠══════════════════════════════════════════════════════════════╣
5
- * ║ --lib : appelle runAgent() directement (rapide, in-proc) ║
6
- * ║ --mcp : spawn le serveur MCP + appel via SDK officiel ║
7
- * ╠══════════════════════════════════════════════════════════════╣
8
- * ║ USAGE ║
9
- * ║ npx tsx src/tools/run_agent_cli.ts [--lib|--mcp] ║
10
- * ║ <runner> <agentName> <prompt> [model] ║
11
- * ║ ║
12
- * ║ EXEMPLES ║
13
- * ║ npx tsx src/tools/run_agent_cli.ts --lib ║
14
- * ║ kilo sniper_analyst "Analyse le marché" ║
15
- * ║ ║
16
- * ║ npx tsx src/tools/run_agent_cli.ts --mcp ║
17
- * ║ kilo mistral_test_kilo_1 "Hello" mistral-large-latest ║
18
- * ╚══════════════════════════════════════════════════════════════╝
19
- */
20
- export {};
21
- //# sourceMappingURL=run_agent_cli.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"run_agent_cli.d.ts","sourceRoot":"","sources":["../../src/tools/run_agent_cli.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG"}
@@ -1,129 +0,0 @@
1
- /**
2
- * ╔══════════════════════════════════════════════════════════════╗
3
- * ║ 🚀 OVERMIND CLI TESTER — Mode Dual ║
4
- * ╠══════════════════════════════════════════════════════════════╣
5
- * ║ --lib : appelle runAgent() directement (rapide, in-proc) ║
6
- * ║ --mcp : spawn le serveur MCP + appel via SDK officiel ║
7
- * ╠══════════════════════════════════════════════════════════════╣
8
- * ║ USAGE ║
9
- * ║ npx tsx src/tools/run_agent_cli.ts [--lib|--mcp] ║
10
- * ║ <runner> <agentName> <prompt> [model] ║
11
- * ║ ║
12
- * ║ EXEMPLES ║
13
- * ║ npx tsx src/tools/run_agent_cli.ts --lib ║
14
- * ║ kilo sniper_analyst "Analyse le marché" ║
15
- * ║ ║
16
- * ║ npx tsx src/tools/run_agent_cli.ts --mcp ║
17
- * ║ kilo mistral_test_kilo_1 "Hello" mistral-large-latest ║
18
- * ╚══════════════════════════════════════════════════════════════╝
19
- */
20
- // ─── ENV: chargée en tout premier (avant tout import qui lirait process.env) ────
21
- import { fileURLToPath } from 'url';
22
- import path from 'path';
23
- import fs from 'fs';
24
- const __filename = fileURLToPath(import.meta.url);
25
- const __dirname = path.dirname(__filename);
26
- // Résolution du .env relatif au projet (src/tools → ../../.env)
27
- const envPath = path.resolve(__dirname, '../../.env');
28
- if (fs.existsSync(envPath)) {
29
- const { config } = await import('dotenv');
30
- config({ path: envPath });
31
- }
32
- // ─── Imports métier ─────────────────────────────────────────────────────────
33
- import { Client } from '@modelcontextprotocol/sdk/client/index.js';
34
- import { StdioClientTransport } from '@modelcontextprotocol/sdk/client/stdio.js';
35
- import { runAgent } from './run_agent.js';
36
- // ─── Parsing des arguments ───────────────────────────────────────────────────
37
- const argv = process.argv.slice(2);
38
- // Premier arg optionnel : mode
39
- let mode = 'lib'; // défaut : lib
40
- let rest = argv;
41
- if (argv[0] === '--lib') {
42
- mode = 'lib';
43
- rest = argv.slice(1);
44
- }
45
- else if (argv[0] === '--mcp') {
46
- mode = 'mcp';
47
- rest = argv.slice(1);
48
- }
49
- if (rest.length < 3) {
50
- console.error('\n❌ Paramètres manquants !');
51
- console.error('Usage: npx tsx src/tools/run_agent_cli.ts [--lib|--mcp] <runner> <agentName> <prompt> [model]\n');
52
- console.error('Modes:');
53
- console.error(' --lib (défaut) : appel direct à runAgent() — rapide, sans serveur');
54
- console.error(' --mcp : spawn du serveur MCP + appel via SDK officiel\n');
55
- console.error('Runners: claude, gemini, kilo, qwencli, openclaw, cline, opencode, hermes\n');
56
- process.exit(1);
57
- }
58
- const [runner, agentName, prompt, model] = rest;
59
- // ─── MODE LIB ────────────────────────────────────────────────────────────────
60
- async function runViaLib() {
61
- console.error(`\n[CLI:lib] 🤖 runner="${runner}" agent="${agentName}"${model ? ` modèle="${model}"` : ''}`);
62
- const result = await runAgent({
63
- runner: runner,
64
- agentName,
65
- prompt,
66
- model,
67
- autoResume: true,
68
- silent: false,
69
- });
70
- console.log('\n── Résultat ──────────────────────────────────────────────');
71
- console.log(JSON.stringify(result, null, 2));
72
- }
73
- // ─── MODE MCP ────────────────────────────────────────────────────────────────
74
- async function runViaMcp() {
75
- // Chemin vers le binaire compilé, résolu relativement à ce fichier
76
- // src/tools/run_agent_cli.ts → dist/bin/cli.js
77
- const serverBin = path.resolve(__dirname, '../../dist/bin/cli.js');
78
- if (!fs.existsSync(serverBin)) {
79
- console.error(`\n❌ Binaire serveur introuvable : ${serverBin}`);
80
- console.error(" Lancez d'abord : pnpm run build\n");
81
- process.exit(1);
82
- }
83
- console.error(`\n[CLI:mcp] 🚀 Démarrage du serveur MCP : node ${serverBin}`);
84
- console.error(`[CLI:mcp] 🤖 runner="${runner}" agent="${agentName}"${model ? ` modèle="${model}"` : ''}\n`);
85
- // Le serveur hérite de process.env (donc du .env déjà chargé)
86
- const transport = new StdioClientTransport({
87
- command: 'node',
88
- args: ['--no-warnings', serverBin],
89
- env: { ...process.env },
90
- });
91
- const client = new Client({ name: 'overmind-cli-tester', version: '1.0.0' }, { capabilities: {} });
92
- try {
93
- await client.connect(transport);
94
- // Listing des outils disponibles (optionnel, utile pour le debug)
95
- const { tools } = await client.listTools();
96
- console.error(`[CLI:mcp] ✅ Connecté — ${tools.length} outil(s) disponible(s) : ${tools.map((t) => t.name).join(', ')}\n`);
97
- const args = {
98
- runner,
99
- agentName,
100
- prompt,
101
- autoResume: true,
102
- silent: false,
103
- };
104
- if (model)
105
- args.model = model;
106
- console.error(`[CLI:mcp] 📤 Appel run_agent…`);
107
- const result = await client.callTool({ name: 'run_agent', arguments: args });
108
- console.log('\n── Résultat MCP ──────────────────────────────────────────');
109
- console.log(JSON.stringify(result, null, 2));
110
- }
111
- finally {
112
- await transport.close();
113
- console.error('\n[CLI:mcp] 🔌 Connexion fermée.');
114
- }
115
- }
116
- // ─── Dispatch ────────────────────────────────────────────────────────────────
117
- try {
118
- if (mode === 'mcp') {
119
- await runViaMcp();
120
- }
121
- else {
122
- await runViaLib();
123
- }
124
- }
125
- catch (err) {
126
- console.error('\n💥 Erreur fatale :', err);
127
- process.exit(1);
128
- }
129
- //# sourceMappingURL=run_agent_cli.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"run_agent_cli.js","sourceRoot":"","sources":["../../src/tools/run_agent_cli.ts"],"names":[],"mappings":"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"}
@@ -1,34 +0,0 @@
1
- import { z } from 'zod';
2
- export declare const runAgentsParallelSchema: z.ZodObject<{
3
- agents: z.ZodArray<z.ZodObject<{
4
- runner: z.ZodEnum<{
5
- claude: "claude";
6
- gemini: "gemini";
7
- kilo: "kilo";
8
- qwencli: "qwencli";
9
- hermes: "hermes";
10
- openclaw: "openclaw";
11
- cline: "cline";
12
- opencode: "opencode";
13
- }>;
14
- prompt: z.ZodString;
15
- sessionId: z.ZodOptional<z.ZodString>;
16
- agentName: z.ZodOptional<z.ZodString>;
17
- autoResume: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
18
- mode: z.ZodOptional<z.ZodString>;
19
- path: z.ZodOptional<z.ZodString>;
20
- config: z.ZodOptional<z.ZodString>;
21
- silent: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
22
- model: z.ZodOptional<z.ZodString>;
23
- taskId: z.ZodOptional<z.ZodString>;
24
- }, z.core.$loose>>;
25
- waitAll: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
26
- }, z.core.$strip>;
27
- export declare function runAgentsParallel(args: z.infer<typeof runAgentsParallelSchema>): Promise<{
28
- content: [{
29
- type: "text";
30
- text: string;
31
- }];
32
- isError: boolean;
33
- }>;
34
- //# sourceMappingURL=run_agents_parallel.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"run_agents_parallel.d.ts","sourceRoot":"","sources":["../../src/tools/run_agents_parallel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAaxB,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;iBAelC,CAAC;AAIH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC;;;;;;GAGpF"}
@@ -1,28 +0,0 @@
1
- import { z } from 'zod';
2
- import { runAgentSchema } from './run_agent.js';
3
- import { dispatchAgents } from '../lib/orchestration/dispatcher.js';
4
- // ─── Schema ──────────────────────────────────────────────────────────────────
5
- const AgentTaskSchema = runAgentSchema.extend({
6
- taskId: z
7
- .string()
8
- .optional()
9
- .describe("Identifiant optionnel pour la tâche (ex: 'build', 'lint', 'test')"),
10
- });
11
- export const runAgentsParallelSchema = z.object({
12
- agents: z
13
- .array(AgentTaskSchema)
14
- .min(1, 'Au moins un agent requis.')
15
- .max(10, 'Maximum 10 agents en parallèle.')
16
- .describe('Liste des agents à lancer en parallèle. Chaque entrée est un appel run_agent complet (runner, prompt, agentName, model, path, mode…).'),
17
- waitAll: z
18
- .boolean()
19
- .optional()
20
- .default(true)
21
- .describe('Si true (défaut), attend que TOUS les agents terminent avant de retourner le résultat. Si false, retourne dès que le premier réussit.'),
22
- });
23
- // ─── Tool ────────────────────────────────────────────────────────────────────
24
- export async function runAgentsParallel(args) {
25
- const { agents, waitAll } = args;
26
- return dispatchAgents(agents, { waitAll });
27
- }
28
- //# sourceMappingURL=run_agents_parallel.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"run_agents_parallel.js","sourceRoot":"","sources":["../../src/tools/run_agents_parallel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAEpE,gFAAgF;AAEhF,MAAM,eAAe,GAAG,cAAc,CAAC,MAAM,CAAC;IAC5C,MAAM,EAAE,CAAC;SACN,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,mEAAmE,CAAC;CACjF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,MAAM,EAAE,CAAC;SACN,KAAK,CAAC,eAAe,CAAC;SACtB,GAAG,CAAC,CAAC,EAAE,2BAA2B,CAAC;SACnC,GAAG,CAAC,EAAE,EAAE,iCAAiC,CAAC;SAC1C,QAAQ,CACP,uIAAuI,CACxI;IACH,OAAO,EAAE,CAAC;SACP,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CACP,uIAAuI,CACxI;CACJ,CAAC,CAAC;AAEH,gFAAgF;AAEhF,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAA6C;IACnF,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IACjC,OAAO,cAAc,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;AAC7C,CAAC"}
@@ -1,25 +0,0 @@
1
- import { z } from 'zod';
2
- export declare const runHermesSchema: z.ZodObject<{
3
- prompt: z.ZodString;
4
- sessionId: z.ZodOptional<z.ZodString>;
5
- agentName: z.ZodOptional<z.ZodString>;
6
- autoResume: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
7
- path: z.ZodOptional<z.ZodString>;
8
- config: z.ZodOptional<z.ZodString>;
9
- silent: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
10
- model: z.ZodOptional<z.ZodString>;
11
- }, z.core.$loose>;
12
- export declare function runHermesAgent(args: z.infer<typeof runHermesSchema>): Promise<{
13
- content: {
14
- type: "text";
15
- text: string;
16
- }[];
17
- isError: boolean;
18
- } | {
19
- content: {
20
- type: "text";
21
- text: string;
22
- }[];
23
- isError?: undefined;
24
- }>;
25
- //# sourceMappingURL=run_hermes.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"run_hermes.d.ts","sourceRoot":"","sources":["../../src/tools/run_hermes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,eAAe;;;;;;;;;iBAgBZ,CAAC;AAIjB,wBAAsB,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC;;;;;;;;;;;;GAkFzE"}
@@ -1,93 +0,0 @@
1
- import { z } from 'zod';
2
- import { NousHermesRunner } from '../services/NousHermesRunner.js';
3
- import { storeRun } from '../memory/MemoryFactory.js';
4
- import { getWorkspaceDir } from '../lib/config.js';
5
- import { deleteSessionId } from '../lib/sessions.js';
6
- export const runHermesSchema = z
7
- .object({
8
- prompt: z.string().describe("Le prompt à envoyer à l'agent Nous Hermes"),
9
- sessionId: z.string().optional(),
10
- agentName: z.string().optional(),
11
- autoResume: z.boolean().optional().default(false),
12
- path: z.string().optional(),
13
- config: z.string().optional(),
14
- silent: z.boolean().optional().default(false),
15
- model: z
16
- .string()
17
- .optional()
18
- .describe('Le modèle à utiliser. Priorité OpenAI (ex: gpt-4o), NVIDIA NIM (ex: deepseek-ai/deepseek-v4-pro) ou OpenRouter (ex: tencent/hy3-preview)'),
19
- })
20
- .passthrough();
21
- import { verifyInstallation } from '../lib/InstallHelper.js';
22
- export async function runHermesAgent(args) {
23
- const { runner: runnerKey } = { runner: 'hermes' }; // Identification
24
- const check = await verifyInstallation(runnerKey);
25
- if (!check.ok) {
26
- return {
27
- content: [{ type: 'text', text: check.message || `CLI hermes non installé.` }],
28
- isError: true,
29
- };
30
- }
31
- const runner = new NousHermesRunner();
32
- const { prompt, agentName, autoResume, sessionId, path: argPath, config: argConfig, silent, model, } = args;
33
- const finalPath = argPath || getWorkspaceDir();
34
- const finalConfig = argConfig || getWorkspaceDir();
35
- const start = Date.now();
36
- let result = await runner.runAgent({
37
- prompt,
38
- agentName,
39
- autoResume,
40
- sessionId,
41
- cwd: finalPath,
42
- configPath: finalConfig,
43
- silent,
44
- model,
45
- });
46
- // Retry if session invalid
47
- if (result.error?.includes('session') || result.error?.includes('EXIT_CODE_1')) {
48
- if (agentName)
49
- await deleteSessionId(agentName, finalConfig, 'hermes');
50
- result = await runner.runAgent({
51
- prompt,
52
- agentName,
53
- autoResume: false,
54
- sessionId: undefined,
55
- cwd: finalPath,
56
- configPath: finalConfig,
57
- silent,
58
- model,
59
- });
60
- }
61
- const durationMs = Date.now() - start;
62
- try {
63
- await storeRun({
64
- runner: 'hermes',
65
- agentName,
66
- prompt,
67
- result: result.result,
68
- error: result.error,
69
- durationMs,
70
- success: !result.error,
71
- sessionId: result.sessionId,
72
- });
73
- }
74
- catch (e) {
75
- console.error(`[run_hermes] ⚠️ Memory store failed: ${e instanceof Error ? e.message : String(e)}`);
76
- }
77
- if (result.error)
78
- return {
79
- content: [{ type: 'text', text: `❌ Erreur NousHermes: ${result.error}` }],
80
- isError: true,
81
- };
82
- return {
83
- content: [
84
- { type: 'text', text: result.result },
85
- ...(result.sessionId
86
- ? [{ type: 'text', text: `SESSION_ID: ${result.sessionId}` }]
87
- : []),
88
- // ...(result.model ? [{ type: 'text' as const, text: `MODEL: ${result.model}` }] : []),
89
- // ...(result.nickname ? [{ type: 'text' as const, text: `USING: ${result.nickname}` }] : []),
90
- ],
91
- };
92
- }
93
- //# sourceMappingURL=run_hermes.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"run_hermes.js","sourceRoot":"","sources":["../../src/tools/run_hermes.ts"],"names":[],"mappings":"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"}
@@ -1,24 +0,0 @@
1
- import { z } from 'zod';
2
- export declare const runQwenCLISchema: z.ZodObject<{
3
- prompt: z.ZodString;
4
- sessionId: z.ZodOptional<z.ZodString>;
5
- agentName: z.ZodOptional<z.ZodString>;
6
- autoResume: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
7
- path: z.ZodOptional<z.ZodString>;
8
- config: z.ZodOptional<z.ZodString>;
9
- silent: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
10
- }, z.core.$strip>;
11
- export declare function runQwenCLIAgent(args: z.infer<typeof runQwenCLISchema>): Promise<{
12
- content: {
13
- type: "text";
14
- text: string;
15
- }[];
16
- isError: boolean;
17
- } | {
18
- content: {
19
- type: "text";
20
- text: string;
21
- }[];
22
- isError?: undefined;
23
- }>;
24
- //# sourceMappingURL=run_qwencli.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"run_qwencli.d.ts","sourceRoot":"","sources":["../../src/tools/run_qwencli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,gBAAgB;;;;;;;;iBAQ3B,CAAC;AAEH,wBAAsB,eAAe,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC;;;;;;;;;;;;GAsD3E"}