@trigger.dev/sdk 4.5.14 → 4.5.15
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-shared.d.ts +7 -0
- package/dist/commonjs/v3/ai-shared.js +15 -0
- package/dist/commonjs/v3/ai-shared.js.map +1 -1
- package/dist/commonjs/v3/ai.d.ts +11 -1
- package/dist/commonjs/v3/ai.js +11 -3
- package/dist/commonjs/v3/ai.js.map +1 -1
- package/dist/commonjs/v3/chat-client.js +1 -1
- package/dist/commonjs/v3/chat-client.js.map +1 -1
- package/dist/commonjs/v3/chat-server.d.ts +2 -1
- package/dist/commonjs/v3/chat-server.js +3 -3
- package/dist/commonjs/v3/chat-server.js.map +1 -1
- package/dist/commonjs/v3/sessions.d.ts +42 -13
- package/dist/commonjs/v3/sessions.js +85 -16
- package/dist/commonjs/v3/sessions.js.map +1 -1
- package/dist/commonjs/version.js +1 -1
- package/dist/esm/v3/ai-shared.d.ts +7 -0
- package/dist/esm/v3/ai-shared.js +14 -0
- package/dist/esm/v3/ai-shared.js.map +1 -1
- package/dist/esm/v3/ai.d.ts +11 -1
- package/dist/esm/v3/ai.js +12 -4
- package/dist/esm/v3/ai.js.map +1 -1
- package/dist/esm/v3/chat-client.js +2 -2
- package/dist/esm/v3/chat-client.js.map +1 -1
- package/dist/esm/v3/chat-server.d.ts +2 -1
- package/dist/esm/v3/chat-server.js +3 -3
- package/dist/esm/v3/chat-server.js.map +1 -1
- package/dist/esm/v3/sessions.d.ts +42 -13
- package/dist/esm/v3/sessions.js +85 -16
- package/dist/esm/v3/sessions.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/docs/ai-chat/reference.mdx +1 -1
- package/docs/ai-chat/sessions.mdx +1 -1
- package/docs/ai-chat/side-channels.mdx +172 -0
- package/docs/mcp-tools.mdx +37 -0
- package/docs/realtime/react-hooks/session-stream.mdx +17 -0
- package/package.json +5 -2
- package/dist/commonjs/v3/auth.test.d.ts +0 -1
- package/dist/commonjs/v3/auth.test.js +0 -149
- package/dist/commonjs/v3/auth.test.js.map +0 -1
- package/dist/commonjs/v3/batchDebounce.test.d.ts +0 -1
- package/dist/commonjs/v3/batchDebounce.test.js +0 -189
- package/dist/commonjs/v3/batchDebounce.test.js.map +0 -1
- package/dist/commonjs/v3/chat-server.test.d.ts +0 -1
- package/dist/commonjs/v3/chat-server.test.js +0 -713
- package/dist/commonjs/v3/chat-server.test.js.map +0 -1
- package/dist/commonjs/v3/chat-tab-coordinator.test.d.ts +0 -1
- package/dist/commonjs/v3/chat-tab-coordinator.test.js +0 -140
- package/dist/commonjs/v3/chat-tab-coordinator.test.js.map +0 -1
- package/dist/commonjs/v3/chat.test.d.ts +0 -1
- package/dist/commonjs/v3/chat.test.js +0 -1838
- package/dist/commonjs/v3/chat.test.js.map +0 -1
- package/dist/commonjs/v3/createStartSessionAction.test.d.ts +0 -1
- package/dist/commonjs/v3/createStartSessionAction.test.js +0 -176
- package/dist/commonjs/v3/createStartSessionAction.test.js.map +0 -1
- package/dist/commonjs/v3/runs-bulk.test.d.ts +0 -1
- package/dist/commonjs/v3/runs-bulk.test.js +0 -141
- package/dist/commonjs/v3/runs-bulk.test.js.map +0 -1
- package/dist/commonjs/v3/schedules/index.test.d.ts +0 -1
- package/dist/commonjs/v3/schedules/index.test.js +0 -49
- package/dist/commonjs/v3/schedules/index.test.js.map +0 -1
- package/dist/commonjs/v3/schedules/index.types.test.d.ts +0 -1
- package/dist/commonjs/v3/schedules/index.types.test.js +0 -93
- package/dist/commonjs/v3/schedules/index.types.test.js.map +0 -1
- package/dist/commonjs/v3/sessions.test.d.ts +0 -1
- package/dist/commonjs/v3/sessions.test.js +0 -154
- package/dist/commonjs/v3/sessions.test.js.map +0 -1
- package/dist/commonjs/v3/shared.test.d.ts +0 -1
- package/dist/commonjs/v3/shared.test.js +0 -236
- package/dist/commonjs/v3/shared.test.js.map +0 -1
- package/dist/commonjs/v3/streams.test.d.ts +0 -1
- package/dist/commonjs/v3/streams.test.js +0 -51
- package/dist/commonjs/v3/streams.test.js.map +0 -1
- package/dist/commonjs/v3/triggerClient.test.d.ts +0 -1
- package/dist/commonjs/v3/triggerClient.test.js +0 -226
- package/dist/commonjs/v3/triggerClient.test.js.map +0 -1
- package/dist/commonjs/v3/triggerClient.types.test.d.ts +0 -1
- package/dist/commonjs/v3/triggerClient.types.test.js +0 -123
- package/dist/commonjs/v3/triggerClient.types.test.js.map +0 -1
- package/dist/esm/v3/auth.test.d.ts +0 -1
- package/dist/esm/v3/auth.test.js +0 -147
- package/dist/esm/v3/auth.test.js.map +0 -1
- package/dist/esm/v3/batchDebounce.test.d.ts +0 -1
- package/dist/esm/v3/batchDebounce.test.js +0 -187
- package/dist/esm/v3/batchDebounce.test.js.map +0 -1
- package/dist/esm/v3/chat-server.test.d.ts +0 -1
- package/dist/esm/v3/chat-server.test.js +0 -711
- package/dist/esm/v3/chat-server.test.js.map +0 -1
- package/dist/esm/v3/chat-tab-coordinator.test.d.ts +0 -1
- package/dist/esm/v3/chat-tab-coordinator.test.js +0 -138
- package/dist/esm/v3/chat-tab-coordinator.test.js.map +0 -1
- package/dist/esm/v3/chat.test.d.ts +0 -1
- package/dist/esm/v3/chat.test.js +0 -1836
- package/dist/esm/v3/chat.test.js.map +0 -1
- package/dist/esm/v3/createStartSessionAction.test.d.ts +0 -1
- package/dist/esm/v3/createStartSessionAction.test.js +0 -174
- package/dist/esm/v3/createStartSessionAction.test.js.map +0 -1
- package/dist/esm/v3/runs-bulk.test.d.ts +0 -1
- package/dist/esm/v3/runs-bulk.test.js +0 -139
- package/dist/esm/v3/runs-bulk.test.js.map +0 -1
- package/dist/esm/v3/schedules/index.test.d.ts +0 -1
- package/dist/esm/v3/schedules/index.test.js +0 -47
- package/dist/esm/v3/schedules/index.test.js.map +0 -1
- package/dist/esm/v3/schedules/index.types.test.d.ts +0 -1
- package/dist/esm/v3/schedules/index.types.test.js +0 -91
- package/dist/esm/v3/schedules/index.types.test.js.map +0 -1
- package/dist/esm/v3/sessions.test.d.ts +0 -1
- package/dist/esm/v3/sessions.test.js +0 -152
- package/dist/esm/v3/sessions.test.js.map +0 -1
- package/dist/esm/v3/shared.test.d.ts +0 -1
- package/dist/esm/v3/shared.test.js +0 -234
- package/dist/esm/v3/shared.test.js.map +0 -1
- package/dist/esm/v3/streams.test.d.ts +0 -1
- package/dist/esm/v3/streams.test.js +0 -49
- package/dist/esm/v3/streams.test.js.map +0 -1
- package/dist/esm/v3/triggerClient.test.d.ts +0 -1
- package/dist/esm/v3/triggerClient.test.js +0 -224
- package/dist/esm/v3/triggerClient.test.js.map +0 -1
- package/dist/esm/v3/triggerClient.types.test.d.ts +0 -1
- package/dist/esm/v3/triggerClient.types.test.js +0 -88
- package/dist/esm/v3/triggerClient.types.test.js.map +0 -1
|
@@ -132,3 +132,10 @@ export declare function upsertIncomingMessage<TMsg extends UIMessage = UIMessage
|
|
|
132
132
|
* (`mergeIncomingIntoHydrated` in `ai.ts`).
|
|
133
133
|
*/
|
|
134
134
|
export declare function slimSubmitMessageForWire<TMsg extends UIMessage | undefined>(message: TMsg): TMsg;
|
|
135
|
+
/**
|
|
136
|
+
* Build the run tags for a chat session: the automatic `chat:{chatId}` tag
|
|
137
|
+
* followed by the caller's tags, capped at the run tag limit. The chat tag
|
|
138
|
+
* is skipped when the chat ID is too long to fit within a single tag, so a
|
|
139
|
+
* long ID degrades to "not filterable by chat" rather than failing to start.
|
|
140
|
+
*/
|
|
141
|
+
export declare function chatRunTags(chatId: string, userTags?: string[]): string[];
|
|
@@ -19,6 +19,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
19
19
|
exports.PENDING_MESSAGE_INJECTED_TYPE = void 0;
|
|
20
20
|
exports.upsertIncomingMessage = upsertIncomingMessage;
|
|
21
21
|
exports.slimSubmitMessageForWire = slimSubmitMessageForWire;
|
|
22
|
+
exports.chatRunTags = chatRunTags;
|
|
22
23
|
/**
|
|
23
24
|
* Message-part `type` value for the pending-message data part the agent
|
|
24
25
|
* injects when a follow-up message arrives mid-turn.
|
|
@@ -163,4 +164,18 @@ function slimSubmitMessageForWire(message) {
|
|
|
163
164
|
parts: slimParts,
|
|
164
165
|
};
|
|
165
166
|
}
|
|
167
|
+
/** Run tags accept at most 10 entries of at most 128 characters each. */
|
|
168
|
+
const MAX_RUN_TAGS = 10;
|
|
169
|
+
const MAX_RUN_TAG_LENGTH = 128;
|
|
170
|
+
/**
|
|
171
|
+
* Build the run tags for a chat session: the automatic `chat:{chatId}` tag
|
|
172
|
+
* followed by the caller's tags, capped at the run tag limit. The chat tag
|
|
173
|
+
* is skipped when the chat ID is too long to fit within a single tag, so a
|
|
174
|
+
* long ID degrades to "not filterable by chat" rather than failing to start.
|
|
175
|
+
*/
|
|
176
|
+
function chatRunTags(chatId, userTags = []) {
|
|
177
|
+
const chatTag = `chat:${chatId}`;
|
|
178
|
+
const tags = chatTag.length <= MAX_RUN_TAG_LENGTH ? [chatTag, ...userTags] : [...userTags];
|
|
179
|
+
return tags.slice(0, MAX_RUN_TAGS);
|
|
180
|
+
}
|
|
166
181
|
//# sourceMappingURL=ai-shared.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-shared.js","sourceRoot":"","sources":["../../../src/v3/ai-shared.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG
|
|
1
|
+
{"version":3,"file":"ai-shared.js","sourceRoot":"","sources":["../../../src/v3/ai-shared.ts"],"names":[],"mappings":"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"}
|
package/dist/commonjs/v3/ai.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type AnyTask, type Task, type ChatSnapshotV1, type ApiClientConfiguration, type inferSchemaIn, type inferSchemaOut, type MachinePresetName, type RealtimeDefinedInputStream, type RealtimeDefinedStream, type SessionTriggerConfig, type TaskIdentifier, type TaskOptions, type TaskRunContext, type TaskSchema, type TaskWithSchema } from "@trigger.dev/core/v3";
|
|
1
|
+
import { type AnyTask, type Task, type ChatSnapshotV1, type ApiClientConfiguration, type inferSchemaIn, type inferSchemaOut, type MachinePresetName, type RealtimeDefinedInputStream, type RealtimeDefinedStream, type SessionTriggerConfig, type TaskIdentifier, type TaskOptions, type TaskRunContext, type TaskSchema, type TaskWithSchema, type AnySessionChannel, type SessionChannelName } from "@trigger.dev/core/v3";
|
|
2
2
|
import type { FinishReason, LanguageModelUsage, ModelMessage, ProviderMetadata, Tool, ToolSet, UIMessage, UIMessageChunk, UIMessageStreamOptions } from "ai";
|
|
3
3
|
import { type ChatInputChunk, type ChatTaskWirePayload, type InferChatClientData, type InferChatUIMessage, type InferChatUIMessageFromTools, PENDING_MESSAGE_INJECTED_TYPE, upsertIncomingMessage } from "./ai-shared.js";
|
|
4
4
|
import { locals } from "./locals.js";
|
|
@@ -11,6 +11,7 @@ type ToolCallOptions = {
|
|
|
11
11
|
experimental_context?: unknown;
|
|
12
12
|
context?: unknown;
|
|
13
13
|
};
|
|
14
|
+
import { type SessionChannelHandleFor } from "./sessions.js";
|
|
14
15
|
/** Re-export for typing `ctx` in `chat.agent` hooks without importing `@trigger.dev/core`. */
|
|
15
16
|
export type { TaskRunContext } from "@trigger.dev/core/v3";
|
|
16
17
|
export type ToolCallExecutionOptions = {
|
|
@@ -3145,6 +3146,15 @@ export declare const chat: {
|
|
|
3145
3146
|
};
|
|
3146
3147
|
/** Pre-built input stream for receiving messages from the transport. */
|
|
3147
3148
|
messages: ChatMessages;
|
|
3149
|
+
/** The current chat.agent run's Session handle. See {@link SessionHandle}. */
|
|
3150
|
+
session: typeof getChatSession;
|
|
3151
|
+
/**
|
|
3152
|
+
* Open a named side channel on the current chat.agent run's Session: a
|
|
3153
|
+
* durable, cross-run `.in`/`.out` pair addressed by `name`, separate from the
|
|
3154
|
+
* chat transcript. Writing its `.in` does not wake a run. Shortcut for
|
|
3155
|
+
* `chat.session().channel(name)`.
|
|
3156
|
+
*/
|
|
3157
|
+
channel: <C extends AnySessionChannel = AnySessionChannel>(channel: SessionChannelName<C> | C) => SessionChannelHandleFor<C>;
|
|
3148
3158
|
/** Create a managed stop signal wired to the stop input stream. See {@link createStopSignal}. */
|
|
3149
3159
|
createStopSignal: typeof createStopSignal;
|
|
3150
3160
|
/** Signal the frontend that the current turn is complete. See {@link chatWriteTurnComplete}. */
|
package/dist/commonjs/v3/ai.js
CHANGED
|
@@ -7654,9 +7654,8 @@ function createChatStartSessionAction(taskId, options) {
|
|
|
7654
7654
|
// Auto-tag every chat.agent run with `chat:{chatId}` so the dashboard /
|
|
7655
7655
|
// run-list filter by chat works without the customer having to wire it
|
|
7656
7656
|
// up. Mirrors the browser-mediated `TriggerChatTransport.doStart` path.
|
|
7657
|
-
|
|
7658
|
-
|
|
7659
|
-
const tags = [`chat:${params.chatId}`, ...userTags].slice(0, 5);
|
|
7657
|
+
// IDs too long to fit within the tag length limit get no automatic tag.
|
|
7658
|
+
const tags = (0, ai_shared_js_1.chatRunTags)(params.chatId, params.triggerConfig?.tags ?? options?.triggerConfig?.tags);
|
|
7660
7659
|
const clientDataMetadata = params.clientData !== undefined ? { metadata: params.clientData } : {};
|
|
7661
7660
|
const maxAttempts = params.triggerConfig?.maxAttempts ?? options?.triggerConfig?.maxAttempts;
|
|
7662
7661
|
const maxDuration = params.triggerConfig?.maxDuration ?? options?.triggerConfig?.maxDuration;
|
|
@@ -7874,6 +7873,15 @@ exports.chat = {
|
|
|
7874
7873
|
response: chatResponse,
|
|
7875
7874
|
/** Pre-built input stream for receiving messages from the transport. */
|
|
7876
7875
|
messages: messagesInput,
|
|
7876
|
+
/** The current chat.agent run's Session handle. See {@link SessionHandle}. */
|
|
7877
|
+
session: getChatSession,
|
|
7878
|
+
/**
|
|
7879
|
+
* Open a named side channel on the current chat.agent run's Session: a
|
|
7880
|
+
* durable, cross-run `.in`/`.out` pair addressed by `name`, separate from the
|
|
7881
|
+
* chat transcript. Writing its `.in` does not wake a run. Shortcut for
|
|
7882
|
+
* `chat.session().channel(name)`.
|
|
7883
|
+
*/
|
|
7884
|
+
channel: (channel) => getChatSession().channel(channel),
|
|
7877
7885
|
/** Create a managed stop signal wired to the stop input stream. See {@link createStopSignal}. */
|
|
7878
7886
|
createStopSignal,
|
|
7879
7887
|
/** Signal the frontend that the current turn is complete. See {@link chatWriteTurnComplete}. */
|