mojentic 1.2.4 → 1.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 (81) hide show
  1. package/dist/agents/async-dispatcher.d.ts +1 -0
  2. package/dist/agents/async-dispatcher.d.ts.map +1 -1
  3. package/dist/agents/async-dispatcher.js +6 -1
  4. package/dist/agents/async-dispatcher.js.map +1 -1
  5. package/dist/agents/simple-recursive-agent.d.ts +8 -0
  6. package/dist/agents/simple-recursive-agent.d.ts.map +1 -1
  7. package/dist/agents/simple-recursive-agent.js +35 -5
  8. package/dist/agents/simple-recursive-agent.js.map +1 -1
  9. package/dist/context/shared-working-memory.js +1 -1
  10. package/dist/context/shared-working-memory.js.map +1 -1
  11. package/dist/index.d.ts +1 -0
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js +1 -0
  14. package/dist/index.js.map +1 -1
  15. package/dist/llm/broker.d.ts +10 -4
  16. package/dist/llm/broker.d.ts.map +1 -1
  17. package/dist/llm/broker.js +78 -68
  18. package/dist/llm/broker.js.map +1 -1
  19. package/dist/llm/gateways/openai-messages-adapter.js +3 -3
  20. package/dist/llm/gateways/openai-messages-adapter.js.map +1 -1
  21. package/dist/llm/gateways/openai-model-registry.d.ts.map +1 -1
  22. package/dist/llm/gateways/openai-model-registry.js +34 -1
  23. package/dist/llm/gateways/openai-model-registry.js.map +1 -1
  24. package/dist/llm/models.d.ts +2 -0
  25. package/dist/llm/models.d.ts.map +1 -1
  26. package/dist/llm/tools/index.d.ts +1 -0
  27. package/dist/llm/tools/index.d.ts.map +1 -1
  28. package/dist/llm/tools/index.js +1 -0
  29. package/dist/llm/tools/index.js.map +1 -1
  30. package/dist/llm/tools/runner.d.ts +89 -0
  31. package/dist/llm/tools/runner.d.ts.map +1 -0
  32. package/dist/llm/tools/runner.js +130 -0
  33. package/dist/llm/tools/runner.js.map +1 -0
  34. package/dist/llm/tools/tool.d.ts +18 -3
  35. package/dist/llm/tools/tool.d.ts.map +1 -1
  36. package/dist/llm/tools/tool.js.map +1 -1
  37. package/dist/realtime/broker.d.ts +40 -0
  38. package/dist/realtime/broker.d.ts.map +1 -0
  39. package/dist/realtime/broker.js +74 -0
  40. package/dist/realtime/broker.js.map +1 -0
  41. package/dist/realtime/config.d.ts +134 -0
  42. package/dist/realtime/config.d.ts.map +1 -0
  43. package/dist/realtime/config.js +23 -0
  44. package/dist/realtime/config.js.map +1 -0
  45. package/dist/realtime/events.d.ts +146 -0
  46. package/dist/realtime/events.d.ts.map +1 -0
  47. package/dist/realtime/events.js +10 -0
  48. package/dist/realtime/events.js.map +1 -0
  49. package/dist/realtime/gateway.d.ts +48 -0
  50. package/dist/realtime/gateway.d.ts.map +1 -0
  51. package/dist/realtime/gateway.js +9 -0
  52. package/dist/realtime/gateway.js.map +1 -0
  53. package/dist/realtime/index.d.ts +14 -0
  54. package/dist/realtime/index.d.ts.map +1 -0
  55. package/dist/realtime/index.js +30 -0
  56. package/dist/realtime/index.js.map +1 -0
  57. package/dist/realtime/openai-gateway.d.ts +39 -0
  58. package/dist/realtime/openai-gateway.d.ts.map +1 -0
  59. package/dist/realtime/openai-gateway.js +154 -0
  60. package/dist/realtime/openai-gateway.js.map +1 -0
  61. package/dist/realtime/schemas.d.ts +333 -0
  62. package/dist/realtime/schemas.d.ts.map +1 -0
  63. package/dist/realtime/schemas.js +243 -0
  64. package/dist/realtime/schemas.js.map +1 -0
  65. package/dist/realtime/session.d.ts +115 -0
  66. package/dist/realtime/session.d.ts.map +1 -0
  67. package/dist/realtime/session.js +715 -0
  68. package/dist/realtime/session.js.map +1 -0
  69. package/dist/realtime/transport.d.ts +87 -0
  70. package/dist/realtime/transport.d.ts.map +1 -0
  71. package/dist/realtime/transport.js +115 -0
  72. package/dist/realtime/transport.js.map +1 -0
  73. package/dist/tracer/tracerEvents.d.ts +23 -0
  74. package/dist/tracer/tracerEvents.d.ts.map +1 -1
  75. package/dist/tracer/tracerEvents.js +40 -1
  76. package/dist/tracer/tracerEvents.js.map +1 -1
  77. package/dist/tracer/tracerSystem.d.ts +16 -0
  78. package/dist/tracer/tracerSystem.d.ts.map +1 -1
  79. package/dist/tracer/tracerSystem.js +22 -0
  80. package/dist/tracer/tracerSystem.js.map +1 -1
  81. package/package.json +27 -14
