@convex-dev/agent 0.3.2 → 0.6.0-alpha.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/dist/UIMessages.d.ts +3 -2
- package/dist/UIMessages.d.ts.map +1 -1
- package/dist/UIMessages.js +100 -19
- package/dist/UIMessages.js.map +1 -1
- package/dist/client/createTool.d.ts +129 -25
- package/dist/client/createTool.d.ts.map +1 -1
- package/dist/client/createTool.js +65 -8
- package/dist/client/createTool.js.map +1 -1
- package/dist/client/definePlaygroundAPI.d.ts +560 -35
- package/dist/client/definePlaygroundAPI.d.ts.map +1 -1
- package/dist/client/files.d.ts.map +1 -1
- package/dist/client/files.js +4 -2
- package/dist/client/files.js.map +1 -1
- package/dist/client/index.d.ts +462 -37
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +26 -7
- package/dist/client/index.js.map +1 -1
- package/dist/client/messages.d.ts +114 -9
- package/dist/client/messages.d.ts.map +1 -1
- package/dist/client/mockModel.d.ts +17 -17
- package/dist/client/mockModel.d.ts.map +1 -1
- package/dist/client/mockModel.js +8 -6
- package/dist/client/mockModel.js.map +1 -1
- package/dist/client/saveInputMessages.d.ts +1 -1
- package/dist/client/saveInputMessages.d.ts.map +1 -1
- package/dist/client/saveInputMessages.js +1 -1
- package/dist/client/saveInputMessages.js.map +1 -1
- package/dist/client/search.d.ts +132 -14
- package/dist/client/search.d.ts.map +1 -1
- package/dist/client/search.js +66 -19
- package/dist/client/search.js.map +1 -1
- package/dist/client/streamText.d.ts +4 -4
- package/dist/client/streamText.d.ts.map +1 -1
- package/dist/client/streamText.js.map +1 -1
- package/dist/client/streaming.d.ts +1491 -87
- package/dist/client/streaming.d.ts.map +1 -1
- package/dist/client/types.d.ts +26 -6
- package/dist/client/types.d.ts.map +1 -1
- package/dist/component/_generated/component.d.ts +862 -19
- package/dist/component/_generated/component.d.ts.map +1 -1
- package/dist/component/files.d.ts +12 -6
- package/dist/component/files.d.ts.map +1 -1
- package/dist/component/files.js +10 -2
- package/dist/component/files.js.map +1 -1
- package/dist/component/messages.d.ts +1247 -92
- package/dist/component/messages.d.ts.map +1 -1
- package/dist/component/schema.d.ts +2823 -217
- package/dist/component/schema.d.ts.map +1 -1
- package/dist/component/schema.js +3 -1
- package/dist/component/schema.js.map +1 -1
- package/dist/component/streams.js +1 -1
- package/dist/component/streams.js.map +1 -1
- package/dist/component/threads.d.ts +10 -10
- package/dist/component/vector/index.d.ts +1 -1
- package/dist/deltas.d.ts.map +1 -1
- package/dist/deltas.js +40 -5
- package/dist/deltas.js.map +1 -1
- package/dist/mapping.d.ts.map +1 -1
- package/dist/mapping.js +117 -25
- package/dist/mapping.js.map +1 -1
- package/dist/react/useThreadMessages.d.ts.map +1 -1
- package/dist/react/useThreadMessages.js +17 -9
- package/dist/react/useThreadMessages.js.map +1 -1
- package/dist/shared.d.ts +2 -2
- package/dist/shared.d.ts.map +1 -1
- package/dist/shared.js.map +1 -1
- package/dist/validators.d.ts +12196 -624
- package/dist/validators.d.ts.map +1 -1
- package/dist/validators.js +152 -9
- package/dist/validators.js.map +1 -1
- package/package.json +24 -22
- package/src/UIMessages.combineUIMessages.test.ts +239 -0
- package/src/UIMessages.ts +184 -66
- package/src/client/createTool.ts +291 -67
- package/src/client/files.ts +4 -2
- package/src/client/index.test.ts +1 -0
- package/src/client/index.ts +46 -25
- package/src/client/mockModel.ts +36 -34
- package/src/client/saveInputMessages.ts +2 -2
- package/src/client/search.test.ts +166 -0
- package/src/client/search.ts +121 -38
- package/src/client/streamText.ts +5 -5
- package/src/client/types.ts +31 -18
- package/src/component/_generated/component.ts +2329 -338
- package/src/component/files.ts +11 -2
- package/src/component/messages.test.ts +7 -7
- package/src/component/schema.ts +3 -1
- package/src/component/setup.test.ts +7 -0
- package/src/component/streams.ts +1 -1
- package/src/deltas.test.ts +90 -0
- package/src/deltas.ts +47 -8
- package/src/fromUIMessages.test.ts +32 -27
- package/src/mapping.test.ts +48 -0
- package/src/mapping.ts +234 -142
- package/src/react/useThreadMessages.ts +21 -9
- package/src/shared.ts +2 -0
- package/src/toUIMessages.test.ts +539 -1
- package/src/validators.ts +179 -20
- package/src/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +0 -1
package/dist/UIMessages.d.ts
CHANGED
|
@@ -7,6 +7,7 @@ export type UIMessage<METADATA = unknown, DATA_PARTS extends UIDataTypes = UIDat
|
|
|
7
7
|
stepOrder: number;
|
|
8
8
|
status: UIStatus;
|
|
9
9
|
agentName?: string;
|
|
10
|
+
userId?: string;
|
|
10
11
|
text: string;
|
|
11
12
|
_creationTime: number;
|
|
12
13
|
};
|
|
@@ -24,10 +25,10 @@ export declare function fromUIMessages<METADATA = unknown>(messages: UIMessage<M
|
|
|
24
25
|
provider?: string;
|
|
25
26
|
providerOptions?: ProviderOptions;
|
|
26
27
|
metadata?: METADATA;
|
|
27
|
-
}): (MessageDoc & {
|
|
28
|
+
}): Promise<(MessageDoc & {
|
|
28
29
|
streaming: boolean;
|
|
29
30
|
metadata?: METADATA;
|
|
30
|
-
})[]
|
|
31
|
+
})[]>;
|
|
31
32
|
type ExtraFields<METADATA = unknown> = {
|
|
32
33
|
streaming?: boolean;
|
|
33
34
|
metadata?: METADATA;
|
package/dist/UIMessages.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UIMessages.d.ts","sourceRoot":"","sources":["../src/UIMessages.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,SAAS,IAAI,WAAW,
|
|
1
|
+
{"version":3,"file":"UIMessages.d.ts","sourceRoot":"","sources":["../src/UIMessages.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,SAAS,IAAI,WAAW,EAU7B,KAAK,WAAW,EAChB,KAAK,OAAO,EACb,MAAM,IAAI,CAAC;AAUZ,OAAO,KAAK,EACV,UAAU,EACV,aAAa,EACb,eAAe,EAGhB,MAAM,iBAAiB,CAAC;AAGzB,MAAM,MAAM,QAAQ,GAAG,WAAW,GAAG,aAAa,CAAC;AAEnD,MAAM,MAAM,SAAS,CACnB,QAAQ,GAAG,OAAO,EAClB,UAAU,SAAS,WAAW,GAAG,WAAW,EAC5C,KAAK,SAAS,OAAO,GAAG,OAAO,IAC7B,WAAW,CAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,CAAC,GAAG;IAC7C,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,QAAQ,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF;;;;;;GAMG;AACH,wBAAsB,cAAc,CAAC,QAAQ,GAAG,OAAO,EACrD,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAAC,EAAE,EAC/B,IAAI,EAAE;IACJ,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB,GACA,OAAO,CAAC,CAAC,UAAU,GAAG;IAAE,SAAS,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,QAAQ,CAAA;CAAE,CAAC,EAAE,CAAC,CAiEvE;AA8BD,KAAK,WAAW,CAAC,QAAQ,GAAG,OAAO,IAAI;IACrC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,YAAY,CAC1B,QAAQ,GAAG,OAAO,EAClB,UAAU,SAAS,WAAW,GAAG,WAAW,EAC5C,KAAK,SAAS,OAAO,GAAG,OAAO,EAE/B,QAAQ,EAAE,CAAC,UAAU,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,EAAE,GAC/C,SAAS,CAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,CAAC,EAAE,CAiB1C;AA+dD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,SAAS,EAAE,CA2CpE"}
|
package/dist/UIMessages.js
CHANGED
|
@@ -9,8 +9,8 @@ import { omit, pick } from "convex-helpers";
|
|
|
9
9
|
* @param meta - The metadata to add to the MessageDocs.
|
|
10
10
|
* @returns
|
|
11
11
|
*/
|
|
12
|
-
export function fromUIMessages(messages, meta) {
|
|
13
|
-
|
|
12
|
+
export async function fromUIMessages(messages, meta) {
|
|
13
|
+
const nested = await Promise.all(messages.map(async (uiMessage) => {
|
|
14
14
|
const stepOrder = uiMessage.stepOrder;
|
|
15
15
|
const commonFields = {
|
|
16
16
|
...pick(meta, [
|
|
@@ -21,14 +21,15 @@ export function fromUIMessages(messages, meta) {
|
|
|
21
21
|
"providerOptions",
|
|
22
22
|
"metadata",
|
|
23
23
|
]),
|
|
24
|
-
...omit(uiMessage, ["parts", "role", "key", "text"]),
|
|
24
|
+
...omit(uiMessage, ["parts", "role", "key", "text", "userId"]),
|
|
25
|
+
userId: uiMessage.userId ?? meta.userId,
|
|
25
26
|
status: uiMessage.status === "streaming" ? "pending" : "success",
|
|
26
27
|
streaming: uiMessage.status === "streaming",
|
|
27
28
|
// to override
|
|
28
29
|
_id: uiMessage.id,
|
|
29
30
|
tool: false,
|
|
30
31
|
};
|
|
31
|
-
const modelMessages = convertToModelMessages([uiMessage]);
|
|
32
|
+
const modelMessages = await convertToModelMessages([uiMessage]);
|
|
32
33
|
return modelMessages
|
|
33
34
|
.map((modelMessage, i) => {
|
|
34
35
|
if (modelMessage.content.length === 0) {
|
|
@@ -48,17 +49,22 @@ export function fromUIMessages(messages, meta) {
|
|
|
48
49
|
sources: fromSourceParts(uiMessage.parts),
|
|
49
50
|
};
|
|
50
51
|
if (Array.isArray(modelMessage.content)) {
|
|
51
|
-
|
|
52
|
-
|
|
52
|
+
// Find a content part with providerOptions (type assertion needed for SDK compatibility)
|
|
53
|
+
const partWithProviderOptions = modelMessage.content.find((c) => "providerOptions" in c && c.providerOptions !== undefined);
|
|
54
|
+
if (partWithProviderOptions?.providerOptions) {
|
|
53
55
|
// convertToModelMessages changes providerMetadata to providerOptions
|
|
54
|
-
|
|
55
|
-
|
|
56
|
+
const providerOptions = partWithProviderOptions.providerOptions;
|
|
57
|
+
if (providerOptions) {
|
|
58
|
+
doc.providerMetadata = providerOptions;
|
|
59
|
+
doc.providerOptions ??= providerOptions;
|
|
60
|
+
}
|
|
56
61
|
}
|
|
57
62
|
}
|
|
58
63
|
return doc;
|
|
59
64
|
})
|
|
60
65
|
.filter((d) => d !== undefined);
|
|
61
|
-
});
|
|
66
|
+
}));
|
|
67
|
+
return nested.flat();
|
|
62
68
|
}
|
|
63
69
|
function fromSourceParts(parts) {
|
|
64
70
|
return parts
|
|
@@ -188,6 +194,7 @@ function createSystemUIMessage(message) {
|
|
|
188
194
|
text,
|
|
189
195
|
role: "system",
|
|
190
196
|
agentName: message.agentName,
|
|
197
|
+
userId: message.userId,
|
|
191
198
|
parts: [{ type: "text", text, ...partCommon }],
|
|
192
199
|
metadata: message.metadata,
|
|
193
200
|
};
|
|
@@ -233,6 +240,7 @@ function createUserUIMessage(message) {
|
|
|
233
240
|
key: `${message.threadId}-${message.order}-${message.stepOrder}`,
|
|
234
241
|
text,
|
|
235
242
|
role: "user",
|
|
243
|
+
userId: message.userId,
|
|
236
244
|
parts,
|
|
237
245
|
metadata: message.metadata,
|
|
238
246
|
};
|
|
@@ -248,6 +256,7 @@ function createAssistantUIMessage(groupUnordered) {
|
|
|
248
256
|
stepOrder: firstMessage.stepOrder,
|
|
249
257
|
key: `${firstMessage.threadId}-${firstMessage.order}-${firstMessage.stepOrder}`,
|
|
250
258
|
agentName: firstMessage.agentName,
|
|
259
|
+
userId: firstMessage.userId,
|
|
251
260
|
};
|
|
252
261
|
// Get status from last message
|
|
253
262
|
const lastMessage = group[group.length - 1];
|
|
@@ -325,16 +334,43 @@ function createAssistantUIMessage(groupUnordered) {
|
|
|
325
334
|
break;
|
|
326
335
|
}
|
|
327
336
|
case "tool-result": {
|
|
328
|
-
const
|
|
329
|
-
|
|
330
|
-
|
|
337
|
+
const typedPart = contentPart;
|
|
338
|
+
// Check if this is an execution-denied result
|
|
339
|
+
if (typedPart.output?.type === "execution-denied") {
|
|
340
|
+
const call = allParts.find((part) => part.type === `tool-${contentPart.toolName}` &&
|
|
341
|
+
"toolCallId" in part &&
|
|
342
|
+
part.toolCallId === contentPart.toolCallId);
|
|
343
|
+
if (call) {
|
|
344
|
+
call.state = "output-denied";
|
|
345
|
+
if (!("approval" in call) || !call.approval) {
|
|
346
|
+
call.approval = {
|
|
347
|
+
id: "",
|
|
348
|
+
approved: false,
|
|
349
|
+
reason: typedPart.output.reason,
|
|
350
|
+
};
|
|
351
|
+
}
|
|
352
|
+
else {
|
|
353
|
+
const approval = call.approval;
|
|
354
|
+
approval.approved = false;
|
|
355
|
+
approval.reason = typedPart.output.reason;
|
|
356
|
+
}
|
|
357
|
+
}
|
|
358
|
+
break;
|
|
359
|
+
}
|
|
360
|
+
const output = typeof typedPart.output?.type === "string"
|
|
361
|
+
? typedPart.output.value
|
|
362
|
+
: typedPart.output;
|
|
363
|
+
// Check for error at both the content part level (isError) and message level
|
|
364
|
+
// isError may exist on stored tool results but isn't in ToolResultPart type
|
|
365
|
+
const hasError = contentPart.isError || message.error;
|
|
366
|
+
const errorText = message.error || (hasError ? String(output) : undefined);
|
|
331
367
|
const call = allParts.find((part) => part.type === `tool-${contentPart.toolName}` &&
|
|
332
368
|
"toolCallId" in part &&
|
|
333
369
|
part.toolCallId === contentPart.toolCallId);
|
|
334
370
|
if (call) {
|
|
335
|
-
if (
|
|
371
|
+
if (hasError) {
|
|
336
372
|
call.state = "output-error";
|
|
337
|
-
call.errorText =
|
|
373
|
+
call.errorText = errorText ?? "Unknown error";
|
|
338
374
|
call.output = output;
|
|
339
375
|
}
|
|
340
376
|
else {
|
|
@@ -343,14 +379,14 @@ function createAssistantUIMessage(groupUnordered) {
|
|
|
343
379
|
}
|
|
344
380
|
}
|
|
345
381
|
else {
|
|
346
|
-
|
|
347
|
-
if (
|
|
382
|
+
// Tool call is on a previous page - create standalone tool part
|
|
383
|
+
if (hasError) {
|
|
348
384
|
allParts.push({
|
|
349
385
|
type: `tool-${contentPart.toolName}`,
|
|
350
386
|
toolCallId: contentPart.toolCallId,
|
|
351
387
|
state: "output-error",
|
|
352
388
|
input: undefined,
|
|
353
|
-
errorText:
|
|
389
|
+
errorText: errorText ?? "Unknown error",
|
|
354
390
|
callProviderMetadata: message.providerMetadata,
|
|
355
391
|
});
|
|
356
392
|
}
|
|
@@ -367,6 +403,50 @@ function createAssistantUIMessage(groupUnordered) {
|
|
|
367
403
|
}
|
|
368
404
|
break;
|
|
369
405
|
}
|
|
406
|
+
case "tool-approval-request": {
|
|
407
|
+
// Find the matching tool call
|
|
408
|
+
const typedPart = contentPart;
|
|
409
|
+
const toolCallPart = allParts.find((part) => "toolCallId" in part && part.toolCallId === typedPart.toolCallId);
|
|
410
|
+
if (toolCallPart) {
|
|
411
|
+
toolCallPart.state = "approval-requested";
|
|
412
|
+
toolCallPart.approval = {
|
|
413
|
+
id: typedPart.approvalId,
|
|
414
|
+
};
|
|
415
|
+
}
|
|
416
|
+
else {
|
|
417
|
+
console.warn("Tool approval request without preceding tool call", contentPart);
|
|
418
|
+
}
|
|
419
|
+
break;
|
|
420
|
+
}
|
|
421
|
+
case "tool-approval-response": {
|
|
422
|
+
// Find the tool call that has this approval by matching approval.id
|
|
423
|
+
const typedPart = contentPart;
|
|
424
|
+
const toolCallPart = allParts.find((part) => "approval" in part &&
|
|
425
|
+
part.approval
|
|
426
|
+
?.id === typedPart.approvalId);
|
|
427
|
+
if (toolCallPart) {
|
|
428
|
+
if (typedPart.approved) {
|
|
429
|
+
toolCallPart.state = "approval-responded";
|
|
430
|
+
toolCallPart.approval = {
|
|
431
|
+
id: typedPart.approvalId,
|
|
432
|
+
approved: true,
|
|
433
|
+
reason: typedPart.reason,
|
|
434
|
+
};
|
|
435
|
+
}
|
|
436
|
+
else {
|
|
437
|
+
toolCallPart.state = "output-denied";
|
|
438
|
+
toolCallPart.approval = {
|
|
439
|
+
id: typedPart.approvalId,
|
|
440
|
+
approved: false,
|
|
441
|
+
reason: typedPart.reason,
|
|
442
|
+
};
|
|
443
|
+
}
|
|
444
|
+
}
|
|
445
|
+
else {
|
|
446
|
+
console.warn("Tool approval response without matching approval request", contentPart);
|
|
447
|
+
}
|
|
448
|
+
break;
|
|
449
|
+
}
|
|
370
450
|
default: {
|
|
371
451
|
const maybeSource = contentPart;
|
|
372
452
|
if (maybeSource.type === "source") {
|
|
@@ -433,11 +513,12 @@ export function combineUIMessages(messages) {
|
|
|
433
513
|
continue;
|
|
434
514
|
}
|
|
435
515
|
const previousPartIndex = newParts.findIndex((p) => getToolCallId(p) === toolCallId);
|
|
436
|
-
|
|
437
|
-
|
|
516
|
+
if (previousPartIndex === -1) {
|
|
517
|
+
// Tool call not found in previous parts, add it as new
|
|
438
518
|
newParts.push(part);
|
|
439
519
|
continue;
|
|
440
520
|
}
|
|
521
|
+
const previousPart = newParts.splice(previousPartIndex, 1)[0];
|
|
441
522
|
newParts.push(mergeParts(previousPart, part));
|
|
442
523
|
}
|
|
443
524
|
acc.push({
|
package/dist/UIMessages.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UIMessages.js","sourceRoot":"","sources":["../src/UIMessages.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"UIMessages.js","sourceRoot":"","sources":["../src/UIMessages.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,42 +1,126 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type { Tool,
|
|
3
|
-
import type { Agent } from "./index.js";
|
|
1
|
+
import type { ToolResultOutput } from "@ai-sdk/provider-utils";
|
|
2
|
+
import type { FlexibleSchema, ModelMessage, Tool, ToolExecutionOptions, ToolSet } from "ai";
|
|
4
3
|
import type { GenericActionCtx, GenericDataModel } from "convex/server";
|
|
5
4
|
import type { ProviderOptions } from "../validators.js";
|
|
5
|
+
import type { Agent } from "./index.js";
|
|
6
6
|
export type ToolCtx<DataModel extends GenericDataModel = GenericDataModel> = GenericActionCtx<DataModel> & {
|
|
7
7
|
agent?: Agent;
|
|
8
8
|
userId?: string;
|
|
9
9
|
threadId?: string;
|
|
10
10
|
messageId?: string;
|
|
11
11
|
};
|
|
12
|
+
/**
|
|
13
|
+
* Function that is called to determine if the tool needs approval before it can be executed.
|
|
14
|
+
*/
|
|
15
|
+
export type ToolNeedsApprovalFunctionCtx<INPUT, Ctx extends ToolCtx = ToolCtx> = (ctx: Ctx, input: INPUT, options: {
|
|
16
|
+
/**
|
|
17
|
+
* The ID of the tool call. You can use it e.g. when sending tool-call related information with stream data.
|
|
18
|
+
*/
|
|
19
|
+
toolCallId: string;
|
|
20
|
+
/**
|
|
21
|
+
* Messages that were sent to the language model to initiate the response that contained the tool call.
|
|
22
|
+
* The messages **do not** include the system prompt nor the assistant response that contained the tool call.
|
|
23
|
+
*/
|
|
24
|
+
messages: ModelMessage[];
|
|
25
|
+
/**
|
|
26
|
+
* Additional context.
|
|
27
|
+
*
|
|
28
|
+
* Experimental (can break in patch releases).
|
|
29
|
+
*/
|
|
30
|
+
experimental_context?: unknown;
|
|
31
|
+
}) => boolean | PromiseLike<boolean>;
|
|
32
|
+
export type ToolExecuteFunctionCtx<INPUT, OUTPUT, Ctx extends ToolCtx = ToolCtx> = (ctx: Ctx, input: INPUT, options: ToolExecutionOptions) => AsyncIterable<OUTPUT> | PromiseLike<OUTPUT>;
|
|
33
|
+
type NeverOptional<N, T> = 0 extends 1 & N ? Partial<T> : [N] extends [never] ? Partial<Record<keyof T, undefined>> : T;
|
|
34
|
+
export type ToolOutputPropertiesCtx<INPUT, OUTPUT, Ctx extends ToolCtx = ToolCtx> = NeverOptional<OUTPUT, {
|
|
35
|
+
/**
|
|
36
|
+
* An async function that is called with the arguments from the tool call and produces a result.
|
|
37
|
+
* If `execute` (or `handler`) is not provided, the tool will not be executed automatically.
|
|
38
|
+
*
|
|
39
|
+
* @param input - The input of the tool call.
|
|
40
|
+
* @param options.abortSignal - A signal that can be used to abort the tool call.
|
|
41
|
+
*/
|
|
42
|
+
execute: ToolExecuteFunctionCtx<INPUT, OUTPUT, Ctx>;
|
|
43
|
+
outputSchema?: FlexibleSchema<OUTPUT>;
|
|
44
|
+
handler?: never;
|
|
45
|
+
} | {
|
|
46
|
+
/** @deprecated Use execute instead. */
|
|
47
|
+
handler: ToolExecuteFunctionCtx<INPUT, OUTPUT, Ctx>;
|
|
48
|
+
outputSchema?: FlexibleSchema<OUTPUT>;
|
|
49
|
+
execute?: never;
|
|
50
|
+
} | {
|
|
51
|
+
outputSchema: FlexibleSchema<OUTPUT>;
|
|
52
|
+
execute?: never;
|
|
53
|
+
handler?: never;
|
|
54
|
+
}>;
|
|
55
|
+
export type ToolInputProperties<INPUT> = {
|
|
56
|
+
/**
|
|
57
|
+
* The schema of the input that the tool expects.
|
|
58
|
+
* The language model will use this to generate the input.
|
|
59
|
+
* It is also used to validate the output of the language model.
|
|
60
|
+
*
|
|
61
|
+
* You can use descriptions on the schema properties to make the input understandable for the language model.
|
|
62
|
+
*/
|
|
63
|
+
inputSchema: FlexibleSchema<INPUT>;
|
|
64
|
+
args?: never;
|
|
65
|
+
} | {
|
|
66
|
+
/**
|
|
67
|
+
* The schema of the input that the tool expects. The language model will use this to generate the input.
|
|
68
|
+
* It is also used to validate the output of the language model.
|
|
69
|
+
* Use descriptions to make the input understandable for the language model.
|
|
70
|
+
*
|
|
71
|
+
* @deprecated Use inputSchema instead.
|
|
72
|
+
*/
|
|
73
|
+
args: FlexibleSchema<INPUT>;
|
|
74
|
+
inputSchema?: never;
|
|
75
|
+
};
|
|
12
76
|
/**
|
|
13
77
|
* This is a wrapper around the ai.tool function that adds extra context to the
|
|
14
78
|
* tool call, including the action context, userId, threadId, and messageId.
|
|
15
79
|
* @param tool The tool. See https://sdk.vercel.ai/docs/ai-sdk-core/tools-and-tool-calling
|
|
16
|
-
*
|
|
80
|
+
* Currently contains deprecated parameters `args` and `handler` to maintain backwards compatibility
|
|
81
|
+
* but these will be removed in the future. Use `inputSchema` and `execute` instead, respectively.
|
|
82
|
+
*
|
|
17
83
|
* @returns A tool to be used with the AI SDK.
|
|
18
84
|
*/
|
|
19
85
|
export declare function createTool<INPUT, OUTPUT, Ctx extends ToolCtx = ToolCtx>(def: {
|
|
20
86
|
/**
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
87
|
+
* An optional description of what the tool does.
|
|
88
|
+
* Will be used by the language model to decide whether to use the tool.
|
|
89
|
+
* Not used for provider-defined tools.
|
|
90
|
+
*/
|
|
25
91
|
description?: string;
|
|
26
92
|
/**
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
93
|
+
* An optional title of the tool.
|
|
94
|
+
*/
|
|
95
|
+
title?: string;
|
|
96
|
+
/**
|
|
97
|
+
* Additional provider-specific metadata. They are passed through
|
|
98
|
+
* to the provider from the AI SDK and enable provider-specific
|
|
99
|
+
* functionality that can be fully encapsulated in the provider.
|
|
100
|
+
*/
|
|
101
|
+
providerOptions?: ProviderOptions;
|
|
102
|
+
} & ToolInputProperties<INPUT> & {
|
|
32
103
|
/**
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
104
|
+
* An optional list of input examples that show the language
|
|
105
|
+
* model what the input should look like.
|
|
106
|
+
*/
|
|
107
|
+
inputExamples?: Array<{
|
|
108
|
+
input: NoInfer<INPUT>;
|
|
109
|
+
}>;
|
|
110
|
+
/**
|
|
111
|
+
* Whether the tool needs approval before it can be executed.
|
|
112
|
+
*/
|
|
113
|
+
needsApproval?: boolean | ToolNeedsApprovalFunctionCtx<[
|
|
114
|
+
INPUT
|
|
115
|
+
] extends [never] ? unknown : INPUT, Ctx>;
|
|
116
|
+
/**
|
|
117
|
+
* Strict mode setting for the tool.
|
|
118
|
+
*
|
|
119
|
+
* Providers that support strict mode will use this setting to determine
|
|
120
|
+
* how the input should be generated. Strict mode will always produce
|
|
121
|
+
* valid inputs, but it might limit what input schemas are supported.
|
|
122
|
+
*/
|
|
123
|
+
strict?: boolean;
|
|
40
124
|
/**
|
|
41
125
|
* Provide the context to use, e.g. when defining the tool at runtime.
|
|
42
126
|
*/
|
|
@@ -45,22 +129,42 @@ export declare function createTool<INPUT, OUTPUT, Ctx extends ToolCtx = ToolCtx>
|
|
|
45
129
|
* Optional function that is called when the argument streaming starts.
|
|
46
130
|
* Only called when the tool is used in a streaming context.
|
|
47
131
|
*/
|
|
48
|
-
onInputStart?: (ctx: Ctx, options:
|
|
132
|
+
onInputStart?: (ctx: Ctx, options: ToolExecutionOptions) => void | PromiseLike<void>;
|
|
49
133
|
/**
|
|
50
134
|
* Optional function that is called when an argument streaming delta is available.
|
|
51
135
|
* Only called when the tool is used in a streaming context.
|
|
52
136
|
*/
|
|
53
137
|
onInputDelta?: (ctx: Ctx, options: {
|
|
54
138
|
inputTextDelta: string;
|
|
55
|
-
} &
|
|
139
|
+
} & ToolExecutionOptions) => void | PromiseLike<void>;
|
|
56
140
|
/**
|
|
57
141
|
* Optional function that is called when a tool call can be started,
|
|
58
142
|
* even if the execute function is not provided.
|
|
59
143
|
*/
|
|
60
144
|
onInputAvailable?: (ctx: Ctx, options: {
|
|
61
|
-
input: [INPUT] extends [never] ?
|
|
62
|
-
} &
|
|
63
|
-
|
|
145
|
+
input: [INPUT] extends [never] ? unknown : INPUT;
|
|
146
|
+
} & ToolExecutionOptions) => void | PromiseLike<void>;
|
|
147
|
+
} & ToolOutputPropertiesCtx<INPUT, OUTPUT, Ctx> & {
|
|
148
|
+
/**
|
|
149
|
+
* Optional conversion function that maps the tool result to an output that can be used by the language model.
|
|
150
|
+
*
|
|
151
|
+
* If not provided, the tool result will be sent as a JSON object.
|
|
152
|
+
*/
|
|
153
|
+
toModelOutput?: (ctx: Ctx, options: {
|
|
154
|
+
/**
|
|
155
|
+
* The ID of the tool call. You can use it e.g. when sending tool-call related information with stream data.
|
|
156
|
+
*/
|
|
157
|
+
toolCallId: string;
|
|
158
|
+
/**
|
|
159
|
+
* The input of the tool call.
|
|
160
|
+
*/
|
|
161
|
+
input: [INPUT] extends [never] ? unknown : INPUT;
|
|
162
|
+
/**
|
|
163
|
+
* The output of the tool call.
|
|
164
|
+
*/
|
|
165
|
+
output: 0 extends 1 & OUTPUT ? any : [OUTPUT] extends [never] ? any : NoInfer<OUTPUT>;
|
|
166
|
+
}) => ToolResultOutput | PromiseLike<ToolResultOutput>;
|
|
64
167
|
}): Tool<INPUT, OUTPUT>;
|
|
65
168
|
export declare function wrapTools(ctx: ToolCtx, ...toolSets: (ToolSet | undefined)[]): ToolSet;
|
|
169
|
+
export {};
|
|
66
170
|
//# sourceMappingURL=createTool.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createTool.d.ts","sourceRoot":"","sources":["../../src/client/createTool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"createTool.d.ts","sourceRoot":"","sources":["../../src/client/createTool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,IAAI,EACJ,oBAAoB,EACpB,OAAO,EACR,MAAM,IAAI,CAAC;AAEZ,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACxE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAWxC,MAAM,MAAM,OAAO,CAAC,SAAS,SAAS,gBAAgB,GAAG,gBAAgB,IACvE,gBAAgB,CAAC,SAAS,CAAC,GAAG;IAC5B,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEJ;;GAEG;AACH,MAAM,MAAM,4BAA4B,CACtC,KAAK,EACL,GAAG,SAAS,OAAO,GAAG,OAAO,IAC3B,CACF,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE;IACP;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC,KACE,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;AAEpC,MAAM,MAAM,sBAAsB,CAChC,KAAK,EACL,MAAM,EACN,GAAG,SAAS,OAAO,GAAG,OAAO,IAC3B,CACF,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,oBAAoB,KAC1B,aAAa,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAEjD,KAAK,aAAa,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GACtC,OAAO,CAAC,CAAC,CAAC,GACV,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GACjB,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC,CAAC,GACnC,CAAC,CAAC;AAER,MAAM,MAAM,uBAAuB,CACjC,KAAK,EACL,MAAM,EACN,GAAG,SAAS,OAAO,GAAG,OAAO,IAC3B,aAAa,CACf,MAAM,EACJ;IACE;;;;;;OAMG;IACH,OAAO,EAAE,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;IACpD,YAAY,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IACtC,OAAO,CAAC,EAAE,KAAK,CAAC;CACjB,GACD;IACE,uCAAuC;IACvC,OAAO,EAAE,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;IACpD,YAAY,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IACtC,OAAO,CAAC,EAAE,KAAK,CAAC;CACjB,GACD;IACE,YAAY,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IACrC,OAAO,CAAC,EAAE,KAAK,CAAC;IAChB,OAAO,CAAC,EAAE,KAAK,CAAC;CACjB,CACJ,CAAC;AAEF,MAAM,MAAM,mBAAmB,CAAC,KAAK,IACjC;IACE;;;;;;OAMG;IACH,WAAW,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;IACnC,IAAI,CAAC,EAAE,KAAK,CAAC;CACd,GACD;IACE;;;;;;OAMG;IACH,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;IAC5B,WAAW,CAAC,EAAE,KAAK,CAAC;CACrB,CAAC;AAEN;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,SAAS,OAAO,GAAG,OAAO,EACrE,GAAG,EAAE;IACH;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC,GAAG,mBAAmB,CAAC,KAAK,CAAC,GAAG;IAC7B;;;OAGG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC;QACpB,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;KACvB,CAAC,CAAC;IACH;;OAEG;IACH,aAAa,CAAC,EACV,OAAO,GACP,4BAA4B,CAC1B;QAAC,KAAK;KAAC,SAAS,CAAC,KAAK,CAAC,GAAG,OAAO,GAAG,KAAK,EACzC,GAAG,CACJ,CAAC;IACN;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,GAAG,CAAC,EAAE,GAAG,CAAC;IACV;;;OAGG;IACH,YAAY,CAAC,EAAE,CACb,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,oBAAoB,KAC1B,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAC9B;;;OAGG;IACH,YAAY,CAAC,EAAE,CACb,GAAG,EAAE,GAAG,EACR,OAAO,EAAE;QAAE,cAAc,EAAE,MAAM,CAAA;KAAE,GAAG,oBAAoB,KACvD,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAC9B;;;OAGG;IACH,gBAAgB,CAAC,EAAE,CACjB,GAAG,EAAE,GAAG,EACR,OAAO,EAAE;QACP,KAAK,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,OAAO,GAAG,KAAK,CAAC;KAClD,GAAG,oBAAoB,KACrB,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;CAC/B,GAAG,uBAAuB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,GAAG;IAChD;;;;OAIG;IACH,aAAa,CAAC,EAAE,CACd,GAAG,EAAE,GAAG,EACR,OAAO,EAAE;QACP;;WAEG;QACH,UAAU,EAAE,MAAM,CAAC;QACnB;;WAEG;QACH,KAAK,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,OAAO,GAAG,KAAK,CAAC;QACjD;;WAEG;QACH,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,MAAM,GACxB,GAAG,GACH,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,GACtB,GAAG,GACH,OAAO,CAAC,MAAM,CAAC,CAAC;KACvB,KACE,gBAAgB,GAAG,WAAW,CAAC,gBAAgB,CAAC,CAAC;CACvD,GACF,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CA8FrB;AAMD,wBAAgB,SAAS,CACvB,GAAG,EAAE,OAAO,EACZ,GAAG,QAAQ,EAAE,CAAC,OAAO,GAAG,SAAS,CAAC,EAAE,GACnC,OAAO,CAgBT"}
|
|
@@ -1,36 +1,93 @@
|
|
|
1
1
|
import { tool } from "ai";
|
|
2
|
+
const MIGRATION_URL = "https://github.com/get-convex/agent/blob/main/MIGRATION.md";
|
|
3
|
+
const warnedDeprecations = new Set();
|
|
4
|
+
function warnDeprecation(key, message) {
|
|
5
|
+
if (!warnedDeprecations.has(key)) {
|
|
6
|
+
warnedDeprecations.add(key);
|
|
7
|
+
console.warn(`[@convex-dev/agent] ${message}\n See: ${MIGRATION_URL}`);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
2
10
|
/**
|
|
3
11
|
* This is a wrapper around the ai.tool function that adds extra context to the
|
|
4
12
|
* tool call, including the action context, userId, threadId, and messageId.
|
|
5
13
|
* @param tool The tool. See https://sdk.vercel.ai/docs/ai-sdk-core/tools-and-tool-calling
|
|
6
|
-
*
|
|
14
|
+
* Currently contains deprecated parameters `args` and `handler` to maintain backwards compatibility
|
|
15
|
+
* but these will be removed in the future. Use `inputSchema` and `execute` instead, respectively.
|
|
16
|
+
*
|
|
7
17
|
* @returns A tool to be used with the AI SDK.
|
|
8
18
|
*/
|
|
9
19
|
export function createTool(def) {
|
|
20
|
+
const inputSchema = def.inputSchema ?? def.args;
|
|
21
|
+
if (!inputSchema)
|
|
22
|
+
throw new Error("To use a Convex tool, you must provide an `inputSchema` (or `args`)");
|
|
23
|
+
if (def.args && !def.inputSchema) {
|
|
24
|
+
warnDeprecation("createTool.args", "createTool: 'args' is deprecated. Use 'inputSchema' instead.");
|
|
25
|
+
}
|
|
26
|
+
if (def.handler && !def.execute) {
|
|
27
|
+
warnDeprecation("createTool.handler", "createTool: 'handler' is deprecated. Use 'execute' instead.");
|
|
28
|
+
}
|
|
29
|
+
const executeHandler = def.execute ?? def.handler;
|
|
30
|
+
if (!executeHandler && !def.outputSchema)
|
|
31
|
+
throw new Error("To use a Convex tool, you must either provide an execute" +
|
|
32
|
+
" handler function, define an outputSchema, or both");
|
|
10
33
|
const t = tool({
|
|
11
34
|
type: "function",
|
|
12
35
|
__acceptsCtx: true,
|
|
13
36
|
ctx: def.ctx,
|
|
14
37
|
description: def.description,
|
|
15
|
-
|
|
16
|
-
|
|
38
|
+
title: def.title,
|
|
39
|
+
providerOptions: def.providerOptions,
|
|
40
|
+
inputSchema,
|
|
41
|
+
inputExamples: def.inputExamples,
|
|
42
|
+
needsApproval(input, options) {
|
|
43
|
+
const needsApproval = def.needsApproval;
|
|
44
|
+
if (!needsApproval || typeof needsApproval === "boolean")
|
|
45
|
+
return Boolean(needsApproval);
|
|
17
46
|
if (!getCtx(this)) {
|
|
18
47
|
throw new Error("To use a Convex tool, you must either provide the ctx" +
|
|
19
48
|
" at definition time (dynamically in an action), or use the Agent to" +
|
|
20
49
|
" call it (which injects the ctx, userId and threadId)");
|
|
21
50
|
}
|
|
22
|
-
return
|
|
51
|
+
return needsApproval(getCtx(this), input, options);
|
|
23
52
|
},
|
|
24
|
-
|
|
53
|
+
strict: def.strict,
|
|
54
|
+
...(executeHandler
|
|
55
|
+
? {
|
|
56
|
+
execute(input, options) {
|
|
57
|
+
if (!getCtx(this)) {
|
|
58
|
+
throw new Error("To use a Convex tool, you must either provide the ctx" +
|
|
59
|
+
" at definition time (dynamically in an action), or use the Agent to" +
|
|
60
|
+
" call it (which injects the ctx, userId and threadId)");
|
|
61
|
+
}
|
|
62
|
+
return executeHandler(getCtx(this), input, options);
|
|
63
|
+
},
|
|
64
|
+
}
|
|
65
|
+
: {}),
|
|
66
|
+
outputSchema: def.outputSchema,
|
|
25
67
|
});
|
|
26
68
|
if (def.onInputStart) {
|
|
27
|
-
|
|
69
|
+
const origOnInputStart = def.onInputStart;
|
|
70
|
+
t.onInputStart = function (options) {
|
|
71
|
+
return origOnInputStart.call(this, getCtx(this), options);
|
|
72
|
+
};
|
|
28
73
|
}
|
|
29
74
|
if (def.onInputDelta) {
|
|
30
|
-
|
|
75
|
+
const origOnInputDelta = def.onInputDelta;
|
|
76
|
+
t.onInputDelta = function (options) {
|
|
77
|
+
return origOnInputDelta.call(this, getCtx(this), options);
|
|
78
|
+
};
|
|
31
79
|
}
|
|
32
80
|
if (def.onInputAvailable) {
|
|
33
|
-
|
|
81
|
+
const origOnInputAvailable = def.onInputAvailable;
|
|
82
|
+
t.onInputAvailable = function (options) {
|
|
83
|
+
return origOnInputAvailable.call(this, getCtx(this), options);
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
if (def.toModelOutput) {
|
|
87
|
+
const origToModelOutput = def.toModelOutput;
|
|
88
|
+
t.toModelOutput = function (options) {
|
|
89
|
+
return origToModelOutput.call(this, getCtx(this), options);
|
|
90
|
+
};
|
|
34
91
|
}
|
|
35
92
|
return t;
|
|
36
93
|
}
|