@jackchen_me/open-multi-agent 0.2.0 → 1.0.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 (104) hide show
  1. package/.github/workflows/ci.yml +1 -1
  2. package/CLAUDE.md +11 -3
  3. package/README.md +87 -20
  4. package/README_zh.md +85 -25
  5. package/dist/agent/agent.d.ts +15 -1
  6. package/dist/agent/agent.d.ts.map +1 -1
  7. package/dist/agent/agent.js +144 -10
  8. package/dist/agent/agent.js.map +1 -1
  9. package/dist/agent/loop-detector.d.ts +39 -0
  10. package/dist/agent/loop-detector.d.ts.map +1 -0
  11. package/dist/agent/loop-detector.js +122 -0
  12. package/dist/agent/loop-detector.js.map +1 -0
  13. package/dist/agent/pool.d.ts +2 -1
  14. package/dist/agent/pool.d.ts.map +1 -1
  15. package/dist/agent/pool.js +4 -2
  16. package/dist/agent/pool.js.map +1 -1
  17. package/dist/agent/runner.d.ts +23 -1
  18. package/dist/agent/runner.d.ts.map +1 -1
  19. package/dist/agent/runner.js +113 -12
  20. package/dist/agent/runner.js.map +1 -1
  21. package/dist/index.d.ts +3 -1
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +2 -0
  24. package/dist/index.js.map +1 -1
  25. package/dist/llm/adapter.d.ts +4 -1
  26. package/dist/llm/adapter.d.ts.map +1 -1
  27. package/dist/llm/adapter.js +11 -0
  28. package/dist/llm/adapter.js.map +1 -1
  29. package/dist/llm/copilot.d.ts.map +1 -1
  30. package/dist/llm/copilot.js +2 -1
  31. package/dist/llm/copilot.js.map +1 -1
  32. package/dist/llm/gemini.d.ts +65 -0
  33. package/dist/llm/gemini.d.ts.map +1 -0
  34. package/dist/llm/gemini.js +317 -0
  35. package/dist/llm/gemini.js.map +1 -0
  36. package/dist/llm/grok.d.ts +21 -0
  37. package/dist/llm/grok.d.ts.map +1 -0
  38. package/dist/llm/grok.js +24 -0
  39. package/dist/llm/grok.js.map +1 -0
  40. package/dist/llm/openai-common.d.ts +8 -1
  41. package/dist/llm/openai-common.d.ts.map +1 -1
  42. package/dist/llm/openai-common.js +35 -2
  43. package/dist/llm/openai-common.js.map +1 -1
  44. package/dist/llm/openai.d.ts +1 -1
  45. package/dist/llm/openai.d.ts.map +1 -1
  46. package/dist/llm/openai.js +20 -2
  47. package/dist/llm/openai.js.map +1 -1
  48. package/dist/orchestrator/orchestrator.d.ts.map +1 -1
  49. package/dist/orchestrator/orchestrator.js +89 -9
  50. package/dist/orchestrator/orchestrator.js.map +1 -1
  51. package/dist/task/queue.d.ts +31 -2
  52. package/dist/task/queue.d.ts.map +1 -1
  53. package/dist/task/queue.js +69 -2
  54. package/dist/task/queue.js.map +1 -1
  55. package/dist/tool/text-tool-extractor.d.ts +32 -0
  56. package/dist/tool/text-tool-extractor.d.ts.map +1 -0
  57. package/dist/tool/text-tool-extractor.js +187 -0
  58. package/dist/tool/text-tool-extractor.js.map +1 -0
  59. package/dist/types.d.ts +139 -7
  60. package/dist/types.d.ts.map +1 -1
  61. package/dist/utils/trace.d.ts +12 -0
  62. package/dist/utils/trace.d.ts.map +1 -0
  63. package/dist/utils/trace.js +30 -0
  64. package/dist/utils/trace.js.map +1 -0
  65. package/examples/06-local-model.ts +1 -0
  66. package/examples/08-gemma4-local.ts +76 -87
  67. package/examples/09-structured-output.ts +73 -0
  68. package/examples/10-task-retry.ts +132 -0
  69. package/examples/11-trace-observability.ts +133 -0
  70. package/examples/12-grok.ts +154 -0
  71. package/examples/13-gemini.ts +48 -0
  72. package/package.json +11 -1
  73. package/src/agent/agent.ts +159 -10
  74. package/src/agent/loop-detector.ts +137 -0
  75. package/src/agent/pool.ts +9 -2
  76. package/src/agent/runner.ts +148 -19
  77. package/src/index.ts +15 -0
  78. package/src/llm/adapter.ts +12 -1
  79. package/src/llm/copilot.ts +2 -1
  80. package/src/llm/gemini.ts +378 -0
  81. package/src/llm/grok.ts +29 -0
  82. package/src/llm/openai-common.ts +41 -2
  83. package/src/llm/openai.ts +23 -3
  84. package/src/orchestrator/orchestrator.ts +105 -11
  85. package/src/task/queue.ts +73 -3
  86. package/src/tool/text-tool-extractor.ts +219 -0
  87. package/src/types.ts +157 -6
  88. package/src/utils/trace.ts +34 -0
  89. package/tests/agent-hooks.test.ts +473 -0
  90. package/tests/agent-pool.test.ts +212 -0
  91. package/tests/approval.test.ts +464 -0
  92. package/tests/built-in-tools.test.ts +393 -0
  93. package/tests/gemini-adapter.test.ts +97 -0
  94. package/tests/grok-adapter.test.ts +74 -0
  95. package/tests/llm-adapters.test.ts +357 -0
  96. package/tests/loop-detection.test.ts +456 -0
  97. package/tests/openai-fallback.test.ts +159 -0
  98. package/tests/orchestrator.test.ts +281 -0
  99. package/tests/scheduler.test.ts +221 -0
  100. package/tests/team-messaging.test.ts +329 -0
  101. package/tests/text-tool-extractor.test.ts +170 -0
  102. package/tests/trace.test.ts +453 -0
  103. package/vitest.config.ts +9 -0
  104. package/examples/09-gemma4-auto-orchestration.ts +0 -162
