@assistant-ui/react-ag-ui 0.0.29 → 0.0.30

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 (33) hide show
  1. package/README.md +41 -0
  2. package/dist/index.d.ts +2 -1
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/runtime/AgUiThreadRuntimeCore.d.ts +11 -0
  5. package/dist/runtime/AgUiThreadRuntimeCore.d.ts.map +1 -1
  6. package/dist/runtime/AgUiThreadRuntimeCore.js +185 -12
  7. package/dist/runtime/AgUiThreadRuntimeCore.js.map +1 -1
  8. package/dist/runtime/adapter/run-aggregator.d.ts +10 -1
  9. package/dist/runtime/adapter/run-aggregator.d.ts.map +1 -1
  10. package/dist/runtime/adapter/run-aggregator.js +52 -6
  11. package/dist/runtime/adapter/run-aggregator.js.map +1 -1
  12. package/dist/runtime/adapter/subscriber.d.ts +5 -0
  13. package/dist/runtime/adapter/subscriber.d.ts.map +1 -1
  14. package/dist/runtime/adapter/subscriber.js +55 -36
  15. package/dist/runtime/adapter/subscriber.js.map +1 -1
  16. package/dist/runtime/event-parser.d.ts +5 -1
  17. package/dist/runtime/event-parser.d.ts.map +1 -1
  18. package/dist/runtime/event-parser.js +48 -2
  19. package/dist/runtime/event-parser.js.map +1 -1
  20. package/dist/runtime/types.d.ts +22 -0
  21. package/dist/runtime/types.d.ts.map +1 -1
  22. package/dist/useAgUiRuntime.d.ts +6 -2
  23. package/dist/useAgUiRuntime.d.ts.map +1 -1
  24. package/dist/useAgUiRuntime.js +7 -1
  25. package/dist/useAgUiRuntime.js.map +1 -1
  26. package/package.json +4 -5
  27. package/src/index.ts +5 -0
  28. package/src/runtime/AgUiThreadRuntimeCore.ts +250 -11
  29. package/src/runtime/adapter/run-aggregator.ts +67 -9
  30. package/src/runtime/adapter/subscriber.ts +53 -43
  31. package/src/runtime/event-parser.ts +64 -3
  32. package/src/runtime/types.ts +31 -1
  33. package/src/useAgUiRuntime.ts +23 -3
