overmind-mcp 2.8.52 → 2.8.53
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/bridge/ScenarioLoader.d.ts +20 -1
- package/dist/bridge/ScenarioLoader.d.ts.map +1 -1
- package/dist/bridge/ScenarioLoader.js +42 -0
- package/dist/bridge/ScenarioLoader.js.map +1 -1
- package/dist/index.d.ts +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -2
- package/dist/index.js.map +1 -1
- package/dist/lib/agent_lifecycle.d.ts +19 -0
- package/dist/lib/agent_lifecycle.d.ts.map +1 -1
- package/dist/lib/agent_lifecycle.js +92 -1
- package/dist/lib/agent_lifecycle.js.map +1 -1
- package/dist/lib/orchestration/dispatcher.d.ts +13 -0
- package/dist/lib/orchestration/dispatcher.d.ts.map +1 -1
- package/dist/lib/orchestration/dispatcher.js +100 -0
- package/dist/lib/orchestration/dispatcher.js.map +1 -1
- package/dist/services/AgentManager.d.ts +4 -4
- package/dist/services/AgentManager.d.ts.map +1 -1
- package/dist/services/AgentManager.js +139 -191
- package/dist/services/AgentManager.js.map +1 -1
- package/dist/services/HermesProfileManager.d.ts +99 -0
- package/dist/services/HermesProfileManager.d.ts.map +1 -0
- package/dist/services/HermesProfileManager.js +356 -0
- package/dist/services/HermesProfileManager.js.map +1 -0
- package/dist/services/HermesRunner.d.ts +53 -0
- package/dist/services/HermesRunner.d.ts.map +1 -0
- package/dist/services/HermesRunner.js +313 -0
- package/dist/services/HermesRunner.js.map +1 -0
- package/dist/services/KanbanAdapter.d.ts +135 -0
- package/dist/services/KanbanAdapter.d.ts.map +1 -0
- package/dist/services/KanbanAdapter.js +320 -0
- package/dist/services/KanbanAdapter.js.map +1 -0
- package/dist/tools/manage_agents.js +4 -4
- package/dist/tools/manage_agents.js.map +1 -1
- package/dist/tools/memory_store.d.ts +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 +12 -6
- package/dist/tools/run_hermes.js.map +1 -1
- package/docs/PLAN_MIGRATION_V3.md +339 -0
- package/package.json +2 -2
- package/scripts/migrate-to-profiles.mjs +205 -0
- package/dist/lib/orchestration/swarm.d.ts +0 -76
- package/dist/lib/orchestration/swarm.d.ts.map +0 -1
- package/dist/lib/orchestration/swarm.js +0 -241
- package/dist/lib/orchestration/swarm.js.map +0 -1
- package/dist/prompts/agent_prompts.d.ts +0 -2
- package/dist/prompts/agent_prompts.d.ts.map +0 -1
- package/dist/prompts/agent_prompts.js +0 -21
- package/dist/prompts/agent_prompts.js.map +0 -1
- package/dist/services/NousHermesRunner.d.ts +0 -83
- package/dist/services/NousHermesRunner.d.ts.map +0 -1
- package/dist/services/NousHermesRunner.js +0 -1241
- package/dist/services/NousHermesRunner.js.map +0 -1
- package/dist/services/hermes/binaryFinder.d.ts +0 -8
- package/dist/services/hermes/binaryFinder.d.ts.map +0 -1
- package/dist/services/hermes/binaryFinder.js +0 -92
- package/dist/services/hermes/binaryFinder.js.map +0 -1
- package/dist/services/hermes/configYamlFilter.d.ts +0 -12
- package/dist/services/hermes/configYamlFilter.d.ts.map +0 -1
- package/dist/services/hermes/configYamlFilter.js +0 -70
- package/dist/services/hermes/configYamlFilter.js.map +0 -1
- package/dist/services/hermes/providerConfig.d.ts +0 -19
- package/dist/services/hermes/providerConfig.d.ts.map +0 -1
- package/dist/services/hermes/providerConfig.js +0 -53
- package/dist/services/hermes/providerConfig.js.map +0 -1
- package/dist/services/hermesTokenResolver.d.ts +0 -74
- package/dist/services/hermesTokenResolver.d.ts.map +0 -1
- package/dist/services/hermesTokenResolver.js +0 -140
- package/dist/services/hermesTokenResolver.js.map +0 -1
- package/dist/tools/initialization_check.d.ts +0 -2
- package/dist/tools/initialization_check.d.ts.map +0 -1
- package/dist/tools/initialization_check.js +0 -23
- package/dist/tools/initialization_check.js.map +0 -1
- /package/bin/{launch.js → launch.cjs} +0 -0
- /package/dist/bin/{launch.js → launch.cjs} +0 -0
|
@@ -0,0 +1,320 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* KanbanAdapter — Thin wrapper around `hermes kanban` CLI.
|
|
3
|
+
*
|
|
4
|
+
* ╔════════════════════════════════════════════════════════════════════════╗
|
|
5
|
+
* ║ PURPOSE (v3.0 — Refactored) ║
|
|
6
|
+
* ║ ║
|
|
7
|
+
* ║ Replaces the old swarm.ts (368 lines) and the parallel orchestration ║
|
|
8
|
+
* ║ in dispatcher.ts with native Hermes Kanban tasks. ║
|
|
9
|
+
* ║ ║
|
|
10
|
+
* ║ Kanban = durable SQLite-backed task board shared across all Hermes ║
|
|
11
|
+
* ║ profiles. The dispatcher loop (60s default) atomically claims ready ║
|
|
12
|
+
* ║ tasks and spawns the assigned profile as its own OS process. ║
|
|
13
|
+
* ║ ║
|
|
14
|
+
* ║ YOLO CONFIG (no human-in-the-loop): ║
|
|
15
|
+
* ║ - autoReclaim on crash/timeout ║
|
|
16
|
+
* ║ - maxRetries: 5 (vs default 2) before block ║
|
|
17
|
+
* ║ - autoUnblock via admin API (no manual human intervention) ║
|
|
18
|
+
* ║ - dispatcherTick: 30s (vs default 60s — faster pickup) ║
|
|
19
|
+
* ╚════════════════════════════════════════════════════════════════════════╝
|
|
20
|
+
*/
|
|
21
|
+
import { exec } from 'child_process';
|
|
22
|
+
import { promisify } from 'util';
|
|
23
|
+
import { rootLogger } from '../lib/logger.js';
|
|
24
|
+
const execAsync = promisify(exec);
|
|
25
|
+
const logger = rootLogger.child({ module: 'KanbanAdapter' });
|
|
26
|
+
// ─── YOLO Config ──────────────────────────────────────────────────────────────
|
|
27
|
+
export const YOLO_CONFIG = {
|
|
28
|
+
autoReclaim: true,
|
|
29
|
+
maxRetries: 5,
|
|
30
|
+
autoUnblock: true,
|
|
31
|
+
reclaimStaleMs: 900000, // 15min
|
|
32
|
+
dispatcherTickSeconds: 30,
|
|
33
|
+
goalModeMaxTurns: 20,
|
|
34
|
+
};
|
|
35
|
+
// ─── Helper: run hermes kanban CLI ────────────────────────────────────────────
|
|
36
|
+
async function runKanban(args, opts) {
|
|
37
|
+
const timeout = opts?.timeout ?? 30000;
|
|
38
|
+
const cmd = `hermes kanban ${args.join(' ')}`;
|
|
39
|
+
try {
|
|
40
|
+
const result = await execAsync(cmd, { timeout, maxBuffer: 5 * 1024 * 1024 });
|
|
41
|
+
return { stdout: result.stdout, stderr: result.stderr };
|
|
42
|
+
}
|
|
43
|
+
catch (e) {
|
|
44
|
+
const err = e;
|
|
45
|
+
logger.error({ cmd, error: err.message, stdout: err.stdout?.slice(0, 500), stderr: err.stderr?.slice(0, 500) }, '[KANBAN] CLI command failed.');
|
|
46
|
+
throw new Error(`Kanban CLI failed: ${err.message}`);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
// ─── Main Class ───────────────────────────────────────────────────────────────
|
|
50
|
+
export class KanbanAdapter {
|
|
51
|
+
board;
|
|
52
|
+
constructor(board) {
|
|
53
|
+
this.board = board;
|
|
54
|
+
}
|
|
55
|
+
get boardArgs() {
|
|
56
|
+
return this.board ? ['--board', this.board] : [];
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Initialize the kanban board (idempotent).
|
|
60
|
+
*/
|
|
61
|
+
async init() {
|
|
62
|
+
await runKanban([...this.boardArgs, 'init']);
|
|
63
|
+
logger.info({ board: this.board }, '[INIT] Kanban board initialized.');
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Force a dispatcher tick immediately (don't wait for the 60s loop).
|
|
67
|
+
*/
|
|
68
|
+
async nudge() {
|
|
69
|
+
try {
|
|
70
|
+
await runKanban([...this.boardArgs, 'dispatch'], { timeout: 10000 });
|
|
71
|
+
}
|
|
72
|
+
catch (e) {
|
|
73
|
+
logger.warn({ error: e }, '[NUDGE] Dispatcher tick failed — will retry on next interval.');
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Create a single task.
|
|
78
|
+
*/
|
|
79
|
+
async createTask(opts) {
|
|
80
|
+
const args = [...this.boardArgs, 'create'];
|
|
81
|
+
// Title (positional)
|
|
82
|
+
args.push(`"${opts.title.replace(/"/g, '\\"')}"`);
|
|
83
|
+
if (opts.assignee)
|
|
84
|
+
args.push('--assignee', opts.assignee);
|
|
85
|
+
if (opts.body)
|
|
86
|
+
args.push('--body', `"${opts.body.replace(/"/g, '\\"')}"`);
|
|
87
|
+
if (opts.tenant)
|
|
88
|
+
args.push('--tenant', opts.tenant);
|
|
89
|
+
if (opts.priority !== undefined)
|
|
90
|
+
args.push('--priority', String(opts.priority));
|
|
91
|
+
if (opts.workspace)
|
|
92
|
+
args.push('--workspace', opts.workspace);
|
|
93
|
+
if (opts.idempotencyKey)
|
|
94
|
+
args.push('--idempotency-key', opts.idempotencyKey);
|
|
95
|
+
if (opts.maxRuntime)
|
|
96
|
+
args.push('--max-runtime', opts.maxRuntime);
|
|
97
|
+
if (opts.goalMode) {
|
|
98
|
+
args.push('--goal');
|
|
99
|
+
args.push('--goal-max-turns', String(opts.goalMaxTurns || YOLO_CONFIG.goalModeMaxTurns));
|
|
100
|
+
}
|
|
101
|
+
if (opts.skills) {
|
|
102
|
+
for (const skill of opts.skills) {
|
|
103
|
+
args.push('--skill', skill);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
if (opts.parents && opts.parents.length > 0) {
|
|
107
|
+
for (const p of opts.parents) {
|
|
108
|
+
args.push('--parent', p);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
// YOLO: set high retry limit
|
|
112
|
+
args.push('--max-retries', String(YOLO_CONFIG.maxRetries));
|
|
113
|
+
args.push('--json');
|
|
114
|
+
const { stdout } = await runKanban(args);
|
|
115
|
+
const parsed = JSON.parse(stdout.trim());
|
|
116
|
+
const taskId = parsed.id || parsed.task_id || '';
|
|
117
|
+
if (!taskId) {
|
|
118
|
+
throw new Error(`Kanban create did not return a task ID. Output: ${stdout.slice(0, 200)}`);
|
|
119
|
+
}
|
|
120
|
+
logger.info({ taskId, title: opts.title, assignee: opts.assignee }, '[CREATE] Task created.');
|
|
121
|
+
// Nudge dispatcher immediately for faster pickup
|
|
122
|
+
void this.nudge();
|
|
123
|
+
return { taskId };
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Create multiple independent tasks in parallel (fan-out).
|
|
127
|
+
*/
|
|
128
|
+
async createParallelTasks(tasks) {
|
|
129
|
+
const results = await Promise.all(tasks.map(t => this.createTask(t)));
|
|
130
|
+
return results.map(r => r.taskId);
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Create a pipeline (sequential chain: task[0] → task[1] → task[2]...).
|
|
134
|
+
* Each task has the previous one as parent.
|
|
135
|
+
*/
|
|
136
|
+
async createPipeline(tasks) {
|
|
137
|
+
const taskIds = [];
|
|
138
|
+
for (let i = 0; i < tasks.length; i++) {
|
|
139
|
+
const taskOpts = { ...tasks[i] };
|
|
140
|
+
if (i > 0 && taskIds[i - 1]) {
|
|
141
|
+
taskOpts.parents = [...(taskOpts.parents || []), taskIds[i - 1]];
|
|
142
|
+
}
|
|
143
|
+
const { taskId } = await this.createTask(taskOpts);
|
|
144
|
+
taskIds.push(taskId);
|
|
145
|
+
}
|
|
146
|
+
return taskIds;
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* Get the status of a task.
|
|
150
|
+
*/
|
|
151
|
+
async getStatus(taskId) {
|
|
152
|
+
const { stdout } = await runKanban([...this.boardArgs, 'show', taskId, '--json']);
|
|
153
|
+
const parsed = JSON.parse(stdout.trim());
|
|
154
|
+
// Hermes wraps the task in a "task" key
|
|
155
|
+
const t = parsed.task || parsed;
|
|
156
|
+
return {
|
|
157
|
+
id: t.id || taskId,
|
|
158
|
+
title: t.title || '',
|
|
159
|
+
assignee: t.assignee || '',
|
|
160
|
+
status: t.status || 'unknown',
|
|
161
|
+
body: t.body,
|
|
162
|
+
tenant: t.tenant,
|
|
163
|
+
workspace: t.workspace_kind || t.workspace,
|
|
164
|
+
};
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Wait for a task to complete (polling loop).
|
|
168
|
+
* YOLO: auto-reclaim on stale claims.
|
|
169
|
+
*/
|
|
170
|
+
async wait(taskId, timeoutMs = 600000) {
|
|
171
|
+
const startTime = Date.now();
|
|
172
|
+
const pollInterval = 5000; // 5s poll
|
|
173
|
+
let lastReclaimTime = 0;
|
|
174
|
+
while (Date.now() - startTime < timeoutMs) {
|
|
175
|
+
try {
|
|
176
|
+
const status = await this.getStatus(taskId);
|
|
177
|
+
// ─── Terminal states ─────────────────────────────────────────────
|
|
178
|
+
if (status.status === 'done') {
|
|
179
|
+
const { stdout } = await runKanban([...this.boardArgs, 'show', taskId, '--json']);
|
|
180
|
+
const parsed = JSON.parse(stdout.trim());
|
|
181
|
+
const t = parsed.task || parsed;
|
|
182
|
+
const runs = parsed.runs || t.runs || [];
|
|
183
|
+
const lastRun = runs[runs.length - 1];
|
|
184
|
+
return {
|
|
185
|
+
id: taskId,
|
|
186
|
+
status: 'done',
|
|
187
|
+
summary: lastRun?.summary || '',
|
|
188
|
+
metadata: lastRun?.metadata,
|
|
189
|
+
durationMs: lastRun?.started_at && lastRun?.ended_at
|
|
190
|
+
? lastRun.ended_at - lastRun.started_at
|
|
191
|
+
: undefined,
|
|
192
|
+
};
|
|
193
|
+
}
|
|
194
|
+
if (status.status === 'archived') {
|
|
195
|
+
return {
|
|
196
|
+
id: taskId,
|
|
197
|
+
status: 'archived',
|
|
198
|
+
error: 'Task was archived',
|
|
199
|
+
};
|
|
200
|
+
}
|
|
201
|
+
// ─── Blocked → YOLO auto-unblock ─────────────────────────────────
|
|
202
|
+
if (status.status === 'blocked' && YOLO_CONFIG.autoUnblock) {
|
|
203
|
+
logger.warn({ taskId }, '[WAIT] Task is blocked — YOLO auto-unblock.');
|
|
204
|
+
try {
|
|
205
|
+
await runKanban([...this.boardArgs, 'unblock', taskId]);
|
|
206
|
+
logger.info({ taskId }, '[WAIT] Task auto-unblocked.');
|
|
207
|
+
}
|
|
208
|
+
catch (e) {
|
|
209
|
+
logger.error({ taskId, error: e }, '[WAIT] Auto-unblock failed.');
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
// ─── Running → check for stale claim ─────────────────────────────
|
|
213
|
+
if (status.status === 'running' && YOLO_CONFIG.autoReclaim) {
|
|
214
|
+
const now = Date.now();
|
|
215
|
+
if (now - lastReclaimTime > YOLO_CONFIG.reclaimStaleMs) {
|
|
216
|
+
// Check if the claim is stale (no heartbeat for 15min)
|
|
217
|
+
const { stdout } = await runKanban([...this.boardArgs, 'show', taskId, '--json']);
|
|
218
|
+
const parsed = JSON.parse(stdout.trim());
|
|
219
|
+
const runs = parsed.runs || [];
|
|
220
|
+
const activeRun = runs.find((r) => r.outcome === 'active');
|
|
221
|
+
if (activeRun && activeRun.started_at) {
|
|
222
|
+
const claimAge = now - activeRun.started_at * 1000;
|
|
223
|
+
if (claimAge > YOLO_CONFIG.reclaimStaleMs) {
|
|
224
|
+
logger.warn({ taskId, claimAgeMs: claimAge }, '[WAIT] Stale claim detected — auto-reclaim.');
|
|
225
|
+
try {
|
|
226
|
+
await runKanban([...this.boardArgs, 'reclaim', taskId]);
|
|
227
|
+
logger.info({ taskId }, '[WAIT] Task reclaimed.');
|
|
228
|
+
}
|
|
229
|
+
catch (e) {
|
|
230
|
+
logger.error({ taskId, error: e }, '[WAIT] Auto-reclaim failed.');
|
|
231
|
+
}
|
|
232
|
+
lastReclaimTime = now;
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
catch (e) {
|
|
239
|
+
logger.warn({ taskId, error: e }, '[WAIT] Status check failed — will retry.');
|
|
240
|
+
}
|
|
241
|
+
// Sleep before next poll
|
|
242
|
+
await new Promise(resolve => setTimeout(resolve, pollInterval));
|
|
243
|
+
}
|
|
244
|
+
// Timeout reached
|
|
245
|
+
return {
|
|
246
|
+
id: taskId,
|
|
247
|
+
status: 'timeout',
|
|
248
|
+
error: `Task did not complete within ${timeoutMs}ms`,
|
|
249
|
+
};
|
|
250
|
+
}
|
|
251
|
+
/**
|
|
252
|
+
* Reclaim a task (abort running worker, reset to ready).
|
|
253
|
+
*/
|
|
254
|
+
async reclaim(taskId) {
|
|
255
|
+
await runKanban([...this.boardArgs, 'reclaim', taskId]);
|
|
256
|
+
logger.info({ taskId }, '[RECLAIM] Task reclaimed.');
|
|
257
|
+
}
|
|
258
|
+
/**
|
|
259
|
+
* Unblock a blocked task.
|
|
260
|
+
*/
|
|
261
|
+
async unblock(taskId) {
|
|
262
|
+
await runKanban([...this.boardArgs, 'unblock', taskId]);
|
|
263
|
+
logger.info({ taskId }, '[UNBLOCK] Task unblocked.');
|
|
264
|
+
}
|
|
265
|
+
/**
|
|
266
|
+
* Archive a task.
|
|
267
|
+
*/
|
|
268
|
+
async archive(taskId) {
|
|
269
|
+
await runKanban([...this.boardArgs, 'archive', taskId]);
|
|
270
|
+
logger.info({ taskId }, '[ARCHIVE] Task archived.');
|
|
271
|
+
}
|
|
272
|
+
/**
|
|
273
|
+
* List tasks with optional filter.
|
|
274
|
+
*/
|
|
275
|
+
async listTasks(filter) {
|
|
276
|
+
const args = [...this.boardArgs, 'list', '--json'];
|
|
277
|
+
const { stdout } = await runKanban(args);
|
|
278
|
+
let tasks;
|
|
279
|
+
try {
|
|
280
|
+
const parsed = JSON.parse(stdout.trim());
|
|
281
|
+
tasks = Array.isArray(parsed) ? parsed : (parsed.tasks || []);
|
|
282
|
+
}
|
|
283
|
+
catch {
|
|
284
|
+
// Fallback: parse text output
|
|
285
|
+
logger.warn('[LIST] Failed to parse JSON output — returning empty list.');
|
|
286
|
+
return [];
|
|
287
|
+
}
|
|
288
|
+
// Apply filters
|
|
289
|
+
if (filter?.status) {
|
|
290
|
+
tasks = tasks.filter(t => t.status === filter.status);
|
|
291
|
+
}
|
|
292
|
+
if (filter?.assignee) {
|
|
293
|
+
tasks = tasks.filter(t => t.assignee === filter.assignee);
|
|
294
|
+
}
|
|
295
|
+
if (filter?.tenant) {
|
|
296
|
+
tasks = tasks.filter(t => t.tenant === filter.tenant);
|
|
297
|
+
}
|
|
298
|
+
return tasks;
|
|
299
|
+
}
|
|
300
|
+
/**
|
|
301
|
+
* Add a comment to a task (inter-agent protocol).
|
|
302
|
+
*/
|
|
303
|
+
async comment(taskId, body) {
|
|
304
|
+
const args = [...this.boardArgs, 'comment', taskId, '--body', `"${body.replace(/"/g, '\\"')}"`];
|
|
305
|
+
await runKanban(args);
|
|
306
|
+
}
|
|
307
|
+
/**
|
|
308
|
+
* Create a board for a specific project/workstream.
|
|
309
|
+
*/
|
|
310
|
+
async createBoard(slug, name, opts) {
|
|
311
|
+
const args = ['boards', 'create', slug, '--name', `"${name}"`];
|
|
312
|
+
if (opts?.description)
|
|
313
|
+
args.push('--description', `"${opts.description}"`);
|
|
314
|
+
if (opts?.switch)
|
|
315
|
+
args.push('--switch');
|
|
316
|
+
await runKanban(args);
|
|
317
|
+
logger.info({ slug, name }, '[CREATE_BOARD] Board created.');
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
//# sourceMappingURL=KanbanAdapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"KanbanAdapter.js","sourceRoot":"","sources":["../../src/services/KanbanAdapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -110,7 +110,7 @@ export async function updateAgentConfig(args) {
|
|
|
110
110
|
const isUnitUpdate = !!(model || mcpServers || env || mode || cliPath);
|
|
111
111
|
const isFileRewrite = !!(file && content);
|
|
112
112
|
if (isUnitUpdate && !isFileRewrite && !runner) {
|
|
113
|
-
const detected = manager.peekRunner(name); // (b) lecture du runner déjà en place
|
|
113
|
+
const detected = await manager.peekRunner(name); // (b) lecture du runner déjà en place
|
|
114
114
|
const detectedTxt = detected ? `**${detected}**` : '**non défini** (sera initialisé à `claude`)';
|
|
115
115
|
return {
|
|
116
116
|
content: [
|
|
@@ -140,10 +140,10 @@ export async function updateAgentConfig(args) {
|
|
|
140
140
|
content,
|
|
141
141
|
});
|
|
142
142
|
// (b) Validation runtime : on confirme le runner effectif après update
|
|
143
|
-
const effectiveRunner = manager.peekRunner(name);
|
|
143
|
+
const effectiveRunner = await manager.peekRunner(name);
|
|
144
144
|
const runnerNotice = effectiveRunner
|
|
145
|
-
? `\n\n🏃 Runner effectif
|
|
146
|
-
: `\n\n⚠️ Aucun runner détectable
|
|
145
|
+
? `\n\n🏃 Runner effectif : **${effectiveRunner}**`
|
|
146
|
+
: `\n\n⚠️ Aucun runner détectable — un futur run_agent risque d'échouer.`;
|
|
147
147
|
if (changes.length === 0) {
|
|
148
148
|
return {
|
|
149
149
|
content: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manage_agents.js","sourceRoot":"","sources":["../../src/tools/manage_agents.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"manage_agents.js","sourceRoot":"","sources":["../../src/tools/manage_agents.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,10 +3,10 @@ export declare const memoryStoreSchema: z.ZodObject<{
|
|
|
3
3
|
text: z.ZodString;
|
|
4
4
|
source: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
|
|
5
5
|
error: "error";
|
|
6
|
+
agent: "agent";
|
|
6
7
|
pattern: "pattern";
|
|
7
8
|
user: "user";
|
|
8
9
|
decision: "decision";
|
|
9
|
-
agent: "agent";
|
|
10
10
|
}>>>;
|
|
11
11
|
agent_name: z.ZodOptional<z.ZodString>;
|
|
12
12
|
}, z.core.$strip>;
|
|
@@ -8,6 +8,7 @@ export declare const runHermesSchema: z.ZodObject<{
|
|
|
8
8
|
config: z.ZodOptional<z.ZodString>;
|
|
9
9
|
silent: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
10
10
|
model: z.ZodOptional<z.ZodString>;
|
|
11
|
+
provider: z.ZodOptional<z.ZodString>;
|
|
11
12
|
signal: z.ZodOptional<z.ZodCustom<AbortSignal, AbortSignal>>;
|
|
12
13
|
overmindMode: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
13
14
|
}, z.core.$loose>;
|
|
@@ -1 +1 @@
|
|
|
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
|
|
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;;;;;;;;;;;;iBAyBZ,CAAC;AAIjB,wBAAsB,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC;;;;;;;;;;;;GA4FzE"}
|
package/dist/tools/run_hermes.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import {
|
|
2
|
+
import { HermesRunner } from '../services/HermesRunner.js';
|
|
3
3
|
import { storeRun } from '../memory/MemoryFactory.js';
|
|
4
4
|
import { getWorkspaceDir } from '../lib/config.js';
|
|
5
5
|
import { deleteSessionId } from '../lib/sessions.js';
|
|
6
6
|
export const runHermesSchema = z
|
|
7
7
|
.object({
|
|
8
|
-
prompt: z.string().describe("Le prompt à envoyer à l'agent
|
|
8
|
+
prompt: z.string().describe("Le prompt à envoyer à l'agent Hermes"),
|
|
9
9
|
sessionId: z.string().optional(),
|
|
10
10
|
agentName: z.string().optional(),
|
|
11
11
|
autoResume: z.boolean().optional().default(false),
|
|
@@ -15,7 +15,11 @@ export const runHermesSchema = z
|
|
|
15
15
|
model: z
|
|
16
16
|
.string()
|
|
17
17
|
.optional()
|
|
18
|
-
.describe('
|
|
18
|
+
.describe('Model override (optional — the profile config.yaml is the default)'),
|
|
19
|
+
provider: z
|
|
20
|
+
.string()
|
|
21
|
+
.optional()
|
|
22
|
+
.describe('Provider override (optional — the profile config.yaml is the default)'),
|
|
19
23
|
signal: z.custom().optional().describe("AbortSignal pour annuler l'agent"),
|
|
20
24
|
/** Quand true, skip storeRun() — utilisé par Overmind MCP (le stockage est fait cote MCP Server) */
|
|
21
25
|
overmindMode: z.boolean().optional().default(false),
|
|
@@ -31,8 +35,8 @@ export async function runHermesAgent(args) {
|
|
|
31
35
|
isError: true,
|
|
32
36
|
};
|
|
33
37
|
}
|
|
34
|
-
const runner = new
|
|
35
|
-
const { prompt, agentName, autoResume, sessionId, path: argPath, config: argConfig, silent, model, signal, overmindMode, } = args;
|
|
38
|
+
const runner = new HermesRunner();
|
|
39
|
+
const { prompt, agentName, autoResume, sessionId, path: argPath, config: argConfig, silent, model, provider, signal, overmindMode, } = args;
|
|
36
40
|
const finalPath = argPath || getWorkspaceDir();
|
|
37
41
|
const finalConfig = argConfig || getWorkspaceDir();
|
|
38
42
|
const start = Date.now();
|
|
@@ -45,6 +49,7 @@ export async function runHermesAgent(args) {
|
|
|
45
49
|
configPath: finalConfig,
|
|
46
50
|
silent,
|
|
47
51
|
model,
|
|
52
|
+
provider,
|
|
48
53
|
signal,
|
|
49
54
|
});
|
|
50
55
|
// Retry if session invalid
|
|
@@ -60,6 +65,7 @@ export async function runHermesAgent(args) {
|
|
|
60
65
|
configPath: finalConfig,
|
|
61
66
|
silent,
|
|
62
67
|
model,
|
|
68
|
+
provider,
|
|
63
69
|
signal,
|
|
64
70
|
});
|
|
65
71
|
}
|
|
@@ -86,7 +92,7 @@ export async function runHermesAgent(args) {
|
|
|
86
92
|
}
|
|
87
93
|
if (result.error)
|
|
88
94
|
return {
|
|
89
|
-
content: [{ type: 'text', text: `❌ Erreur
|
|
95
|
+
content: [{ type: 'text', text: `❌ Erreur Hermes: ${result.error}` }],
|
|
90
96
|
isError: true,
|
|
91
97
|
};
|
|
92
98
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run_hermes.js","sourceRoot":"","sources":["../../src/tools/run_hermes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"run_hermes.js","sourceRoot":"","sources":["../../src/tools/run_hermes.ts"],"names":[],"mappings":"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"}
|