@assistant-ui/react 0.12.12 → 0.12.14

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":"AssistantCloudThreadHistoryAdapter.d.ts","sourceRoot":"","sources":["../../../src/legacy-runtime/cloud/AssistantCloudThreadHistoryAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAY,MAAM,OAAO,CAAC;AAC5C,OAAO,KAAK,EAEV,oBAAoB,EAKrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,cAAc,EAGf,MAAM,iBAAiB,CAAC;AAgnBzB,wBAAgB,qCAAqC,CACnD,QAAQ,EAAE,SAAS,CAAC,cAAc,CAAC,GAClC,oBAAoB,CAMtB"}
1
+ {"version":3,"file":"AssistantCloudThreadHistoryAdapter.d.ts","sourceRoot":"","sources":["../../../src/legacy-runtime/cloud/AssistantCloudThreadHistoryAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAY,MAAM,OAAO,CAAC;AAC5C,OAAO,KAAK,EAEV,oBAAoB,EAKrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,cAAc,EAGf,MAAM,iBAAiB,CAAC;AA2vBzB,wBAAgB,qCAAqC,CACnD,QAAQ,EAAE,SAAS,CAAC,cAAc,CAAC,GAClC,oBAAoB,CAMtB"}
@@ -33,8 +33,8 @@ class AssistantCloudThreadHistoryAdapter {
33
33
  await formatted.update?.(remoteId, item, localMessageId);
34
34
  },
35
35
  reportTelemetry(items, options) {
36
- const encodedContents = items.map((item) => formatAdapter.encode(item));
37
- adapter._reportBatchTelemetry(formatAdapter.format, encodedContents, options);
36
+ const encodedRunMessages = items.map((item) => formatAdapter.encode(item));
37
+ adapter._reportRunTelemetry(formatAdapter.format, encodedRunMessages, options);
38
38
  },
39
39
  async load() {
40
40
  const remoteId = adapter.aui.threadListItem().getState().remoteId;
@@ -64,13 +64,13 @@ class AssistantCloudThreadHistoryAdapter {
64
64
  .reverse(),
65
65
  };
66
66
  }
67
- _reportBatchTelemetry(format, contents, options) {
67
+ _reportRunTelemetry(format, runMessages, options) {
68
68
  if (!this.cloudRef.current.telemetry.enabled)
69
69
  return;
70
70
  const remoteId = this.aui.threadListItem().getState().remoteId;
71
71
  if (!remoteId)
72
72
  return;
73
- const extracted = extractBatchTelemetry(format, contents);
73
+ const extracted = extractRunTelemetry(format, runMessages);
74
74
  if (!extracted)
75
75
  return;
76
76
  this._sendReport(remoteId, extracted, options?.durationMs, options?.stepTimestamps);
@@ -83,6 +83,8 @@ class AssistantCloudThreadHistoryAdapter {
83
83
  }
84
84
  _sendReport(remoteId, data, durationMs, stepTimestamps) {
85
85
  const mergedSteps = mergeStepTimestamps(data.steps, stepTimestamps);
86
+ // Keep in sync with assistant-cloud createRunSchema
87
+ // (apps/aui-cloud-api/src/endpoints/runs/create.ts).
86
88
  const initial = {
87
89
  thread_id: remoteId,
88
90
  status: data.status,
@@ -97,6 +99,12 @@ class AssistantCloudThreadHistoryAdapter {
97
99
  ...(data.outputTokens != null
98
100
  ? { output_tokens: data.outputTokens }
99
101
  : undefined),
102
+ ...(data.reasoningTokens != null
103
+ ? { reasoning_tokens: data.reasoningTokens }
104
+ : undefined),
105
+ ...(data.cachedInputTokens != null
106
+ ? { cached_input_tokens: data.cachedInputTokens }
107
+ : undefined),
100
108
  ...(durationMs != null ? { duration_ms: durationMs } : undefined),
101
109
  ...(data.outputText != null
102
110
  ? { output_text: data.outputText }
@@ -189,12 +197,12 @@ function extractTelemetry(format, content) {
189
197
  return null;
190
198
  }
191
199
  }
192
- function extractBatchTelemetry(format, contents) {
200
+ function extractRunTelemetry(format, runMessages) {
193
201
  if (format === "ai-sdk/v6") {
194
- return extractAiSdkV6Batch(contents);
202
+ return aggregateAiSdkV6RunSteps(runMessages);
195
203
  }
196
- for (let i = contents.length - 1; i >= 0; i--) {
197
- const result = extractTelemetry(format, contents[i]);
204
+ for (let i = runMessages.length - 1; i >= 0; i--) {
205
+ const result = extractTelemetry(format, runMessages[i]);
198
206
  if (result)
199
207
  return result;
200
208
  }
@@ -218,13 +226,39 @@ function extractAuiV0(content) {
218
226
  const steps = msg.metadata?.steps;
219
227
  let inputTokens;
220
228
  let outputTokens;
229
+ let reasoningTokens;
230
+ let cachedInputTokens;
221
231
  if (steps && steps.length > 0) {
222
- inputTokens = 0;
223
- outputTokens = 0;
232
+ let totalInput = 0;
233
+ let totalOutput = 0;
234
+ let totalReasoning = 0;
235
+ let totalCachedInput = 0;
236
+ let hasInput = false;
237
+ let hasOutput = false;
238
+ let hasReasoning = false;
239
+ let hasCachedInput = false;
224
240
  for (const step of steps) {
225
- inputTokens += step.usage?.inputTokens ?? 0;
226
- outputTokens += step.usage?.outputTokens ?? 0;
241
+ if (step.usage?.inputTokens != null) {
242
+ totalInput += step.usage.inputTokens;
243
+ hasInput = true;
244
+ }
245
+ if (step.usage?.outputTokens != null) {
246
+ totalOutput += step.usage.outputTokens;
247
+ hasOutput = true;
248
+ }
249
+ if (step.usage?.reasoningTokens != null) {
250
+ totalReasoning += step.usage.reasoningTokens;
251
+ hasReasoning = true;
252
+ }
253
+ if (step.usage?.cachedInputTokens != null) {
254
+ totalCachedInput += step.usage.cachedInputTokens;
255
+ hasCachedInput = true;
256
+ }
227
257
  }
258
+ inputTokens = hasInput ? totalInput : undefined;
259
+ outputTokens = hasOutput ? totalOutput : undefined;
260
+ reasoningTokens = hasReasoning ? totalReasoning : undefined;
261
+ cachedInputTokens = hasCachedInput ? totalCachedInput : undefined;
228
262
  }
229
263
  const statusType = msg.status?.type;
230
264
  const status = (statusType && AUI_STATUS_MAP[statusType]) || "completed";
@@ -241,6 +275,12 @@ function extractAuiV0(content) {
241
275
  ...(s.usage?.outputTokens != null
242
276
  ? { output_tokens: s.usage.outputTokens }
243
277
  : undefined),
278
+ ...(s.usage?.reasoningTokens != null
279
+ ? { reasoning_tokens: s.usage.reasoningTokens }
280
+ : undefined),
281
+ ...(s.usage?.cachedInputTokens != null
282
+ ? { cached_input_tokens: s.usage.cachedInputTokens }
283
+ : undefined),
244
284
  }))
245
285
  : undefined;
246
286
  return {
@@ -249,6 +289,8 @@ function extractAuiV0(content) {
249
289
  ...(steps?.length ? { totalSteps: steps.length } : undefined),
250
290
  ...(inputTokens != null ? { inputTokens } : undefined),
251
291
  ...(outputTokens != null ? { outputTokens } : undefined),
292
+ ...(reasoningTokens != null ? { reasoningTokens } : undefined),
293
+ ...(cachedInputTokens != null ? { cachedInputTokens } : undefined),
252
294
  ...(outputText != null ? { outputText } : undefined),
253
295
  ...(metadata ? { metadata } : undefined),
254
296
  ...(telemetrySteps ? { steps: telemetrySteps } : undefined),
@@ -330,6 +372,12 @@ function buildAiSdkV6Result(textParts, toolCalls, totalSteps, metadata, stepsDat
330
372
  ...(usage?.outputTokens != null
331
373
  ? { outputTokens: usage.outputTokens }
332
374
  : undefined),
375
+ ...(usage?.reasoningTokens != null
376
+ ? { reasoningTokens: usage.reasoningTokens }
377
+ : undefined),
378
+ ...(usage?.cachedInputTokens != null
379
+ ? { cachedInputTokens: usage.cachedInputTokens }
380
+ : undefined),
333
381
  ...(outputText != null ? { outputText } : undefined),
334
382
  ...(metadata ? { metadata } : undefined),
335
383
  ...(steps ? { steps } : undefined),
@@ -339,11 +387,21 @@ function buildAiSdkV6Result(textParts, toolCalls, totalSteps, metadata, stepsDat
339
387
  function normalizeUsage(u) {
340
388
  const input = u.inputTokens ?? u.promptTokens;
341
389
  const output = u.outputTokens ?? u.completionTokens;
342
- if (input == null && output == null)
390
+ if (input == null &&
391
+ output == null &&
392
+ u.reasoningTokens == null &&
393
+ u.cachedInputTokens == null) {
343
394
  return undefined;
395
+ }
344
396
  return {
345
- inputTokens: input ?? 0,
346
- outputTokens: output ?? 0,
397
+ ...(input != null ? { inputTokens: input } : undefined),
398
+ ...(output != null ? { outputTokens: output } : undefined),
399
+ ...(u.reasoningTokens != null
400
+ ? { reasoningTokens: u.reasoningTokens }
401
+ : undefined),
402
+ ...(u.cachedInputTokens != null
403
+ ? { cachedInputTokens: u.cachedInputTokens }
404
+ : undefined),
347
405
  };
348
406
  }
349
407
  function extractAiSdkV6Usage(metadata) {
@@ -359,19 +417,45 @@ function extractAiSdkV6Usage(metadata) {
359
417
  if (steps && steps.length > 0) {
360
418
  let inputTokens = 0;
361
419
  let outputTokens = 0;
420
+ let reasoningTokens = 0;
421
+ let cachedInputTokens = 0;
422
+ let hasInput = false;
423
+ let hasOutput = false;
424
+ let hasReasoning = false;
425
+ let hasCachedInput = false;
362
426
  let hasAny = false;
363
427
  for (const s of steps) {
364
428
  if (!s.usage)
365
429
  continue;
366
430
  const n = normalizeUsage(s.usage);
367
431
  if (n) {
368
- inputTokens += n.inputTokens;
369
- outputTokens += n.outputTokens;
432
+ if (n.inputTokens != null) {
433
+ inputTokens += n.inputTokens;
434
+ hasInput = true;
435
+ }
436
+ if (n.outputTokens != null) {
437
+ outputTokens += n.outputTokens;
438
+ hasOutput = true;
439
+ }
440
+ if (n.reasoningTokens != null) {
441
+ reasoningTokens += n.reasoningTokens;
442
+ hasReasoning = true;
443
+ }
444
+ if (n.cachedInputTokens != null) {
445
+ cachedInputTokens += n.cachedInputTokens;
446
+ hasCachedInput = true;
447
+ }
370
448
  hasAny = true;
371
449
  }
372
450
  }
373
- if (hasAny)
374
- return { inputTokens, outputTokens };
451
+ if (hasAny) {
452
+ return {
453
+ ...(hasInput ? { inputTokens } : undefined),
454
+ ...(hasOutput ? { outputTokens } : undefined),
455
+ ...(hasReasoning ? { reasoningTokens } : undefined),
456
+ ...(hasCachedInput ? { cachedInputTokens } : undefined),
457
+ };
458
+ }
375
459
  }
376
460
  return undefined;
377
461
  }
@@ -382,14 +466,21 @@ function extractAiSdkV6(content) {
382
466
  const { textParts, toolCalls, stepsData } = collectAiSdkV6Parts(msg.parts ?? []);
383
467
  return buildAiSdkV6Result(textParts, toolCalls, stepsData.length, msg.metadata, stepsData, extractAiSdkV6Usage(msg.metadata));
384
468
  }
385
- function extractAiSdkV6Batch(contents) {
469
+ function aggregateAiSdkV6RunSteps(stepMessages) {
386
470
  const allTextParts = [];
387
471
  const allToolCalls = [];
388
472
  const allStepsData = [];
389
473
  let hasAssistant = false;
390
474
  let metadata;
391
- let aggregatedUsage;
392
- for (const content of contents) {
475
+ let inputTokens = 0;
476
+ let outputTokens = 0;
477
+ let reasoningTokens = 0;
478
+ let cachedInputTokens = 0;
479
+ let hasInput = false;
480
+ let hasOutput = false;
481
+ let hasReasoning = false;
482
+ let hasCachedInput = false;
483
+ for (const content of stepMessages) {
393
484
  const msg = content;
394
485
  if (msg.role !== "assistant")
395
486
  continue;
@@ -402,15 +493,32 @@ function extractAiSdkV6Batch(contents) {
402
493
  metadata = msg.metadata;
403
494
  const usage = extractAiSdkV6Usage(msg.metadata);
404
495
  if (usage) {
405
- if (!aggregatedUsage)
406
- aggregatedUsage = { inputTokens: 0, outputTokens: 0 };
407
- aggregatedUsage.inputTokens += usage.inputTokens ?? 0;
408
- aggregatedUsage.outputTokens += usage.outputTokens ?? 0;
496
+ if (usage.inputTokens != null) {
497
+ inputTokens += usage.inputTokens;
498
+ hasInput = true;
499
+ }
500
+ if (usage.outputTokens != null) {
501
+ outputTokens += usage.outputTokens;
502
+ hasOutput = true;
503
+ }
504
+ if (usage.reasoningTokens != null) {
505
+ reasoningTokens += usage.reasoningTokens;
506
+ hasReasoning = true;
507
+ }
508
+ if (usage.cachedInputTokens != null) {
509
+ cachedInputTokens += usage.cachedInputTokens;
510
+ hasCachedInput = true;
511
+ }
409
512
  }
410
513
  }
411
514
  if (!hasAssistant)
412
515
  return null;
413
- return buildAiSdkV6Result(allTextParts, allToolCalls, allStepsData.length, metadata, allStepsData, aggregatedUsage);
516
+ return buildAiSdkV6Result(allTextParts, allToolCalls, allStepsData.length, metadata, allStepsData, {
517
+ ...(hasInput ? { inputTokens } : undefined),
518
+ ...(hasOutput ? { outputTokens } : undefined),
519
+ ...(hasReasoning ? { reasoningTokens } : undefined),
520
+ ...(hasCachedInput ? { cachedInputTokens } : undefined),
521
+ });
414
522
  }
415
523
  export function useAssistantCloudThreadHistoryAdapter(cloudRef) {
416
524
  const aui = useAui();
@@ -1 +1 @@
1
- {"version":3,"file":"AssistantCloudThreadHistoryAdapter.js","sourceRoot":"","sources":["../../../src/legacy-runtime/cloud/AssistantCloudThreadHistoryAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AssistantCloudThreadHistoryAdapter.js","sourceRoot":"","sources":["../../../src/legacy-runtime/cloud/AssistantCloudThreadHistoryAdapter.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@assistant-ui/react",
3
- "version": "0.12.12",
3
+ "version": "0.12.14",
4
4
  "description": "TypeScript/React library for AI Chat",
5
5
  "keywords": [
6
6
  "radix-ui",
@@ -49,8 +49,8 @@
49
49
  ],
50
50
  "sideEffects": false,
51
51
  "dependencies": {
52
- "assistant-cloud": "^0.1.19",
53
- "@assistant-ui/core": "^0.1.1",
52
+ "assistant-cloud": "^0.1.20",
53
+ "@assistant-ui/core": "^0.1.2",
54
54
  "@assistant-ui/tap": "^0.5.1",
55
55
  "@assistant-ui/store": "^0.2.1",
56
56
  "@radix-ui/primitive": "^1.1.3",
@@ -64,10 +64,12 @@ class AssistantCloudThreadHistoryAdapter implements ThreadHistoryAdapter {
64
64
  stepTimestamps?: StepTimestamp[];
65
65
  },
66
66
  ) {
67
- const encodedContents = items.map((item) => formatAdapter.encode(item));
68
- adapter._reportBatchTelemetry(
67
+ const encodedRunMessages = items.map((item) =>
68
+ formatAdapter.encode(item),
69
+ );
70
+ adapter._reportRunTelemetry(
69
71
  formatAdapter.format,
70
- encodedContents,
72
+ encodedRunMessages,
71
73
  options,
72
74
  );
73
75
  },
@@ -109,9 +111,9 @@ class AssistantCloudThreadHistoryAdapter implements ThreadHistoryAdapter {
109
111
  };
110
112
  }
111
113
 
112
- private _reportBatchTelemetry<T>(
114
+ private _reportRunTelemetry<T>(
113
115
  format: string,
114
- contents: T[],
116
+ runMessages: T[],
115
117
  options?: {
116
118
  durationMs?: number;
117
119
  stepTimestamps?: StepTimestamp[];
@@ -122,7 +124,7 @@ class AssistantCloudThreadHistoryAdapter implements ThreadHistoryAdapter {
122
124
  const remoteId = this.aui.threadListItem().getState().remoteId;
123
125
  if (!remoteId) return;
124
126
 
125
- const extracted = extractBatchTelemetry(format, contents);
127
+ const extracted = extractRunTelemetry(format, runMessages);
126
128
  if (!extracted) return;
127
129
 
128
130
  this._sendReport(
@@ -147,6 +149,8 @@ class AssistantCloudThreadHistoryAdapter implements ThreadHistoryAdapter {
147
149
  stepTimestamps?: StepTimestamp[],
148
150
  ) {
149
151
  const mergedSteps = mergeStepTimestamps(data.steps, stepTimestamps);
152
+ // Keep in sync with assistant-cloud createRunSchema
153
+ // (apps/aui-cloud-api/src/endpoints/runs/create.ts).
150
154
  const initial: Parameters<typeof this.cloudRef.current.runs.report>[0] = {
151
155
  thread_id: remoteId,
152
156
  status: data.status,
@@ -161,6 +165,12 @@ class AssistantCloudThreadHistoryAdapter implements ThreadHistoryAdapter {
161
165
  ...(data.outputTokens != null
162
166
  ? { output_tokens: data.outputTokens }
163
167
  : undefined),
168
+ ...(data.reasoningTokens != null
169
+ ? { reasoning_tokens: data.reasoningTokens }
170
+ : undefined),
171
+ ...(data.cachedInputTokens != null
172
+ ? { cached_input_tokens: data.cachedInputTokens }
173
+ : undefined),
164
174
  ...(durationMs != null ? { duration_ms: durationMs } : undefined),
165
175
  ...(data.outputText != null
166
176
  ? { output_text: data.outputText }
@@ -253,6 +263,8 @@ function buildToolCall(
253
263
  type TelemetryStepData = {
254
264
  input_tokens?: number;
255
265
  output_tokens?: number;
266
+ reasoning_tokens?: number;
267
+ cached_input_tokens?: number;
256
268
  tool_calls?: TelemetryToolCall[];
257
269
  start_ms?: number;
258
270
  end_ms?: number;
@@ -280,6 +292,8 @@ type TelemetryData = {
280
292
  totalSteps?: number;
281
293
  inputTokens?: number;
282
294
  outputTokens?: number;
295
+ reasoningTokens?: number;
296
+ cachedInputTokens?: number;
283
297
  outputText?: string;
284
298
  metadata?: Record<string, unknown>;
285
299
  steps?: TelemetryStepData[];
@@ -297,15 +311,15 @@ function extractTelemetry<T>(format: string, content: T): TelemetryData | null {
297
311
  }
298
312
  }
299
313
 
300
- function extractBatchTelemetry<T>(
314
+ function extractRunTelemetry<T>(
301
315
  format: string,
302
- contents: T[],
316
+ runMessages: T[],
303
317
  ): TelemetryData | null {
304
318
  if (format === "ai-sdk/v6") {
305
- return extractAiSdkV6Batch(contents);
319
+ return aggregateAiSdkV6RunSteps(runMessages);
306
320
  }
307
- for (let i = contents.length - 1; i >= 0; i--) {
308
- const result = extractTelemetry(format, contents[i]!);
321
+ for (let i = runMessages.length - 1; i >= 0; i--) {
322
+ const result = extractTelemetry(format, runMessages[i]!);
309
323
  if (result) return result;
310
324
  }
311
325
  return null;
@@ -332,7 +346,12 @@ function extractAuiV0<T>(content: T): TelemetryData | null {
332
346
  metadata?: {
333
347
  modelId?: string;
334
348
  steps?: readonly {
335
- usage?: { inputTokens?: number; outputTokens?: number };
349
+ usage?: {
350
+ inputTokens?: number;
351
+ outputTokens?: number;
352
+ reasoningTokens?: number;
353
+ cachedInputTokens?: number;
354
+ };
336
355
  }[];
337
356
  custom?: Record<string, unknown> & { modelId?: string };
338
357
  };
@@ -355,13 +374,39 @@ function extractAuiV0<T>(content: T): TelemetryData | null {
355
374
  const steps = msg.metadata?.steps;
356
375
  let inputTokens: number | undefined;
357
376
  let outputTokens: number | undefined;
377
+ let reasoningTokens: number | undefined;
378
+ let cachedInputTokens: number | undefined;
358
379
  if (steps && steps.length > 0) {
359
- inputTokens = 0;
360
- outputTokens = 0;
380
+ let totalInput = 0;
381
+ let totalOutput = 0;
382
+ let totalReasoning = 0;
383
+ let totalCachedInput = 0;
384
+ let hasInput = false;
385
+ let hasOutput = false;
386
+ let hasReasoning = false;
387
+ let hasCachedInput = false;
361
388
  for (const step of steps) {
362
- inputTokens += step.usage?.inputTokens ?? 0;
363
- outputTokens += step.usage?.outputTokens ?? 0;
389
+ if (step.usage?.inputTokens != null) {
390
+ totalInput += step.usage.inputTokens;
391
+ hasInput = true;
392
+ }
393
+ if (step.usage?.outputTokens != null) {
394
+ totalOutput += step.usage.outputTokens;
395
+ hasOutput = true;
396
+ }
397
+ if (step.usage?.reasoningTokens != null) {
398
+ totalReasoning += step.usage.reasoningTokens;
399
+ hasReasoning = true;
400
+ }
401
+ if (step.usage?.cachedInputTokens != null) {
402
+ totalCachedInput += step.usage.cachedInputTokens;
403
+ hasCachedInput = true;
404
+ }
364
405
  }
406
+ inputTokens = hasInput ? totalInput : undefined;
407
+ outputTokens = hasOutput ? totalOutput : undefined;
408
+ reasoningTokens = hasReasoning ? totalReasoning : undefined;
409
+ cachedInputTokens = hasCachedInput ? totalCachedInput : undefined;
365
410
  }
366
411
 
367
412
  const statusType = msg.status?.type;
@@ -384,6 +429,12 @@ function extractAuiV0<T>(content: T): TelemetryData | null {
384
429
  ...(s.usage?.outputTokens != null
385
430
  ? { output_tokens: s.usage.outputTokens }
386
431
  : undefined),
432
+ ...(s.usage?.reasoningTokens != null
433
+ ? { reasoning_tokens: s.usage.reasoningTokens }
434
+ : undefined),
435
+ ...(s.usage?.cachedInputTokens != null
436
+ ? { cached_input_tokens: s.usage.cachedInputTokens }
437
+ : undefined),
387
438
  }))
388
439
  : undefined;
389
440
 
@@ -393,6 +444,8 @@ function extractAuiV0<T>(content: T): TelemetryData | null {
393
444
  ...(steps?.length ? { totalSteps: steps.length } : undefined),
394
445
  ...(inputTokens != null ? { inputTokens } : undefined),
395
446
  ...(outputTokens != null ? { outputTokens } : undefined),
447
+ ...(reasoningTokens != null ? { reasoningTokens } : undefined),
448
+ ...(cachedInputTokens != null ? { cachedInputTokens } : undefined),
396
449
  ...(outputText != null ? { outputText } : undefined),
397
450
  ...(metadata ? { metadata } : undefined),
398
451
  ...(telemetrySteps ? { steps: telemetrySteps } : undefined),
@@ -491,7 +544,12 @@ function buildAiSdkV6Result(
491
544
  totalSteps: number,
492
545
  metadata?: Record<string, unknown>,
493
546
  stepsData?: { tool_calls: TelemetryToolCall[] }[],
494
- usage?: { inputTokens?: number; outputTokens?: number },
547
+ usage?: {
548
+ inputTokens?: number;
549
+ outputTokens?: number;
550
+ reasoningTokens?: number;
551
+ cachedInputTokens?: number;
552
+ },
495
553
  ): TelemetryData {
496
554
  const hasText = textParts.length > 0;
497
555
  const outputText = hasText ? truncateStr(textParts.join("")) : undefined;
@@ -516,6 +574,12 @@ function buildAiSdkV6Result(
516
574
  ...(usage?.outputTokens != null
517
575
  ? { outputTokens: usage.outputTokens }
518
576
  : undefined),
577
+ ...(usage?.reasoningTokens != null
578
+ ? { reasoningTokens: usage.reasoningTokens }
579
+ : undefined),
580
+ ...(usage?.cachedInputTokens != null
581
+ ? { cachedInputTokens: usage.cachedInputTokens }
582
+ : undefined),
519
583
  ...(outputText != null ? { outputText } : undefined),
520
584
  ...(metadata ? { metadata } : undefined),
521
585
  ...(steps ? { steps } : undefined),
@@ -528,23 +592,49 @@ type UsageFields = {
528
592
  outputTokens?: number;
529
593
  promptTokens?: number;
530
594
  completionTokens?: number;
595
+ reasoningTokens?: number;
596
+ cachedInputTokens?: number;
531
597
  };
532
598
 
533
- function normalizeUsage(
534
- u: UsageFields,
535
- ): { inputTokens: number; outputTokens: number } | undefined {
599
+ function normalizeUsage(u: UsageFields):
600
+ | {
601
+ inputTokens?: number;
602
+ outputTokens?: number;
603
+ reasoningTokens?: number;
604
+ cachedInputTokens?: number;
605
+ }
606
+ | undefined {
536
607
  const input = u.inputTokens ?? u.promptTokens;
537
608
  const output = u.outputTokens ?? u.completionTokens;
538
- if (input == null && output == null) return undefined;
609
+ if (
610
+ input == null &&
611
+ output == null &&
612
+ u.reasoningTokens == null &&
613
+ u.cachedInputTokens == null
614
+ ) {
615
+ return undefined;
616
+ }
617
+
539
618
  return {
540
- inputTokens: input ?? 0,
541
- outputTokens: output ?? 0,
619
+ ...(input != null ? { inputTokens: input } : undefined),
620
+ ...(output != null ? { outputTokens: output } : undefined),
621
+ ...(u.reasoningTokens != null
622
+ ? { reasoningTokens: u.reasoningTokens }
623
+ : undefined),
624
+ ...(u.cachedInputTokens != null
625
+ ? { cachedInputTokens: u.cachedInputTokens }
626
+ : undefined),
542
627
  };
543
628
  }
544
629
 
545
- function extractAiSdkV6Usage(
546
- metadata?: Record<string, unknown>,
547
- ): { inputTokens?: number; outputTokens?: number } | undefined {
630
+ function extractAiSdkV6Usage(metadata?: Record<string, unknown>):
631
+ | {
632
+ inputTokens?: number;
633
+ outputTokens?: number;
634
+ reasoningTokens?: number;
635
+ cachedInputTokens?: number;
636
+ }
637
+ | undefined {
548
638
  // Try top-level metadata.usage
549
639
  const usage = metadata?.usage as UsageFields | undefined;
550
640
  if (usage) {
@@ -559,17 +649,44 @@ function extractAiSdkV6Usage(
559
649
  if (steps && steps.length > 0) {
560
650
  let inputTokens = 0;
561
651
  let outputTokens = 0;
652
+ let reasoningTokens = 0;
653
+ let cachedInputTokens = 0;
654
+ let hasInput = false;
655
+ let hasOutput = false;
656
+ let hasReasoning = false;
657
+ let hasCachedInput = false;
562
658
  let hasAny = false;
563
659
  for (const s of steps) {
564
660
  if (!s.usage) continue;
565
661
  const n = normalizeUsage(s.usage);
566
662
  if (n) {
567
- inputTokens += n.inputTokens;
568
- outputTokens += n.outputTokens;
663
+ if (n.inputTokens != null) {
664
+ inputTokens += n.inputTokens;
665
+ hasInput = true;
666
+ }
667
+ if (n.outputTokens != null) {
668
+ outputTokens += n.outputTokens;
669
+ hasOutput = true;
670
+ }
671
+ if (n.reasoningTokens != null) {
672
+ reasoningTokens += n.reasoningTokens;
673
+ hasReasoning = true;
674
+ }
675
+ if (n.cachedInputTokens != null) {
676
+ cachedInputTokens += n.cachedInputTokens;
677
+ hasCachedInput = true;
678
+ }
569
679
  hasAny = true;
570
680
  }
571
681
  }
572
- if (hasAny) return { inputTokens, outputTokens };
682
+ if (hasAny) {
683
+ return {
684
+ ...(hasInput ? { inputTokens } : undefined),
685
+ ...(hasOutput ? { outputTokens } : undefined),
686
+ ...(hasReasoning ? { reasoningTokens } : undefined),
687
+ ...(hasCachedInput ? { cachedInputTokens } : undefined),
688
+ };
689
+ }
573
690
  }
574
691
 
575
692
  return undefined;
@@ -592,17 +709,22 @@ function extractAiSdkV6<T>(content: T): TelemetryData | null {
592
709
  );
593
710
  }
594
711
 
595
- function extractAiSdkV6Batch<T>(contents: T[]): TelemetryData | null {
712
+ function aggregateAiSdkV6RunSteps<T>(stepMessages: T[]): TelemetryData | null {
596
713
  const allTextParts: string[] = [];
597
714
  const allToolCalls: TelemetryToolCall[] = [];
598
715
  const allStepsData: { tool_calls: TelemetryToolCall[] }[] = [];
599
716
  let hasAssistant = false;
600
717
  let metadata: Record<string, unknown> | undefined;
601
- let aggregatedUsage:
602
- | { inputTokens: number; outputTokens: number }
603
- | undefined;
604
-
605
- for (const content of contents) {
718
+ let inputTokens = 0;
719
+ let outputTokens = 0;
720
+ let reasoningTokens = 0;
721
+ let cachedInputTokens = 0;
722
+ let hasInput = false;
723
+ let hasOutput = false;
724
+ let hasReasoning = false;
725
+ let hasCachedInput = false;
726
+
727
+ for (const content of stepMessages) {
606
728
  const msg = content as AiSdkV6Message;
607
729
  if (msg.role !== "assistant") continue;
608
730
  hasAssistant = true;
@@ -617,10 +739,22 @@ function extractAiSdkV6Batch<T>(contents: T[]): TelemetryData | null {
617
739
 
618
740
  const usage = extractAiSdkV6Usage(msg.metadata);
619
741
  if (usage) {
620
- if (!aggregatedUsage)
621
- aggregatedUsage = { inputTokens: 0, outputTokens: 0 };
622
- aggregatedUsage.inputTokens += usage.inputTokens ?? 0;
623
- aggregatedUsage.outputTokens += usage.outputTokens ?? 0;
742
+ if (usage.inputTokens != null) {
743
+ inputTokens += usage.inputTokens;
744
+ hasInput = true;
745
+ }
746
+ if (usage.outputTokens != null) {
747
+ outputTokens += usage.outputTokens;
748
+ hasOutput = true;
749
+ }
750
+ if (usage.reasoningTokens != null) {
751
+ reasoningTokens += usage.reasoningTokens;
752
+ hasReasoning = true;
753
+ }
754
+ if (usage.cachedInputTokens != null) {
755
+ cachedInputTokens += usage.cachedInputTokens;
756
+ hasCachedInput = true;
757
+ }
624
758
  }
625
759
  }
626
760
 
@@ -631,7 +765,12 @@ function extractAiSdkV6Batch<T>(contents: T[]): TelemetryData | null {
631
765
  allStepsData.length,
632
766
  metadata,
633
767
  allStepsData,
634
- aggregatedUsage,
768
+ {
769
+ ...(hasInput ? { inputTokens } : undefined),
770
+ ...(hasOutput ? { outputTokens } : undefined),
771
+ ...(hasReasoning ? { reasoningTokens } : undefined),
772
+ ...(hasCachedInput ? { cachedInputTokens } : undefined),
773
+ },
635
774
  );
636
775
  }
637
776
 
@@ -4,8 +4,9 @@ import type { ThreadAssistantMessage } from "@assistant-ui/core";
4
4
  import type { Tool } from "assistant-stream";
5
5
  import { act, renderHook, waitFor } from "@testing-library/react";
6
6
  import { describe, expect, it, vi } from "vitest";
7
- import type { AssistantTransportState, ToolExecutionStatus } from "./types";
8
- import { useToolInvocations } from "./useToolInvocations";
7
+ import type { AssistantTransportState } from "./types";
8
+ import { ToolExecutionStatus, useToolInvocations } from "./useToolInvocations";
9
+ import { ReadonlyJSONObject } from "assistant-stream/utils";
9
10
 
10
11
  const createState = (
11
12
  messages: ThreadAssistantMessage[],
@@ -34,7 +35,7 @@ const createAssistantMessage = (
34
35
  type: "tool-call",
35
36
  toolCallId: "tool-1",
36
37
  toolName: "weatherSearch",
37
- args,
38
+ args: args as ReadonlyJSONObject,
38
39
  argsText,
39
40
  },
40
41
  ],
@@ -45,6 +46,7 @@ describe("useToolInvocations", () => {
45
46
  const execute = vi.fn(async () => ({ forecast: "ok" }));
46
47
  const getTools = () => ({
47
48
  weatherSearch: {
49
+ parameters: { type: "object", properties: {} },
48
50
  execute,
49
51
  } satisfies Tool,
50
52
  });
@@ -137,6 +139,7 @@ describe("useToolInvocations", () => {
137
139
  );
138
140
  const getTools = () => ({
139
141
  weatherSearch: {
142
+ parameters: { type: "object", properties: {} },
140
143
  execute,
141
144
  } satisfies Tool,
142
145
  });