package/README.md ADDED
@@ -0,0 +1,41 @@
1
+ # `@assistant-ui/react-ag-ui`
2
+
3
+ [AG-UI protocol](https://github.com/ag-ui-protocol/ag-ui) integration for `@assistant-ui/react`. Wraps an `@ag-ui/client` agent in an assistant-ui runtime so any AG-UI-compatible backend (CopilotKit, custom Python/Go/TS agents) can drive the standard assistant-ui components.
4
+
5
+ ## Installation
6
+
7
+ ```bash
8
+ npm install @assistant-ui/react @assistant-ui/react-ag-ui @ag-ui/client
9
+ ```
10
+
11
+ ## Usage
12
+
13
+ ```tsx
14
+ "use client";
15
+
16
+ import { useMemo } from "react";
17
+ import { AssistantRuntimeProvider } from "@assistant-ui/react";
18
+ import { HttpAgent } from "@ag-ui/client";
19
+ import { useAgUiRuntime } from "@assistant-ui/react-ag-ui";
20
+
21
+ export function Provider({ children }: { children: React.ReactNode }) {
22
+ const agent = useMemo(
23
+ () => new HttpAgent({ url: process.env.NEXT_PUBLIC_AGUI_AGENT_URL! }),
24
+ [],
25
+ );
26
+ const runtime = useAgUiRuntime({ agent });
27
+
28
+ return (
29
+ <AssistantRuntimeProvider runtime={runtime}>
30
+ {children}
31
+ </AssistantRuntimeProvider>
32
+ );
33
+ }
34
+ ```
35
+
36
+ ## See also
37
+
38
+ - `@assistant-ui/react-a2a` for the A2A v1.0 protocol.
39
+ - `@assistant-ui/react-langgraph` for LangGraph SDK agents.
40
+
41
+ Full API reference, multi-thread setup, and interrupt handling at [assistant-ui.com/docs/runtimes/ag-ui](https://www.assistant-ui.com/docs/runtimes/ag-ui). See [`examples/with-ag-ui`](https://github.com/assistant-ui/assistant-ui/tree/main/examples/with-ag-ui) for a complete app.
package/dist/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
1
  export { useAgUiRuntime } from "./useAgUiRuntime.js";
2
- export type { UseAgUiRuntimeOptions, UseAgUiRuntimeAdapters, UseAgUiThreadListAdapter, } from "./runtime/types.js";
2
+ export type { AgUiAssistantRuntime } from "./useAgUiRuntime.js";
3
+ export type { AgUiInterrupt, AgUiInterruptReason, AgUiResumeEntry, AgUiRunFinishedOutcome, UseAgUiRuntimeOptions, UseAgUiRuntimeAdapters, UseAgUiThreadListAdapter, } from "./runtime/types.js";
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,4BAAyB;AAClD,YAAY,EACV,qBAAqB,EACrB,sBAAsB,EACtB,wBAAwB,GACzB,2BAAwB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,4BAAyB;AAClD,YAAY,EAAE,oBAAoB,EAAE,4BAAyB;AAC7D,YAAY,EACV,aAAa,EACb,mBAAmB,EACnB,eAAe,EACf,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,wBAAwB,GACzB,2BAAwB"}
@@ -1,6 +1,7 @@
1
1
  import type { AddToolResultOptions, AppendMessage, AssistantRuntime, ThreadHistoryAdapter, ThreadMessage } from "@assistant-ui/core";
2
2
  import type { HttpAgent } from "@ag-ui/client";
3
3
  import type { Logger } from "./logger.js";
4
+ import type { AgUiInterrupt, AgUiResumeEntry } from "./types.js";
4
5
  import type { ReadonlyJSONValue } from "assistant-stream/utils";
5
6
  type RunConfig = NonNullable<AppendMessage["runConfig"]>;
6
7
  type ResumeRunConfig = {
@@ -53,15 +54,24 @@ export declare class AgUiThreadRuntimeCore {
53
54
  }): Promise<void>;
54
55
  cancel(): Promise<void>;
55
56
  resume(config: ResumeRunConfig): Promise<void>;
57
+ private assertNoPendingInterrupts;
58
+ getPendingInterrupts(): {
59
+ messageId: string;
60
+ interrupts: readonly AgUiInterrupt[];
61
+ } | null;
62
+ submitInterruptResponses(responses: readonly AgUiResumeEntry[]): Promise<void>;
63
+ private clearPendingInterrupts;
56
64
  findMessageIdForToolCall(toolCallId: string): string | undefined;
57
65
  addToolResult(options: AddToolResultOptions): void;
58
66
  applyExternalMessages(messages: readonly ThreadMessage[]): void;
59
67
  loadExternalState(state: ReadonlyJSONValue): void;
60
68
  private startRun;
61
69
  private buildRunInput;
70
+ private installResumeShim;
62
71
  private setRunning;
63
72
  private finishRun;
64
73
  private insertAssistantPlaceholder;
74
+ private reassignAssistantId;
65
75
  private updateAssistantMessage;
66
76
  private mergeAssistantMetadata;
67
77
  private handleEvent;
@@ -69,6 +79,7 @@ export declare class AgUiThreadRuntimeCore {
69
79
  private toThreadMessage;
70
80
  private resetHead;
71
81
  private isTerminalStatus;
82
+ private isPersistableStatus;
72
83
  private recordHistoryEntry;
73
84
  private markPendingAssistantHistory;
74
85
  private persistAssistantHistory;
@@ -1 +1 @@
1
- {"version":3,"file":"AgUiThreadRuntimeCore.d.ts","sourceRoot":"","sources":["../../src/runtime/AgUiThreadRuntimeCore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AgUiThreadRuntimeCore.d.ts","sourceRoot":"","sources":["../../src/runtime/AgUiThreadRuntimeCore.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,9 @@
1
1
  "use client";
2
- import { generateId, fromThreadMessageLike } from "@assistant-ui/core/internal";
3
- import { RunAggregator } from "./adapter/run-aggregator.js";
2
+ import { generateId, generateOptimisticId, isOptimisticId, fromThreadMessageLike, } from "@assistant-ui/core/internal";
3
+ import { AG_UI_METADATA_NAMESPACE, RunAggregator, } from "./adapter/run-aggregator.js";
4
4
  import { fromAgUiMessages, toAgUiMessages, toAgUiTools, } from "./adapter/conversions.js";
5
5
  import { createAgUiSubscriber } from "./adapter/subscriber.js";
6
+ const symbolResumeShim = Symbol("agui-resume-shim");
6
7
  const FALLBACK_USER_STATUS = { type: "complete", reason: "unknown" };
7
8
  export class AgUiThreadRuntimeCore {
8
9
  agent;
@@ -31,6 +32,7 @@ export class AgUiThreadRuntimeCore {
31
32
  this.onCancel = options.onCancel;
32
33
  this.history = options.history;
33
34
  this.notifyUpdate = options.notifyUpdate;
35
+ this.installResumeShim();
34
36
  }
35
37
  updateOptions(options) {
36
38
  this.agent = options.agent;
@@ -39,6 +41,7 @@ export class AgUiThreadRuntimeCore {
39
41
  this.onError = options.onError;
40
42
  this.onCancel = options.onCancel;
41
43
  this.history = options.history;
44
+ this.installResumeShim();
42
45
  }
43
46
  attachRuntime(runtime) {
44
47
  this.runtime = runtime;
@@ -87,6 +90,8 @@ export class AgUiThreadRuntimeCore {
87
90
  }
88
91
  async append(message) {
89
92
  const startRun = message.startRun ?? message.role === "user";
93
+ if (startRun)
94
+ this.assertNoPendingInterrupts();
90
95
  if (message.sourceId) {
91
96
  this.messages = this.messages.filter((entry) => entry.id !== message.sourceId);
92
97
  }
@@ -103,6 +108,7 @@ export class AgUiThreadRuntimeCore {
103
108
  await this.append(message);
104
109
  }
105
110
  async reload(parentId, config = {}) {
111
+ this.assertNoPendingInterrupts();
106
112
  this.resetHead(parentId);
107
113
  this.notifyUpdate();
108
114
  await this.startRun(parentId, config.runConfig);
@@ -113,11 +119,105 @@ export class AgUiThreadRuntimeCore {
113
119
  this.abortController.abort();
114
120
  }
115
121
  async resume(config) {
122
+ this.assertNoPendingInterrupts();
116
123
  if (config.stream) {
117
124
  this.logger.debug?.("[agui] resume stream is not supported, falling back to regular run");
118
125
  }
119
126
  await this.startRun(config.parentId, config.runConfig ?? this.lastRunConfig);
120
127
  }
128
+ assertNoPendingInterrupts() {
129
+ if (!this.getPendingInterrupts())
130
+ return;
131
+ throw new Error("[agui] cannot start a new run while interrupts are pending; resolve them with submitInterruptResponses()");
132
+ }
133
+ getPendingInterrupts() {
134
+ const assistant = this.messages.findLast((m) => m.role === "assistant");
135
+ if (!assistant ||
136
+ assistant.status?.type !== "requires-action" ||
137
+ assistant.status.reason !== "interrupt") {
138
+ return null;
139
+ }
140
+ const stored = assistant.metadata.custom[AG_UI_METADATA_NAMESPACE]?.interrupts;
141
+ if (!stored?.length)
142
+ return null;
143
+ return { messageId: assistant.id, interrupts: stored };
144
+ }
145
+ async submitInterruptResponses(responses) {
146
+ const pending = this.getPendingInterrupts();
147
+ if (!pending) {
148
+ throw new Error("[agui] submitInterruptResponses: no pending interrupts on this thread");
149
+ }
150
+ const responsesById = new Map();
151
+ for (const entry of responses) {
152
+ if (!entry || typeof entry.interruptId !== "string") {
153
+ throw new Error("[agui] submitInterruptResponses: every entry must have an interruptId");
154
+ }
155
+ if (entry.status !== "resolved" && entry.status !== "cancelled") {
156
+ throw new Error(`[agui] submitInterruptResponses: invalid status "${entry.status}" for interrupt ${entry.interruptId}`);
157
+ }
158
+ if (responsesById.has(entry.interruptId)) {
159
+ throw new Error(`[agui] submitInterruptResponses: duplicate response for interrupt ${entry.interruptId}`);
160
+ }
161
+ responsesById.set(entry.interruptId, entry);
162
+ }
163
+ const openIds = pending.interrupts.map((i) => i.id);
164
+ const missing = openIds.filter((id) => !responsesById.has(id));
165
+ if (missing.length > 0) {
166
+ throw new Error(`[agui] submitInterruptResponses: missing responses for open interrupts: ${missing.join(", ")}`);
167
+ }
168
+ const known = new Set(openIds);
169
+ const unknownIds = [...responsesById.keys()].filter((id) => !known.has(id));
170
+ if (unknownIds.length > 0) {
171
+ throw new Error(`[agui] submitInterruptResponses: unknown interrupt ids: ${unknownIds.join(", ")}`);
172
+ }
173
+ const now = Date.now();
174
+ for (const interrupt of pending.interrupts) {
175
+ if (!interrupt.expiresAt)
176
+ continue;
177
+ const expiry = new Date(interrupt.expiresAt).getTime();
178
+ if (Number.isNaN(expiry)) {
179
+ throw new Error(`[agui] submitInterruptResponses: interrupt ${interrupt.id} has malformed expiresAt "${interrupt.expiresAt}"`);
180
+ }
181
+ if (expiry <= now) {
182
+ throw new Error(`[agui] submitInterruptResponses: interrupt ${interrupt.id} expired at ${interrupt.expiresAt}`);
183
+ }
184
+ }
185
+ const resume = openIds.map((id) => responsesById.get(id));
186
+ if (this.isRunningFlag) {
187
+ throw new Error("[agui] submitInterruptResponses: a run is already in progress");
188
+ }
189
+ this.clearPendingInterrupts(pending.messageId);
190
+ await this.startRun(pending.messageId, this.lastRunConfig, resume);
191
+ }
192
+ clearPendingInterrupts(messageId) {
193
+ let touched = false;
194
+ this.messages = this.messages.map((message) => {
195
+ if (message.id !== messageId || message.role !== "assistant")
196
+ return message;
197
+ const assistant = message;
198
+ if (assistant.status?.type !== "requires-action" ||
199
+ assistant.status.reason !== "interrupt") {
200
+ return assistant;
201
+ }
202
+ touched = true;
203
+ const aguiMeta = assistant.metadata.custom[AG_UI_METADATA_NAMESPACE];
204
+ const { interrupts: _drop, ...restAgui } = aguiMeta ?? {};
205
+ const newCustom = { ...assistant.metadata.custom };
206
+ if (Object.keys(restAgui).length > 0) {
207
+ newCustom[AG_UI_METADATA_NAMESPACE] = restAgui;
208
+ }
209
+ else {
210
+ delete newCustom[AG_UI_METADATA_NAMESPACE];
211
+ }
212
+ return {
213
+ ...assistant,
214
+ status: { type: "complete", reason: "unknown" },
215
+ metadata: { ...assistant.metadata, custom: newCustom },
216
+ };
217
+ });
218
+ if (touched)
219
+ this.notifyUpdate();
220
+ }
121
221
  findMessageIdForToolCall(toolCallId) {
122
222
  let fallbackMessageId;
123
223
  for (let index = this.messages.length - 1; index >= 0; index--) {
@@ -198,14 +298,14 @@ export class AgUiThreadRuntimeCore {
198
298
  this.stateSnapshot = state;
199
299
  this.notifyUpdate();
200
300
  }
201
- async startRun(parentId, runConfig) {
301
+ async startRun(parentId, runConfig, resume) {
202
302
  const normalizedRunConfig = runConfig ?? {};
203
303
  this.lastRunConfig = normalizedRunConfig;
204
304
  this.resetHead(parentId);
205
305
  const historicalMessages = [...this.messages];
206
306
  const runId = generateId();
207
307
  this.pendingError = null;
208
- const input = this.buildRunInput(runId, normalizedRunConfig, historicalMessages);
308
+ const input = this.buildRunInput(runId, normalizedRunConfig, historicalMessages, resume);
209
309
  const assistantParentId = parentId ?? this.messages.at(-1)?.id ?? null;
210
310
  let assistantMessageId;
211
311
  const ensureAssistant = () => {
@@ -219,7 +319,19 @@ export class AgUiThreadRuntimeCore {
219
319
  const aggregator = new RunAggregator({
220
320
  showThinking: this.showThinking,
221
321
  logger: this.logger,
222
- emit: (update) => this.updateAssistantMessage(ensureAssistant(), update),
322
+ emit: (update) => {
323
+ const resolved = this.updateAssistantMessage(ensureAssistant(), update);
324
+ if (resolved !== assistantMessageId) {
325
+ assistantMessageId = resolved;
326
+ }
327
+ },
328
+ onServerMessageId: (serverId) => {
329
+ const placeholder = ensureAssistant();
330
+ if (placeholder === serverId)
331
+ return;
332
+ this.reassignAssistantId(placeholder, serverId);
333
+ assistantMessageId = serverId;
334
+ },
223
335
  });
224
336
  const dispatch = (event) => this.handleEvent(aggregator, event);
225
337
  const abortController = new AbortController();
@@ -233,6 +345,7 @@ export class AgUiThreadRuntimeCore {
233
345
  const subscriber = createAgUiSubscriber({
234
346
  dispatch,
235
347
  runId,
348
+ logger: this.logger,
236
349
  onRunFailed: (error) => {
237
350
  this.pendingError = error;
238
351
  this.onError?.(error);
@@ -244,6 +357,7 @@ export class AgUiThreadRuntimeCore {
244
357
  try {
245
358
  this.agent.messages = input.messages;
246
359
  this.agent.threadId = input.threadId;
360
+ this.agent.state = input.state ?? null;
247
361
  }
248
362
  catch {
249
363
  // ignore
@@ -269,7 +383,7 @@ export class AgUiThreadRuntimeCore {
269
383
  throw err;
270
384
  }
271
385
  }
272
- buildRunInput(runId, runConfig, historyMessages) {
386
+ buildRunInput(runId, runConfig, historyMessages, resume) {
273
387
  const threadId = this.agent.threadId || "main";
274
388
  const messages = toAgUiMessages(historyMessages ?? this.messages);
275
389
  const context = this.runtime?.thread.getModelContext();
@@ -287,6 +401,26 @@ export class AgUiThreadRuntimeCore {
287
401
  ...(context?.config ?? {}),
288
402
  ...(runConfig?.custom ? { runConfig: runConfig.custom } : {}),
289
403
  },
404
+ ...(resume !== undefined ? { resume } : {}),
405
+ };
406
+ }
407
+ installResumeShim() {
408
+ const agent = this.agent;
409
+ if (agent[symbolResumeShim])
410
+ return;
411
+ agent[symbolResumeShim] = true;
412
+ const onInstance = Object.hasOwn(agent, "prepareRunAgentInput");
413
+ const original = onInstance
414
+ ? agent.prepareRunAgentInput
415
+ : Object.getPrototypeOf(agent)?.prepareRunAgentInput;
416
+ if (typeof original !== "function")
417
+ return;
418
+ agent.prepareRunAgentInput = function (params) {
419
+ const input = original.call(this, params);
420
+ if (params?.resume !== undefined && input && typeof input === "object") {
421
+ return { ...input, resume: params.resume };
422
+ }
423
+ return input;
290
424
  };
291
425
  }
292
426
  setRunning(running) {
@@ -300,7 +434,7 @@ export class AgUiThreadRuntimeCore {
300
434
  this.setRunning(false);
301
435
  }
302
436
  insertAssistantPlaceholder() {
303
- const id = generateId();
437
+ const id = generateOptimisticId();
304
438
  const assistant = {
305
439
  id,
306
440
  role: "assistant",
@@ -319,6 +453,30 @@ export class AgUiThreadRuntimeCore {
319
453
  this.notifyUpdate();
320
454
  return id;
321
455
  }
456
+ reassignAssistantId(oldId, newId) {
457
+ if (oldId === newId)
458
+ return;
459
+ const collidesWithExisting = this.messages.some((m) => m.id === newId);
460
+ if (collidesWithExisting) {
461
+ this.logger.debug?.("[agui] reassignAssistantId: server id already present in messages, dropping placeholder", { oldId, newId });
462
+ this.messages = this.messages.filter((m) => m.id !== oldId);
463
+ }
464
+ else {
465
+ this.messages = this.messages.map((m) => m.id === oldId ? { ...m, id: newId } : m);
466
+ }
467
+ const pendingParent = this.assistantHistoryParents.get(oldId);
468
+ if (pendingParent !== undefined) {
469
+ this.assistantHistoryParents.delete(oldId);
470
+ if (!this.assistantHistoryParents.has(newId)) {
471
+ this.assistantHistoryParents.set(newId, pendingParent);
472
+ }
473
+ }
474
+ if (this.recordedHistoryIds.has(oldId)) {
475
+ this.recordedHistoryIds.delete(oldId);
476
+ this.recordedHistoryIds.add(newId);
477
+ }
478
+ this.notifyUpdate();
479
+ }
322
480
  updateAssistantMessage(messageId, update) {
323
481
  let touched = false;
324
482
  let latestStatus;
@@ -339,12 +497,22 @@ export class AgUiThreadRuntimeCore {
339
497
  metadata,
340
498
  };
341
499
  });
342
- if (touched) {
500
+ if (!touched)
501
+ return messageId;
502
+ let resolvedMessageId = messageId;
503
+ const isSettled = latestStatus !== undefined && latestStatus.type !== "running";
504
+ if (isSettled && isOptimisticId(messageId)) {
505
+ const stableId = generateId();
506
+ this.reassignAssistantId(messageId, stableId);
507
+ resolvedMessageId = stableId;
508
+ }
509
+ else {
343
510
  this.notifyUpdate();
344
- if (this.isTerminalStatus(latestStatus)) {
345
- this.persistAssistantHistory(messageId);
346
- }
347
511
  }
512
+ if (this.isPersistableStatus(latestStatus)) {
513
+ this.persistAssistantHistory(resolvedMessageId);
514
+ }
515
+ return resolvedMessageId;
348
516
  }
349
517
  mergeAssistantMetadata(current, incoming) {
350
518
  const annotations = incoming.unstable_annotations
@@ -423,6 +591,11 @@ export class AgUiThreadRuntimeCore {
423
591
  isTerminalStatus(status) {
424
592
  return status?.type === "complete" || status?.type === "incomplete";
425
593
  }
594
+ isPersistableStatus(status) {
595
+ if (this.isTerminalStatus(status))
596
+ return true;
597
+ return status?.type === "requires-action" && status.reason === "interrupt";
598
+ }
426
599
  recordHistoryEntry(parentId, message) {
427
600
  this.appendHistoryItem(parentId, message);
428
601
  }
@@ -440,7 +613,7 @@ export class AgUiThreadRuntimeCore {
440
613
  const message = this.messages.find((m) => m.id === messageId);
441
614
  if (!message || message.role !== "assistant")
442
615
  return;
443
- if (!this.isTerminalStatus(message.status))
616
+ if (!this.isPersistableStatus(message.status))
444
617
  return;
445
618
  this.assistantHistoryParents.delete(messageId);
446
619
  this.appendHistoryItem(parentId, message);
@@ -1 +1 @@
1
- {"version":3,"file":"AgUiThreadRuntimeCore.js","sourceRoot":"","sources":["../../src/runtime/AgUiThreadRuntimeCore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AgUiThreadRuntimeCore.js","sourceRoot":"","sources":["../../src/runtime/AgUiThreadRuntimeCore.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,16 @@
1
1
  import type { ChatModelRunResult } from "@assistant-ui/core";
2
- import type { AgUiEvent } from "../types.js";
2
+ import type { AgUiEvent, AgUiInterrupt } from "../types.js";
3
3
  import type { Logger } from "../logger.js";
4
+ export declare const AG_UI_METADATA_NAMESPACE = "agui";
5
+ export type AgUiCustomMetadata = {
6
+ interrupts?: AgUiInterrupt[];
7
+ };
4
8
  type Emit = (update: ChatModelRunResult) => void;
5
9
  export type RunAggregatorOptions = {
6
10
  showThinking: boolean;
7
11
  logger: Logger;
8
12
  emit: Emit;
13
+ onServerMessageId?: (messageId: string) => void;
9
14
  };
10
15
  /**
11
16
  * Collects AG-UI events into assistant-ui run snapshots that can be yielded from a ChatModelAdapter.
@@ -17,7 +22,9 @@ export declare class RunAggregator {
17
22
  private readonly emitUpdate;
18
23
  private readonly showThinking;
19
24
  private readonly logger;
25
+ private readonly onServerMessageId;
20
26
  private status;
27
+ private interrupts;
21
28
  private readonly textParts;
22
29
  private activeTextMessageId;
23
30
  private reasoningBuffer;
@@ -26,8 +33,10 @@ export declare class RunAggregator {
26
33
  private readonly partOrder;
27
34
  private hasReasoningPart;
28
35
  private textPartCounter;
36
+ private serverMessageIdReported;
29
37
  constructor(options: RunAggregatorOptions);
30
38
  handle(event: AgUiEvent): void;
39
+ private reportServerMessageId;
31
40
  private clearTextParts;
32
41
  private generateTextKey;
33
42
  private startTextMessage;
@@ -1 +1 @@
1
- {"version":3,"file":"run-aggregator.d.ts","sourceRoot":"","sources":["../../../src/runtime/adapter/run-aggregator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,kBAAkB,EAGnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,SAAS,EAAE,oBAAiB;AAC1C,OAAO,KAAK,EAAE,MAAM,EAAE,qBAAkB;AAExC,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAAC;AAYjD,MAAM,MAAM,oBAAoB,GAAG;IACjC,YAAY,EAAE,OAAO,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,IAAI,CAAC;CACZ,CAAC;AAEF;;;;;GAKG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAO;IAClC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAU;IACvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAEhC,OAAO,CAAC,MAAM,CAA2C;IACzD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAGtB;IACJ,OAAO,CAAC,mBAAmB,CAAqB;IAChD,OAAO,CAAC,eAAe,CAAM;IAC7B,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoC;IAC9D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAIjB;IACT,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,eAAe,CAAK;gBAEhB,OAAO,EAAE,oBAAoB;IAMzC,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAwH9B,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,eAAe;IAKvB,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,oBAAoB;IAiB5B,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,UAAU;IAQlB,OAAO,CAAC,aAAa;IA2BrB,OAAO,CAAC,cAAc;IAgBtB,OAAO,CAAC,cAAc;IAyBtB,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,IAAI;IA+CZ,OAAO,CAAC,oBAAoB;IAO5B,OAAO,CAAC,sBAAsB;IAO9B,OAAO,CAAC,kBAAkB;IAK1B,OAAO,CAAC,mBAAmB;CAW5B"}
1
+ {"version":3,"file":"run-aggregator.d.ts","sourceRoot":"","sources":["../../../src/runtime/adapter/run-aggregator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,kBAAkB,EAGnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,oBAAiB;AACzD,OAAO,KAAK,EAAE,MAAM,EAAE,qBAAkB;AAExC,eAAO,MAAM,wBAAwB,SAAS,CAAC;AAE/C,MAAM,MAAM,kBAAkB,GAAG;IAC/B,UAAU,CAAC,EAAE,aAAa,EAAE,CAAC;CAC9B,CAAC;AAEF,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAAC;AAajD,MAAM,MAAM,oBAAoB,GAAG;IACjC,YAAY,EAAE,OAAO,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,IAAI,CAAC;IACX,iBAAiB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;CACjD,CAAC;AAEF;;;;;GAKG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAO;IAClC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAU;IACvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA4C;IAE9E,OAAO,CAAC,MAAM,CAA2C;IACzD,OAAO,CAAC,UAAU,CAA8B;IAChD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAGtB;IACJ,OAAO,CAAC,mBAAmB,CAAqB;IAChD,OAAO,CAAC,eAAe,CAAM;IAC7B,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoC;IAC9D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAIjB;IACT,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,uBAAuB,CAAS;gBAE5B,OAAO,EAAE,oBAAoB;IAOzC,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IA0I9B,OAAO,CAAC,qBAAqB;IAM7B,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,eAAe;IAKvB,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,oBAAoB;IAiB5B,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,UAAU;IAQlB,OAAO,CAAC,aAAa;IA2BrB,OAAO,CAAC,cAAc;IAgBtB,OAAO,CAAC,cAAc;IAiCtB,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,IAAI;IA6DZ,OAAO,CAAC,oBAAoB;IAO5B,OAAO,CAAC,sBAAsB;IAO9B,OAAO,CAAC,kBAAkB;IAK1B,OAAO,CAAC,mBAAmB;CAW5B"}