@trigger.dev/sdk 0.0.0-prerelease-20260305142821 → 0.0.0-prerelease-20260306162926
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/dist/commonjs/v3/ai.d.ts +101 -12
- package/dist/commonjs/v3/ai.js +76 -16
- package/dist/commonjs/v3/ai.js.map +1 -1
- package/dist/commonjs/v3/chat-react.d.ts +2 -1
- package/dist/commonjs/v3/chat-react.js.map +1 -1
- package/dist/commonjs/v3/chat.d.ts +37 -5
- package/dist/commonjs/v3/chat.js +38 -15
- package/dist/commonjs/v3/chat.js.map +1 -1
- package/dist/commonjs/v3/chat.test.js +4 -3
- package/dist/commonjs/v3/chat.test.js.map +1 -1
- package/dist/commonjs/v3/streams.js +3 -1
- package/dist/commonjs/v3/streams.js.map +1 -1
- package/dist/commonjs/version.js +1 -1
- package/dist/esm/v3/ai.d.ts +101 -12
- package/dist/esm/v3/ai.js +78 -18
- package/dist/esm/v3/ai.js.map +1 -1
- package/dist/esm/v3/chat-react.d.ts +2 -1
- package/dist/esm/v3/chat-react.js.map +1 -1
- package/dist/esm/v3/chat.d.ts +37 -5
- package/dist/esm/v3/chat.js +38 -15
- package/dist/esm/v3/chat.js.map +1 -1
- package/dist/esm/v3/chat.test.js +4 -3
- package/dist/esm/v3/chat.test.js.map +1 -1
- package/dist/esm/v3/streams.js +3 -1
- package/dist/esm/v3/streams.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/package.json +2 -2
package/dist/commonjs/v3/ai.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AnyTask, Task, type inferSchemaIn, type TaskIdentifier, type TaskOptions, type TaskSchema, type TaskWithSchema } from "@trigger.dev/core/v3";
|
|
1
|
+
import { AnyTask, Task, type inferSchemaIn, type inferSchemaOut, type TaskIdentifier, type TaskOptions, type TaskSchema, type TaskWithSchema } from "@trigger.dev/core/v3";
|
|
2
2
|
import type { ModelMessage, UIMessage } from "ai";
|
|
3
3
|
import { Tool, ToolCallOptions } from "ai";
|
|
4
4
|
import { CHAT_MESSAGES_STREAM_ID, CHAT_STOP_STREAM_ID } from "./chat-constants.js";
|
|
@@ -56,7 +56,7 @@ export { CHAT_MESSAGES_STREAM_ID, CHAT_STOP_STREAM_ID };
|
|
|
56
56
|
* The backend accumulates the full conversation history across turns, so the frontend
|
|
57
57
|
* only needs to send new messages after the first turn.
|
|
58
58
|
*/
|
|
59
|
-
export type ChatTaskPayload = {
|
|
59
|
+
export type ChatTaskPayload<TClientData = unknown> = {
|
|
60
60
|
/** Model-ready messages — pass directly to `streamText({ messages })`. */
|
|
61
61
|
messages: ModelMessage[];
|
|
62
62
|
/** The unique identifier for the chat session */
|
|
@@ -70,7 +70,7 @@ export type ChatTaskPayload = {
|
|
|
70
70
|
/** The ID of the message to regenerate (only for `"regenerate-message"`) */
|
|
71
71
|
messageId?: string;
|
|
72
72
|
/** Custom data from the frontend (passed via `metadata` on `sendMessage()` or the transport). */
|
|
73
|
-
clientData?:
|
|
73
|
+
clientData?: TClientData;
|
|
74
74
|
};
|
|
75
75
|
/**
|
|
76
76
|
* Abort signals provided to the `chatTask` run function.
|
|
@@ -87,7 +87,7 @@ export type ChatTaskSignals = {
|
|
|
87
87
|
* The full payload passed to a `chatTask` run function.
|
|
88
88
|
* Extends `ChatTaskPayload` (the wire payload) with abort signals.
|
|
89
89
|
*/
|
|
90
|
-
export type ChatTaskRunPayload = ChatTaskPayload & ChatTaskSignals;
|
|
90
|
+
export type ChatTaskRunPayload<TClientData = unknown> = ChatTaskPayload<TClientData> & ChatTaskSignals;
|
|
91
91
|
/**
|
|
92
92
|
* Options for `pipeChat`.
|
|
93
93
|
*/
|
|
@@ -170,18 +170,41 @@ declare function pipeChat(source: UIMessageStreamable | AsyncIterable<unknown> |
|
|
|
170
170
|
/**
|
|
171
171
|
* Event passed to the `onChatStart` callback.
|
|
172
172
|
*/
|
|
173
|
-
export type ChatStartEvent = {
|
|
173
|
+
export type ChatStartEvent<TClientData = unknown> = {
|
|
174
174
|
/** The unique identifier for the chat session. */
|
|
175
175
|
chatId: string;
|
|
176
176
|
/** The initial model-ready messages for this conversation. */
|
|
177
177
|
messages: ModelMessage[];
|
|
178
178
|
/** Custom data from the frontend (passed via `metadata` on `sendMessage()` or the transport). */
|
|
179
|
-
clientData:
|
|
179
|
+
clientData: TClientData;
|
|
180
|
+
/** The Trigger.dev run ID for this conversation. */
|
|
181
|
+
runId: string;
|
|
182
|
+
/** A scoped access token for this chat run. Persist this for frontend reconnection. */
|
|
183
|
+
chatAccessToken: string;
|
|
184
|
+
};
|
|
185
|
+
/**
|
|
186
|
+
* Event passed to the `onTurnStart` callback.
|
|
187
|
+
*/
|
|
188
|
+
export type TurnStartEvent<TClientData = unknown> = {
|
|
189
|
+
/** The unique identifier for the chat session. */
|
|
190
|
+
chatId: string;
|
|
191
|
+
/** The accumulated model-ready messages (all turns so far, including new user message). */
|
|
192
|
+
messages: ModelMessage[];
|
|
193
|
+
/** The accumulated UI messages (all turns so far, including new user message). */
|
|
194
|
+
uiMessages: UIMessage[];
|
|
195
|
+
/** The turn number (0-indexed). */
|
|
196
|
+
turn: number;
|
|
197
|
+
/** The Trigger.dev run ID for this conversation. */
|
|
198
|
+
runId: string;
|
|
199
|
+
/** A scoped access token for this chat run. */
|
|
200
|
+
chatAccessToken: string;
|
|
201
|
+
/** Custom data from the frontend. */
|
|
202
|
+
clientData?: TClientData;
|
|
180
203
|
};
|
|
181
204
|
/**
|
|
182
205
|
* Event passed to the `onTurnComplete` callback.
|
|
183
206
|
*/
|
|
184
|
-
export type TurnCompleteEvent = {
|
|
207
|
+
export type TurnCompleteEvent<TClientData = unknown> = {
|
|
185
208
|
/** The unique identifier for the chat session. */
|
|
186
209
|
chatId: string;
|
|
187
210
|
/** The full accumulated conversation in model format (all turns so far). */
|
|
@@ -205,8 +228,35 @@ export type TurnCompleteEvent = {
|
|
|
205
228
|
responseMessage: UIMessage | undefined;
|
|
206
229
|
/** The turn number (0-indexed). */
|
|
207
230
|
turn: number;
|
|
231
|
+
/** The Trigger.dev run ID for this conversation. */
|
|
232
|
+
runId: string;
|
|
233
|
+
/** A fresh scoped access token for this chat run (renewed each turn). Persist this for frontend reconnection. */
|
|
234
|
+
chatAccessToken: string;
|
|
235
|
+
/** The last event ID from the stream writer. Use this with `resume: true` to avoid replaying events after refresh. */
|
|
236
|
+
lastEventId?: string;
|
|
237
|
+
/** Custom data from the frontend. */
|
|
238
|
+
clientData?: TClientData;
|
|
208
239
|
};
|
|
209
|
-
export type ChatTaskOptions<TIdentifier extends string> = Omit<TaskOptions<TIdentifier, ChatTaskWirePayload, unknown>, "run"> & {
|
|
240
|
+
export type ChatTaskOptions<TIdentifier extends string, TClientDataSchema extends TaskSchema | undefined = undefined> = Omit<TaskOptions<TIdentifier, ChatTaskWirePayload, unknown>, "run"> & {
|
|
241
|
+
/**
|
|
242
|
+
* Schema for validating `clientData` from the frontend.
|
|
243
|
+
* Accepts Zod, ArkType, Valibot, or any supported schema library.
|
|
244
|
+
* When provided, `clientData` is parsed and typed in all hooks and `run`.
|
|
245
|
+
*
|
|
246
|
+
* @example
|
|
247
|
+
* ```ts
|
|
248
|
+
* import { z } from "zod";
|
|
249
|
+
*
|
|
250
|
+
* chat.task({
|
|
251
|
+
* id: "my-chat",
|
|
252
|
+
* clientDataSchema: z.object({ model: z.string().optional(), userId: z.string() }),
|
|
253
|
+
* run: async ({ messages, clientData, signal }) => {
|
|
254
|
+
* // clientData is typed as { model?: string; userId: string }
|
|
255
|
+
* },
|
|
256
|
+
* });
|
|
257
|
+
* ```
|
|
258
|
+
*/
|
|
259
|
+
clientDataSchema?: TClientDataSchema;
|
|
210
260
|
/**
|
|
211
261
|
* The run function for the chat task.
|
|
212
262
|
*
|
|
@@ -216,7 +266,7 @@ export type ChatTaskOptions<TIdentifier extends string> = Omit<TaskOptions<TIden
|
|
|
216
266
|
* **Auto-piping:** If this function returns a value with `.toUIMessageStream()`,
|
|
217
267
|
* the stream is automatically piped to the frontend.
|
|
218
268
|
*/
|
|
219
|
-
run: (payload: ChatTaskRunPayload) => Promise<unknown>;
|
|
269
|
+
run: (payload: ChatTaskRunPayload<inferSchemaOut<TClientDataSchema>>) => Promise<unknown>;
|
|
220
270
|
/**
|
|
221
271
|
* Called on the first turn (turn 0) of a new run, before the `run` function executes.
|
|
222
272
|
*
|
|
@@ -229,7 +279,22 @@ export type ChatTaskOptions<TIdentifier extends string> = Omit<TaskOptions<TIden
|
|
|
229
279
|
* }
|
|
230
280
|
* ```
|
|
231
281
|
*/
|
|
232
|
-
onChatStart?: (event: ChatStartEvent) => Promise<void> | void;
|
|
282
|
+
onChatStart?: (event: ChatStartEvent<inferSchemaOut<TClientDataSchema>>) => Promise<void> | void;
|
|
283
|
+
/**
|
|
284
|
+
* Called at the start of every turn, after message accumulation and `onChatStart` (turn 0),
|
|
285
|
+
* but before the `run` function executes.
|
|
286
|
+
*
|
|
287
|
+
* Use this to persist messages before streaming begins, so a mid-stream page refresh
|
|
288
|
+
* still shows the user's message.
|
|
289
|
+
*
|
|
290
|
+
* @example
|
|
291
|
+
* ```ts
|
|
292
|
+
* onTurnStart: async ({ chatId, uiMessages }) => {
|
|
293
|
+
* await db.chat.update({ where: { id: chatId }, data: { messages: uiMessages } });
|
|
294
|
+
* }
|
|
295
|
+
* ```
|
|
296
|
+
*/
|
|
297
|
+
onTurnStart?: (event: TurnStartEvent<inferSchemaOut<TClientDataSchema>>) => Promise<void> | void;
|
|
233
298
|
/**
|
|
234
299
|
* Called after each turn completes (after the response is captured, before waiting
|
|
235
300
|
* for the next message). Also fires on the final turn.
|
|
@@ -243,7 +308,7 @@ export type ChatTaskOptions<TIdentifier extends string> = Omit<TaskOptions<TIden
|
|
|
243
308
|
* }
|
|
244
309
|
* ```
|
|
245
310
|
*/
|
|
246
|
-
onTurnComplete?: (event: TurnCompleteEvent) => Promise<void> | void;
|
|
311
|
+
onTurnComplete?: (event: TurnCompleteEvent<inferSchemaOut<TClientDataSchema>>) => Promise<void> | void;
|
|
247
312
|
/**
|
|
248
313
|
* Maximum number of conversational turns (message round-trips) a single run
|
|
249
314
|
* will handle before ending. After this many turns the run completes
|
|
@@ -270,6 +335,16 @@ export type ChatTaskOptions<TIdentifier extends string> = Omit<TaskOptions<TIden
|
|
|
270
335
|
* @default 30
|
|
271
336
|
*/
|
|
272
337
|
warmTimeoutInSeconds?: number;
|
|
338
|
+
/**
|
|
339
|
+
* How long the `chatAccessToken` (scoped to this run) remains valid.
|
|
340
|
+
* A fresh token is minted after each turn, so this only needs to cover
|
|
341
|
+
* the gap between turns.
|
|
342
|
+
*
|
|
343
|
+
* Accepts a duration string (e.g. `"1h"`, `"30m"`, `"2h"`).
|
|
344
|
+
*
|
|
345
|
+
* @default "1h"
|
|
346
|
+
*/
|
|
347
|
+
chatAccessTokenTTL?: string;
|
|
273
348
|
};
|
|
274
349
|
/**
|
|
275
350
|
* Creates a Trigger.dev task pre-configured for AI SDK chat.
|
|
@@ -298,7 +373,7 @@ export type ChatTaskOptions<TIdentifier extends string> = Omit<TaskOptions<TIden
|
|
|
298
373
|
* });
|
|
299
374
|
* ```
|
|
300
375
|
*/
|
|
301
|
-
declare function chatTask<TIdentifier extends string>(options: ChatTaskOptions<TIdentifier>): Task<TIdentifier, ChatTaskWirePayload, unknown>;
|
|
376
|
+
declare function chatTask<TIdentifier extends string, TClientDataSchema extends TaskSchema | undefined = undefined>(options: ChatTaskOptions<TIdentifier, TClientDataSchema>): Task<TIdentifier, ChatTaskWirePayload<UIMessage, inferSchemaIn<TClientDataSchema>>, unknown>;
|
|
302
377
|
/**
|
|
303
378
|
* Override the turn timeout for subsequent turns in the current run.
|
|
304
379
|
*
|
|
@@ -351,6 +426,20 @@ declare function setTurnTimeoutInSeconds(seconds: number): void;
|
|
|
351
426
|
* ```
|
|
352
427
|
*/
|
|
353
428
|
declare function setWarmTimeoutInSeconds(seconds: number): void;
|
|
429
|
+
/**
|
|
430
|
+
* Extracts the client data (metadata) type from a chat task.
|
|
431
|
+
* Use this to type the `metadata` option on the transport.
|
|
432
|
+
*
|
|
433
|
+
* @example
|
|
434
|
+
* ```ts
|
|
435
|
+
* import type { InferChatClientData } from "@trigger.dev/sdk/ai";
|
|
436
|
+
* import type { myChat } from "@/trigger/chat";
|
|
437
|
+
*
|
|
438
|
+
* type MyClientData = InferChatClientData<typeof myChat>;
|
|
439
|
+
* // { model?: string; userId: string }
|
|
440
|
+
* ```
|
|
441
|
+
*/
|
|
442
|
+
export type InferChatClientData<TTask extends AnyTask> = TTask extends Task<string, ChatTaskWirePayload<any, infer TMetadata>, any> ? TMetadata : unknown;
|
|
354
443
|
export declare const chat: {
|
|
355
444
|
/** Create a chat task. See {@link chatTask}. */
|
|
356
445
|
task: typeof chatTask;
|
package/dist/commonjs/v3/ai.js
CHANGED
|
@@ -5,6 +5,7 @@ const v3_1 = require("@trigger.dev/core/v3");
|
|
|
5
5
|
const ai_1 = require("ai");
|
|
6
6
|
const api_1 = require("@opentelemetry/api");
|
|
7
7
|
const auth_js_1 = require("./auth.js");
|
|
8
|
+
const locals_js_1 = require("./locals.js");
|
|
8
9
|
const metadata_js_1 = require("./metadata.js");
|
|
9
10
|
const streams_js_1 = require("./streams.js");
|
|
10
11
|
const shared_js_1 = require("./shared.js");
|
|
@@ -79,7 +80,7 @@ exports.ai = {
|
|
|
79
80
|
* ```
|
|
80
81
|
*/
|
|
81
82
|
function createChatAccessToken(taskId) {
|
|
82
|
-
return auth_js_1.auth.createTriggerPublicToken(taskId, {
|
|
83
|
+
return auth_js_1.auth.createTriggerPublicToken(taskId, { expirationTime: "24h" });
|
|
83
84
|
}
|
|
84
85
|
// ---------------------------------------------------------------------------
|
|
85
86
|
// Chat transport helpers — backend side
|
|
@@ -94,12 +95,11 @@ exports.CHAT_STREAM_KEY = chat_constants_js_1.CHAT_STREAM_KEY;
|
|
|
94
95
|
const messagesInput = streams_js_1.streams.input({ id: chat_constants_js_1.CHAT_MESSAGES_STREAM_ID });
|
|
95
96
|
const stopInput = streams_js_1.streams.input({ id: chat_constants_js_1.CHAT_STOP_STREAM_ID });
|
|
96
97
|
/**
|
|
97
|
-
*
|
|
98
|
-
*
|
|
99
|
-
* and returns a streamable from their `run` function.
|
|
98
|
+
* Run-scoped pipe counter. Stored in locals so concurrent runs in the
|
|
99
|
+
* same worker don't share state.
|
|
100
100
|
* @internal
|
|
101
101
|
*/
|
|
102
|
-
|
|
102
|
+
const chatPipeCountKey = locals_js_1.locals.create("chat.pipeCount");
|
|
103
103
|
function isUIMessageStreamable(value) {
|
|
104
104
|
return (typeof value === "object" &&
|
|
105
105
|
value !== null &&
|
|
@@ -152,7 +152,7 @@ function isReadableStream(value) {
|
|
|
152
152
|
* ```
|
|
153
153
|
*/
|
|
154
154
|
async function pipeChat(source, options) {
|
|
155
|
-
|
|
155
|
+
locals_js_1.locals.set(chatPipeCountKey, (locals_js_1.locals.get(chatPipeCountKey) ?? 0) + 1);
|
|
156
156
|
const streamKey = options?.streamKey ?? exports.CHAT_STREAM_KEY;
|
|
157
157
|
let stream;
|
|
158
158
|
if (isUIMessageStreamable(source)) {
|
|
@@ -206,7 +206,10 @@ async function pipeChat(source, options) {
|
|
|
206
206
|
* ```
|
|
207
207
|
*/
|
|
208
208
|
function chatTask(options) {
|
|
209
|
-
const { run: userRun, onChatStart, onTurnComplete, maxTurns = 100, turnTimeout = "1h", warmTimeoutInSeconds = 30, ...restOptions } = options;
|
|
209
|
+
const { run: userRun, clientDataSchema, onChatStart, onTurnStart, onTurnComplete, maxTurns = 100, turnTimeout = "1h", warmTimeoutInSeconds = 30, chatAccessTokenTTL = "1h", ...restOptions } = options;
|
|
210
|
+
const parseClientData = clientDataSchema
|
|
211
|
+
? (0, v3_1.getSchemaParseFn)(clientDataSchema)
|
|
212
|
+
: undefined;
|
|
210
213
|
return (0, shared_js_1.createTask)({
|
|
211
214
|
...restOptions,
|
|
212
215
|
run: async (payload, { signal: runSignal }) => {
|
|
@@ -234,6 +237,9 @@ function chatTask(options) {
|
|
|
234
237
|
for (let turn = 0; turn < maxTurns; turn++) {
|
|
235
238
|
// Extract turn-level context before entering the span
|
|
236
239
|
const { metadata: wireMetadata, messages: uiMessages, ...restWire } = currentWirePayload;
|
|
240
|
+
const clientData = (parseClientData
|
|
241
|
+
? await parseClientData(wireMetadata)
|
|
242
|
+
: wireMetadata);
|
|
237
243
|
const lastUserMessage = extractLastUserMessageText(uiMessages);
|
|
238
244
|
const turnAttributes = {
|
|
239
245
|
"turn.number": turn + 1,
|
|
@@ -259,7 +265,7 @@ function chatTask(options) {
|
|
|
259
265
|
typeof wireMetadata === "string" ? wireMetadata : JSON.stringify(wireMetadata);
|
|
260
266
|
}
|
|
261
267
|
const turnResult = await tracer_js_1.tracer.startActiveSpan(`chat turn ${turn + 1}`, async () => {
|
|
262
|
-
|
|
268
|
+
locals_js_1.locals.set(chatPipeCountKey, 0);
|
|
263
269
|
// Per-turn stop controller (reset each turn)
|
|
264
270
|
const stopController = new AbortController();
|
|
265
271
|
currentStopController = stopController;
|
|
@@ -305,13 +311,53 @@ function chatTask(options) {
|
|
|
305
311
|
turnNewModelMessages.push(...incomingModelMessages);
|
|
306
312
|
turnNewUIMessages.push(...uiMessages);
|
|
307
313
|
}
|
|
314
|
+
// Mint a scoped public access token once per turn, reused for
|
|
315
|
+
// onChatStart, onTurnStart, onTurnComplete, and the turn-complete chunk.
|
|
316
|
+
const currentRunId = v3_1.taskContext.ctx?.run.id ?? "";
|
|
317
|
+
let turnAccessToken = "";
|
|
318
|
+
if (currentRunId) {
|
|
319
|
+
try {
|
|
320
|
+
turnAccessToken = await auth_js_1.auth.createPublicToken({
|
|
321
|
+
scopes: {
|
|
322
|
+
read: { runs: currentRunId },
|
|
323
|
+
write: { inputStreams: currentRunId },
|
|
324
|
+
},
|
|
325
|
+
expirationTime: chatAccessTokenTTL,
|
|
326
|
+
});
|
|
327
|
+
}
|
|
328
|
+
catch {
|
|
329
|
+
// Token creation failed
|
|
330
|
+
}
|
|
331
|
+
}
|
|
308
332
|
// Fire onChatStart on the first turn
|
|
309
333
|
if (turn === 0 && onChatStart) {
|
|
310
334
|
await tracer_js_1.tracer.startActiveSpan("onChatStart()", async () => {
|
|
311
335
|
await onChatStart({
|
|
312
336
|
chatId: currentWirePayload.chatId,
|
|
313
337
|
messages: accumulatedMessages,
|
|
314
|
-
clientData
|
|
338
|
+
clientData,
|
|
339
|
+
runId: currentRunId,
|
|
340
|
+
chatAccessToken: turnAccessToken,
|
|
341
|
+
});
|
|
342
|
+
}, {
|
|
343
|
+
attributes: {
|
|
344
|
+
[v3_1.SemanticInternalAttributes.STYLE_ICON]: "task-hook-onStart",
|
|
345
|
+
[v3_1.SemanticInternalAttributes.COLLAPSED]: true,
|
|
346
|
+
},
|
|
347
|
+
});
|
|
348
|
+
}
|
|
349
|
+
// Fire onTurnStart before running user code — persist messages
|
|
350
|
+
// so a mid-stream page refresh still shows the user's message.
|
|
351
|
+
if (onTurnStart) {
|
|
352
|
+
await tracer_js_1.tracer.startActiveSpan("onTurnStart()", async () => {
|
|
353
|
+
await onTurnStart({
|
|
354
|
+
chatId: currentWirePayload.chatId,
|
|
355
|
+
messages: accumulatedMessages,
|
|
356
|
+
uiMessages: accumulatedUIMessages,
|
|
357
|
+
turn,
|
|
358
|
+
runId: currentRunId,
|
|
359
|
+
chatAccessToken: turnAccessToken,
|
|
360
|
+
clientData,
|
|
315
361
|
});
|
|
316
362
|
}, {
|
|
317
363
|
attributes: {
|
|
@@ -326,7 +372,7 @@ function chatTask(options) {
|
|
|
326
372
|
const result = await userRun({
|
|
327
373
|
...restWire,
|
|
328
374
|
messages: accumulatedMessages,
|
|
329
|
-
clientData
|
|
375
|
+
clientData,
|
|
330
376
|
signal: combinedSignal,
|
|
331
377
|
cancelSignal,
|
|
332
378
|
stopSignal,
|
|
@@ -334,7 +380,7 @@ function chatTask(options) {
|
|
|
334
380
|
// Auto-pipe if the run function returned a StreamTextResult or similar,
|
|
335
381
|
// but only if pipeChat() wasn't already called manually during this turn.
|
|
336
382
|
// We call toUIMessageStream ourselves to attach onFinish for response capture.
|
|
337
|
-
if (
|
|
383
|
+
if ((locals_js_1.locals.get(chatPipeCountKey) ?? 0) === 0 && isUIMessageStreamable(result)) {
|
|
338
384
|
const uiStream = result.toUIMessageStream({
|
|
339
385
|
onFinish: ({ responseMessage }) => {
|
|
340
386
|
capturedResponseMessage = responseMessage;
|
|
@@ -362,6 +408,12 @@ function chatTask(options) {
|
|
|
362
408
|
// The onFinish callback fires even on abort/stop, so partial responses
|
|
363
409
|
// from stopped generation are captured correctly.
|
|
364
410
|
if (capturedResponseMessage) {
|
|
411
|
+
// Ensure the response message has an ID (the stream's onFinish
|
|
412
|
+
// may produce a message with an empty ID since IDs are normally
|
|
413
|
+
// assigned by the frontend's useChat).
|
|
414
|
+
if (!capturedResponseMessage.id) {
|
|
415
|
+
capturedResponseMessage = { ...capturedResponseMessage, id: (0, ai_1.generateId)() };
|
|
416
|
+
}
|
|
365
417
|
accumulatedUIMessages.push(capturedResponseMessage);
|
|
366
418
|
turnNewUIMessages.push(capturedResponseMessage);
|
|
367
419
|
try {
|
|
@@ -381,6 +433,9 @@ function chatTask(options) {
|
|
|
381
433
|
// accumulation (e.g. via a `chat.addMessages()` helper).
|
|
382
434
|
if (runSignal.aborted)
|
|
383
435
|
return "exit";
|
|
436
|
+
// Write turn-complete control chunk so frontend closes its stream.
|
|
437
|
+
// Capture the lastEventId from the stream writer for resume support.
|
|
438
|
+
const turnCompleteResult = await writeTurnCompleteChunk(currentWirePayload.chatId, turnAccessToken);
|
|
384
439
|
// Fire onTurnComplete after response capture
|
|
385
440
|
if (onTurnComplete) {
|
|
386
441
|
await tracer_js_1.tracer.startActiveSpan("onTurnComplete()", async () => {
|
|
@@ -392,6 +447,10 @@ function chatTask(options) {
|
|
|
392
447
|
newUIMessages: turnNewUIMessages,
|
|
393
448
|
responseMessage: capturedResponseMessage,
|
|
394
449
|
turn,
|
|
450
|
+
runId: currentRunId,
|
|
451
|
+
chatAccessToken: turnAccessToken,
|
|
452
|
+
lastEventId: turnCompleteResult.lastEventId,
|
|
453
|
+
clientData,
|
|
395
454
|
});
|
|
396
455
|
}, {
|
|
397
456
|
attributes: {
|
|
@@ -400,8 +459,6 @@ function chatTask(options) {
|
|
|
400
459
|
},
|
|
401
460
|
});
|
|
402
461
|
}
|
|
403
|
-
// Write turn-complete control chunk so frontend closes its stream
|
|
404
|
-
await writeTurnCompleteChunk(currentWirePayload.chatId);
|
|
405
462
|
// If messages arrived during streaming, use the first one immediately
|
|
406
463
|
if (pendingMessages.length > 0) {
|
|
407
464
|
currentWirePayload = pendingMessages[0];
|
|
@@ -551,15 +608,18 @@ exports.chat = {
|
|
|
551
608
|
* The frontend transport intercepts this to close the ReadableStream for the current turn.
|
|
552
609
|
* @internal
|
|
553
610
|
*/
|
|
554
|
-
async function writeTurnCompleteChunk(chatId) {
|
|
611
|
+
async function writeTurnCompleteChunk(chatId, publicAccessToken) {
|
|
555
612
|
const { waitUntilComplete } = streams_js_1.streams.writer(exports.CHAT_STREAM_KEY, {
|
|
556
613
|
spanName: "turn complete",
|
|
557
614
|
collapsed: true,
|
|
558
615
|
execute: ({ write }) => {
|
|
559
|
-
write({
|
|
616
|
+
write({
|
|
617
|
+
type: "__trigger_turn_complete",
|
|
618
|
+
...(publicAccessToken ? { publicAccessToken } : {}),
|
|
619
|
+
});
|
|
560
620
|
},
|
|
561
621
|
});
|
|
562
|
-
await waitUntilComplete();
|
|
622
|
+
return await waitUntilComplete();
|
|
563
623
|
}
|
|
564
624
|
/**
|
|
565
625
|
* Extracts the text content of the last user message from a UIMessage array.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai.js","sourceRoot":"","sources":["../../../src/v3/ai.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ai.js","sourceRoot":"","sources":["../../../src/v3/ai.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { TriggerChatTransport, type TriggerChatTransportOptions } from "./chat.js";
|
|
2
2
|
import type { AnyTask, TaskIdentifier } from "@trigger.dev/core/v3";
|
|
3
|
+
import type { InferChatClientData } from "./ai.js";
|
|
3
4
|
/**
|
|
4
5
|
* Options for `useTriggerChatTransport`, with a type-safe `task` field.
|
|
5
6
|
*
|
|
@@ -8,7 +9,7 @@ import type { AnyTask, TaskIdentifier } from "@trigger.dev/core/v3";
|
|
|
8
9
|
* useTriggerChatTransport<typeof myTask>({ task: "my-task", ... })
|
|
9
10
|
* ```
|
|
10
11
|
*/
|
|
11
|
-
export type UseTriggerChatTransportOptions<TTask extends AnyTask = AnyTask> = Omit<TriggerChatTransportOptions
|
|
12
|
+
export type UseTriggerChatTransportOptions<TTask extends AnyTask = AnyTask> = Omit<TriggerChatTransportOptions<InferChatClientData<TTask>>, "task"> & {
|
|
12
13
|
/** The task ID. Strongly typed when a task type parameter is provided. */
|
|
13
14
|
task: TaskIdentifier<TTask>;
|
|
14
15
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-react.js","sourceRoot":"","sources":["../../../src/v3/chat-react.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;
|
|
1
|
+
{"version":3,"file":"chat-react.js","sourceRoot":"","sources":["../../../src/v3/chat-react.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;AA+Eb,0DAeC;AA5FD;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,iCAA0C;AAC1C,uCAGmB;AAoBnB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,SAAgB,uBAAuB,CACrC,OAA8C;IAE9C,MAAM,GAAG,GAAG,IAAA,cAAM,EAA8B,IAAI,CAAC,CAAC;IACtD,IAAI,GAAG,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;QACzB,GAAG,CAAC,OAAO,GAAG,IAAI,8BAAoB,CAAC,OAAO,CAAC,CAAC;IAClD,CAAC;IAED,mEAAmE;IACnE,MAAM,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC;IACpC,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,GAAG,CAAC,OAAO,EAAE,kBAAkB,CAAC,eAAe,CAAC,CAAC;IACnD,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;IAEtB,OAAO,GAAG,CAAC,OAAO,CAAC;AACrB,CAAC"}
|
|
@@ -25,7 +25,7 @@ import type { ChatTransport, UIMessage, UIMessageChunk, ChatRequestOptions } fro
|
|
|
25
25
|
/**
|
|
26
26
|
* Options for creating a TriggerChatTransport.
|
|
27
27
|
*/
|
|
28
|
-
export type TriggerChatTransportOptions = {
|
|
28
|
+
export type TriggerChatTransportOptions<TClientData = unknown> = {
|
|
29
29
|
/**
|
|
30
30
|
* The Trigger.dev task ID to trigger for chat completions.
|
|
31
31
|
* This task should be defined using `chatTask()` from `@trigger.dev/sdk/ai`,
|
|
@@ -68,22 +68,22 @@ export type TriggerChatTransportOptions = {
|
|
|
68
68
|
*/
|
|
69
69
|
streamTimeoutSeconds?: number;
|
|
70
70
|
/**
|
|
71
|
-
* Default
|
|
71
|
+
* Default client data included in every request payload.
|
|
72
72
|
* Merged with per-call `metadata` from `sendMessage()` — per-call values
|
|
73
73
|
* take precedence over transport-level defaults.
|
|
74
74
|
*
|
|
75
|
-
*
|
|
75
|
+
* When the task uses `clientDataSchema`, this is typed to match the schema.
|
|
76
76
|
*
|
|
77
77
|
* @example
|
|
78
78
|
* ```ts
|
|
79
79
|
* new TriggerChatTransport({
|
|
80
80
|
* task: "my-chat",
|
|
81
81
|
* accessToken,
|
|
82
|
-
*
|
|
82
|
+
* clientData: { userId: currentUser.id },
|
|
83
83
|
* });
|
|
84
84
|
* ```
|
|
85
85
|
*/
|
|
86
|
-
|
|
86
|
+
clientData?: TClientData extends Record<string, unknown> ? TClientData : Record<string, unknown>;
|
|
87
87
|
/**
|
|
88
88
|
* Restore active chat sessions from external storage (e.g. localStorage).
|
|
89
89
|
*
|
|
@@ -138,6 +138,36 @@ export type TriggerChatTransportOptions = {
|
|
|
138
138
|
publicAccessToken: string;
|
|
139
139
|
lastEventId?: string;
|
|
140
140
|
} | null) => void;
|
|
141
|
+
/**
|
|
142
|
+
* Options forwarded to the Trigger.dev API when starting a new run.
|
|
143
|
+
* Only applies to the first message — subsequent messages reuse the same run.
|
|
144
|
+
*
|
|
145
|
+
* A `chat:{chatId}` tag is automatically added to every run.
|
|
146
|
+
*
|
|
147
|
+
* @example
|
|
148
|
+
* ```ts
|
|
149
|
+
* new TriggerChatTransport({
|
|
150
|
+
* task: "my-chat",
|
|
151
|
+
* accessToken,
|
|
152
|
+
* triggerOptions: {
|
|
153
|
+
* tags: ["user:123"],
|
|
154
|
+
* queue: "chat-queue",
|
|
155
|
+
* },
|
|
156
|
+
* });
|
|
157
|
+
* ```
|
|
158
|
+
*/
|
|
159
|
+
triggerOptions?: {
|
|
160
|
+
/** Additional tags for the run. A `chat:{chatId}` tag is always added automatically. */
|
|
161
|
+
tags?: string[];
|
|
162
|
+
/** Queue name for the run. */
|
|
163
|
+
queue?: string;
|
|
164
|
+
/** Maximum retry attempts. */
|
|
165
|
+
maxAttempts?: number;
|
|
166
|
+
/** Machine preset for the run. */
|
|
167
|
+
machine?: "micro" | "small-1x" | "small-2x" | "medium-1x" | "medium-2x" | "large-1x" | "large-2x";
|
|
168
|
+
/** Priority (lower = higher priority). */
|
|
169
|
+
priority?: number;
|
|
170
|
+
};
|
|
141
171
|
};
|
|
142
172
|
/**
|
|
143
173
|
* A custom AI SDK `ChatTransport` that runs chat completions as durable Trigger.dev tasks.
|
|
@@ -175,8 +205,10 @@ export declare class TriggerChatTransport implements ChatTransport<UIMessage> {
|
|
|
175
205
|
private readonly extraHeaders;
|
|
176
206
|
private readonly streamTimeoutSeconds;
|
|
177
207
|
private readonly defaultMetadata;
|
|
208
|
+
private readonly triggerOptions;
|
|
178
209
|
private _onSessionChange;
|
|
179
210
|
private sessions;
|
|
211
|
+
private activeStreams;
|
|
180
212
|
constructor(options: TriggerChatTransportOptions);
|
|
181
213
|
sendMessages: (options: {
|
|
182
214
|
trigger: "submit-message" | "regenerate-message";
|