@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.
- package/README.md +41 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/runtime/AgUiThreadRuntimeCore.d.ts +11 -0
- package/dist/runtime/AgUiThreadRuntimeCore.d.ts.map +1 -1
- package/dist/runtime/AgUiThreadRuntimeCore.js +185 -12
- package/dist/runtime/AgUiThreadRuntimeCore.js.map +1 -1
- package/dist/runtime/adapter/run-aggregator.d.ts +10 -1
- package/dist/runtime/adapter/run-aggregator.d.ts.map +1 -1
- package/dist/runtime/adapter/run-aggregator.js +52 -6
- package/dist/runtime/adapter/run-aggregator.js.map +1 -1
- package/dist/runtime/adapter/subscriber.d.ts +5 -0
- package/dist/runtime/adapter/subscriber.d.ts.map +1 -1
- package/dist/runtime/adapter/subscriber.js +55 -36
- package/dist/runtime/adapter/subscriber.js.map +1 -1
- package/dist/runtime/event-parser.d.ts +5 -1
- package/dist/runtime/event-parser.d.ts.map +1 -1
- package/dist/runtime/event-parser.js +48 -2
- package/dist/runtime/event-parser.js.map +1 -1
- package/dist/runtime/types.d.ts +22 -0
- package/dist/runtime/types.d.ts.map +1 -1
- package/dist/useAgUiRuntime.d.ts +6 -2
- package/dist/useAgUiRuntime.d.ts.map +1 -1
- package/dist/useAgUiRuntime.js +7 -1
- package/dist/useAgUiRuntime.js.map +1 -1
- package/package.json +4 -5
- package/src/index.ts +5 -0
- package/src/runtime/AgUiThreadRuntimeCore.ts +250 -11
- package/src/runtime/adapter/run-aggregator.ts +67 -9
- package/src/runtime/adapter/subscriber.ts +53 -43
- package/src/runtime/event-parser.ts +64 -3
- package/src/runtime/types.ts +31 -1
- 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 {
|
|
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
|
package/dist/index.d.ts.map
CHANGED
|
@@ -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":"
|
|
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) =>
|
|
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 =
|
|
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.
|
|
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;
|
|
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"}
|