agentenkit 0.12.0 → 0.14.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.
@@ -0,0 +1,16 @@
1
+ import type { CheckCostBudgetExhaustedFn, CheckTokenBudgetExhaustedFn } from '../ports/runtime.js';
2
+ /** The token budget check the loop uses unless the host gives its own
3
+ * (§2.1): the run's `tokenBudget`, against what the run has used. The
4
+ * step that crossed the line is kept in full; the next one never starts.
5
+ * Published before the run stops, so a client learns why the moment it
6
+ * does. */
7
+ export declare const defaultCheckTokenBudgetExhausted: CheckTokenBudgetExhaustedFn;
8
+ /** The money budget check the loop uses unless the host gives its own (§4):
9
+ * the run's `costBudgetMicros`, against the same shared ledger. A nested
10
+ * run's calls count against it, and a run that parked or retried starts
11
+ * from what it already spent (see seedRunLedger).
12
+ *
13
+ * It only ever sees priced calls: with no pricer configured nothing is
14
+ * ever spent and the cap never fires. */
15
+ export declare const defaultCheckCostBudgetExhausted: CheckCostBudgetExhaustedFn;
16
+ //# sourceMappingURL=budget.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"budget.d.ts","sourceRoot":"","sources":["../../src/core/budget.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAEnG;;;;YAIY;AACZ,eAAO,MAAM,gCAAgC,EAAE,2BAQ9C,CAAC;AAEF;;;;;;0CAM0C;AAC1C,eAAO,MAAM,+BAA+B,EAAE,0BAS7C,CAAC"}
@@ -0,0 +1,34 @@
1
+ /** The token budget check the loop uses unless the host gives its own
2
+ * (§2.1): the run's `tokenBudget`, against what the run has used. The
3
+ * step that crossed the line is kept in full; the next one never starts.
4
+ * Published before the run stops, so a client learns why the moment it
5
+ * does. */
6
+ export const defaultCheckTokenBudgetExhausted = async (c) => {
7
+ if (!c.tokenBudget || c.tokensUsed < c.tokenBudget)
8
+ return false;
9
+ await c.publish('TOKEN_BUDGET_EXHAUSTED', {
10
+ agentId: c.agentId,
11
+ tokensUsed: c.tokensUsed,
12
+ tokenBudget: c.tokenBudget,
13
+ });
14
+ return true;
15
+ };
16
+ /** The money budget check the loop uses unless the host gives its own (§4):
17
+ * the run's `costBudgetMicros`, against the same shared ledger. A nested
18
+ * run's calls count against it, and a run that parked or retried starts
19
+ * from what it already spent (see seedRunLedger).
20
+ *
21
+ * It only ever sees priced calls: with no pricer configured nothing is
22
+ * ever spent and the cap never fires. */
23
+ export const defaultCheckCostBudgetExhausted = async (c) => {
24
+ if (!c.costBudgetMicros || c.costMicros < c.costBudgetMicros)
25
+ return false;
26
+ await c.publish('COST_BUDGET_EXHAUSTED', {
27
+ agentId: c.agentId,
28
+ costMicros: c.costMicros,
29
+ costBudgetMicros: c.costBudgetMicros,
30
+ ...(c.currency ? { currency: c.currency } : {}),
31
+ });
32
+ return true;
33
+ };
34
+ //# sourceMappingURL=budget.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"budget.js","sourceRoot":"","sources":["../../src/core/budget.ts"],"names":[],"mappings":"AAEA;;;;YAIY;AACZ,MAAM,CAAC,MAAM,gCAAgC,GAAgC,KAAK,EAAE,CAAC,EAAE,EAAE;IACvF,IAAI,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,WAAW;QAAE,OAAO,KAAK,CAAC;IACjE,MAAM,CAAC,CAAC,OAAO,CAAC,wBAAwB,EAAE;QACxC,OAAO,EAAE,CAAC,CAAC,OAAO;QAClB,UAAU,EAAE,CAAC,CAAC,UAAU;QACxB,WAAW,EAAE,CAAC,CAAC,WAAW;KAC3B,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF;;;;;;0CAM0C;AAC1C,MAAM,CAAC,MAAM,+BAA+B,GAA+B,KAAK,EAAE,CAAC,EAAE,EAAE;IACrF,IAAI,CAAC,CAAC,CAAC,gBAAgB,IAAI,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,gBAAgB;QAAE,OAAO,KAAK,CAAC;IAC3E,MAAM,CAAC,CAAC,OAAO,CAAC,uBAAuB,EAAE;QACvC,OAAO,EAAE,CAAC,CAAC,OAAO;QAClB,UAAU,EAAE,CAAC,CAAC,UAAU;QACxB,gBAAgB,EAAE,CAAC,CAAC,gBAAgB;QACpC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAChD,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AACd,CAAC,CAAC"}
@@ -653,7 +653,7 @@ export async function execute(deps, agent, input) {
653
653
  loop = {
654
654
  text: earlier.text, finishReason: 'stop',
655
655
  attribution: { inputTokens: 0, cachedInputTokens: 0, outputTokens: 0, totalTokens: 0 },
656
- tokensUsed: 0, parked: false, aborted: false, interrupted: false, steps: 0, costExhausted: false,
656
+ tokensUsed: 0, parked: false, aborted: false, interrupted: false, steps: 0, costExhausted: false, tokenExhausted: false,
657
657
  };
658
658
  }
