maestro-flow 0.3.3 → 0.3.5
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/.claude/commands/quality-business-test.md +110 -0
- package/.codex/skills/maestro-init/SKILL.md +167 -167
- package/.codex/skills/maestro-phase-add/SKILL.md +154 -154
- package/.codex/skills/maestro-phase-transition/SKILL.md +173 -173
- package/.codex/skills/maestro-verify/SKILL.md +566 -566
- package/.codex/skills/manage-codebase-rebuild/SKILL.md +5 -5
- package/.codex/skills/manage-codebase-refresh/SKILL.md +5 -5
- package/.codex/skills/manage-issue/SKILL.md +7 -7
- package/.codex/skills/manage-issue-analyze/SKILL.md +7 -7
- package/.codex/skills/manage-issue-discover/SKILL.md +503 -503
- package/.codex/skills/manage-issue-execute/SKILL.md +9 -9
- package/.codex/skills/manage-issue-plan/SKILL.md +8 -8
- package/.codex/skills/manage-learn/SKILL.md +7 -7
- package/.codex/skills/manage-memory/SKILL.md +72 -72
- package/.codex/skills/manage-memory-capture/SKILL.md +86 -86
- package/.codex/skills/manage-status/SKILL.md +2 -2
- package/.codex/skills/quality-business-test/SKILL.md +223 -0
- package/.codex/skills/quality-debug/SKILL.md +5 -5
- package/.codex/skills/quality-integration-test/SKILL.md +544 -544
- package/.codex/skills/quality-refactor/SKILL.md +6 -6
- package/.codex/skills/quality-retrospective/SKILL.md +10 -10
- package/.codex/skills/quality-review/SKILL.md +408 -408
- package/.codex/skills/quality-sync/SKILL.md +6 -6
- package/.codex/skills/quality-test/SKILL.md +5 -5
- package/.codex/skills/quality-test-gen/SKILL.md +447 -447
- package/.codex/skills/spec-add/SKILL.md +5 -5
- package/.codex/skills/spec-load/SKILL.md +5 -5
- package/.codex/skills/spec-map/SKILL.md +5 -5
- package/.codex/skills/spec-setup/SKILL.md +2 -2
- package/chains/_intent-map.json +6 -0
- package/chains/_router.json +14 -0
- package/chains/full-lifecycle.json +15 -0
- package/chains/quality-loop.json +16 -1
- package/chains/singles/business-test.json +26 -0
- package/dashboard/dist-server/dashboard/src/server/agents/codex-app-server-adapter.d.ts +4 -0
- package/dashboard/dist-server/dashboard/src/server/agents/codex-app-server-adapter.js +47 -1
- package/dashboard/dist-server/dashboard/src/server/agents/codex-app-server-adapter.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/agents/codex-cli-adapter.js +16 -2
- package/dashboard/dist-server/dashboard/src/server/agents/codex-cli-adapter.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/agents/stream-json-adapter.d.ts +1 -1
- package/dashboard/dist-server/dashboard/src/server/agents/stream-json-adapter.js +25 -9
- package/dashboard/dist-server/dashboard/src/server/agents/stream-json-adapter.js.map +1 -1
- package/dashboard/dist-server/src/agents/cli-agent-runner.d.ts +3 -0
- package/dashboard/dist-server/src/agents/cli-agent-runner.js +78 -61
- package/dashboard/dist-server/src/agents/cli-agent-runner.js.map +1 -1
- package/dashboard/dist-server/src/agents/cli-history-store.d.ts +14 -1
- package/dashboard/dist-server/src/agents/cli-history-store.js +24 -2
- package/dashboard/dist-server/src/agents/cli-history-store.js.map +1 -1
- package/dashboard/dist-server/src/commands/delegate.js +142 -6
- package/dashboard/dist-server/src/commands/delegate.js.map +1 -1
- package/dist/src/agents/cli-agent-runner.d.ts +3 -0
- package/dist/src/agents/cli-agent-runner.d.ts.map +1 -1
- package/dist/src/agents/cli-agent-runner.js +72 -46
- package/dist/src/agents/cli-agent-runner.js.map +1 -1
- package/dist/src/agents/cli-history-store.d.ts +14 -1
- package/dist/src/agents/cli-history-store.d.ts.map +1 -1
- package/dist/src/agents/cli-history-store.js +24 -2
- package/dist/src/agents/cli-history-store.js.map +1 -1
- package/dist/src/commands/delegate.d.ts.map +1 -1
- package/dist/src/commands/delegate.js +65 -5
- package/dist/src/commands/delegate.js.map +1 -1
- package/dist/src/commands/install-backend.d.ts.map +1 -1
- package/dist/src/commands/install-backend.js +5 -2
- package/dist/src/commands/install-backend.js.map +1 -1
- package/dist/src/mcp/delegate-channel-relay.d.ts.map +1 -1
- package/dist/src/mcp/delegate-channel-relay.js +7 -2
- package/dist/src/mcp/delegate-channel-relay.js.map +1 -1
- package/dist/src/mcp/server.js +1 -1
- package/dist/src/mcp/server.js.map +1 -1
- package/dist/src/tools/index.d.ts +1 -6
- package/dist/src/tools/index.d.ts.map +1 -1
- package/dist/src/tools/index.js +1 -451
- package/dist/src/tools/index.js.map +1 -1
- package/package.json +3 -2
- package/templates/business-test-report.json +68 -0
|
@@ -11,6 +11,7 @@ import { generateCliExecId } from '../agents/cli-agent-runner.js';
|
|
|
11
11
|
import { loadCliToolsConfig, selectTool } from '../config/cli-tools-config.js';
|
|
12
12
|
import { paths } from '../config/paths.js';
|
|
13
13
|
import { DelegateBrokerClient } from '../async/index.js';
|
|
14
|
+
import { handleDelegateMessage } from '../async/delegate-control.js';
|
|
14
15
|
import { deriveExecutionStatus, deriveDelegateStatus, padRight, truncate, readExecutionEntries, summarizeBrokerEventCli, } from '../utils/cli-format.js';
|
|
15
16
|
function statusLabel(meta) {
|
|
16
17
|
const s = deriveExecutionStatus(meta);
|
|
@@ -121,7 +122,7 @@ export function launchDetachedDelegateWorker(request, options = {}) {
|
|
|
121
122
|
jobId: request.execId,
|
|
122
123
|
type: 'queued',
|
|
123
124
|
status: 'queued',
|
|
124
|
-
payload: { summary:
|
|
125
|
+
payload: { summary: `${request.tool}/${request.mode} queued` },
|
|
125
126
|
jobMetadata: buildJobMetadata(request, child.pid),
|
|
126
127
|
now: startedAt,
|
|
127
128
|
});
|
|
@@ -145,13 +146,20 @@ function isProcessAlive(pid) {
|
|
|
145
146
|
return false;
|
|
146
147
|
}
|
|
147
148
|
}
|
|
149
|
+
/**
|
|
150
|
+
* Resolve the relay session ID that matches the current Claude Code session.
|
|
151
|
+
* Matches by CLAUDE_CODE_SSE_PORT when available (precise), falls back to
|
|
152
|
+
* newest alive session (legacy). Cleans up dead relay files along the way.
|
|
153
|
+
*/
|
|
148
154
|
function resolveRelaySessionId() {
|
|
149
155
|
const asyncDir = join(paths.data, 'async');
|
|
156
|
+
const currentSsePort = process.env.CLAUDE_CODE_SSE_PORT;
|
|
150
157
|
try {
|
|
151
158
|
const files = readdirSync(asyncDir)
|
|
152
159
|
.filter((f) => f.startsWith('relay-session-') && f.endsWith('.id'));
|
|
153
160
|
if (files.length === 0)
|
|
154
161
|
return undefined;
|
|
162
|
+
let portMatch;
|
|
155
163
|
let newest;
|
|
156
164
|
for (const file of files) {
|
|
157
165
|
const filePath = join(asyncDir, file);
|
|
@@ -164,6 +172,10 @@ function resolveRelaySessionId() {
|
|
|
164
172
|
catch { }
|
|
165
173
|
continue;
|
|
166
174
|
}
|
|
175
|
+
// Precise match: relay recorded the same SSE port as this session
|
|
176
|
+
if (currentSsePort && data.ssePort === currentSsePort) {
|
|
177
|
+
portMatch = data.sessionId;
|
|
178
|
+
}
|
|
167
179
|
if (!newest || data.startedAt > newest.startedAt) {
|
|
168
180
|
newest = data;
|
|
169
181
|
}
|
|
@@ -172,12 +184,36 @@ function resolveRelaySessionId() {
|
|
|
172
184
|
// Skip corrupted files
|
|
173
185
|
}
|
|
174
186
|
}
|
|
175
|
-
return newest?.sessionId;
|
|
187
|
+
return portMatch ?? newest?.sessionId;
|
|
176
188
|
}
|
|
177
189
|
catch {
|
|
178
190
|
return undefined;
|
|
179
191
|
}
|
|
180
192
|
}
|
|
193
|
+
/** Check if the MCP notification channel is functional for the current session. */
|
|
194
|
+
function isChannelAvailable() {
|
|
195
|
+
if (process.env.CLAUDECODE !== '1')
|
|
196
|
+
return false;
|
|
197
|
+
const currentSsePort = process.env.CLAUDE_CODE_SSE_PORT;
|
|
198
|
+
if (!currentSsePort)
|
|
199
|
+
return false;
|
|
200
|
+
const asyncDir = join(paths.data, 'async');
|
|
201
|
+
try {
|
|
202
|
+
const files = readdirSync(asyncDir)
|
|
203
|
+
.filter((f) => f.startsWith('relay-session-') && f.endsWith('.id'));
|
|
204
|
+
for (const file of files) {
|
|
205
|
+
try {
|
|
206
|
+
const data = JSON.parse(readFileSync(join(asyncDir, file), 'utf-8'));
|
|
207
|
+
if (data.ssePort === currentSsePort && data.pid && isProcessAlive(data.pid)) {
|
|
208
|
+
return true;
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
catch { /* skip */ }
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
catch { /* dir missing */ }
|
|
215
|
+
return false;
|
|
216
|
+
}
|
|
181
217
|
export function registerDelegateCommand(program) {
|
|
182
218
|
const delegate = program
|
|
183
219
|
.command('delegate [prompt]')
|
|
@@ -194,7 +230,7 @@ export function registerDelegateCommand(program) {
|
|
|
194
230
|
.option('--includeDirs <dirs>', 'Additional directories (comma-separated)')
|
|
195
231
|
.option('--session <id>', 'Claude Code session ID for completion notifications')
|
|
196
232
|
.option('--backend <type>', 'Adapter backend: direct (default) or terminal (tmux/wezterm)')
|
|
197
|
-
.option('--async', 'Run
|
|
233
|
+
.option('--async', 'Run in the background with MCP notifications (default is synchronous)')
|
|
198
234
|
.addOption(new Option('--worker').hideHelp())
|
|
199
235
|
.action(async (prompt, opts) => {
|
|
200
236
|
if (!prompt) {
|
|
@@ -229,7 +265,10 @@ export function registerDelegateCommand(program) {
|
|
|
229
265
|
backend,
|
|
230
266
|
};
|
|
231
267
|
try {
|
|
232
|
-
|
|
268
|
+
// Auto-detect: async only when the MCP notification channel can deliver
|
|
269
|
+
// results back. Checks CLAUDECODE env + relay session matched by SSE port.
|
|
270
|
+
const useAsync = !opts.worker && (opts.async || isChannelAvailable());
|
|
271
|
+
if (useAsync) {
|
|
233
272
|
process.stderr.write(`[MAESTRO_EXEC_ID=${execId}]\n`);
|
|
234
273
|
launchDetachedDelegateWorker(request);
|
|
235
274
|
console.log(`Started async delegate: ${execId}`);
|
|
@@ -237,7 +276,19 @@ export function registerDelegateCommand(program) {
|
|
|
237
276
|
return;
|
|
238
277
|
}
|
|
239
278
|
const runner = new CliAgentRunner();
|
|
240
|
-
const
|
|
279
|
+
const syncMode = !opts.worker;
|
|
280
|
+
const exitCode = await runner.run({ ...request, sync: syncMode });
|
|
281
|
+
// In sync mode, output the final result after completion
|
|
282
|
+
if (syncMode) {
|
|
283
|
+
const store = new CliHistoryStore();
|
|
284
|
+
const output = store.getOutput(execId);
|
|
285
|
+
if (output) {
|
|
286
|
+
process.stderr.write('\n--- Output ---\n');
|
|
287
|
+
process.stdout.write(output);
|
|
288
|
+
if (!output.endsWith('\n'))
|
|
289
|
+
process.stdout.write('\n');
|
|
290
|
+
}
|
|
291
|
+
}
|
|
241
292
|
process.exit(exitCode);
|
|
242
293
|
}
|
|
243
294
|
catch (err) {
|
|
@@ -290,6 +341,9 @@ export function registerDelegateCommand(program) {
|
|
|
290
341
|
.command('output <id>')
|
|
291
342
|
.description('Get assistant output for a delegated execution')
|
|
292
343
|
.option('--verbose', 'Show full metadata and raw output')
|
|
344
|
+
.option('--all', 'Include thinking/reasoning entries in output')
|
|
345
|
+
.option('--offset <n>', 'Character offset to start from (for pagination)')
|
|
346
|
+
.option('--limit <n>', 'Max characters to return (for pagination)')
|
|
293
347
|
.action((id, opts) => {
|
|
294
348
|
const store = new CliHistoryStore();
|
|
295
349
|
const meta = store.loadMeta(id);
|
|
@@ -297,6 +351,8 @@ export function registerDelegateCommand(program) {
|
|
|
297
351
|
console.error(`Execution not found: ${id}`);
|
|
298
352
|
process.exit(1);
|
|
299
353
|
}
|
|
354
|
+
const offset = opts.offset ? parseInt(opts.offset, 10) : undefined;
|
|
355
|
+
const limit = opts.limit ? parseInt(opts.limit, 10) : undefined;
|
|
300
356
|
if (opts.verbose) {
|
|
301
357
|
console.log(`ID: ${meta.execId}`);
|
|
302
358
|
console.log(`Tool: ${meta.tool}`);
|
|
@@ -306,9 +362,14 @@ export function registerDelegateCommand(program) {
|
|
|
306
362
|
if (meta.completedAt) {
|
|
307
363
|
console.log(`End: ${meta.completedAt}`);
|
|
308
364
|
}
|
|
365
|
+
const totalChars = store.getOutputLength(meta.execId);
|
|
366
|
+
console.log(`Chars: ${totalChars}`);
|
|
367
|
+
if (offset || limit) {
|
|
368
|
+
console.log(`Page: offset=${offset ?? 0} limit=${limit ?? 'all'}`);
|
|
369
|
+
}
|
|
309
370
|
console.log('---');
|
|
310
371
|
}
|
|
311
|
-
const output = store.getOutput(id);
|
|
372
|
+
const output = store.getOutput(id, { includeAll: opts.all, offset, limit });
|
|
312
373
|
if (!output) {
|
|
313
374
|
console.error(`No output available for: ${id}`);
|
|
314
375
|
process.exit(1);
|
|
@@ -409,5 +470,80 @@ export function registerDelegateCommand(program) {
|
|
|
409
470
|
console.log(`Current status: ${deriveDelegateStatus(meta, updated)}`);
|
|
410
471
|
console.log('Use `maestro delegate status <id>` or `maestro delegate tail <id>` to follow progress.');
|
|
411
472
|
});
|
|
473
|
+
// ---- message subcommand --------------------------------------------------
|
|
474
|
+
delegate
|
|
475
|
+
.command('message <id> <text>')
|
|
476
|
+
.description('Send a follow-up message to a running or completed delegate')
|
|
477
|
+
.option('--delivery <mode>', 'Delivery mode: inject or after_complete', 'inject')
|
|
478
|
+
.action((id, text, opts) => {
|
|
479
|
+
const delivery = opts.delivery ?? 'inject';
|
|
480
|
+
if (delivery !== 'inject' && delivery !== 'after_complete') {
|
|
481
|
+
console.error(`Invalid delivery mode: ${delivery}. Use "inject" or "after_complete".`);
|
|
482
|
+
process.exit(1);
|
|
483
|
+
}
|
|
484
|
+
let result;
|
|
485
|
+
try {
|
|
486
|
+
result = handleDelegateMessage({
|
|
487
|
+
execId: id,
|
|
488
|
+
message: text,
|
|
489
|
+
delivery: delivery,
|
|
490
|
+
requestedBy: 'cli:delegate:message',
|
|
491
|
+
});
|
|
492
|
+
}
|
|
493
|
+
catch (err) {
|
|
494
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
495
|
+
console.error(`Failed: ${message}`);
|
|
496
|
+
process.exit(1);
|
|
497
|
+
}
|
|
498
|
+
console.log(`Message accepted for ${result.execId}`);
|
|
499
|
+
console.log(`Delivery: ${result.delivery}`);
|
|
500
|
+
console.log(`Status: ${result.status}`);
|
|
501
|
+
if (result.immediateDispatch) {
|
|
502
|
+
console.log(`Dispatch: immediate (previous status: ${result.previousStatus})`);
|
|
503
|
+
}
|
|
504
|
+
else {
|
|
505
|
+
console.log(`Queue: ${result.queueDepth} message(s) pending`);
|
|
506
|
+
}
|
|
507
|
+
});
|
|
508
|
+
// ---- messages subcommand -------------------------------------------------
|
|
509
|
+
delegate
|
|
510
|
+
.command('messages <id>')
|
|
511
|
+
.description('List queued and dispatched follow-up messages for a delegate')
|
|
512
|
+
.action((id) => {
|
|
513
|
+
const store = new CliHistoryStore();
|
|
514
|
+
const broker = new DelegateBrokerClient();
|
|
515
|
+
const meta = store.loadMeta(id);
|
|
516
|
+
const job = broker.getJob(id);
|
|
517
|
+
if (!meta && !job) {
|
|
518
|
+
console.error(`Execution not found: ${id}`);
|
|
519
|
+
process.exit(1);
|
|
520
|
+
}
|
|
521
|
+
const messages = broker.listMessages(id);
|
|
522
|
+
if (messages.length === 0) {
|
|
523
|
+
console.log(`No messages for ${id}.`);
|
|
524
|
+
return;
|
|
525
|
+
}
|
|
526
|
+
const colId = 12;
|
|
527
|
+
const colDelivery = 16;
|
|
528
|
+
const colStatus = 12;
|
|
529
|
+
const colMessage = 60;
|
|
530
|
+
const header = [
|
|
531
|
+
padRight('MessageID', colId),
|
|
532
|
+
padRight('Delivery', colDelivery),
|
|
533
|
+
padRight('Status', colStatus),
|
|
534
|
+
padRight('Message', colMessage),
|
|
535
|
+
].join(' ');
|
|
536
|
+
console.log(header);
|
|
537
|
+
console.log('-'.repeat(header.length));
|
|
538
|
+
for (const msg of messages) {
|
|
539
|
+
const row = [
|
|
540
|
+
padRight(msg.messageId.slice(0, colId), colId),
|
|
541
|
+
padRight(msg.delivery, colDelivery),
|
|
542
|
+
padRight(msg.status, colStatus),
|
|
543
|
+
padRight(truncate(msg.message, colMessage), colMessage),
|
|
544
|
+
].join(' ');
|
|
545
|
+
console.log(row);
|
|
546
|
+
}
|
|
547
|
+
});
|
|
412
548
|
}
|
|
413
549
|
//# sourceMappingURL=delegate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delegate.js","sourceRoot":"","sources":["../../../../src/commands/delegate.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"delegate.js","sourceRoot":"","sources":["../../../../src/commands/delegate.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,6 +36,9 @@ export interface CliRunOptions {
|
|
|
36
36
|
includeDirs?: string[];
|
|
37
37
|
sessionId?: string;
|
|
38
38
|
backend?: 'direct' | 'terminal';
|
|
39
|
+
/** Synchronous blocking mode: suppress broker events and MCP notifications,
|
|
40
|
+
* stream snapshot-style progress logs to stderr instead. */
|
|
41
|
+
sync?: boolean;
|
|
39
42
|
}
|
|
40
43
|
export declare function generateCliExecId(tool: string): string;
|
|
41
44
|
export declare class CliAgentRunner {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-agent-runner.d.ts","sourceRoot":"","sources":["../../../src/agents/cli-agent-runner.ts"],"names":[],"mappings":"AAeA,OAAO,EAAwB,KAAK,iBAAiB,EAA2C,MAAM,mBAAmB,CAAC;AAM1H,OAAO,KAAK,EACV,SAAS,EAET,WAAW,EACX,YAAY,EACZ,eAAe,EAChB,MAAM,6BAA6B,CAAC;AAErC,2EAA2E;AAC3E,UAAU,WAAW;IACnB,KAAK,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAClD,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvC,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;IAC7E,WAAW,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChE,mBAAmB,CAAC,IAAI,OAAO,CAAC;IAChC,QAAQ,CAAC,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED,UAAU,mBAAmB;IAC3B,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9D,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACrC,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;IACnC,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,KAAK,IAAI,IAAI,CAAC;CACf;AAED,MAAM,WAAW,0BAA0B;IACzC,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,aAAa,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,QAAQ,GAAG,UAAU,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;IAChG,YAAY,CAAC,EAAE,MAAM,mBAAmB,CAAC;IACzC,qBAAqB,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC;IAC5F,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;CAChD;AAMD,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"cli-agent-runner.d.ts","sourceRoot":"","sources":["../../../src/agents/cli-agent-runner.ts"],"names":[],"mappings":"AAeA,OAAO,EAAwB,KAAK,iBAAiB,EAA2C,MAAM,mBAAmB,CAAC;AAM1H,OAAO,KAAK,EACV,SAAS,EAET,WAAW,EACX,YAAY,EACZ,eAAe,EAChB,MAAM,6BAA6B,CAAC;AAErC,2EAA2E;AAC3E,UAAU,WAAW;IACnB,KAAK,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAClD,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvC,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;IAC7E,WAAW,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChE,mBAAmB,CAAC,IAAI,OAAO,CAAC;IAChC,QAAQ,CAAC,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED,UAAU,mBAAmB;IAC3B,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9D,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACrC,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;IACnC,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,KAAK,IAAI,IAAI,CAAC;CACf;AAED,MAAM,WAAW,0BAA0B;IACzC,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,aAAa,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,QAAQ,GAAG,UAAU,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;IAChG,YAAY,CAAC,EAAE,MAAM,mBAAmB,CAAC;IACzC,qBAAqB,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC;IAC5F,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;CAChD;AAMD,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAChC;iEAC6D;IAC7D,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AA4CD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAQtD;AAiPD,qBAAa,cAAc;IACb,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAAZ,YAAY,GAAE,0BAA+B;IAE1E,qEAAqE;IACrE,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAoBhC;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,uBAAuB;IAmCtC;;OAEG;IACG,GAAG,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC;CAganD"}
|
|
@@ -235,19 +235,9 @@ function summarizeEntry(entry) {
|
|
|
235
235
|
return `Event: ${entry.type}`;
|
|
236
236
|
}
|
|
237
237
|
}
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
return entry.partial !== true;
|
|
242
|
-
case 'tool_use':
|
|
243
|
-
return entry.status === 'completed' || entry.status === 'failed';
|
|
244
|
-
case 'file_change':
|
|
245
|
-
case 'command_exec':
|
|
246
|
-
case 'error':
|
|
247
|
-
return true;
|
|
248
|
-
default:
|
|
249
|
-
return false;
|
|
250
|
-
}
|
|
238
|
+
/** Snapshots are disabled during execution — only start and end events are published. */
|
|
239
|
+
function shouldPublishSnapshot(_entry) {
|
|
240
|
+
return false;
|
|
251
241
|
}
|
|
252
242
|
function createNoopBridge() {
|
|
253
243
|
return {
|
|
@@ -344,9 +334,10 @@ export class CliAgentRunner {
|
|
|
344
334
|
process.stderr.write(`[MAESTRO_EXEC_ID=${execId}]\n`);
|
|
345
335
|
// History store for persistence and resume
|
|
346
336
|
const store = new CliHistoryStore();
|
|
347
|
-
const
|
|
337
|
+
const syncMode = options.sync === true;
|
|
338
|
+
const broker = syncMode ? undefined : (this.dependencies.brokerClient ?? new DelegateBrokerClient());
|
|
348
339
|
const now = this.dependencies.now ?? (() => new Date().toISOString());
|
|
349
|
-
const jobMetadata = buildJobMetadata(options);
|
|
340
|
+
const jobMetadata = syncMode ? {} : buildJobMetadata(options);
|
|
350
341
|
// Handle --resume: prepend previous session context to user prompt
|
|
351
342
|
let userPrompt = options.prompt;
|
|
352
343
|
if (options.resume) {
|
|
@@ -400,7 +391,21 @@ export class CliAgentRunner {
|
|
|
400
391
|
workDir: options.workDir,
|
|
401
392
|
startedAt: agentProcess.startedAt,
|
|
402
393
|
});
|
|
394
|
+
/** Write a snapshot-style progress line to stderr (sync mode). */
|
|
395
|
+
const writeStreamLog = (label, summary) => {
|
|
396
|
+
process.stderr.write(`[DELEGATE ${label}] ${execId} ${summary}\n`);
|
|
397
|
+
};
|
|
403
398
|
const publishEvent = (type, status, summary, extraPayload = {}, extraJobMetadata) => {
|
|
399
|
+
if (syncMode) {
|
|
400
|
+
// In sync mode, write progress to stderr instead of broker
|
|
401
|
+
const label = status === 'running' ? 'RUNNING'
|
|
402
|
+
: status === 'completed' ? 'DONE'
|
|
403
|
+
: status === 'failed' ? 'FAILED'
|
|
404
|
+
: status === 'cancelled' ? 'CANCELLED'
|
|
405
|
+
: status.toUpperCase();
|
|
406
|
+
writeStreamLog(label, summary);
|
|
407
|
+
return;
|
|
408
|
+
}
|
|
404
409
|
try {
|
|
405
410
|
const snapshot = store.buildSnapshot(execId);
|
|
406
411
|
broker.publishEvent({
|
|
@@ -425,7 +430,7 @@ export class CliAgentRunner {
|
|
|
425
430
|
// shell process tree doesn't fire exit/close reliably), write meta.json
|
|
426
431
|
// from the synchronous process.on('exit') handler as a last resort.
|
|
427
432
|
let metaWritten = false;
|
|
428
|
-
let cancellationRequested = Boolean(broker.getJob(execId)?.metadata?.cancelRequestedAt);
|
|
433
|
+
let cancellationRequested = !syncMode && Boolean(broker.getJob(execId)?.metadata?.cancelRequestedAt);
|
|
429
434
|
let cancellationInitiated = false;
|
|
430
435
|
let cancellationPoller = null;
|
|
431
436
|
const clearCancellationPoller = () => {
|
|
@@ -456,32 +461,34 @@ export class CliAgentRunner {
|
|
|
456
461
|
completedAt,
|
|
457
462
|
status,
|
|
458
463
|
});
|
|
459
|
-
// Write delegate completion notification (for hook fallback)
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
464
|
+
// Write delegate completion notification (for hook fallback) — skip in sync mode
|
|
465
|
+
if (!syncMode) {
|
|
466
|
+
const sessionId = options.sessionId;
|
|
467
|
+
if (sessionId) {
|
|
468
|
+
// JSONL file write (for hook fallback)
|
|
469
|
+
try {
|
|
470
|
+
const notifyPath = join(tmpdir(), `${NOTIFY_PREFIX}${sessionId}.jsonl`);
|
|
471
|
+
const entry = JSON.stringify({
|
|
472
|
+
execId,
|
|
473
|
+
tool: options.tool,
|
|
474
|
+
mode: options.mode,
|
|
475
|
+
prompt: options.prompt.substring(0, 200),
|
|
476
|
+
exitCode,
|
|
477
|
+
completedAt,
|
|
478
|
+
status,
|
|
479
|
+
});
|
|
480
|
+
appendFileSync(notifyPath, entry + '\n', 'utf-8');
|
|
481
|
+
}
|
|
482
|
+
catch (err) {
|
|
483
|
+
console.error(`[${execId}] Failed to write JSONL notification: ${err instanceof Error ? err.message : err}`);
|
|
484
|
+
}
|
|
485
|
+
// MCP channel notification (primary path)
|
|
486
|
+
try {
|
|
487
|
+
CliAgentRunner.sendChannelNotification(sessionId, execId, options.tool, options.mode, status, exitCode);
|
|
488
|
+
}
|
|
489
|
+
catch (err) {
|
|
490
|
+
console.error(`[${execId}] Failed to send channel notification: ${err instanceof Error ? err.message : err}`);
|
|
491
|
+
}
|
|
485
492
|
}
|
|
486
493
|
}
|
|
487
494
|
};
|
|
@@ -506,6 +513,8 @@ export class CliAgentRunner {
|
|
|
506
513
|
}
|
|
507
514
|
};
|
|
508
515
|
const dispatchQueuedFollowup = (finalStatus) => {
|
|
516
|
+
if (!broker)
|
|
517
|
+
return;
|
|
509
518
|
let queuedMessage;
|
|
510
519
|
try {
|
|
511
520
|
queuedMessage = broker.listMessages(execId).find((message) => (message.status === 'queued'
|
|
@@ -554,7 +563,7 @@ export class CliAgentRunner {
|
|
|
554
563
|
});
|
|
555
564
|
};
|
|
556
565
|
const inFlightMessageIds = new Set();
|
|
557
|
-
if (!isTerminalStatus(broker.getJob(execId)?.status)) {
|
|
566
|
+
if (!syncMode && !isTerminalStatus(broker.getJob(execId)?.status)) {
|
|
558
567
|
cancellationPoller = setInterval(() => {
|
|
559
568
|
try {
|
|
560
569
|
const job = broker.getJob(execId);
|
|
@@ -618,7 +627,22 @@ export class CliAgentRunner {
|
|
|
618
627
|
store.appendEntry(execId, entry);
|
|
619
628
|
(this.dependencies.renderEntry ?? renderEntry)(entry);
|
|
620
629
|
bridge.forwardEntry(entry);
|
|
621
|
-
if (
|
|
630
|
+
if (syncMode) {
|
|
631
|
+
// In sync mode, stream key events to stderr as progress logs
|
|
632
|
+
if (entry.type === 'tool_use' && (entry.status === 'completed' || entry.status === 'failed')) {
|
|
633
|
+
writeStreamLog('RUNNING', `Tool ${entry.name} ${entry.status}`);
|
|
634
|
+
}
|
|
635
|
+
else if (entry.type === 'file_change') {
|
|
636
|
+
writeStreamLog('RUNNING', `File ${entry.action}: ${entry.path}`);
|
|
637
|
+
}
|
|
638
|
+
else if (entry.type === 'command_exec') {
|
|
639
|
+
writeStreamLog('RUNNING', `Command: ${entry.command}`);
|
|
640
|
+
}
|
|
641
|
+
else if (entry.type === 'error') {
|
|
642
|
+
writeStreamLog('RUNNING', `Error: ${entry.message}`);
|
|
643
|
+
}
|
|
644
|
+
}
|
|
645
|
+
else if (shouldPublishSnapshot(entry)) {
|
|
622
646
|
publishEvent('snapshot', 'running', summarizeEntry(entry), {
|
|
623
647
|
entryType: entry.type,
|
|
624
648
|
});
|
|
@@ -656,7 +680,8 @@ export class CliAgentRunner {
|
|
|
656
680
|
clearCancellationPoller();
|
|
657
681
|
const finalStatus = cancellationRequested ? 'cancelled' : 'completed';
|
|
658
682
|
saveMeta(finalStatus, cancellationRequested ? 130 : 0);
|
|
659
|
-
|
|
683
|
+
if (!syncMode)
|
|
684
|
+
dispatchQueuedFollowup(finalStatus);
|
|
660
685
|
process.removeListener('exit', processExitHandler);
|
|
661
686
|
bridge.forwardStopped(agentProcess.id);
|
|
662
687
|
bridge.close();
|
|
@@ -668,7 +693,8 @@ export class CliAgentRunner {
|
|
|
668
693
|
clearCancellationPoller();
|
|
669
694
|
const finalStatus = cancellationRequested ? 'cancelled' : 'failed';
|
|
670
695
|
saveMeta(finalStatus, cancellationRequested ? 130 : 1);
|
|
671
|
-
|
|
696
|
+
if (!syncMode)
|
|
697
|
+
dispatchQueuedFollowup(finalStatus);
|
|
672
698
|
process.removeListener('exit', processExitHandler);
|
|
673
699
|
bridge.forwardStopped(agentProcess.id);
|
|
674
700
|
bridge.close();
|