@@ -42,6 +42,7 @@
42
42
  */
43
43
  import { Agent } from '../agent/agent.js';
44
44
  import { AgentPool } from '../agent/pool.js';
45
+ import { emitTrace, generateRunId } from '../utils/trace.js';
45
46
  import { ToolRegistry } from '../tool/framework.js';
46
47
  import { ToolExecutor } from '../tool/executor.js';
47
48
  import { registerBuiltInTools } from '../tool/built-in/index.js';
@@ -98,9 +99,10 @@ export function computeRetryDelay(baseDelay, backoff, attempt) {
98
99
  * @returns The final {@link AgentRunResult} from the last attempt.
99
100
  */
100
101
  export async function executeWithRetry(run, task, onRetry, delayFn = sleep) {
101
- const maxAttempts = Math.max(0, task.maxRetries ?? 0) + 1;
102
- const baseDelay = Math.max(0, task.retryDelayMs ?? 1000);
103
- const backoff = Math.max(1, task.retryBackoff ?? 2);
102
+ const rawRetries = Number.isFinite(task.maxRetries) ? task.maxRetries : 0;
103
+ const maxAttempts = Math.max(0, rawRetries) + 1;
104
+ const baseDelay = Math.max(0, Number.isFinite(task.retryDelayMs) ? task.retryDelayMs : 1000);
105
+ const backoff = Math.max(1, Number.isFinite(task.retryBackoff) ? task.retryBackoff : 2);
104
106
  let lastError = '';
105
107
  // Accumulate token usage across all attempts so billing/observability
106
108
  // reflects the true cost of retries.
@@ -209,6 +211,16 @@ function parseTaskSpecs(raw) {
209
211
  */
210
212
  async function executeQueue(queue, ctx) {
211
213
  const { team, pool, scheduler, config } = ctx;
214
+ // Relay queue-level skip events to the orchestrator's onProgress callback.
215
+ const unsubSkipped = config.onProgress
216
+ ? queue.on('task:skipped', (task) => {
217
+ config.onProgress({
218
+ type: 'task_skipped',
219
+ task: task.id,
220
+ data: task,
221
+ });
222
+ })
223
+ : undefined;
212
224
  while (true) {
213
225
  // Re-run auto-assignment each iteration so tasks that were unblocked since
214
226
  // the last round (and thus have no assignee yet) get assigned before dispatch.
@@ -218,6 +230,10 @@ async function executeQueue(queue, ctx) {
218
230
  // Either all done, or everything remaining is blocked/failed.
219
231
  break;
220
232
  }
233
+ // Track tasks that complete successfully in this round for the approval gate.
234
+ // Safe to push from concurrent promises: JS is single-threaded, so
235
+ // Array.push calls from resolved microtasks never interleave.
236
+ const completedThisRound = [];
221
237
  // Dispatch all currently-pending tasks as a parallel batch.
222
238
  const dispatchPromises = pending.map(async (task) => {
223
239
  // Mark in-progress
@@ -260,7 +276,14 @@ async function executeQueue(queue, ctx) {
260
276
  });
261
277
  // Build the prompt: inject shared memory context + task description
262
278
  const prompt = await buildTaskPrompt(task, team);
263
- const result = await executeWithRetry(() => pool.run(assignee, prompt), task, (retryData) => {
279
+ // Build trace context for this task's agent run
280
+ const traceOptions = config.onTrace
281
+ ? { onTrace: config.onTrace, runId: ctx.runId ?? '', taskId: task.id, traceAgent: assignee }
282
+ : undefined;
283
+ const taskStartMs = config.onTrace ? Date.now() : 0;
284
+ let retryCount = 0;
285
+ const result = await executeWithRetry(() => pool.run(assignee, prompt, traceOptions), task, (retryData) => {
286
+ retryCount++;
264
287
  config.onProgress?.({
265
288
  type: 'task_retry',
266
289
  task: task.id,
@@ -268,6 +291,22 @@ async function executeQueue(queue, ctx) {
268
291
  data: retryData,
269
292
  });
270
293
  });
294
+ // Emit task trace
295
+ if (config.onTrace) {
296
+ const taskEndMs = Date.now();
297
+ emitTrace(config.onTrace, {
298
+ type: 'task',
299
+ runId: ctx.runId ?? '',
300
+ taskId: task.id,
301
+ taskTitle: task.title,
302
+ agent: assignee,
303
+ success: result.success,
304
+ retries: retryCount,
305
+ startMs: taskStartMs,
306
+ endMs: taskEndMs,
307
+ durationMs: taskEndMs - taskStartMs,
308
+ });
309
+ }
271
310
  ctx.agentResults.set(`${assignee}:${task.id}`, result);
272
311
  if (result.success) {
273
312
  // Persist result into shared memory so other agents can read it
@@ -275,7 +314,8 @@ async function executeQueue(queue, ctx) {
275
314
  if (sharedMem) {
276
315
  await sharedMem.write(assignee, `task:${task.id}:result`, result.output);
277
316
  }
278
- queue.complete(task.id, result.output);
317
+ const completedTask = queue.complete(task.id, result.output);
318
+ completedThisRound.push(completedTask);
279
319
  config.onProgress?.({
280
320
  type: 'task_complete',
281
321
  task: task.id,
@@ -301,7 +341,30 @@ async function executeQueue(queue, ctx) {
301
341
  });
302
342
  // Wait for the entire parallel batch before checking for newly-unblocked tasks.
303
343
  await Promise.all(dispatchPromises);
344
+ // --- Approval gate ---
345
+ // After the batch completes, check if the caller wants to approve
346
+ // the next round before it starts.
347
+ if (config.onApproval && completedThisRound.length > 0) {
348
+ scheduler.autoAssign(queue, team.getAgents());
349
+ const nextPending = queue.getByStatus('pending');
350
+ if (nextPending.length > 0) {
351
+ let approved;
352
+ try {
353
+ approved = await config.onApproval(completedThisRound, nextPending);
354
+ }
355
+ catch (err) {
356
+ const reason = `Skipped: approval callback error — ${err instanceof Error ? err.message : String(err)}`;
357
+ queue.skipRemaining(reason);
358
+ break;
359
+ }
360
+ if (!approved) {
361
+ queue.skipRemaining('Skipped: approval rejected.');
362
+ break;
363
+ }
364
+ }
365
+ }
304
366
  }
367
+ unsubSkipped?.();
305
368
  }
306
369
  /**
307
370
  * Build the agent prompt for a specific task.
@@ -365,7 +428,9 @@ export class OpenMultiAgent {
365
428
  defaultProvider: config.defaultProvider ?? 'anthropic',
366
429
  defaultBaseURL: config.defaultBaseURL,
367
430
  defaultApiKey: config.defaultApiKey,
431
+ onApproval: config.onApproval,
368
432
  onProgress: config.onProgress,
433
+ onTrace: config.onTrace,
369
434
  };
370
435
  }
371
436
  // -------------------------------------------------------------------------
@@ -416,7 +481,10 @@ export class OpenMultiAgent {
416
481
  agent: config.name,
417
482
  data: { prompt },
418
483
  });
419
- const result = await agent.run(prompt);
484
+ const traceOptions = this.config.onTrace
485
+ ? { onTrace: this.config.onTrace, runId: generateRunId(), traceAgent: config.name }
486
+ : undefined;
487
+ const result = await agent.run(prompt, traceOptions);
420
488
  this.config.onProgress?.({
421
489
  type: 'agent_complete',
422
490
  agent: config.name,
@@ -467,12 +535,16 @@ export class OpenMultiAgent {
467
535
  };
468
536
  const decompositionPrompt = this.buildDecompositionPrompt(goal, agentConfigs);
469
537
  const coordinatorAgent = buildAgent(coordinatorConfig);
538
+ const runId = this.config.onTrace ? generateRunId() : undefined;
470
539
  this.config.onProgress?.({
471
540
  type: 'agent_start',
472
541
  agent: 'coordinator',
473
542
  data: { phase: 'decomposition', goal },
474
543
  });
475
- const decompositionResult = await coordinatorAgent.run(decompositionPrompt);
544
+ const decompTraceOptions = this.config.onTrace
545
+ ? { onTrace: this.config.onTrace, runId: runId ?? '', traceAgent: 'coordinator' }
546
+ : undefined;
547
+ const decompositionResult = await coordinatorAgent.run(decompositionPrompt, decompTraceOptions);
476
548
  const agentResults = new Map();
477
549
  agentResults.set('coordinator:decompose', decompositionResult);
478
550
  // ------------------------------------------------------------------
@@ -512,13 +584,17 @@ export class OpenMultiAgent {
512
584
  scheduler,
513
585
  agentResults,
514
586
  config: this.config,
587
+ runId,
515
588
  };
516
589
  await executeQueue(queue, ctx);
517
590
  // ------------------------------------------------------------------
518
591
  // Step 5: Coordinator synthesises final result
519
592
  // ------------------------------------------------------------------
520
593
  const synthesisPrompt = await this.buildSynthesisPrompt(goal, queue.list(), team);
521
- const synthesisResult = await coordinatorAgent.run(synthesisPrompt);
594
+ const synthTraceOptions = this.config.onTrace
595
+ ? { onTrace: this.config.onTrace, runId: runId ?? '', traceAgent: 'coordinator' }
596
+ : undefined;
597
+ const synthesisResult = await coordinatorAgent.run(synthesisPrompt, synthTraceOptions);
522
598
  agentResults.set('coordinator', synthesisResult);
523
599
  this.config.onProgress?.({
524
600
  type: 'agent_complete',
@@ -565,6 +641,7 @@ export class OpenMultiAgent {
565
641
  scheduler,
566
642
  agentResults,
567
643
  config: this.config,
644
+ runId: this.config.onTrace ? generateRunId() : undefined,
568
645
  };
569
646
  await executeQueue(queue, ctx);
570
647
  return this.buildTeamRunResult(agentResults);
@@ -650,11 +727,13 @@ export class OpenMultiAgent {
650
727
  async buildSynthesisPrompt(goal, tasks, team) {
651
728
  const completedTasks = tasks.filter((t) => t.status === 'completed');
652
729
  const failedTasks = tasks.filter((t) => t.status === 'failed');
730
+ const skippedTasks = tasks.filter((t) => t.status === 'skipped');
653
731
  const resultSections = completedTasks.map((t) => {
654
732
  const assignee = t.assignee ?? 'unknown';
655
733
  return `### ${t.title} (completed by ${assignee})\n${t.result ?? '(no output)'}`;
656
734
  });
657
735
  const failureSections = failedTasks.map((t) => `### ${t.title} (FAILED)\nError: ${t.result ?? 'unknown error'}`);
736
+ const skippedSections = skippedTasks.map((t) => `### ${t.title} (SKIPPED)\nReason: ${t.result ?? 'approval rejected'}`);
658
737
  // Also include shared memory summary for additional context
659
738
  let memorySummary = '';
660
739
  const sharedMem = team.getSharedMemoryInstance();
@@ -668,11 +747,12 @@ export class OpenMultiAgent {
668
747
  `## Task Results`,
669
748
  ...resultSections,
670
749
  ...(failureSections.length > 0 ? ['', '## Failed Tasks', ...failureSections] : []),
750
+ ...(skippedSections.length > 0 ? ['', '## Skipped Tasks', ...skippedSections] : []),
671
751
  ...(memorySummary ? ['', memorySummary] : []),
672
752
  '',
673
753
  '## Your Task',
674
754
  'Synthesise the above results into a comprehensive final answer that addresses the original goal.',
675
- 'If some tasks failed, note any gaps in the result.',
755
+ 'If some tasks failed or were skipped, note any gaps in the result.',
676
756
  ].join('\n');
677
757
  }
678
758
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../src/orchestrator/orchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../src/orchestrator/orchestrator.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@
7
7
  */
8
8
  import type { Task, TaskStatus } from '../types.js';
9
9
  /** Named event types emitted by {@link TaskQueue}. */
10
- export type TaskQueueEvent = 'task:ready' | 'task:complete' | 'task:failed' | 'all:complete';
10
+ export type TaskQueueEvent = 'task:ready' | 'task:complete' | 'task:failed' | 'task:skipped' | 'all:complete';
11
11
  /** Handler for `'task:ready' | 'task:complete' | 'task:failed'` events. */
12
12
  type TaskHandler = (task: Task) => void;
13
13
  /** Handler for `'all:complete'` (no task argument). */
@@ -80,6 +80,29 @@ export declare class TaskQueue {
80
80
  * @throws {Error} when `taskId` is not found.
81
81
  */
82
82
  fail(taskId: string, error: string): Task;
83
+ /**
84
+ * Marks `taskId` as `'skipped'` and records `reason` in the `result` field.
85
+ *
86
+ * Fires `'task:skipped'` for the skipped task and cascades to every
87
+ * downstream task that transitively depended on it — even if the dependent
88
+ * has other dependencies that are still pending or completed. A skipped
89
+ * upstream is treated as permanently unsatisfiable, mirroring `fail()`.
90
+ *
91
+ * @throws {Error} when `taskId` is not found.
92
+ */
93
+ skip(taskId: string, reason: string): Task;
94
+ /**
95
+ * Marks all non-terminal tasks as `'skipped'`.
96
+ *
97
+ * Used when an approval gate rejects continuation — every pending, blocked,
98
+ * or in-progress task is skipped with the given reason.
99
+ *
100
+ * **Important:** Call only when no tasks are actively executing. The
101
+ * orchestrator invokes this after `await Promise.all()`, so no tasks are
102
+ * in-flight. Calling while agents are running may mark an in-progress task
103
+ * as skipped while its agent continues executing.
104
+ */
105
+ skipRemaining(reason?: string): void;
83
106
  /**
84
107
  * Recursively marks all tasks that (transitively) depend on `failedTaskId`
85
108
  * as `'failed'` with an informative message, firing `'task:failed'` for each.
@@ -88,6 +111,11 @@ export declare class TaskQueue {
88
111
  * in a terminal state are left untouched.
89
112
  */
90
113
  private cascadeFailure;
114
+ /**
115
+ * Recursively marks all tasks that (transitively) depend on `skippedTaskId`
116
+ * as `'skipped'`, firing `'task:skipped'` for each.
117
+ */
118
+ private cascadeSkip;
91
119
  /**
92
120
  * Returns the next `'pending'` task for `assignee` (matched against
93
121
  * `task.assignee`), or `undefined` if none exists.
@@ -106,7 +134,7 @@ export declare class TaskQueue {
106
134
  getByStatus(status: TaskStatus): Task[];
107
135
  /**
108
136
  * Returns `true` when every task in the queue has reached a terminal state
109
- * (`'completed'` or `'failed'`), **or** the queue is empty.
137
+ * (`'completed'`, `'failed'`, or `'skipped'`), **or** the queue is empty.
110
138
  */
111
139
  isComplete(): boolean;
112
140
  /**
@@ -122,6 +150,7 @@ export declare class TaskQueue {
122
150
  total: number;
123
151
  completed: number;
124
152
  failed: number;
153
+ skipped: number;
125
154
  inProgress: number;
126
155
  pending: number;
127
156
  blocked: number;
@@ -1 +1 @@
1
- {"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../src/task/queue.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAOnD,sDAAsD;AACtD,MAAM,MAAM,cAAc,GACtB,YAAY,GACZ,eAAe,GACf,aAAa,GACb,cAAc,CAAA;AAElB,2EAA2E;AAC3E,KAAK,WAAW,GAAG,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAA;AACvC,uDAAuD;AACvD,KAAK,kBAAkB,GAAG,MAAM,IAAI,CAAA;AAEpC,KAAK,UAAU,CAAC,CAAC,SAAS,cAAc,IAAI,CAAC,SAAS,cAAc,GAChE,kBAAkB,GAClB,WAAW,CAAA;AAMf;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA0B;IAEhD,uEAAuE;IACvE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAGvB;IAMH;;;;;OAKG;IACH,GAAG,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAQrB;;;;;;;OAOG;IACH,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI;IAU7B;;;;;;;OAOG;IACH,MAAM,CACJ,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,UAAU,CAAC,CAAC,GAC5D,IAAI;IAWP;;;;;;;;OAQG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAU/C;;;;;;;;OAQG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAUzC;;;;;;OAMG;IACH,OAAO,CAAC,cAAc;IAmBtB;;;;;OAKG;IACH,IAAI,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS;IAWzC;;;OAGG;IACH,aAAa,IAAI,IAAI,GAAG,SAAS;IAYjC,0DAA0D;IAC1D,IAAI,IAAI,IAAI,EAAE;IAId,yDAAyD;IACzD,WAAW,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,EAAE;IAIvC;;;OAGG;IACH,UAAU,IAAI,OAAO;IAOrB;;;;;;;;OAQG;IACH,WAAW,IAAI;QACb,KAAK,EAAE,MAAM,CAAA;QACb,SAAS,EAAE,MAAM,CAAA;QACjB,MAAM,EAAE,MAAM,CAAA;QACd,UAAU,EAAE,MAAM,CAAA;QAClB,OAAO,EAAE,MAAM,CAAA;QACf,OAAO,EAAE,MAAM,CAAA;KAChB;IAyCD;;;;;;;;;;;OAWG;IACH,EAAE,CAAC,CAAC,SAAS,cAAc,EACzB,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,GACrB,MAAM,IAAI;IAiBb;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAU5B;;;;;;OAMG;IACH,OAAO,CAAC,iBAAiB;IAwBzB,OAAO,CAAC,IAAI;IAQZ,OAAO,CAAC,eAAe;IAQvB,OAAO,CAAC,WAAW;CAKpB"}
1
+ {"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../src/task/queue.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAOnD,sDAAsD;AACtD,MAAM,MAAM,cAAc,GACtB,YAAY,GACZ,eAAe,GACf,aAAa,GACb,cAAc,GACd,cAAc,CAAA;AAElB,2EAA2E;AAC3E,KAAK,WAAW,GAAG,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAA;AACvC,uDAAuD;AACvD,KAAK,kBAAkB,GAAG,MAAM,IAAI,CAAA;AAEpC,KAAK,UAAU,CAAC,CAAC,SAAS,cAAc,IAAI,CAAC,SAAS,cAAc,GAChE,kBAAkB,GAClB,WAAW,CAAA;AAMf;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA0B;IAEhD,uEAAuE;IACvE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAGvB;IAMH;;;;;OAKG;IACH,GAAG,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAQrB;;;;;;;OAOG;IACH,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI;IAU7B;;;;;;;OAOG;IACH,MAAM,CACJ,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,UAAU,CAAC,CAAC,GAC5D,IAAI;IAWP;;;;;;;;OAQG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAU/C;;;;;;;;OAQG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAUzC;;;;;;;;;OASG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAU1C;;;;;;;;;;OAUG;IACH,aAAa,CAAC,MAAM,SAAgC,GAAG,IAAI;IAc3D;;;;;;OAMG;IACH,OAAO,CAAC,cAAc;IAetB;;;OAGG;IACH,OAAO,CAAC,WAAW;IAkBnB;;;;;OAKG;IACH,IAAI,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS;IAWzC;;;OAGG;IACH,aAAa,IAAI,IAAI,GAAG,SAAS;IAYjC,0DAA0D;IAC1D,IAAI,IAAI,IAAI,EAAE;IAId,yDAAyD;IACzD,WAAW,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,EAAE;IAIvC;;;OAGG;IACH,UAAU,IAAI,OAAO;IAOrB;;;;;;;;OAQG;IACH,WAAW,IAAI;QACb,KAAK,EAAE,MAAM,CAAA;QACb,SAAS,EAAE,MAAM,CAAA;QACjB,MAAM,EAAE,MAAM,CAAA;QACd,OAAO,EAAE,MAAM,CAAA;QACf,UAAU,EAAE,MAAM,CAAA;QAClB,OAAO,EAAE,MAAM,CAAA;QACf,OAAO,EAAE,MAAM,CAAA;KAChB;IA8CD;;;;;;;;;;;OAWG;IACH,EAAE,CAAC,CAAC,SAAS,cAAc,EACzB,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,GACrB,MAAM,IAAI;IAiBb;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAU5B;;;;;;OAMG;IACH,OAAO,CAAC,iBAAiB;IAwBzB,OAAO,CAAC,IAAI;IAQZ,OAAO,CAAC,eAAe;IAQvB,OAAO,CAAC,WAAW;CAKpB"}
@@ -117,6 +117,50 @@ export class TaskQueue {
117
117
  }
118
118
  return failed;
119
119
  }
120
+ /**
121
+ * Marks `taskId` as `'skipped'` and records `reason` in the `result` field.
122
+ *
123
+ * Fires `'task:skipped'` for the skipped task and cascades to every
124
+ * downstream task that transitively depended on it — even if the dependent
125
+ * has other dependencies that are still pending or completed. A skipped
126
+ * upstream is treated as permanently unsatisfiable, mirroring `fail()`.
127
+ *
128
+ * @throws {Error} when `taskId` is not found.
129
+ */
130
+ skip(taskId, reason) {
131
+ const skipped = this.update(taskId, { status: 'skipped', result: reason });
132
+ this.emit('task:skipped', skipped);
133
+ this.cascadeSkip(taskId);
134
+ if (this.isComplete()) {
135
+ this.emitAllComplete();
136
+ }
137
+ return skipped;
138
+ }
139
+ /**
140
+ * Marks all non-terminal tasks as `'skipped'`.
141
+ *
142
+ * Used when an approval gate rejects continuation — every pending, blocked,
143
+ * or in-progress task is skipped with the given reason.
144
+ *
145
+ * **Important:** Call only when no tasks are actively executing. The
146
+ * orchestrator invokes this after `await Promise.all()`, so no tasks are
147
+ * in-flight. Calling while agents are running may mark an in-progress task
148
+ * as skipped while its agent continues executing.
149
+ */
150
+ skipRemaining(reason = 'Skipped: approval rejected.') {
151
+ // Snapshot first — update() mutates the live map, which is unsafe to
152
+ // iterate over during modification.
153
+ const snapshot = Array.from(this.tasks.values());
154
+ for (const task of snapshot) {
155
+ if (task.status === 'completed' || task.status === 'failed' || task.status === 'skipped')
156
+ continue;
157
+ const skipped = this.update(task.id, { status: 'skipped', result: reason });
158
+ this.emit('task:skipped', skipped);
159
+ }
160
+ if (this.isComplete()) {
161
+ this.emitAllComplete();
162
+ }
163
+ }
120
164
  /**
121
165
  * Recursively marks all tasks that (transitively) depend on `failedTaskId`
122
166
  * as `'failed'` with an informative message, firing `'task:failed'` for each.
@@ -139,6 +183,24 @@ export class TaskQueue {
139
183
  this.cascadeFailure(task.id);
140
184
  }
141
185
  }
186
+ /**
187
+ * Recursively marks all tasks that (transitively) depend on `skippedTaskId`
188
+ * as `'skipped'`, firing `'task:skipped'` for each.
189
+ */
190
+ cascadeSkip(skippedTaskId) {
191
+ for (const task of this.tasks.values()) {
192
+ if (task.status !== 'blocked' && task.status !== 'pending')
193
+ continue;
194
+ if (!task.dependsOn?.includes(skippedTaskId))
195
+ continue;
196
+ const cascaded = this.update(task.id, {
197
+ status: 'skipped',
198
+ result: `Skipped: dependency "${skippedTaskId}" was skipped.`,
199
+ });
200
+ this.emit('task:skipped', cascaded);
201
+ this.cascadeSkip(task.id);
202
+ }
203
+ }
142
204
  // ---------------------------------------------------------------------------
143
205
  // Queries
144
206
  // ---------------------------------------------------------------------------
@@ -184,11 +246,11 @@ export class TaskQueue {
184
246
  }
185
247
  /**
186
248
  * Returns `true` when every task in the queue has reached a terminal state
187
- * (`'completed'` or `'failed'`), **or** the queue is empty.
249
+ * (`'completed'`, `'failed'`, or `'skipped'`), **or** the queue is empty.
188
250
  */
189
251
  isComplete() {
190
252
  for (const task of this.tasks.values()) {
191
- if (task.status !== 'completed' && task.status !== 'failed')
253
+ if (task.status !== 'completed' && task.status !== 'failed' && task.status !== 'skipped')
192
254
  return false;
193
255
  }
194
256
  return true;
@@ -205,6 +267,7 @@ export class TaskQueue {
205
267
  getProgress() {
206
268
  let completed = 0;
207
269
  let failed = 0;
270
+ let skipped = 0;
208
271
  let inProgress = 0;
209
272
  let pending = 0;
210
273
  let blocked = 0;
@@ -216,6 +279,9 @@ export class TaskQueue {
216
279
  case 'failed':
217
280
  failed++;
218
281
  break;
282
+ case 'skipped':
283
+ skipped++;
284
+ break;
219
285
  case 'in_progress':
220
286
  inProgress++;
221
287
  break;
@@ -231,6 +297,7 @@ export class TaskQueue {
231
297
  total: this.tasks.size,
232
298
  completed,
233
299
  failed,
300
+ skipped,
234
301
  inProgress,
235
302
  pending,
236
303
  blocked,
@@ -1 +1 @@
1
- {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../src/task/queue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../src/task/queue.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * @fileoverview Fallback tool-call extractor for local models.
3
+ *
4
+ * When a local model (Ollama, vLLM, LM Studio) returns tool calls as plain
5
+ * text instead of using the OpenAI `tool_calls` wire format, this module
6
+ * attempts to extract them from the text output.
7
+ *
8
+ * Common scenarios:
9
+ * - Ollama thinking-model bug: tool call JSON ends up inside unclosed `<think>` tags
10
+ * - Model outputs raw JSON tool calls without the server parsing them
11
+ * - Model wraps tool calls in markdown code fences
12
+ * - Hermes-format `<tool_call>` tags
13
+ *
14
+ * This is a **safety net**, not the primary path. Native `tool_calls` from
15
+ * the server are always preferred.
16
+ */
17
+ import type { ToolUseBlock } from '../types.js';
18
+ /**
19
+ * Attempt to extract tool calls from a model's text output.
20
+ *
21
+ * Tries multiple strategies in order:
22
+ * 1. Hermes `<tool_call>` tags
23
+ * 2. JSON objects in text (bare or inside code fences)
24
+ *
25
+ * @param text - The model's text output.
26
+ * @param knownToolNames - Whitelist of registered tool names. When non-empty,
27
+ * only JSON objects whose `name` matches a known tool
28
+ * are treated as tool calls.
29
+ * @returns Extracted {@link ToolUseBlock}s, or an empty array if none found.
30
+ */
31
+ export declare function extractToolCallsFromText(text: string, knownToolNames: string[]): ToolUseBlock[];
32
+ //# sourceMappingURL=text-tool-extractor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-tool-extractor.d.ts","sourceRoot":"","sources":["../../src/tool/text-tool-extractor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAqK/C;;;;;;;;;;;;GAYG;AACH,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,MAAM,EACZ,cAAc,EAAE,MAAM,EAAE,GACvB,YAAY,EAAE,CAoBhB"}