659
659
  else {
@@ -776,7 +776,7 @@ export async function execute(deps, agent, input) {
776
776
  ? 'cancelled'
777
777
  : loop.costExhausted
778
778
  ? 'cost_budget' // the money cap (§4)
779
- : tokenBudget && tokensUsed >= tokenBudget
779
+ : loop.tokenExhausted
780
780
  ? 'token_budget'
781
781
  : lastFinishReason === 'tool-calls'
782
782
  ? 'max_steps' // step ceiling hit (§2.1)
@@ -1 +1 @@
1
- {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/core/engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/core/engine.ts"],"names":[],"mappings":"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"}
@@ -156,6 +156,8 @@ export interface LoopOutcome {
156
156
  steps: number;
157
157
  /** The run hit its money cap and stopped between steps (§4). */
158
158
  costExhausted: boolean;
159
+ /** The token check said the run is out of tokens (§2.1). */
160
+ tokenExhausted: boolean;
159
161
  }
160
162
  /** The platform-owned loop (§2.1, §5.6), run by the main agent and by every
161
163
  * nested run alike (§2.7).
@@ -1 +1 @@
1
- {"version":3,"file":"loop.d.ts","sourceRoot":"","sources":["../../src/core/loop.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loop.d.ts","sourceRoot":"","sources":["../../src/core/loop.ts"],"names":[],"mappings":"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"}
package/dist/core/loop.js CHANGED
@@ -4,8 +4,10 @@ import { fillTokens, providerMeta, } from './usage.js';
4
4
  import { estimateTokens } from './context.js';
5
5
  import { ChunkBatcher, chunkPayload, drainOrThrow } from './stream.js';
6
6
  import { publish, publishNotice } from './publish.js';
7
+ import { defaultCheckCostBudgetExhausted, defaultCheckTokenBudgetExhausted } from './budget.js';
7
8
  import { HITL_PARKED } from './hitl.js';
8
9
  import { RunLockLostError } from './lease.js';
10
+ import { StepLimit, withStepLimit } from './steplimit.js';
9
11
  import { ChunkMapper, finishedByProvider, storedToolResults, thrownByTool, toModelMessages, toStoredMessages, } from './sdk.js';
10
12
  /** True for the sentinel a parked `requiresConfirmation` tool returns (§2.5).
11
13
  * It is never a real tool result and is never persisted. */
@@ -135,6 +137,7 @@ export async function runLoop(deps, agent, threadId, input, ledger) {
135
137
  let stepsLeft = input.maxSteps;
136
138
  let stepsRun = 0;
137
139
  let costExhausted = false;
140
+ let tokenExhausted = false;
138
141
  let interrupted = false;
139
142
  // The input count of the last finished call. A call cut off before its
140
143
  // finish never reports one, and its prompt was the same size as the
@@ -151,16 +154,16 @@ export async function runLoop(deps, agent, threadId, input, ledger) {
151
154
  : input.messages;
152
155
  // One round trip is bounded in wall time when stepTimeoutMs is set: a
153
156
  // model that accepts the call and never answers ends this step like any
154
- // failed step, and the run takes the retry policy (§2.8).
157
+ // failed step, and the run takes the retry policy (§2.8). A tool with its
158
+ // own timeoutMs gets that long while it runs, and a call past it ends the
159
+ // step the same way.
155
160
  const stepAbort = new AbortController();
156
161
  const onRunAbort = () => stepAbort.abort(input.abortSignal.reason);
157
162
  input.abortSignal.addEventListener('abort', onRunAbort, { once: true });
158
- let stepTimedOut = false;
159
- const stepLimit = deps.config.stepTimeoutMs;
160
- const stepTimer = stepLimit > 0
161
- ? setTimeout(() => { stepTimedOut = true; stepAbort.abort(new Error('step timed out')); }, stepLimit)
162
- : undefined;
163
- const timeoutError = () => new Error(`step ${stepsRun + 1} ran longer than ${stepLimit}ms`);
163
+ const limit = new StepLimit(stepAbort, deps.config.stepTimeoutMs);
164
+ // The error that cut the call, when there is one, rides along as the
165
+ // cause: the message stays the same.
166
+ const timeoutError = (cause) => new Error(`step ${stepsRun + 1} ran longer than ${limit.limit}ms`, cause === undefined ? undefined : { cause });
164
167
  const partial = { text: '' };
165
168
  let step;
166
169
  const batcher = input.publishChunk ? new ChunkBatcher(input.publishChunk) : null;
@@ -169,7 +172,7 @@ export async function runLoop(deps, agent, threadId, input, ledger) {
169
172
  kind: input.kind,
170
173
  model: input.model,
171
174
  messages: prompt,
172
- tools: input.tools,
175
+ tools: withStepLimit(input.tools, limit),
173
176
  providerOptions: input.providerOptions,
174
177
  abortSignal: stepAbort.signal,
175
178
  onChunk: input.kind === 'stream-text'
@@ -188,7 +191,7 @@ export async function runLoop(deps, agent, threadId, input, ledger) {
188
191
  }
189
192
  catch (err) {
190
193
  await batcher?.flush();
191
- clearTimeout(stepTimer);
194
+ limit.stop();
192
195
  input.abortSignal.removeEventListener('abort', onRunAbort);
193
196
  // The call ended without a finish: a user stop, or the provider failing
194
197
  // part way. Either way the provider billed for what it had already
@@ -204,13 +207,13 @@ export async function runLoop(deps, agent, threadId, input, ledger) {
204
207
  }
205
208
  if (input.abortSignal.aborted)
206
209
  break; // user stop mid-step
207
- if (stepTimedOut)
208
- throw timeoutError(); // → §2.8 retry policy
210
+ if (limit.expired)
211
+ throw timeoutError(err); // → §2.8 retry policy
209
212
  throw err; // real failure → §2.8 redrive policy
210
213
  }
211
- clearTimeout(stepTimer);
214
+ limit.stop();
212
215
  input.abortSignal.removeEventListener('abort', onRunAbort);
213
- if (stepTimedOut && !step.finished && !input.abortSignal.aborted) {
216
+ if (limit.expired && !step.finished && !input.abortSignal.aborted) {
214
217
  // The step's own deadline cut the stream: billed like any cut call,
215
218
  // then a failure for the retry policy.
216
219
  const cut = unfinishedUsage(input, stepsRun + 1, partial.text, 'error', lastInput || estimateTokens(input.messages));
@@ -249,6 +252,14 @@ export async function runLoop(deps, agent, threadId, input, ledger) {
249
252
  providerMetadata: providerMeta(step.providerMetadata, step.response),
250
253
  ...fillTokens(step.usage, step.providerMetadata),
251
254
  };
255
+ if (limit.expired && !input.abortSignal.aborted) {
256
+ // Time ran out as the finish came in: still a step past its limit, as
257
+ // in Go. The call did finish, so its real counters are billed.
258
+ const priced = await ledger.record(deps, threadId, { ...stepUsage, outcome: 'error' });
259
+ addAttribution(attribution, priced);
260
+ tokensUsed += priced.totalTokens;
261
+ throw timeoutError();
262
+ }
252
263
  // The step is done, and its messages are the first thing it writes. A
253
264
  // worker that lost the lock meanwhile must not write them: the next
254
265
  // holder may already be writing its own. The call itself did happen and
@@ -354,31 +365,46 @@ export async function runLoop(deps, agent, threadId, input, ledger) {
354
365
  parkedToolCallId = parkedResult.result[HITL_PARKED];
355
366
  break;
356
367
  }
357
- // Budget check BETWEEN steps (§2.1) — the step that crossed the line is
358
- // kept in full; the next one never starts. Published before the break, so
359
- // a client learns why the run ended the moment it does.
360
- if (input.tokenBudget && ledger.tokensUsed >= input.tokenBudget) {
361
- await publish(deps, threadId, 'TOKEN_BUDGET_EXHAUSTED', {
362
- agentId: input.agentId,
363
- tokensUsed: ledger.tokensUsed,
364
- tokenBudget: input.tokenBudget,
365
- });
368
+ // Budget checks BETWEEN steps (§2.1, §4): tokens, then money. The
369
+ // defaults check the run's own caps; a host can give its own, such as
370
+ // a live balance. A check that throws is logged and read as false: a
371
+ // check that fails must never fail a run.
372
+ const check = {
373
+ ...(input.billingRunId ? { runId: input.billingRunId } : {}),
374
+ threadId,
375
+ agentId: input.agentId,
376
+ ...(input.state ? { state: input.state } : {}),
377
+ step: marker,
378
+ willContinue: step.finishReason === 'tool-calls',
379
+ publish: async (type, payload) => {
380
+ await publish(deps, threadId, type, payload);
381
+ },
382
+ };
383
+ const exhausted = async (name, run) => {
384
+ try {
385
+ return await run();
386
+ }
387
+ catch (err) {
388
+ (deps.log ?? console).error(`${name} check failed`, { run: input.billingRunId, err });
389
+ return false;
390
+ }
391
+ };
392
+ const checkTokens = deps.checkTokenBudgetExhausted ?? defaultCheckTokenBudgetExhausted;
393
+ if (await exhausted('token budget', () => checkTokens({
394
+ ...check,
395
+ tokensUsed: ledger.tokensUsed,
396
+ ...(input.tokenBudget ? { tokenBudget: input.tokenBudget } : {}),
397
+ }))) {
398
+ tokenExhausted = true;
366
399
  break;
367
400
  }
368
- // The money cap (§4), checked in the same place and the same way, against
369
- // the same shared ledger: a nested run's calls count against it, and a
370
- // run that parked or retried starts from what it already spent (see
371
- // seedRunLedger).
372
- //
373
- // It only ever sees priced calls: with no pricer configured nothing is
374
- // ever spent and the cap never fires.
375
- if (input.costBudgetMicros && ledger.costMicros >= input.costBudgetMicros) {
376
- await publish(deps, threadId, 'COST_BUDGET_EXHAUSTED', {
377
- agentId: input.agentId,
378
- costMicros: ledger.costMicros,
379
- costBudgetMicros: input.costBudgetMicros,
380
- ...(ledger.currency ? { currency: ledger.currency } : {}),
381
- });
401
+ const checkCost = deps.checkCostBudgetExhausted ?? defaultCheckCostBudgetExhausted;
402
+ if (await exhausted('cost budget', () => checkCost({
403
+ ...check,
404
+ costMicros: ledger.costMicros,
405
+ ...(ledger.currency ? { currency: ledger.currency } : {}),
406
+ ...(input.costBudgetMicros ? { costBudgetMicros: input.costBudgetMicros } : {}),
407
+ }))) {
382
408
  costExhausted = true;
383
409
  break;
384
410
  }
@@ -398,6 +424,7 @@ export async function runLoop(deps, agent, threadId, input, ledger) {
398
424
  interrupted,
399
425
  steps: stepsRun,
400
426
  costExhausted,
427
+ tokenExhausted,
401
428
  };
402
429
  }
403
430
  /** Sum one recorded call into a segment's running attribution (§4). */
@@ -1 +1 @@
1
- {"version":3,"file":"loop.js","sourceRoot":"","sources":["../../src/core/loop.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loop.js","sourceRoot":"","sources":["../../src/core/loop.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ /** The wall-time limit of one step (§2.8). It starts at `stepTimeoutMs`.
2
+ * While a call to a tool with its own `timeoutMs` runs, the end moves out to
3
+ * cover it, so one slow tool gets the time it needs without raising
4
+ * `stepTimeoutMs` for every step of every run. Once the call returns, the
5
+ * step is back to `stepTimeoutMs`, counted from then. */
6
+ export declare class StepLimit {
7
+ private readonly abort;
8
+ readonly base: number;
9
+ private timer;
10
+ /** When `stepTimeoutMs` runs out: from the step's start, or from the last
11
+ * timed call's return when that is later. 0: no limit for the step,
12
+ * though each timed call's own limit still holds. */
13
+ private baseEnd;
14
+ private end;
15
+ /** The timed calls running now, by id. */
16
+ private readonly calls;
17
+ private nextId;
18
+ private done;
19
+ /** What set the end, and what the error says the step ran past. */
20
+ limit: number;
21
+ expired: boolean;
22
+ constructor(abort: AbortController, base: number);
23
+ private arm;
24
+ /** Set the end to the latest of `stepTimeoutMs` and the timed calls
25
+ * running now. */
26
+ private rearm;
27
+ /** Note a timed call that may run for `ms`, and return its id. */
28
+ begin(ms: number): number;
29
+ /** The call has returned: the step has `stepTimeoutMs` from now to finish,
30
+ * unless other timed calls still run longer. */
31
+ finish(id: number): void;
32
+ /** End the step as timed out, once. */
33
+ expire(limit: number): void;
34
+ /** The step is over: no timer fires after this. */
35
+ stop(): void;
36
+ }
37
+ /** Give a tool its own time limit inside a step, for a tool that needs longer
38
+ * than `stepTimeoutMs`. While a call to it runs, the step has at least this
39
+ * long; a call past it ends the step the way a step past `stepTimeoutMs`
40
+ * does, with the same error and the same retry. It does not lift
41
+ * `segmentTimeoutMs`, or the queue's own limit on a job: keep those longer
42
+ * than the longest tool. */
43
+ export declare function withToolTimeout<T extends object>(t: T, timeoutMs: number): T;
44
+ /** Does this toolset have a tool with its own `timeoutMs`? */
45
+ export declare const hasTimedTool: (tools: Record<string, any>) => boolean;
46
+ /** Make each tool with its own `timeoutMs` keep to it inside the step. */
47
+ export declare function withStepLimit(tools: Record<string, any>, limit: StepLimit): Record<string, any>;
48
+ //# sourceMappingURL=steplimit.d.ts.map