@zhin.js/agent 1.1.35 → 1.1.36

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.
@@ -1 +1 @@
1
- {"version":3,"file":"agent-core-run.d.ts","sourceRoot":"","sources":["../../src/core/agent-core-run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-core-run.d.ts","sourceRoot":"","sources":["../../src/core/agent-core-run.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,7 @@ import { sanitizeAssistantReply, unwrapJsonStringLayers } from './text-sanitize.
17
17
  import { formatToolCallsForUser } from './tool-calls-user-format.js';
18
18
  import { summarizeExhaustedTurn } from './exhausted-turn-reply.js';
19
19
  import { recoverStructuredReply } from './structured-reply-recovery.js';
20
+ import { trackTurnCompletionUsage } from './turn-completion-usage.js';
20
21
  import { shouldSuppressReplyForSpawnDelegation } from './spawn-delegation.js';
21
22
  import { logPhase, tokenUsageLogFields, logAgentLoopIterationEnd } from '../internal/phase-trace.js';
22
23
  import { buildAgentPromptCacheStreamOptions } from '../config/index.js';
@@ -24,7 +25,7 @@ import { buildLlmToolsForProvider } from '../tool/deferred-resolution.js';
24
25
  import { applyToolToModelOutput } from '../tool/tool-model-output.js';
25
26
  import { resolveAlwaysLoadedSet } from '../tool-catalog/resolve-config.js';
26
27
  import { resolveDeferredApiTools } from '../tool-catalog/tool-catalog.js';
27
- import { createTurnEventMapperState, mapAgentEventToTurnEvents, } from './turn-event-mapper.js';
28
+ import { createTurnEventMapperState, mapAgentEventToTurnEvents, turnUsageEvent, } from './turn-event-mapper.js';
28
29
  import { TurnJournalCommitError } from '../turn/journal-integrity.js';
29
30
  import { ExecutableToolRegistry } from '../tool/executable-tool-registry.js';
30
31
  import { withoutForbiddenShell } from '../plugin-runtime/native-bash-tool.js';
@@ -107,7 +108,7 @@ function createTurnCompletionPort(input) {
107
108
  emptyReplyRetries: input.harness.emptyReplyRetries,
108
109
  requestTimeoutMs: input.harness.requestTimeoutMs,
109
110
  });
110
- return createResilientCompletionPort(host.llmRuntime, {
111
+ return createResilientCompletionPort(input.transport, {
111
112
  config,
112
113
  fallbackModels,
113
114
  timers: host.config.providerTimers,
@@ -466,7 +467,7 @@ export async function* runAgentLoopTextTurnRun(input) {
466
467
  const toolCalls = [];
467
468
  let iterations = 0;
468
469
  let lastAssistantText = '';
469
- let lastUsage;
470
+ const completionUsage = trackTurnCompletionUsage(host.llmRuntime);
470
471
  const conversationBatches = [];
471
472
  /** This turn's prompt plus every message the loop produced; used for reply recovery. */
472
473
  let turnTranscript = [];
@@ -506,19 +507,19 @@ export async function* runAgentLoopTextTurnRun(input) {
506
507
  modelCandidates: input.modelCandidates,
507
508
  harness,
508
509
  sessionId,
510
+ transport: completionUsage.transport,
509
511
  requiredInput: requiredTurnInputModalities(promptMessages),
510
512
  });
511
513
  // Progress-aware budget: maxIterations is soft, extended while progressing.
512
514
  const toolBudget = resolveToolBudget(host.config.toolBudget, harness);
513
515
  const progress = new TurnProgressTracker(toolBudget);
514
516
  const turnStartedAt = Date.now();
515
- let turnTokens = 0;
516
517
  let segmentStartIteration = 0;
517
518
  let extensionPending = false;
518
519
  let lastReportIteration = 0;
519
520
  const segmentHardCap = Math.max(maxIterations, input.maxTotalIterations ?? toolBudget.maxTotalIterations);
520
521
  const hardLimitReached = () => (toolBudget.maxWallClockMs > 0 && Date.now() - turnStartedAt >= toolBudget.maxWallClockMs)
521
- || (toolBudget.maxTotalTokens > 0 && turnTokens >= toolBudget.maxTotalTokens);
522
+ || (toolBudget.maxTotalTokens > 0 && completionUsage.usage.totalTokens >= toolBudget.maxTotalTokens);
522
523
  const nextIterationLimit = (iteration, limit) => {
523
524
  if (iteration > 0 && hardLimitReached())
524
525
  return iteration;
@@ -554,7 +555,7 @@ export async function* runAgentLoopTextTurnRun(input) {
554
555
  transformContext: async (messages, ctxSignal) => persistentConversation ? host.compactionRuntime.transformContext(messages, ctxSignal, {
555
556
  host,
556
557
  sessionId,
557
- transport: host.llmRuntime,
558
+ transport: completionUsage.transport,
558
559
  model: llmModel,
559
560
  compactionConfig: host.config.compaction,
560
561
  contextWindow,
@@ -566,7 +567,7 @@ export async function* runAgentLoopTextTurnRun(input) {
566
567
  onContextOverflow: async (messages, ctxSignal) => persistentConversation ? host.compactionRuntime.transformContext(messages, ctxSignal, {
567
568
  host,
568
569
  sessionId,
569
- transport: host.llmRuntime,
570
+ transport: completionUsage.transport,
570
571
  model: llmModel,
571
572
  compactionConfig: host.config.compaction,
572
573
  contextWindow,
@@ -713,7 +714,7 @@ export async function* runAgentLoopTextTurnRun(input) {
713
714
  minIntervalMs: toolBudget.progressMinIntervalMs,
714
715
  maxUpdates: toolBudget.progressMaxUpdates,
715
716
  summarize: () => summarizeProgress({
716
- transport: host.llmRuntime,
717
+ transport: completionUsage.transport,
717
718
  model: llmModel,
718
719
  systemPrompt: proseSystemPrompt,
719
720
  messages: [...loaded.messages, ...turnTranscript, ...segmentMessages],
@@ -724,6 +725,13 @@ export async function* runAgentLoopTextTurnRun(input) {
724
725
  : undefined;
725
726
  // Messages of the running segment, for progress summaries before agent_end.
726
727
  let segmentMessages = [];
728
+ function* drainCompletionUsage() {
729
+ for (const usage of completionUsage.drainUsage()) {
730
+ const event = turnUsageEvent(usage);
731
+ emitTurnEvent(event);
732
+ yield event;
733
+ }
734
+ }
727
735
  // Each segment is one agentLoop run; continuations add segments to the same
728
736
  // Turn, so policy, approval ports and persisted history stay those of the Turn.
729
737
  while (true) {
@@ -732,7 +740,11 @@ export async function* runAgentLoopTextTurnRun(input) {
732
740
  lastAssistantHadToolCalls = false;
733
741
  segmentMessages = [...segmentPrompt];
734
742
  for await (const event of agentLoop(segmentPrompt, segmentContext, loopConfig, signal)) {
743
+ yield* drainCompletionUsage();
735
744
  for (const te of mapAgentEventToTurnEvents(event, mapperState)) {
745
+ if (te.type === 'usage' && event.type === 'message_end' && event.message.role === 'assistant'
746
+ && completionUsage.hasReported(event.message))
747
+ continue;
736
748
  if (imReply && te.type === 'chunk')
737
749
  continue;
738
750
  if (input.toolEventSource === 'authority'
@@ -769,9 +781,6 @@ export async function* runAgentLoopTextTurnRun(input) {
769
781
  || (!lastAssistantHadToolCalls && !answerText.trim());
770
782
  lastAssistantText = imReply && !lastAssistantNeedsHostReply ? answerText
771
783
  : resolveAssistantReplyText(imReply ? { ...assistant, content: [] } : assistant);
772
- lastUsage = assistant.usage;
773
- if (assistant.usage)
774
- turnTokens += tokenUsageToLegacy(assistant.usage).total_tokens;
775
784
  logAssistantIterationFailure(assistant, modelId, sessionId);
776
785
  const toolNames = assistant.content
777
786
  .filter((b) => b.type === 'toolCall')
@@ -811,7 +820,7 @@ export async function* runAgentLoopTextTurnRun(input) {
811
820
  || shouldSuppressReplyForSpawnDelegation(toolCalls))
812
821
  break;
813
822
  const checkpoint = await summarizeExhaustedTurn({
814
- transport: host.llmRuntime,
823
+ transport: completionUsage.transport,
815
824
  model: llmModel,
816
825
  systemPrompt: proseSystemPrompt,
817
826
  messages: [...loaded.messages, ...turnTranscript],
@@ -842,8 +851,9 @@ export async function* runAgentLoopTextTurnRun(input) {
842
851
  host.toldLedger?.record(sessionId, text, 'progress', traceTurnId(input.turnContext));
843
852
  }
844
853
  }
854
+ yield* drainCompletionUsage();
845
855
  if (signal?.aborted) {
846
- const usage = lastUsage ? tokenUsageToLegacy(lastUsage) : { prompt_tokens: 0, completion_tokens: 0, total_tokens: 0 };
856
+ const usage = tokenUsageToLegacy(completionUsage.usage);
847
857
  const endEvent = turnEndFromLegacyUsage('', usage);
848
858
  emitTurnEvent(endEvent);
849
859
  yield endEvent;
@@ -879,7 +889,7 @@ export async function* runAgentLoopTextTurnRun(input) {
879
889
  let hostReply = lastAssistantNeedsHostReply;
880
890
  if (needsReplyRecovery) {
881
891
  const summary = await summarizeExhaustedTurn({
882
- transport: host.llmRuntime,
892
+ transport: completionUsage.transport,
883
893
  model: llmModel,
884
894
  systemPrompt,
885
895
  messages: [...loaded.messages, ...turnTranscript],
@@ -909,7 +919,7 @@ export async function* runAgentLoopTextTurnRun(input) {
909
919
  }
910
920
  catch (error) {
911
921
  const recovery = await recoverStructuredReply({
912
- transport: host.llmRuntime, model: llmModel, raw: rawReply,
922
+ transport: completionUsage.transport, model: llmModel, raw: rawReply,
913
923
  error: error instanceof Error ? error : new Error('Invalid structured reply'), signal,
914
924
  });
915
925
  output = recovery.output;
@@ -917,7 +927,6 @@ export async function* runAgentLoopTextTurnRun(input) {
917
927
  if (recovery.exchange) {
918
928
  lastBatch?.messages.push(...recovery.exchange);
919
929
  lastBatch?.messageExtras.push(undefined, undefined);
920
- lastUsage = recovery.exchange[1].usage;
921
930
  }
922
931
  }
923
932
  }
@@ -937,11 +946,12 @@ export async function* runAgentLoopTextTurnRun(input) {
937
946
  emitTurnEvent(chunk);
938
947
  yield chunk;
939
948
  }
949
+ yield* drainCompletionUsage();
940
950
  logPhase(host.phaseConfig, 'agent_loop.turn.end', sessionId, {
941
951
  iterations,
942
- ...tokenUsageLogFields(lastUsage),
952
+ ...tokenUsageLogFields(completionUsage.usage),
943
953
  });
944
- const usage = lastUsage ? tokenUsageToLegacy(lastUsage) : { prompt_tokens: 0, completion_tokens: 0, total_tokens: 0 };
954
+ const usage = tokenUsageToLegacy(completionUsage.usage);
945
955
  const endEvent = {
946
956
  type: 'turn_end', output,
947
957
  usage: { promptTokens: usage.prompt_tokens, completionTokens: usage.completion_tokens, totalTokens: usage.total_tokens },
@@ -1 +1 @@
1
- {"version":3,"file":"agent-core-run.js","sourceRoot":"","sources":["../../src/core/agent-core-run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-core-run.js","sourceRoot":"","sources":["../../src/core/agent-core-run.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { type LlmCompletionPort, type TokenUsage } from '@zhin.js/ai';
2
+ /** Counts completed provider responses before reply validation, including rejected replies and retries. */
3
+ export declare function trackTurnCompletionUsage(delegate: LlmCompletionPort): {
4
+ transport: LlmCompletionPort;
5
+ readonly usage: TokenUsage;
6
+ drainUsage(): TokenUsage[];
7
+ hasReported(message: object): boolean;
8
+ };
9
+ //# sourceMappingURL=turn-completion-usage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"turn-completion-usage.d.ts","sourceRoot":"","sources":["../../src/core/turn-completion-usage.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,KAAK,iBAAiB,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAEhH,2GAA2G;AAC3G,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,iBAAiB,GAAG;IACrE,SAAS,EAAE,iBAAiB,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAC3B,UAAU,IAAI,UAAU,EAAE,CAAC;IAC3B,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;CACvC,CA8BA"}
@@ -0,0 +1,35 @@
1
+ import { EMPTY_TOKEN_USAGE } from '@zhin.js/ai';
2
+ /** Counts completed provider responses before reply validation, including rejected replies and retries. */
3
+ export function trackTurnCompletionUsage(delegate) {
4
+ const total = { ...EMPTY_TOKEN_USAGE, cost: { ...EMPTY_TOKEN_USAGE.cost } };
5
+ const pending = [];
6
+ const reported = new WeakSet();
7
+ const record = (assistant) => {
8
+ const usage = assistant.usage;
9
+ pending.push({ ...usage, cost: { ...usage.cost } });
10
+ reported.add(assistant);
11
+ total.input += usage.input;
12
+ total.output += usage.output;
13
+ total.cacheRead += usage.cacheRead;
14
+ total.cacheWrite += usage.cacheWrite;
15
+ total.totalTokens += usage.totalTokens;
16
+ if (usage.reasoning !== undefined)
17
+ total.reasoning = (total.reasoning ?? 0) + usage.reasoning;
18
+ total.cost.input += usage.cost.input;
19
+ total.cost.output += usage.cost.output;
20
+ total.cost.cacheRead += usage.cost.cacheRead;
21
+ total.cost.cacheWrite += usage.cost.cacheWrite;
22
+ total.cost.total += usage.cost.total;
23
+ return assistant;
24
+ };
25
+ return {
26
+ transport: {
27
+ complete: async (model, context, options) => record(await delegate.complete(model, context, options)),
28
+ completeSimple: async (model, context, options) => record(await delegate.completeSimple(model, context, options)),
29
+ },
30
+ get usage() { return { ...total, cost: { ...total.cost } }; },
31
+ drainUsage: () => pending.splice(0),
32
+ hasReported: assistant => reported.has(assistant),
33
+ };
34
+ }
35
+ //# sourceMappingURL=turn-completion-usage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"turn-completion-usage.js","sourceRoot":"","sources":["../../src/core/turn-completion-usage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAkE,MAAM,aAAa,CAAC;AAEhH,2GAA2G;AAC3G,MAAM,UAAU,wBAAwB,CAAC,QAA2B;IAMlE,MAAM,KAAK,GAAe,EAAE,GAAG,iBAAiB,EAAE,IAAI,EAAE,EAAE,GAAG,iBAAiB,CAAC,IAAI,EAAE,EAAE,CAAC;IACxF,MAAM,OAAO,GAAiB,EAAE,CAAC;IACjC,MAAM,QAAQ,GAAG,IAAI,OAAO,EAAU,CAAC;IACvC,MAAM,MAAM,GAAG,CAAC,SAA2B,EAAoB,EAAE;QAC/D,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;QAC9B,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACpD,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACxB,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC;QAC3B,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC;QAC7B,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,CAAC;QACnC,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,CAAC;QACrC,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,WAAW,CAAC;QACvC,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS;YAAE,KAAK,CAAC,SAAS,GAAG,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC;QAC9F,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;QACrC,KAAK,CAAC,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;QACvC,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC;QAC7C,KAAK,CAAC,IAAI,CAAC,UAAU,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC;QAC/C,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;QACrC,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC;IACF,OAAO;QACL,SAAS,EAAE;YACT,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACrG,cAAc,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,QAAQ,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;SAClH;QACD,IAAI,KAAK,KAAK,OAAO,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;QAC7D,UAAU,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QACnC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC;KAClD,CAAC;AACJ,CAAC"}
@@ -1,8 +1,9 @@
1
1
  /**
2
2
  * Maps @zhin.js/ai agentLoop AgentEvent stream to TurnEvent union.
3
3
  */
4
- import type { AgentEvent } from '@zhin.js/ai';
5
- import type { TurnEvent } from '../event/turn-event.js';
4
+ import type { AgentEvent, TokenUsage } from '@zhin.js/ai';
5
+ import type { TurnEvent, UsageEvent } from '../event/turn-event.js';
6
+ export declare function turnUsageEvent(usage: TokenUsage): UsageEvent;
6
7
  export interface TurnEventMapperState {
7
8
  accumulatedText: string;
8
9
  accumulatedThinking: string;
@@ -1 +1 @@
1
- {"version":3,"file":"turn-event-mapper.d.ts","sourceRoot":"","sources":["../../src/core/turn-event-mapper.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,UAAU,EAAoB,MAAM,aAAa,CAAC;AAChE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAExD,MAAM,WAAW,oBAAoB;IACnC,eAAe,EAAE,MAAM,CAAC;IACxB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,0BAA0B,CAAC,aAAa,SAAK,GAAG,oBAAoB,CAEnF;AAED,wBAAiB,yBAAyB,CACxC,KAAK,EAAE,UAAU,EACjB,KAAK,EAAE,oBAAoB,GAC1B,SAAS,CAAC,SAAS,CAAC,CA4EtB"}
1
+ {"version":3,"file":"turn-event-mapper.d.ts","sourceRoot":"","sources":["../../src/core/turn-event-mapper.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,UAAU,EAAoB,UAAU,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpE,wBAAgB,cAAc,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU,CAW5D;AAED,MAAM,WAAW,oBAAoB;IACnC,eAAe,EAAE,MAAM,CAAC;IACxB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,0BAA0B,CAAC,aAAa,SAAK,GAAG,oBAAoB,CAEnF;AAED,wBAAiB,yBAAyB,CACxC,KAAK,EAAE,UAAU,EACjB,KAAK,EAAE,oBAAoB,GAC1B,SAAS,CAAC,SAAS,CAAC,CAmEtB"}
@@ -1,3 +1,15 @@
1
+ export function turnUsageEvent(usage) {
2
+ return {
3
+ type: 'usage',
4
+ usage: {
5
+ promptTokens: usage.input,
6
+ completionTokens: usage.output,
7
+ totalTokens: usage.totalTokens,
8
+ ...(usage.cacheRead > 0 ? { cacheReadTokens: usage.cacheRead } : {}),
9
+ ...(usage.reasoning ? { reasoningTokens: usage.reasoning } : {}),
10
+ },
11
+ };
12
+ }
1
13
  export function createTurnEventMapperState(maxIterations = 15) {
2
14
  return { accumulatedText: '', accumulatedThinking: '', toolStartTimes: new Map(), iteration: 0, maxIterations };
3
15
  }
@@ -16,16 +28,7 @@ export function* mapAgentEventToTurnEvents(event, state) {
16
28
  case 'message_end':
17
29
  if (event.message.role === 'assistant') {
18
30
  const usage = event.message.usage;
19
- yield {
20
- type: 'usage',
21
- usage: {
22
- promptTokens: usage.input,
23
- completionTokens: usage.output,
24
- totalTokens: usage.totalTokens,
25
- ...(usage.cacheRead > 0 ? { cacheReadTokens: usage.cacheRead } : {}),
26
- ...(usage.reasoning ? { reasoningTokens: usage.reasoning } : {}),
27
- },
28
- };
31
+ yield turnUsageEvent(usage);
29
32
  }
30
33
  break;
31
34
  case 'message_update':
@@ -1 +1 @@
1
- {"version":3,"file":"turn-event-mapper.js","sourceRoot":"","sources":["../../src/core/turn-event-mapper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"turn-event-mapper.js","sourceRoot":"","sources":["../../src/core/turn-event-mapper.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zhin.js/agent",
3
- "version": "1.1.35",
3
+ "version": "1.1.36",
4
4
  "description": "Zhin AI Agent — session, ZhinAgent, init; composes @zhin.js/core providers and tools",
5
5
  "type": "module",
6
6
  "main": "./lib/index.js",
@@ -90,19 +90,19 @@
90
90
  "ajv": "^8.18.0",
91
91
  "he": "^1.2.0",
92
92
  "js-yaml": "^5.2.2",
93
- "@zhin.js/adapter": "1.1.19",
94
- "@zhin.js/agent-feature": "1.1.6",
95
- "@zhin.js/ai": "1.1.41",
96
- "@zhin.js/core": "1.1.45",
93
+ "@zhin.js/adapter": "1.1.20",
94
+ "@zhin.js/core": "1.1.46",
95
+ "@zhin.js/agent-feature": "1.1.7",
97
96
  "@zhin.js/im-contract": "1.1.4",
97
+ "@zhin.js/ai": "1.1.41",
98
98
  "@zhin.js/kernel": "1.1.4",
99
99
  "@zhin.js/logger": "1.1.2",
100
- "@zhin.js/mcp-feature": "1.1.6",
101
- "@zhin.js/permission": "1.1.6",
102
- "@zhin.js/plugin-runtime": "1.1.14",
103
- "@zhin.js/prompt-section": "1.1.5",
104
- "@zhin.js/skill": "1.1.6",
105
- "@zhin.js/tool": "1.1.6"
100
+ "@zhin.js/mcp-feature": "1.1.7",
101
+ "@zhin.js/prompt-section": "1.1.6",
102
+ "@zhin.js/skill": "1.1.7",
103
+ "@zhin.js/plugin-runtime": "1.1.15",
104
+ "@zhin.js/permission": "1.1.7",
105
+ "@zhin.js/tool": "1.1.7"
106
106
  },
107
107
  "peerDependencies": {
108
108
  "@modelcontextprotocol/sdk": "^1.29.0",