@nifrajs/ag-ui 4.0.2 → 5.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +65 -19
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
- package/src/index.ts +55 -20
package/README.md
CHANGED
|
@@ -118,6 +118,11 @@ terminal events - the run is never re-executed. A disconnected run keeps going a
|
|
|
118
118
|
real terminal events for that reconnect. Without an `evidenceLog` nothing can rejoin a dropped
|
|
119
119
|
stream, so the disconnect aborts `ports.signal` and the turn suspends as `cancelled`.
|
|
120
120
|
|
|
121
|
+
Exceeding `maxOutputBytes` detaches the viewer in the same way, including an oversized initial state
|
|
122
|
+
snapshot. The response closes immediately, with an `output_limit` error frame when the remaining
|
|
123
|
+
budget permits it. Without a log the turn is aborted; with a log it continues recording its real
|
|
124
|
+
terminal result for reconnect rather than storing the viewer's output-limit error as the run result.
|
|
125
|
+
|
|
121
126
|
```ts
|
|
122
127
|
import { createMemoryAgentEvidenceLog } from "@nifrajs/agent/events"
|
|
123
128
|
|
package/dist/index.d.ts
CHANGED
|
@@ -46,7 +46,8 @@
|
|
|
46
46
|
* `status: "cancelled"` entry without an explicit approval resumes as a denial. The runtime
|
|
47
47
|
* keeps state token-only, so a suspended tool's input must be replayed in
|
|
48
48
|
* `continuation.input`. A resume that fails validation is ignored and the POST starts a
|
|
49
|
-
* fresh run.
|
|
49
|
+
* fresh run. Return `resumeApproval: "port"` from `ports` when the client must not approve
|
|
50
|
+
* its own tool calls.
|
|
50
51
|
* - Agent input is `forwardedProps.input` when present, otherwise the content of the last
|
|
51
52
|
* `role: "user"` message.
|
|
52
53
|
* - With an `evidenceLog` configured, evidence-derived frames carry SSE `id: <seq>` and a dropped
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4DG;AAEH,OAAO,EACL,KAAK,eAAe,EAIpB,KAAK,UAAU,EAEf,KAAK,gBAAgB,EAStB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,KAAK,gBAAgB,EAItB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAEL,KAAK,cAAc,EAKpB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAU5D,8DAA8D;AAC9D,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAA;CACtB;AAED,gEAAgE;AAChE,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,gBAAgB,KAAK,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAA;CAC5F;AAED,iFAAiF;AACjF,MAAM,WAAW,cAAc;IAC7B,gFAAgF;IAChF,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB;;;OAGG;IACH,QAAQ,CAAC,WAAW,EAAE,gBAAgB,CAAA;CACvC;AAED,MAAM,WAAW,gBAAgB,CAC/B,WAAW,SAAS,gBAAgB,EACpC,YAAY,SAAS,gBAAgB;IAErC,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;IAC1D,sCAAsC;IACtC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,+CAA+C;IAC/C,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,6DAA6D;IAC7D,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;IAC9B,2EAA2E;IAC3E,QAAQ,CAAC,cAAc,CAAC,EAAE,cAAc,CAAA;IACxC,4EAA4E;IAC5E,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAA;IAChC;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,GAAG,EAAE,cAAc,KAAK,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IAC9F;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,gBAAgB,CAAA;IACvC;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,EAAE,gBAAgB,KAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAC1E;;;;;OAKG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAA;CACxC;AAED,mEAAmE;AACnE,wBAAgB,SAAS,CACvB,WAAW,SAAS,gBAAgB,EACpC,YAAY,SAAS,gBAAgB,EACrC,GAAG,EAAE,gBAAgB,EAAE,OAAO,EAAE,gBAAgB,CAAC,WAAW,EAAE,YAAY,CAAC,GAAG,IAAI,CAkBnF;AAgUD;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;IACjC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAA;CACpC"}
|
package/dist/index.js
CHANGED
|
@@ -46,7 +46,8 @@
|
|
|
46
46
|
* `status: "cancelled"` entry without an explicit approval resumes as a denial. The runtime
|
|
47
47
|
* keeps state token-only, so a suspended tool's input must be replayed in
|
|
48
48
|
* `continuation.input`. A resume that fails validation is ignored and the POST starts a
|
|
49
|
-
* fresh run.
|
|
49
|
+
* fresh run. Return `resumeApproval: "port"` from `ports` when the client must not approve
|
|
50
|
+
* its own tool calls.
|
|
50
51
|
* - Agent input is `forwardedProps.input` when present, otherwise the content of the last
|
|
51
52
|
* `role: "user"` message.
|
|
52
53
|
* - With an `evidenceLog` configured, evidence-derived frames carry SSE `id: <seq>` and a dropped
|
|
@@ -154,8 +155,27 @@ function sseResponse(identity, start, log, snapshotMessages, state, maxOutputByt
|
|
|
154
155
|
async start(controller) {
|
|
155
156
|
const deliver = sseSender(controller, maxOutputBytes);
|
|
156
157
|
const send = (event, id) => {
|
|
157
|
-
if (
|
|
158
|
+
if (detached)
|
|
159
|
+
return;
|
|
160
|
+
try {
|
|
158
161
|
deliver(event, id);
|
|
162
|
+
}
|
|
163
|
+
catch (error) {
|
|
164
|
+
if (!(error instanceof SseOutputLimitError))
|
|
165
|
+
throw error;
|
|
166
|
+
// The budget belongs to this viewer, not to the logged run's authoritative result.
|
|
167
|
+
detached = true;
|
|
168
|
+
disconnect?.abort();
|
|
169
|
+
if (log === undefined)
|
|
170
|
+
void stream.return?.();
|
|
171
|
+
try {
|
|
172
|
+
deliver({ type: "RUN_ERROR", message: "output_limit", timestamp: Date.now() });
|
|
173
|
+
}
|
|
174
|
+
catch {
|
|
175
|
+
// A fully exhausted budget cannot carry an error frame; closing still releases the view.
|
|
176
|
+
}
|
|
177
|
+
controller.close();
|
|
178
|
+
}
|
|
159
179
|
};
|
|
160
180
|
const projector = createDeltaProjector(send, identity.turnId);
|
|
161
181
|
const run = start(stream, projector.sink, disconnect?.signal);
|
|
@@ -164,30 +184,41 @@ function sseResponse(identity, start, log, snapshotMessages, state, maxOutputByt
|
|
|
164
184
|
run
|
|
165
185
|
.then(() => { }, () => { })
|
|
166
186
|
.finally(() => stream.complete());
|
|
167
|
-
send({ type: "RUN_STARTED", threadId: identity.threadId, runId: identity.runId });
|
|
168
|
-
send({ type: "CUSTOM", name: "nifra.turn", value: { turnId: identity.turnId } });
|
|
169
187
|
let announced = state.announced;
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
if (!announced) {
|
|
176
|
-
announced = true;
|
|
188
|
+
let unsubscribe = () => { };
|
|
189
|
+
try {
|
|
190
|
+
send({ type: "RUN_STARTED", threadId: identity.threadId, runId: identity.runId });
|
|
191
|
+
send({ type: "CUSTOM", name: "nifra.turn", value: { turnId: identity.turnId } });
|
|
192
|
+
if (announced)
|
|
177
193
|
send({
|
|
178
194
|
type: "STATE_SNAPSHOT",
|
|
179
195
|
snapshot: state.channel.snapshot(),
|
|
180
196
|
timestamp: Date.now(),
|
|
181
197
|
});
|
|
198
|
+
if (detached && log === undefined)
|
|
182
199
|
return;
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
200
|
+
// A first patch on an unseeded document announces the whole document instead of a delta
|
|
201
|
+
// against a base the client never saw.
|
|
202
|
+
unsubscribe = state.channel.subscribe((ops) => {
|
|
203
|
+
if (!announced) {
|
|
204
|
+
announced = true;
|
|
205
|
+
send({
|
|
206
|
+
type: "STATE_SNAPSHOT",
|
|
207
|
+
snapshot: state.channel.snapshot(),
|
|
208
|
+
timestamp: Date.now(),
|
|
209
|
+
});
|
|
210
|
+
return;
|
|
211
|
+
}
|
|
212
|
+
send({ type: "STATE_DELTA", delta: ops, timestamp: Date.now() });
|
|
213
|
+
});
|
|
187
214
|
for await (const evidence of stream) {
|
|
188
215
|
const openToolCallId = projector.adopt(evidence);
|
|
189
216
|
sendEvidence(send, evidence, identity.turnId, withIds, openToolCallId);
|
|
217
|
+
if (detached && log === undefined)
|
|
218
|
+
return;
|
|
190
219
|
}
|
|
220
|
+
if (detached && log === undefined)
|
|
221
|
+
return;
|
|
191
222
|
const { streamedText, usage } = projector.finish();
|
|
192
223
|
const events = terminalEvents(identity, await run, snapshotMessages, usage);
|
|
193
224
|
// Store the terminal events before delivering them, so a client that misses them can
|
|
@@ -230,17 +261,24 @@ function sseResponse(identity, start, log, snapshotMessages, state, maxOutputByt
|
|
|
230
261
|
cancel() {
|
|
231
262
|
detached = true;
|
|
232
263
|
disconnect?.abort();
|
|
264
|
+
if (log === undefined)
|
|
265
|
+
void stream.return?.();
|
|
233
266
|
},
|
|
234
267
|
});
|
|
235
268
|
return sseHeaders(body);
|
|
236
269
|
}
|
|
237
270
|
function sseReplayResponse(identity, replay, maxOutputBytes) {
|
|
271
|
+
let detached = false;
|
|
238
272
|
const body = new ReadableStream({
|
|
239
273
|
async start(controller) {
|
|
240
|
-
const
|
|
241
|
-
send
|
|
242
|
-
|
|
274
|
+
const deliver = sseSender(controller, maxOutputBytes);
|
|
275
|
+
const send = (event, id) => {
|
|
276
|
+
if (!detached)
|
|
277
|
+
deliver(event, id);
|
|
278
|
+
};
|
|
243
279
|
try {
|
|
280
|
+
send({ type: "RUN_STARTED", threadId: identity.threadId, runId: identity.runId });
|
|
281
|
+
send({ type: "CUSTOM", name: "nifra.turn", value: { turnId: identity.turnId } });
|
|
244
282
|
for (const evidence of replay.evidence)
|
|
245
283
|
sendEvidence(send, evidence, identity.turnId, true);
|
|
246
284
|
if (replay.live !== undefined)
|
|
@@ -265,9 +303,17 @@ function sseReplayResponse(identity, replay, maxOutputBytes) {
|
|
|
265
303
|
}
|
|
266
304
|
}
|
|
267
305
|
finally {
|
|
268
|
-
|
|
306
|
+
if (!detached)
|
|
307
|
+
void replay.live?.return?.();
|
|
308
|
+
if (!detached)
|
|
309
|
+
controller.close();
|
|
269
310
|
}
|
|
270
311
|
},
|
|
312
|
+
cancel() {
|
|
313
|
+
detached = true;
|
|
314
|
+
// Only this view detaches; the logged run keeps recording for the next reconnect.
|
|
315
|
+
void replay.live?.return?.();
|
|
316
|
+
},
|
|
271
317
|
});
|
|
272
318
|
return sseHeaders(body);
|
|
273
319
|
}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nifrajs/ag-ui",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "5.0.0",
|
|
4
4
|
"description": "Mount a nifra agent as an AG-UI (Agent-User Interaction protocol) endpoint - one POST accepting RunAgentInput, a stream of AG-UI events out over SSE: run lifecycle, step and tool-call events from the runner's step evidence, text message events for the output, and a typed continuation for human-in-the-loop resume. A protocol bridge over @nifrajs/agent; the model, state store, and approval transport stay injected per request.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"bun",
|
|
@@ -36,8 +36,8 @@
|
|
|
36
36
|
"build": "tsc -p tsconfig.build.json && bun run ../../scripts/fix-dts.ts dist"
|
|
37
37
|
},
|
|
38
38
|
"peerDependencies": {
|
|
39
|
-
"@nifrajs/agent": "^
|
|
40
|
-
"@nifrajs/core": "^
|
|
39
|
+
"@nifrajs/agent": "^5.0.0",
|
|
40
|
+
"@nifrajs/core": "^5.0.0"
|
|
41
41
|
},
|
|
42
42
|
"peerDependenciesMeta": {
|
|
43
43
|
"@nifrajs/core": {
|
package/src/index.ts
CHANGED
|
@@ -46,7 +46,8 @@
|
|
|
46
46
|
* `status: "cancelled"` entry without an explicit approval resumes as a denial. The runtime
|
|
47
47
|
* keeps state token-only, so a suspended tool's input must be replayed in
|
|
48
48
|
* `continuation.input`. A resume that fails validation is ignored and the POST starts a
|
|
49
|
-
* fresh run.
|
|
49
|
+
* fresh run. Return `resumeApproval: "port"` from `ports` when the client must not approve
|
|
50
|
+
* its own tool calls.
|
|
50
51
|
* - Agent input is `forwardedProps.input` when present, otherwise the content of the last
|
|
51
52
|
* `role: "user"` message.
|
|
52
53
|
* - With an `evidenceLog` configured, evidence-derived frames carry SSE `id: <seq>` and a dropped
|
|
@@ -301,7 +302,22 @@ function sseResponse(
|
|
|
301
302
|
async start(controller) {
|
|
302
303
|
const deliver = sseSender(controller, maxOutputBytes)
|
|
303
304
|
const send: SseSend = (event, id) => {
|
|
304
|
-
if (
|
|
305
|
+
if (detached) return
|
|
306
|
+
try {
|
|
307
|
+
deliver(event, id)
|
|
308
|
+
} catch (error) {
|
|
309
|
+
if (!(error instanceof SseOutputLimitError)) throw error
|
|
310
|
+
// The budget belongs to this viewer, not to the logged run's authoritative result.
|
|
311
|
+
detached = true
|
|
312
|
+
disconnect?.abort()
|
|
313
|
+
if (log === undefined) void stream.return?.()
|
|
314
|
+
try {
|
|
315
|
+
deliver({ type: "RUN_ERROR", message: "output_limit", timestamp: Date.now() })
|
|
316
|
+
} catch {
|
|
317
|
+
// A fully exhausted budget cannot carry an error frame; closing still releases the view.
|
|
318
|
+
}
|
|
319
|
+
controller.close()
|
|
320
|
+
}
|
|
305
321
|
}
|
|
306
322
|
const projector = createDeltaProjector(send, identity.turnId)
|
|
307
323
|
const run = start(stream, projector.sink, disconnect?.signal)
|
|
@@ -313,30 +329,38 @@ function sseResponse(
|
|
|
313
329
|
() => {},
|
|
314
330
|
)
|
|
315
331
|
.finally(() => stream.complete())
|
|
316
|
-
send({ type: "RUN_STARTED", threadId: identity.threadId, runId: identity.runId })
|
|
317
|
-
send({ type: "CUSTOM", name: "nifra.turn", value: { turnId: identity.turnId } })
|
|
318
332
|
let announced = state.announced
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
if (!announced) {
|
|
325
|
-
announced = true
|
|
333
|
+
let unsubscribe = () => {}
|
|
334
|
+
try {
|
|
335
|
+
send({ type: "RUN_STARTED", threadId: identity.threadId, runId: identity.runId })
|
|
336
|
+
send({ type: "CUSTOM", name: "nifra.turn", value: { turnId: identity.turnId } })
|
|
337
|
+
if (announced)
|
|
326
338
|
send({
|
|
327
339
|
type: "STATE_SNAPSHOT",
|
|
328
340
|
snapshot: state.channel.snapshot(),
|
|
329
341
|
timestamp: Date.now(),
|
|
330
342
|
})
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
343
|
+
if (detached && log === undefined) return
|
|
344
|
+
// A first patch on an unseeded document announces the whole document instead of a delta
|
|
345
|
+
// against a base the client never saw.
|
|
346
|
+
unsubscribe = state.channel.subscribe((ops) => {
|
|
347
|
+
if (!announced) {
|
|
348
|
+
announced = true
|
|
349
|
+
send({
|
|
350
|
+
type: "STATE_SNAPSHOT",
|
|
351
|
+
snapshot: state.channel.snapshot(),
|
|
352
|
+
timestamp: Date.now(),
|
|
353
|
+
})
|
|
354
|
+
return
|
|
355
|
+
}
|
|
356
|
+
send({ type: "STATE_DELTA", delta: ops, timestamp: Date.now() })
|
|
357
|
+
})
|
|
336
358
|
for await (const evidence of stream) {
|
|
337
359
|
const openToolCallId = projector.adopt(evidence)
|
|
338
360
|
sendEvidence(send, evidence, identity.turnId, withIds, openToolCallId)
|
|
361
|
+
if (detached && log === undefined) return
|
|
339
362
|
}
|
|
363
|
+
if (detached && log === undefined) return
|
|
340
364
|
const { streamedText, usage } = projector.finish()
|
|
341
365
|
const events = terminalEvents(identity, await run, snapshotMessages, usage)
|
|
342
366
|
// Store the terminal events before delivering them, so a client that misses them can
|
|
@@ -374,6 +398,7 @@ function sseResponse(
|
|
|
374
398
|
cancel() {
|
|
375
399
|
detached = true
|
|
376
400
|
disconnect?.abort()
|
|
401
|
+
if (log === undefined) void stream.return?.()
|
|
377
402
|
},
|
|
378
403
|
})
|
|
379
404
|
return sseHeaders(body)
|
|
@@ -384,12 +409,16 @@ function sseReplayResponse(
|
|
|
384
409
|
replay: AgentEvidenceReplay,
|
|
385
410
|
maxOutputBytes: number,
|
|
386
411
|
): Response {
|
|
412
|
+
let detached = false
|
|
387
413
|
const body = new ReadableStream<Uint8Array>({
|
|
388
414
|
async start(controller) {
|
|
389
|
-
const
|
|
390
|
-
send
|
|
391
|
-
|
|
415
|
+
const deliver = sseSender(controller, maxOutputBytes)
|
|
416
|
+
const send: SseSend = (event, id) => {
|
|
417
|
+
if (!detached) deliver(event, id)
|
|
418
|
+
}
|
|
392
419
|
try {
|
|
420
|
+
send({ type: "RUN_STARTED", threadId: identity.threadId, runId: identity.runId })
|
|
421
|
+
send({ type: "CUSTOM", name: "nifra.turn", value: { turnId: identity.turnId } })
|
|
393
422
|
for (const evidence of replay.evidence) sendEvidence(send, evidence, identity.turnId, true)
|
|
394
423
|
if (replay.live !== undefined)
|
|
395
424
|
for await (const evidence of replay.live)
|
|
@@ -407,9 +436,15 @@ function sseReplayResponse(
|
|
|
407
436
|
// The output budget itself may be exhausted; the stream still closes below.
|
|
408
437
|
}
|
|
409
438
|
} finally {
|
|
410
|
-
|
|
439
|
+
if (!detached) void replay.live?.return?.()
|
|
440
|
+
if (!detached) controller.close()
|
|
411
441
|
}
|
|
412
442
|
},
|
|
443
|
+
cancel() {
|
|
444
|
+
detached = true
|
|
445
|
+
// Only this view detaches; the logged run keeps recording for the next reconnect.
|
|
446
|
+
void replay.live?.return?.()
|
|
447
|
+
},
|
|
413
448
|
})
|
|
414
449
|
return sseHeaders(body)
|
|
415
450
|
}
|