@@ -33,6 +33,7 @@ export declare class AsyncDispatcher {
33
33
  private stopFlag;
34
34
  private processingLoop?;
35
35
  private readonly batchSize;
36
+ private inFlightCount;
36
37
  /**
37
38
  * Create a new async dispatcher.
38
39
  *
@@ -1 +1 @@
1
- {"version":3,"file":"async-dispatcher.d.ts","sourceRoot":"","sources":["../../src/agents/async-dispatcher.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,KAAK,EAAoB,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAIlC;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAe;IAC1C,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,cAAc,CAAC,CAAgB;IACvC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IAEnC;;;;;OAKG;gBACS,MAAM,EAAE,MAAM,EAAE,SAAS,GAAE,MAAU;IAKjD;;;;;;OAMG;IACG,KAAK,IAAI,OAAO,CAAC,eAAe,CAAC;IAMvC;;;;;;OAMG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ3B;;;;;;;OAOG;IACH,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAO5B;;;;;;;OAOG;IACG,iBAAiB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAa3D;;;;;;OAMG;YACW,kBAAkB;IA4ChC;;;;OAIG;IACH,cAAc,IAAI,MAAM;IAIxB;;;;OAIG;IACH,SAAS,IAAI,OAAO;CAGrB"}
1
+ {"version":3,"file":"async-dispatcher.d.ts","sourceRoot":"","sources":["../../src/agents/async-dispatcher.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,KAAK,EAAoB,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAIlC;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAe;IAC1C,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,cAAc,CAAC,CAAgB;IACvC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,aAAa,CAAa;IAElC;;;;;OAKG;gBACS,MAAM,EAAE,MAAM,EAAE,SAAS,GAAE,MAAU;IAKjD;;;;;;OAMG;IACG,KAAK,IAAI,OAAO,CAAC,eAAe,CAAC;IAMvC;;;;;;OAMG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ3B;;;;;;;OAOG;IACH,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAO5B;;;;;;;OAOG;IACG,iBAAiB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAa3D;;;;;;OAMG;YACW,kBAAkB;IA+ChC;;;;OAIG;IACH,cAAc,IAAI,MAAM;IAIxB;;;;OAIG;IACH,SAAS,IAAI,OAAO;CAGrB"}
@@ -37,6 +37,7 @@ class AsyncDispatcher {
37
37
  stopFlag = false;
38
38
  processingLoop;
39
39
  batchSize;
40
+ inFlightCount = 0;
40
41
  /**
41
42
  * Create a new async dispatcher.
42
43
  *
@@ -97,7 +98,7 @@ class AsyncDispatcher {
97
98
  */
98
99
  async waitForEmptyQueue(timeout) {
99
100
  const startTime = Date.now();
100
- while (this.eventQueue.length > 0) {
101
+ while (this.eventQueue.length > 0 || this.inFlightCount > 0) {
101
102
  if (timeout !== undefined && Date.now() - startTime > timeout) {
102
103
  return false;
103
104
  }
@@ -129,6 +130,7 @@ class AsyncDispatcher {
129
130
  const agents = this.router.getAgents(event);
130
131
  // Process through each agent
131
132
  for (const agent of agents) {
133
+ this.inFlightCount++;
132
134
  try {
133
135
  const result = await agent.receiveEventAsync(event);
134
136
  if ((0, error_1.isOk)(result)) {
@@ -146,6 +148,9 @@ class AsyncDispatcher {
146
148
  catch (error) {
147
149
  console.error(`Unexpected error in agent:`, error);
148
150
  }
151
+ finally {
152
+ this.inFlightCount--;
153
+ }
149
154
  }
150
155
  }
151
156
  // Small delay before next batch
@@ -1 +1 @@
1
- {"version":3,"file":"async-dispatcher.js","sourceRoot":"","sources":["../../src/agents/async-dispatcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"async-dispatcher.js","sourceRoot":"","sources":["../../src/agents/async-dispatcher.ts"],"names":[],"mappings":"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"}
@@ -75,6 +75,14 @@ type UnsubscribeFn = () => void;
75
75
  */
76
76
  export declare class EventEmitter {
77
77
  private subscribers;
78
+ private errorHandlers;
79
+ /**
80
+ * Register a handler error handler for async event handler failures.
81
+ *
82
+ * @param handler - The handler error handler function
83
+ * @returns A function that can be called to unregister the handler error handler
84
+ */
85
+ onError(handler: (error: unknown) => void): UnsubscribeFn;
78
86
  /**
79
87
  * Subscribe to an event type.
80
88
  *
@@ -1 +1 @@
1
- {"version":3,"file":"simple-recursive-agent.d.ts","sourceRoot":"","sources":["../../src/agents/simple-recursive-agent.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAG5C;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,mCAAmC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,8BAA8B;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,iCAAiC;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,6BAA6B;IAC7B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,sDAAsD;IACtD,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,mDAAmD;IACnD,KAAK,EAAE,SAAS,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,WAAW;IACrD,IAAI,EAAE,gBAAgB,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAwB,SAAQ,WAAW;IAC1D,IAAI,EAAE,qBAAqB,CAAC;IAC5B,mDAAmD;IACnD,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACpD,IAAI,EAAE,eAAe,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,WAAW;IAClD,IAAI,EAAE,aAAa,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,YAAa,SAAQ,WAAW;IAC/C,IAAI,EAAE,SAAS,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GACtB,kBAAkB,GAClB,uBAAuB,GACvB,iBAAiB,GACjB,eAAe,GACf,YAAY,CAAC;AAEjB;;GAEG;AACH,KAAK,YAAY,CAAC,CAAC,SAAS,cAAc,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAEjF;;GAEG;AACH,KAAK,aAAa,GAAG,MAAM,IAAI,CAAC;AAEhC;;GAEG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,WAAW,CAA0D;IAE7E;;;;;;OAMG;IACH,SAAS,CAAC,CAAC,SAAS,cAAc,EAChC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,EACpB,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,GACxB,aAAa;IAqBhB;;;;OAIG;IACH,IAAI,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;CAelC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,oBAAoB;IAC/B,8CAA8C;IAC9C,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IAE/B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAY;IAC3C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAc;IAEnC;;;;;;;OAOG;gBAED,GAAG,EAAE,SAAS,EACd,cAAc,GAAE,OAAO,EAAO,EAC9B,aAAa,GAAE,MAAU,EACzB,YAAY,CAAC,EAAE,MAAM;IAqBvB;;;;;;;;;;;;OAYG;IACG,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA2C7C;;;;;;;OAOG;YACW,eAAe;IA0B7B;;;;OAIG;YACW,sBAAsB;IAKpC;;;;OAIG;YACW,wBAAwB;IA8BtC;;;;OAIG;YACW,gBAAgB;IAuB9B;;;;;OAKG;YACW,QAAQ;IAItB;;OAEG;IACH,OAAO,IAAI,IAAI;CAGhB"}
1
+ {"version":3,"file":"simple-recursive-agent.d.ts","sourceRoot":"","sources":["../../src/agents/simple-recursive-agent.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAG5C;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,mCAAmC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,8BAA8B;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,iCAAiC;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,6BAA6B;IAC7B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,sDAAsD;IACtD,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,mDAAmD;IACnD,KAAK,EAAE,SAAS,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,WAAW;IACrD,IAAI,EAAE,gBAAgB,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAwB,SAAQ,WAAW;IAC1D,IAAI,EAAE,qBAAqB,CAAC;IAC5B,mDAAmD;IACnD,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACpD,IAAI,EAAE,eAAe,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,WAAW;IAClD,IAAI,EAAE,aAAa,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,YAAa,SAAQ,WAAW;IAC/C,IAAI,EAAE,SAAS,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GACtB,kBAAkB,GAClB,uBAAuB,GACvB,iBAAiB,GACjB,eAAe,GACf,YAAY,CAAC;AAEjB;;GAEG;AACH,KAAK,YAAY,CAAC,CAAC,SAAS,cAAc,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAEjF;;GAEG;AACH,KAAK,aAAa,GAAG,MAAM,IAAI,CAAC;AAEhC;;GAEG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,WAAW,CAA0D;IAC7E,OAAO,CAAC,aAAa,CAAoC;IAEzD;;;;;OAKG;IACH,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,GAAG,aAAa;IAUzD;;;;;;OAMG;IACH,SAAS,CAAC,CAAC,SAAS,cAAc,EAChC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,EACpB,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,GACxB,aAAa;IAqBhB;;;;OAIG;IACH,IAAI,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;CAqBlC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,oBAAoB;IAC/B,8CAA8C;IAC9C,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IAE/B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAY;IAC3C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAc;IAEnC;;;;;;;OAOG;gBAED,GAAG,EAAE,SAAS,EACd,cAAc,GAAE,OAAO,EAAO,EAC9B,aAAa,GAAE,MAAU,EACzB,YAAY,CAAC,EAAE,MAAM;IAqBvB;;;;;;;;;;;;OAYG;IACG,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAiD7C;;;;;;;OAOG;YACW,eAAe;IA0B7B;;;;OAIG;YACW,sBAAsB;IAKpC;;;;OAIG;YACW,wBAAwB;IA+BtC;;;;OAIG;YACW,gBAAgB;IAuB9B;;;;;OAKG;YACW,QAAQ;IAItB;;OAEG;IACH,OAAO,IAAI,IAAI;CAGhB"}
@@ -12,6 +12,22 @@ const error_1 = require("../error");
12
12
  */
13
13
  class EventEmitter {
14
14
  subscribers = new Map();
15
+ errorHandlers = [];
16
+ /**
17
+ * Register a handler error handler for async event handler failures.
18
+ *
19
+ * @param handler - The handler error handler function
20
+ * @returns A function that can be called to unregister the handler error handler
21
+ */
22
+ onError(handler) {
23
+ this.errorHandlers.push(handler);
24
+ return () => {
25
+ const index = this.errorHandlers.indexOf(handler);
26
+ if (index > -1) {
27
+ this.errorHandlers.splice(index, 1);
28
+ }
29
+ };
30
+ }
15
31
  /**
16
32
  * Subscribe to an event type.
17
33
  *
@@ -48,9 +64,16 @@ class EventEmitter {
48
64
  const result = handler(event);
49
65
  // If the handler returns a promise, schedule it without blocking
50
66
  if (result instanceof Promise) {
51
- // Handle promise rejection to prevent unhandled promise rejections
67
+ // Route errors to registered error handlers or fall back to console.error
52
68
  result.catch((error) => {
53
- console.error('Error in event handler:', error);
69
+ if (this.errorHandlers.length > 0) {
70
+ for (const errorHandler of this.errorHandlers) {
71
+ errorHandler(error);
72
+ }
73
+ }
74
+ else {
75
+ console.error('Error in event handler:', error);
76
+ }
54
77
  });
55
78
  }
56
79
  }
@@ -124,8 +147,10 @@ class SimpleRecursiveAgent {
124
147
  async solve(problem) {
125
148
  // Create a promise that resolves when the solution is ready
126
149
  let resolveSolution;
127
- const solutionPromise = new Promise((resolve) => {
150
+ let rejectSolution;
151
+ const solutionPromise = new Promise((resolve, reject) => {
128
152
  resolveSolution = resolve;
153
+ rejectSolution = reject;
129
154
  });
130
155
  // Create the initial problem state
131
156
  const state = {
@@ -145,6 +170,9 @@ class SimpleRecursiveAgent {
145
170
  const unsubscribeAchieved = this.emitter.subscribe('goal-achieved', handleSolutionEvent);
146
171
  const unsubscribeFailed = this.emitter.subscribe('goal-failed', handleSolutionEvent);
147
172
  const unsubscribeTimeout = this.emitter.subscribe('timeout', handleSolutionEvent);
173
+ const unsubscribeError = this.emitter.onError((err) => {
174
+ rejectSolution(err instanceof Error ? err : new Error(String(err)));
175
+ });
148
176
  // Start the solving process
149
177
  this.emitter.emit({ type: 'goal-submitted', state });
150
178
  // Wait for the solution or timeout
@@ -157,6 +185,7 @@ class SimpleRecursiveAgent {
157
185
  unsubscribeAchieved();
158
186
  unsubscribeFailed();
159
187
  unsubscribeTimeout();
188
+ unsubscribeError();
160
189
  }
161
190
  }
162
191
  /**
@@ -205,13 +234,14 @@ class SimpleRecursiveAgent {
205
234
  const state = event.state;
206
235
  const response = event.response;
207
236
  // Check if the task failed or succeeded
208
- if (response.toLowerCase().includes('fail')) {
237
+ const trimmed = response.trim().toUpperCase();
238
+ if (trimmed === 'FAIL') {
209
239
  state.solution = `Failed to solve after ${state.iteration} iterations:\n${response}`;
210
240
  state.isComplete = true;
211
241
  this.emitter.emit({ type: 'goal-failed', state });
212
242
  return;
213
243
  }
214
- else if (response.toLowerCase().includes('done')) {
244
+ else if (trimmed === 'DONE') {
215
245
  state.solution = response;
216
246
  state.isComplete = true;
217
247
  this.emitter.emit({ type: 'goal-achieved', state });
@@ -1 +1 @@
1
- {"version":3,"file":"simple-recursive-agent.js","sourceRoot":"","sources":["../../src/agents/simple-recursive-agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"simple-recursive-agent.js","sourceRoot":"","sources":["../../src/agents/simple-recursive-agent.ts"],"names":[],"mappings":"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"}
@@ -86,7 +86,7 @@ class SharedWorkingMemory {
86
86
  * @returns A copy of the current working memory object
87
87
  */
88
88
  getWorkingMemory() {
89
- return { ...this._workingMemory };
89
+ return structuredClone(this._workingMemory);
90
90
  }
91
91
  /**
92
92
  * Merge new information into the working memory.
@@ -1 +1 @@
1
- {"version":3,"file":"shared-working-memory.js","sourceRoot":"","sources":["../../src/context/shared-working-memory.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH;;;;;;;GAOG;AACH,SAAS,SAAS,CAChB,MAA+B,EAC/B,MAA+B;IAE/B,MAAM,MAAM,GAA4B,EAAE,GAAG,MAAM,EAAE,CAAC;IAEtD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACtC,4DAA4D;QAC5D,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAChC,4DAA4D;QAC5D,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAEhC,IACE,WAAW;YACX,OAAO,WAAW,KAAK,QAAQ;YAC/B,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;YAC3B,WAAW;YACX,OAAO,WAAW,KAAK,QAAQ;YAC/B,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAC3B,CAAC;YACD,mCAAmC;YACnC,4DAA4D;YAC5D,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,CACrB,WAAsC,EACtC,WAAsC,CACvC,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,wCAAwC;YACxC,4DAA4D;YAC5D,MAAM,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAa,mBAAmB;IACtB,cAAc,CAA0B;IAEhD;;;;OAIG;IACH,YAAY,uBAAgD,EAAE;QAC5D,6DAA6D;QAC7D,IAAI,CAAC,cAAc,GAAG,EAAE,GAAG,oBAAoB,EAAE,CAAC;IACpD,CAAC;IAED;;;;OAIG;IACH,gBAAgB;QACd,OAAO,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;IACpC,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,oBAAoB,CAAC,aAAsC;QACzD,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC,IAAI,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;IACtE,CAAC;CACF;AAjDD,kDAiDC"}
1
+ {"version":3,"file":"shared-working-memory.js","sourceRoot":"","sources":["../../src/context/shared-working-memory.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH;;;;;;;GAOG;AACH,SAAS,SAAS,CAChB,MAA+B,EAC/B,MAA+B;IAE/B,MAAM,MAAM,GAA4B,EAAE,GAAG,MAAM,EAAE,CAAC;IAEtD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACtC,4DAA4D;QAC5D,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAChC,4DAA4D;QAC5D,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAEhC,IACE,WAAW;YACX,OAAO,WAAW,KAAK,QAAQ;YAC/B,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;YAC3B,WAAW;YACX,OAAO,WAAW,KAAK,QAAQ;YAC/B,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAC3B,CAAC;YACD,mCAAmC;YACnC,4DAA4D;YAC5D,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,CACrB,WAAsC,EACtC,WAAsC,CACvC,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,wCAAwC;YACxC,4DAA4D;YAC5D,MAAM,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAa,mBAAmB;IACtB,cAAc,CAA0B;IAEhD;;;;OAIG;IACH,YAAY,uBAAgD,EAAE;QAC5D,6DAA6D;QAC7D,IAAI,CAAC,cAAc,GAAG,EAAE,GAAG,oBAAoB,EAAE,CAAC;IACpD,CAAC;IAED;;;;OAIG;IACH,gBAAgB;QACd,OAAO,eAAe,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,oBAAoB,CAAC,aAAsC;QACzD,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC,IAAI,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;IACtE,CAAC;CACF;AAjDD,kDAiDC"}
package/dist/index.d.ts CHANGED
@@ -6,5 +6,6 @@ export * from './llm';
6
6
  export * from './tracer';
7
7
  export * from './agents';
8
8
  export * from './context';
9
+ export * from './realtime';
9
10
  export declare const VERSION = "0.1.0";
10
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAG1B,eAAO,MAAM,OAAO,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAG3B,eAAO,MAAM,OAAO,UAAU,CAAC"}
package/dist/index.js CHANGED
@@ -23,6 +23,7 @@ __exportStar(require("./llm"), exports);
23
23
  __exportStar(require("./tracer"), exports);
24
24
  __exportStar(require("./agents"), exports);
25
25
  __exportStar(require("./context"), exports);
26
+ __exportStar(require("./realtime"), exports);
26
27
  // Version
27
28
  exports.VERSION = '0.1.0';
28
29
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;AAEH,0CAAwB;AACxB,wCAAsB;AACtB,2CAAyB;AACzB,2CAAyB;AACzB,4CAA0B;AAE1B,UAAU;AACG,QAAA,OAAO,GAAG,OAAO,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;AAEH,0CAAwB;AACxB,wCAAsB;AACtB,2CAAyB;AACzB,2CAAyB;AACzB,4CAA0B;AAC1B,6CAA2B;AAE3B,UAAU;AACG,QAAA,OAAO,GAAG,OAAO,CAAC"}
@@ -3,7 +3,7 @@
3
3
  */
4
4
  import { LlmGateway } from './gateway';
5
5
  import { LlmMessage, CompletionConfig } from './models';
6
- import { LlmTool } from './tools';
6
+ import { LlmTool, ToolRunner } from './tools';
7
7
  import { Result } from '../error';
8
8
  import { TracerSystem } from '../tracer';
9
9
  /**
@@ -24,14 +24,19 @@ export declare class LlmBroker {
24
24
  private readonly model;
25
25
  private readonly gateway;
26
26
  private readonly tracer?;
27
+ private readonly toolRunner;
27
28
  /**
28
29
  * Creates a new LLM broker instance.
29
30
  *
30
31
  * @param model - The model name to use (e.g., 'qwen3:32b', 'gpt-4')
31
32
  * @param gateway - The gateway implementation for the LLM provider
32
33
  * @param tracer - Optional tracer system for recording LLM calls and responses
34
+ * @param toolRunner - Optional tool execution strategy. Defaults to {@link SerialToolRunner}
35
+ * for backward compatibility; pass {@link ParallelToolRunner} to dispatch
36
+ * tool calls concurrently within a single assistant turn.
33
37
  */
34
- constructor(model: string, gateway: LlmGateway, tracer?: TracerSystem);
38
+ constructor(model: string, gateway: LlmGateway, tracer?: TracerSystem, toolRunner?: ToolRunner);
39
+ private runToolBatch;
35
40
  /**
36
41
  * Generate a text completion from the LLM with automatic recursive tool execution.
37
42
  *
@@ -41,7 +46,7 @@ export declare class LlmBroker {
41
46
  * @param messages - Conversation history as an array of messages
42
47
  * @param tools - Optional array of tools the LLM can call
43
48
  * @param config - Optional completion configuration (temperature, tokens, etc.)
44
- * @param maxToolIterations - Maximum number of recursive tool call iterations (default: 10)
49
+ * @param correlationId - UUID for tracing related events
45
50
  * @returns Result containing the final text response or an error
46
51
  *
47
52
  * @example
@@ -57,7 +62,7 @@ export declare class LlmBroker {
57
62
  * }
58
63
  * ```
59
64
  */
60
- generate(messages: LlmMessage[], tools?: LlmTool[], config?: CompletionConfig, maxToolIterations?: number, correlationId?: string): Promise<Result<string, Error>>;
65
+ generate(messages: LlmMessage[], tools?: LlmTool[], config?: CompletionConfig, correlationId?: string): Promise<Result<string, Error>>;
61
66
  /**
62
67
  * Generate a structured object that conforms to a JSON schema.
63
68
  *
@@ -120,6 +125,7 @@ export declare class LlmBroker {
120
125
  * ```
121
126
  */
122
127
  generateStream(messages: LlmMessage[], config?: CompletionConfig, tools?: LlmTool[], correlationId?: string): AsyncGenerator<Result<string, Error>>;
128
+ private generateStreamWithTools;
123
129
  /**
124
130
  * List all available models from the gateway.
125
131
  *
@@ -1 +1 @@
1
- {"version":3,"file":"broker.d.ts","sourceRoot":"","sources":["../../src/llm/broker.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAqB,MAAM,UAAU,CAAC;AAC3E,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,MAAM,EAAwC,MAAM,UAAU,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAGzC;;;;;;;;;;;;;GAaG;AACH,qBAAa,SAAS;IAWlB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAX1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAe;IAEvC;;;;;;OAMG;gBAEgB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,UAAU,EACpC,MAAM,CAAC,EAAE,YAAY;IAKvB;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACG,QAAQ,CACZ,QAAQ,EAAE,UAAU,EAAE,EACtB,KAAK,CAAC,EAAE,OAAO,EAAE,EACjB,MAAM,CAAC,EAAE,gBAAgB,EACzB,iBAAiB,GAAE,MAAW,EAC9B,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAoJjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;IACG,cAAc,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9C,QAAQ,EAAE,UAAU,EAAE,EACtB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,MAAM,CAAC,EAAE,gBAAgB,EACzB,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IAiE5B;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACI,cAAc,CACnB,QAAQ,EAAE,UAAU,EAAE,EACtB,MAAM,CAAC,EAAE,gBAAgB,EACzB,KAAK,CAAC,EAAE,OAAO,EAAE,EACjB,aAAa,CAAC,EAAE,MAAM,GACrB,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAuKxC;;;;;;;;;;;;OAYG;IACG,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,KAAK,CAAC,CAAC;IAIpD;;;;OAIG;IACH,QAAQ,IAAI,MAAM;IAIlB;;;;OAIG;IACH,UAAU,IAAI,UAAU;CAGzB"}
1
+ {"version":3,"file":"broker.d.ts","sourceRoot":"","sources":["../../src/llm/broker.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAqB,MAAM,UAAU,CAAC;AAC3E,OAAO,EAAE,OAAO,EAAwD,UAAU,EAAE,MAAM,SAAS,CAAC;AACpG,OAAO,EAAE,MAAM,EAAwC,MAAM,UAAU,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAGzC;;;;;;;;;;;;;GAaG;AACH,qBAAa,SAAS;IAelB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAf1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAe;IACvC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;IAExC;;;;;;;;;OASG;gBAEgB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,UAAU,EACpC,MAAM,CAAC,EAAE,YAAY,EACrB,UAAU,CAAC,EAAE,UAAU;YAMX,YAAY;IAuF1B;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACG,QAAQ,CACZ,QAAQ,EAAE,UAAU,EAAE,EACtB,KAAK,CAAC,EAAE,OAAO,EAAE,EACjB,MAAM,CAAC,EAAE,gBAAgB,EACzB,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAmFjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;IACG,cAAc,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9C,QAAQ,EAAE,UAAU,EAAE,EACtB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,MAAM,CAAC,EAAE,gBAAgB,EACzB,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IAiE5B;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACI,cAAc,CACnB,QAAQ,EAAE,UAAU,EAAE,EACtB,MAAM,CAAC,EAAE,gBAAgB,EACzB,KAAK,CAAC,EAAE,OAAO,EAAE,EACjB,aAAa,CAAC,EAAE,MAAM,GACrB,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAMzB,uBAAuB;IAsHtC;;;;;;;;;;;;OAYG;IACG,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,KAAK,CAAC,CAAC;IAIpD;;;;OAIG;IACH,QAAQ,IAAI,MAAM;IAIlB;;;;OAIG;IACH,UAAU,IAAI,UAAU;CAGzB"}
@@ -5,6 +5,7 @@
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.LlmBroker = void 0;
7
7
  const models_1 = require("./models");
8
+ const tools_1 = require("./tools");
8
9
  const error_1 = require("../error");
9
10
  const crypto_1 = require("crypto");
10
11
  /**
@@ -25,17 +26,76 @@ class LlmBroker {
25
26
  model;
26
27
  gateway;
27
28
  tracer;
29
+ toolRunner;
28
30
  /**
29
31
  * Creates a new LLM broker instance.
30
32
  *
31
33
  * @param model - The model name to use (e.g., 'qwen3:32b', 'gpt-4')
32
34
  * @param gateway - The gateway implementation for the LLM provider
33
35
  * @param tracer - Optional tracer system for recording LLM calls and responses
36
+ * @param toolRunner - Optional tool execution strategy. Defaults to {@link SerialToolRunner}
37
+ * for backward compatibility; pass {@link ParallelToolRunner} to dispatch
38
+ * tool calls concurrently within a single assistant turn.
34
39
  */
35
- constructor(model, gateway, tracer) {
40
+ constructor(model, gateway, tracer, toolRunner) {
36
41
  this.model = model;
37
42
  this.gateway = gateway;
38
43
  this.tracer = tracer;
44
+ this.toolRunner = toolRunner ?? new tools_1.SerialToolRunner();
45
+ }
46
+ async runToolBatch(toolCalls, tools, corrId, source) {
47
+ const executions = [];
48
+ const argsByCallId = new Map();
49
+ const parseFailureMessages = [];
50
+ for (const toolCall of toolCalls) {
51
+ try {
52
+ const args = JSON.parse(toolCall.function.arguments);
53
+ argsByCallId.set(toolCall.id, args);
54
+ executions.push({ id: toolCall.id, name: toolCall.function.name, args });
55
+ }
56
+ catch (err) {
57
+ parseFailureMessages.push(models_1.Message.tool(JSON.stringify({
58
+ error: err instanceof Error ? err.message : String(err),
59
+ }), toolCall.id, toolCall.function.name));
60
+ }
61
+ }
62
+ const batchId = (0, crypto_1.randomUUID)();
63
+ const batchStart = Date.now();
64
+ const outcomes = await this.toolRunner.runBatch(executions, tools, {
65
+ correlationId: corrId,
66
+ source,
67
+ onCallComplete: (outcome) => {
68
+ if (!this.tracer)
69
+ return;
70
+ const args = argsByCallId.get(outcome.id) ?? {};
71
+ const result = outcome.ok ? outcome.result : { error: outcome.error.message };
72
+ this.tracer.recordToolCall(outcome.name, args, result, 'LlmBroker', outcome.durationMs, corrId, source);
73
+ },
74
+ });
75
+ const successCount = outcomes.filter((o) => o.ok).length;
76
+ const failureCount = outcomes.length - successCount;
77
+ if (this.tracer && (outcomes.length > 0 || parseFailureMessages.length > 0)) {
78
+ this.tracer.recordToolBatch(batchId, executions.map((e) => e.name), successCount, failureCount + parseFailureMessages.length, Date.now() - batchStart, corrId, source);
79
+ }
80
+ const outcomeById = new Map(outcomes.map((o) => [o.id, o]));
81
+ const messages = [];
82
+ for (const toolCall of toolCalls) {
83
+ const outcome = outcomeById.get(toolCall.id);
84
+ if (!outcome) {
85
+ // Argument-parse failures were captured above in input order;
86
+ // pull the next one.
87
+ const parseMsg = parseFailureMessages.shift();
88
+ if (parseMsg) {
89
+ messages.push(parseMsg);
90
+ }
91
+ continue;
92
+ }
93
+ const content = outcome.ok
94
+ ? JSON.stringify(outcome.result)
95
+ : JSON.stringify({ error: outcome.error.message });
96
+ messages.push(models_1.Message.tool(content, toolCall.id, toolCall.function.name));
97
+ }
98
+ return { outcomes, messages, parseFailures: parseFailureMessages.length };
39
99
  }
40
100
  /**
41
101
  * Generate a text completion from the LLM with automatic recursive tool execution.
@@ -46,7 +106,7 @@ class LlmBroker {
46
106
  * @param messages - Conversation history as an array of messages
47
107
  * @param tools - Optional array of tools the LLM can call
48
108
  * @param config - Optional completion configuration (temperature, tokens, etc.)
49
- * @param maxToolIterations - Maximum number of recursive tool call iterations (default: 10)
109
+ * @param correlationId - UUID for tracing related events
50
110
  * @returns Result containing the final text response or an error
51
111
  *
52
112
  * @example
@@ -62,11 +122,12 @@ class LlmBroker {
62
122
  * }
63
123
  * ```
64
124
  */
65
- async generate(messages, tools, config, maxToolIterations = 10, correlationId) {
125
+ async generate(messages, tools, config, correlationId) {
66
126
  try {
67
127
  const toolDescriptors = tools?.map((t) => t.descriptor());
68
128
  const currentMessages = [...messages];
69
129
  let iterations = 0;
130
+ const maxToolIterations = config?.maxToolIterations ?? 10;
70
131
  // Generate correlationId if not provided
71
132
  const corrId = correlationId || (0, crypto_1.randomUUID)();
72
133
  while (iterations < maxToolIterations) {
@@ -95,38 +156,8 @@ class LlmBroker {
95
156
  if (!tools) {
96
157
  return (0, error_1.Err)(new error_1.ToolError('LLM requested tool calls but no tools provided'));
97
158
  }
98
- for (const toolCall of response.toolCalls) {
99
- const tool = tools.find((t) => t.matches(toolCall.function.name));
100
- if (!tool) {
101
- currentMessages.push(models_1.Message.tool(JSON.stringify({ error: `Tool ${toolCall.function.name} not found` }), toolCall.id, toolCall.function.name));
102
- continue;
103
- }
104
- try {
105
- const args = JSON.parse(toolCall.function.arguments);
106
- // Record tool call with timing
107
- const toolStartTime = Date.now();
108
- const toolResult = await tool.run(args);
109
- const toolDurationMs = Date.now() - toolStartTime;
110
- if (!(0, error_1.isOk)(toolResult)) {
111
- currentMessages.push(models_1.Message.tool(JSON.stringify({ error: toolResult.error.message }), toolCall.id, toolCall.function.name));
112
- // Record tool call error in tracer
113
- if (this.tracer) {
114
- this.tracer.recordToolCall(toolCall.function.name, args, { error: toolResult.error.message }, 'LlmBroker', toolDurationMs, corrId, 'LlmBroker.generate');
115
- }
116
- continue;
117
- }
118
- // Record successful tool call in tracer
119
- if (this.tracer) {
120
- this.tracer.recordToolCall(toolCall.function.name, args, toolResult.value, 'LlmBroker', toolDurationMs, corrId, 'LlmBroker.generate');
121
- }
122
- currentMessages.push(models_1.Message.tool(JSON.stringify(toolResult.value), toolCall.id, toolCall.function.name));
123
- }
124
- catch (error) {
125
- currentMessages.push(models_1.Message.tool(JSON.stringify({
126
- error: error instanceof Error ? error.message : String(error),
127
- }), toolCall.id, toolCall.function.name));
128
- }
129
- }
159
+ const { messages: toolMessages } = await this.runToolBatch(response.toolCalls, tools, corrId, 'LlmBroker.generate');
160
+ currentMessages.push(...toolMessages);
130
161
  iterations++;
131
162
  }
132
163
  return (0, error_1.Err)(new error_1.ToolError(`Maximum tool iterations (${maxToolIterations}) exceeded`));
@@ -233,7 +264,16 @@ class LlmBroker {
233
264
  * ```
234
265
  */
235
266
  async *generateStream(messages, config, tools, correlationId) {
267
+ const maxToolIterations = config?.maxToolIterations ?? 10;
236
268
  const corrId = correlationId || (0, crypto_1.randomUUID)();
269
+ yield* this.generateStreamWithTools(messages, config, tools, corrId, maxToolIterations);
270
+ }
271
+ async *generateStreamWithTools(messages, config, tools, corrId, iterationsRemaining) {
272
+ const maxToolIterations = config?.maxToolIterations ?? 10;
273
+ if (iterationsRemaining <= 0) {
274
+ yield (0, error_1.Err)(new error_1.ToolError(`Maximum tool iterations (${maxToolIterations}) exceeded`));
275
+ return;
276
+ }
237
277
  const toolDescriptors = tools?.map((t) => t.descriptor());
238
278
  const currentMessages = [...messages];
239
279
  let accumulatedContent = '';
@@ -273,40 +313,10 @@ class LlmBroker {
273
313
  }
274
314
  // Add assistant message with tool calls
275
315
  currentMessages.push(models_1.Message.assistant(accumulatedContent, accumulatedToolCalls));
276
- // Execute all tool calls
277
- for (const toolCall of accumulatedToolCalls) {
278
- const tool = tools.find((t) => t.matches(toolCall.function.name));
279
- if (!tool) {
280
- currentMessages.push(models_1.Message.tool(JSON.stringify({ error: `Tool ${toolCall.function.name} not found` }), toolCall.id, toolCall.function.name));
281
- continue;
282
- }
283
- try {
284
- const args = JSON.parse(toolCall.function.arguments);
285
- const toolStartTime = Date.now();
286
- const toolResult = await tool.run(args);
287
- const toolDurationMs = Date.now() - toolStartTime;
288
- if (!(0, error_1.isOk)(toolResult)) {
289
- currentMessages.push(models_1.Message.tool(JSON.stringify({ error: toolResult.error.message }), toolCall.id, toolCall.function.name));
290
- // Record tool call error in tracer
291
- if (this.tracer) {
292
- this.tracer.recordToolCall(toolCall.function.name, args, { error: toolResult.error.message }, 'LlmBroker', toolDurationMs, corrId, 'LlmBroker.generateStream');
293
- }
294
- continue;
295
- }
296
- // Record successful tool call in tracer
297
- if (this.tracer) {
298
- this.tracer.recordToolCall(toolCall.function.name, args, toolResult.value, 'LlmBroker', toolDurationMs, corrId, 'LlmBroker.generateStream');
299
- }
300
- currentMessages.push(models_1.Message.tool(JSON.stringify(toolResult.value), toolCall.id, toolCall.function.name));
301
- }
302
- catch (error) {
303
- currentMessages.push(models_1.Message.tool(JSON.stringify({
304
- error: error instanceof Error ? error.message : String(error),
305
- }), toolCall.id, toolCall.function.name));
306
- }
307
- }
316
+ const { messages: toolMessages } = await this.runToolBatch(accumulatedToolCalls, tools, corrId, 'LlmBroker.generateStream');
317
+ currentMessages.push(...toolMessages);
308
318
  // Recursively stream with updated messages
309
- yield* this.generateStream(currentMessages, config, tools, corrId);
319
+ yield* this.generateStreamWithTools(currentMessages, config, tools, corrId, iterationsRemaining - 1);
310
320
  }
311
321
  else if (chunk.done) {
312
322
  // Stream done without tool calls
@@ -1 +1 @@
1
- {"version":3,"file":"broker.js","sourceRoot":"","sources":["../../src/llm/broker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"broker.js","sourceRoot":"","sources":["../../src/llm/broker.ts"],"names":[],"mappings":"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"}
@@ -127,18 +127,18 @@ function adaptMessagesToOpenAI(messages) {
127
127
  type: 'function',
128
128
  function: {
129
129
  name: tc.function.name,
130
- arguments: JSON.stringify(tc.function.arguments),
130
+ arguments: tc.function.arguments,
131
131
  },
132
132
  }));
133
133
  }
134
134
  newMessages.push(msg);
135
135
  }
136
136
  else if (m.role === 'tool') {
137
- if (m.tool_calls && m.tool_calls.length > 0) {
137
+ if (m.tool_call_id) {
138
138
  newMessages.push({
139
139
  role: 'tool',
140
140
  content: typeof m.content === 'string' ? m.content : '',
141
- tool_call_id: m.tool_calls[0].id || '',
141
+ tool_call_id: m.tool_call_id,
142
142
  });
143
143
  }
144
144
  }