@copilotkit/runtime 1.82.0 → 1.83.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/agent/index.cjs +8 -3
- package/dist/agent/index.cjs.map +1 -1
- package/dist/agent/index.d.cts +41 -1
- package/dist/agent/index.d.cts.map +1 -1
- package/dist/agent/index.d.mts +42 -2
- package/dist/agent/index.d.mts.map +1 -1
- package/dist/agent/index.mjs +8 -3
- package/dist/agent/index.mjs.map +1 -1
- package/dist/agent/url-download.cjs +504 -0
- package/dist/agent/url-download.cjs.map +1 -0
- package/dist/agent/url-download.d.cts +80 -0
- package/dist/agent/url-download.d.cts.map +1 -0
- package/dist/agent/url-download.d.mts +80 -0
- package/dist/agent/url-download.d.mts.map +1 -0
- package/dist/agent/url-download.mjs +501 -0
- package/dist/agent/url-download.mjs.map +1 -0
- package/dist/lib/runtime/copilot-runtime.cjs +2 -1
- package/dist/lib/runtime/copilot-runtime.cjs.map +1 -1
- package/dist/lib/runtime/copilot-runtime.d.cts +5 -0
- package/dist/lib/runtime/copilot-runtime.d.cts.map +1 -1
- package/dist/lib/runtime/copilot-runtime.d.mts +5 -0
- package/dist/lib/runtime/copilot-runtime.d.mts.map +1 -1
- package/dist/lib/runtime/copilot-runtime.mjs +2 -1
- package/dist/lib/runtime/copilot-runtime.mjs.map +1 -1
- package/dist/lib/runtime/telemetry-agent-runner.cjs +3 -0
- package/dist/lib/runtime/telemetry-agent-runner.cjs.map +1 -1
- package/dist/lib/runtime/telemetry-agent-runner.d.cts +7 -1
- package/dist/lib/runtime/telemetry-agent-runner.d.cts.map +1 -1
- package/dist/lib/runtime/telemetry-agent-runner.d.mts +7 -1
- package/dist/lib/runtime/telemetry-agent-runner.d.mts.map +1 -1
- package/dist/lib/runtime/telemetry-agent-runner.mjs +3 -0
- package/dist/lib/runtime/telemetry-agent-runner.mjs.map +1 -1
- package/dist/package.cjs +1 -1
- package/dist/package.mjs +1 -1
- package/dist/v2/index.cjs +12 -3
- package/dist/v2/index.d.cts +5 -3
- package/dist/v2/index.d.mts +5 -3
- package/dist/v2/index.mjs +6 -5
- package/dist/v2/runtime/core/channel-manager.cjs +1 -1
- package/dist/v2/runtime/core/channel-manager.mjs +1 -1
- package/dist/v2/runtime/core/fetch-handler.cjs +2 -2
- package/dist/v2/runtime/core/fetch-handler.cjs.map +1 -1
- package/dist/v2/runtime/core/fetch-handler.mjs +2 -2
- package/dist/v2/runtime/core/fetch-handler.mjs.map +1 -1
- package/dist/v2/runtime/core/package-info.cjs +1 -1
- package/dist/v2/runtime/core/package-info.mjs +1 -1
- package/dist/v2/runtime/core/runtime.cjs +12 -2
- package/dist/v2/runtime/core/runtime.cjs.map +1 -1
- package/dist/v2/runtime/core/runtime.d.cts +40 -1
- package/dist/v2/runtime/core/runtime.d.cts.map +1 -1
- package/dist/v2/runtime/core/runtime.d.mts +40 -1
- package/dist/v2/runtime/core/runtime.d.mts.map +1 -1
- package/dist/v2/runtime/core/runtime.mjs +12 -2
- package/dist/v2/runtime/core/runtime.mjs.map +1 -1
- package/dist/v2/runtime/handlers/get-runtime-info.cjs +6 -6
- package/dist/v2/runtime/handlers/get-runtime-info.cjs.map +1 -1
- package/dist/v2/runtime/handlers/get-runtime-info.mjs +6 -6
- package/dist/v2/runtime/handlers/get-runtime-info.mjs.map +1 -1
- package/dist/v2/runtime/handlers/handle-connect.cjs +9 -1
- package/dist/v2/runtime/handlers/handle-connect.cjs.map +1 -1
- package/dist/v2/runtime/handlers/handle-connect.mjs +9 -1
- package/dist/v2/runtime/handlers/handle-connect.mjs.map +1 -1
- package/dist/v2/runtime/handlers/handle-inspector-learning.cjs +1 -1
- package/dist/v2/runtime/handlers/handle-inspector-learning.mjs +1 -1
- package/dist/v2/runtime/handlers/handle-run.cjs +16 -2
- package/dist/v2/runtime/handlers/handle-run.cjs.map +1 -1
- package/dist/v2/runtime/handlers/handle-run.mjs +16 -2
- package/dist/v2/runtime/handlers/handle-run.mjs.map +1 -1
- package/dist/v2/runtime/handlers/handle-stop.cjs +14 -3
- package/dist/v2/runtime/handlers/handle-stop.cjs.map +1 -1
- package/dist/v2/runtime/handlers/handle-stop.mjs +14 -3
- package/dist/v2/runtime/handlers/handle-stop.mjs.map +1 -1
- package/dist/v2/runtime/handlers/handle-trajectory-connect.cjs +1 -1
- package/dist/v2/runtime/handlers/handle-trajectory-connect.mjs +1 -1
- package/dist/v2/runtime/handlers/intelligence/annotate.cjs +2 -2
- package/dist/v2/runtime/handlers/intelligence/annotate.mjs +2 -2
- package/dist/v2/runtime/handlers/intelligence/memories.cjs +1 -1
- package/dist/v2/runtime/handlers/intelligence/memories.mjs +1 -1
- package/dist/v2/runtime/handlers/intelligence/run.cjs +4 -4
- package/dist/v2/runtime/handlers/intelligence/run.mjs +4 -4
- package/dist/v2/runtime/handlers/intelligence/threads.cjs +137 -31
- package/dist/v2/runtime/handlers/intelligence/threads.cjs.map +1 -1
- package/dist/v2/runtime/handlers/intelligence/threads.mjs +138 -32
- package/dist/v2/runtime/handlers/intelligence/threads.mjs.map +1 -1
- package/dist/v2/runtime/handlers/shared/agent-utils.cjs +3 -3
- package/dist/v2/runtime/handlers/shared/agent-utils.mjs +3 -3
- package/dist/v2/runtime/handlers/shared/platform-error.cjs +1 -1
- package/dist/v2/runtime/handlers/shared/platform-error.mjs +1 -1
- package/dist/v2/runtime/handlers/shared/resolve-intelligence-user.cjs +22 -3
- package/dist/v2/runtime/handlers/shared/resolve-intelligence-user.cjs.map +1 -1
- package/dist/v2/runtime/handlers/shared/resolve-intelligence-user.mjs +22 -4
- package/dist/v2/runtime/handlers/shared/resolve-intelligence-user.mjs.map +1 -1
- package/dist/v2/runtime/handlers/shared/sse-response.cjs +19 -2
- package/dist/v2/runtime/handlers/shared/sse-response.cjs.map +1 -1
- package/dist/v2/runtime/handlers/shared/sse-response.mjs +19 -2
- package/dist/v2/runtime/handlers/shared/sse-response.mjs.map +1 -1
- package/dist/v2/runtime/handlers/shared/thread-access.cjs +138 -0
- package/dist/v2/runtime/handlers/shared/thread-access.cjs.map +1 -0
- package/dist/v2/runtime/handlers/shared/thread-access.d.cts +29 -0
- package/dist/v2/runtime/handlers/shared/thread-access.d.cts.map +1 -0
- package/dist/v2/runtime/handlers/shared/thread-access.d.mts +29 -0
- package/dist/v2/runtime/handlers/shared/thread-access.d.mts.map +1 -0
- package/dist/v2/runtime/handlers/shared/thread-access.mjs +133 -0
- package/dist/v2/runtime/handlers/shared/thread-access.mjs.map +1 -0
- package/dist/v2/runtime/handlers/sse/connect.cjs +2 -1
- package/dist/v2/runtime/handlers/sse/connect.cjs.map +1 -1
- package/dist/v2/runtime/handlers/sse/connect.mjs +2 -1
- package/dist/v2/runtime/handlers/sse/connect.mjs.map +1 -1
- package/dist/v2/runtime/handlers/sse/run.cjs +23 -6
- package/dist/v2/runtime/handlers/sse/run.cjs.map +1 -1
- package/dist/v2/runtime/handlers/sse/run.mjs +23 -6
- package/dist/v2/runtime/handlers/sse/run.mjs.map +1 -1
- package/dist/v2/runtime/index.d.cts +3 -2
- package/dist/v2/runtime/index.d.cts.map +1 -1
- package/dist/v2/runtime/index.d.mts +3 -2
- package/dist/v2/runtime/index.d.mts.map +1 -1
- package/dist/v2/runtime/intelligence-platform/client.cjs +16 -4
- package/dist/v2/runtime/intelligence-platform/client.cjs.map +1 -1
- package/dist/v2/runtime/intelligence-platform/client.d.cts +4 -37
- package/dist/v2/runtime/intelligence-platform/client.d.cts.map +1 -1
- package/dist/v2/runtime/intelligence-platform/client.d.mts +4 -37
- package/dist/v2/runtime/intelligence-platform/client.d.mts.map +1 -1
- package/dist/v2/runtime/intelligence-platform/client.mjs +16 -4
- package/dist/v2/runtime/intelligence-platform/client.mjs.map +1 -1
- package/dist/v2/runtime/runner/agent-runner.cjs +55 -0
- package/dist/v2/runtime/runner/agent-runner.cjs.map +1 -1
- package/dist/v2/runtime/runner/agent-runner.d.cts +90 -6
- package/dist/v2/runtime/runner/agent-runner.d.cts.map +1 -1
- package/dist/v2/runtime/runner/agent-runner.d.mts +90 -6
- package/dist/v2/runtime/runner/agent-runner.d.mts.map +1 -1
- package/dist/v2/runtime/runner/agent-runner.mjs +50 -1
- package/dist/v2/runtime/runner/agent-runner.mjs.map +1 -1
- package/dist/v2/runtime/runner/in-memory.cjs +205 -25
- package/dist/v2/runtime/runner/in-memory.cjs.map +1 -1
- package/dist/v2/runtime/runner/in-memory.d.cts +112 -15
- package/dist/v2/runtime/runner/in-memory.d.cts.map +1 -1
- package/dist/v2/runtime/runner/in-memory.d.mts +112 -15
- package/dist/v2/runtime/runner/in-memory.d.mts.map +1 -1
- package/dist/v2/runtime/runner/in-memory.mjs +206 -27
- package/dist/v2/runtime/runner/in-memory.mjs.map +1 -1
- package/dist/v2/runtime/runner/index.d.cts +2 -2
- package/dist/v2/runtime/runner/index.d.mts +2 -2
- package/dist/v2/runtime/runner/index.mjs +2 -2
- package/package.json +6 -6
package/dist/agent/index.d.cts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
|
|
2
|
+
import { CreateSafeUrlDownloadOptions, SafeUrlDownloadOptions, createSafeUrlDownload } from "./url-download.cjs";
|
|
2
3
|
import { BuiltInAgentLearnedSkills, BuiltInAgentLearnedSkillsOptions } from "./learned-skills.cjs";
|
|
3
4
|
import { convertAISDKStream } from "./converters/aisdk.cjs";
|
|
4
5
|
import { TanStackChatMessage, TanStackInputResult, convertInputToTanStackAI, convertTanStackStream } from "./converters/tanstack.cjs";
|
|
@@ -6,7 +7,7 @@ import { z } from "zod";
|
|
|
6
7
|
import { InferSchemaOutput, ModelHostClass, StandardSchemaV1 } from "@copilotkit/shared";
|
|
7
8
|
import { AbstractAgent, BaseEvent, Interrupt, Message, ResumeEntry, RunAgentInput } from "@ag-ui/client";
|
|
8
9
|
import { Observable } from "rxjs";
|
|
9
|
-
import { LanguageModel, ModelMessage, ToolChoice, ToolSet } from "ai";
|
|
10
|
+
import { Experimental_DownloadFunction, LanguageModel, ModelMessage, ToolChoice, ToolSet } from "ai";
|
|
10
11
|
import { AgentCapabilities } from "@ag-ui/core";
|
|
11
12
|
import { StreamableHTTPClientTransportOptions } from "@modelcontextprotocol/sdk/client/streamableHttp.js";
|
|
12
13
|
|
|
@@ -228,6 +229,13 @@ type BuiltInAgentFactoryContext = AgentFactoryContext;
|
|
|
228
229
|
* Factory config for AI SDK backend.
|
|
229
230
|
* The factory must return an object with a `fullStream` async iterable
|
|
230
231
|
* (compatible with the result of `streamText()` — only `fullStream` is consumed).
|
|
232
|
+
*
|
|
233
|
+
* You own the `streamText()` call, so you also own its URL downloads. Pass
|
|
234
|
+
* `experimental_download: createSafeUrlDownload({ signal: ctx.abortSignal })`
|
|
235
|
+
* (imported from `@copilotkit/runtime/v2`) to keep the server from fetching
|
|
236
|
+
* internal addresses named in request attachments, and to stop the downloads
|
|
237
|
+
* when the run is aborted. BuiltInAgent's `urlDownload` setting does not apply
|
|
238
|
+
* here: setting it in factory mode throws when the agent is constructed.
|
|
231
239
|
*/
|
|
232
240
|
interface BuiltInAgentAISDKFactoryConfig {
|
|
233
241
|
/** Opt in to automatic snapshot acquisition before each run, including resumes. */
|
|
@@ -368,6 +376,33 @@ interface BuiltInAgentClassicConfig {
|
|
|
368
376
|
* Example: `{ openai: { reasoningEffort: "high" } }`
|
|
369
377
|
*/
|
|
370
378
|
providerOptions?: Record<string, any>;
|
|
379
|
+
/**
|
|
380
|
+
* How the server downloads URL attachments (image and file parts) that the
|
|
381
|
+
* model cannot take as a URL. The URL comes from the request, so the server
|
|
382
|
+
* must not fetch it blindly.
|
|
383
|
+
*
|
|
384
|
+
* - Not set or an options object (default): download only from public
|
|
385
|
+
* internet addresses. The hostname is resolved and every address must be
|
|
386
|
+
* public; the connection uses only the checked addresses; each redirect is
|
|
387
|
+
* checked again, and a redirect from https to http is refused; the size
|
|
388
|
+
* (default 20 MiB) and the time (default 30 s) of each download, and the
|
|
389
|
+
* number of distinct URLs (20) and total size (50 MiB) of the downloads
|
|
390
|
+
* for one model call are limited. The AI SDK downloads the attachments
|
|
391
|
+
* again for each step of a multi-step run. `allowedHosts` limits
|
|
392
|
+
* downloads to the hostnames you list: `cdn.example.com` matches exactly,
|
|
393
|
+
* `*.example.com` matches subdomains only. Invalid options, including an
|
|
394
|
+
* unknown option name, throw when the agent is constructed.
|
|
395
|
+
* - `"disabled"`: never download from the network. Any attachment URL other
|
|
396
|
+
* than `data:` that the model cannot take directly fails the run.
|
|
397
|
+
* - A function: your own AI SDK download function. You are responsible for
|
|
398
|
+
* what it fetches.
|
|
399
|
+
*
|
|
400
|
+
* URLs that the model takes directly are sent to the provider unchanged and
|
|
401
|
+
* are not downloaded by the server. `data:` URLs are decoded locally by the
|
|
402
|
+
* AI SDK in every mode. Classic config only: in factory mode, see
|
|
403
|
+
* {@link BuiltInAgentAISDKFactoryConfig}.
|
|
404
|
+
*/
|
|
405
|
+
urlDownload?: "disabled" | SafeUrlDownloadOptions | Experimental_DownloadFunction;
|
|
371
406
|
/**
|
|
372
407
|
* Explicit agent capabilities. **Shallow-merged** at the category level on
|
|
373
408
|
* top of auto-inferred defaults — providing a category (e.g. `tools`)
|
|
@@ -404,6 +439,11 @@ declare class BuiltInAgent extends AbstractAgent {
|
|
|
404
439
|
* to classify.
|
|
405
440
|
*/
|
|
406
441
|
readonly modelHostClass: ModelHostClass;
|
|
442
|
+
/**
|
|
443
|
+
* Gives the download function for URL attachments for one run (classic
|
|
444
|
+
* config only). Resolved in the constructor so a bad setting fails fast.
|
|
445
|
+
*/
|
|
446
|
+
private readonly urlDownload?;
|
|
407
447
|
constructor(config: BuiltInAgentConfiguration);
|
|
408
448
|
/**
|
|
409
449
|
* Check if a property can be overridden by forwardedProps
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.cts","names":[],"sources":["../../src/agent/index.ts"],"mappings":";;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.d.cts","names":[],"sources":["../../src/agent/index.ts"],"mappings":"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"}
|
package/dist/agent/index.d.mts
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
|
|
2
|
+
import { CreateSafeUrlDownloadOptions, SafeUrlDownloadOptions, createSafeUrlDownload } from "./url-download.mjs";
|
|
2
3
|
import { BuiltInAgentLearnedSkills, BuiltInAgentLearnedSkillsOptions } from "./learned-skills.mjs";
|
|
3
4
|
import { convertAISDKStream } from "./converters/aisdk.mjs";
|
|
4
5
|
import { TanStackChatMessage, TanStackInputResult, convertInputToTanStackAI, convertTanStackStream } from "./converters/tanstack.mjs";
|
|
5
6
|
import "./converters/index.mjs";
|
|
6
7
|
import { InferSchemaOutput, ModelHostClass, StandardSchemaV1 } from "@copilotkit/shared";
|
|
7
8
|
import { Observable } from "rxjs";
|
|
8
|
-
import { AbstractAgent, BaseEvent, Interrupt, Message, ResumeEntry, RunAgentInput } from "@ag-ui/client";
|
|
9
|
-
import { LanguageModel, ModelMessage, ToolChoice, ToolSet } from "ai";
|
|
10
9
|
import { z } from "zod";
|
|
10
|
+
import { AbstractAgent, BaseEvent, Interrupt, Message, ResumeEntry, RunAgentInput } from "@ag-ui/client";
|
|
11
|
+
import { Experimental_DownloadFunction, LanguageModel, ModelMessage, ToolChoice, ToolSet } from "ai";
|
|
11
12
|
import { StreamableHTTPClientTransportOptions } from "@modelcontextprotocol/sdk/client/streamableHttp.js";
|
|
12
13
|
import { AgentCapabilities } from "@ag-ui/core";
|
|
13
14
|
|
|
@@ -229,6 +230,13 @@ type BuiltInAgentFactoryContext = AgentFactoryContext;
|
|
|
229
230
|
* Factory config for AI SDK backend.
|
|
230
231
|
* The factory must return an object with a `fullStream` async iterable
|
|
231
232
|
* (compatible with the result of `streamText()` — only `fullStream` is consumed).
|
|
233
|
+
*
|
|
234
|
+
* You own the `streamText()` call, so you also own its URL downloads. Pass
|
|
235
|
+
* `experimental_download: createSafeUrlDownload({ signal: ctx.abortSignal })`
|
|
236
|
+
* (imported from `@copilotkit/runtime/v2`) to keep the server from fetching
|
|
237
|
+
* internal addresses named in request attachments, and to stop the downloads
|
|
238
|
+
* when the run is aborted. BuiltInAgent's `urlDownload` setting does not apply
|
|
239
|
+
* here: setting it in factory mode throws when the agent is constructed.
|
|
232
240
|
*/
|
|
233
241
|
interface BuiltInAgentAISDKFactoryConfig {
|
|
234
242
|
/** Opt in to automatic snapshot acquisition before each run, including resumes. */
|
|
@@ -369,6 +377,33 @@ interface BuiltInAgentClassicConfig {
|
|
|
369
377
|
* Example: `{ openai: { reasoningEffort: "high" } }`
|
|
370
378
|
*/
|
|
371
379
|
providerOptions?: Record<string, any>;
|
|
380
|
+
/**
|
|
381
|
+
* How the server downloads URL attachments (image and file parts) that the
|
|
382
|
+
* model cannot take as a URL. The URL comes from the request, so the server
|
|
383
|
+
* must not fetch it blindly.
|
|
384
|
+
*
|
|
385
|
+
* - Not set or an options object (default): download only from public
|
|
386
|
+
* internet addresses. The hostname is resolved and every address must be
|
|
387
|
+
* public; the connection uses only the checked addresses; each redirect is
|
|
388
|
+
* checked again, and a redirect from https to http is refused; the size
|
|
389
|
+
* (default 20 MiB) and the time (default 30 s) of each download, and the
|
|
390
|
+
* number of distinct URLs (20) and total size (50 MiB) of the downloads
|
|
391
|
+
* for one model call are limited. The AI SDK downloads the attachments
|
|
392
|
+
* again for each step of a multi-step run. `allowedHosts` limits
|
|
393
|
+
* downloads to the hostnames you list: `cdn.example.com` matches exactly,
|
|
394
|
+
* `*.example.com` matches subdomains only. Invalid options, including an
|
|
395
|
+
* unknown option name, throw when the agent is constructed.
|
|
396
|
+
* - `"disabled"`: never download from the network. Any attachment URL other
|
|
397
|
+
* than `data:` that the model cannot take directly fails the run.
|
|
398
|
+
* - A function: your own AI SDK download function. You are responsible for
|
|
399
|
+
* what it fetches.
|
|
400
|
+
*
|
|
401
|
+
* URLs that the model takes directly are sent to the provider unchanged and
|
|
402
|
+
* are not downloaded by the server. `data:` URLs are decoded locally by the
|
|
403
|
+
* AI SDK in every mode. Classic config only: in factory mode, see
|
|
404
|
+
* {@link BuiltInAgentAISDKFactoryConfig}.
|
|
405
|
+
*/
|
|
406
|
+
urlDownload?: "disabled" | SafeUrlDownloadOptions | Experimental_DownloadFunction;
|
|
372
407
|
/**
|
|
373
408
|
* Explicit agent capabilities. **Shallow-merged** at the category level on
|
|
374
409
|
* top of auto-inferred defaults — providing a category (e.g. `tools`)
|
|
@@ -405,6 +440,11 @@ declare class BuiltInAgent extends AbstractAgent {
|
|
|
405
440
|
* to classify.
|
|
406
441
|
*/
|
|
407
442
|
readonly modelHostClass: ModelHostClass;
|
|
443
|
+
/**
|
|
444
|
+
* Gives the download function for URL attachments for one run (classic
|
|
445
|
+
* config only). Resolved in the constructor so a bad setting fails fast.
|
|
446
|
+
*/
|
|
447
|
+
private readonly urlDownload?;
|
|
408
448
|
constructor(config: BuiltInAgentConfiguration);
|
|
409
449
|
/**
|
|
410
450
|
* Check if a property can be overridden by forwardedProps
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.mts","names":[],"sources":["../../src/agent/index.ts"],"mappings":";;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../src/agent/index.ts"],"mappings":"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"}
|
package/dist/agent/index.mjs
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import "reflect-metadata";
|
|
2
2
|
import { describeEndpoint } from "../lib/runtime/mcp-client-cache.mjs";
|
|
3
|
+
import { createSafeUrlDownload, logModelCallError, resolveUrlDownloadSetting } from "./url-download.mjs";
|
|
3
4
|
import { createStateEventNormalizer } from "./state-delta.mjs";
|
|
4
5
|
import { collectStandardRunFinishedDetails, getNonEmptyString, isRecord } from "./converters/usage.mjs";
|
|
5
6
|
import { convertAISDKStream, formatToolError, getAISDKRunFinishedDetails, resolveStreamPartMessageId } from "./converters/aisdk.mjs";
|
|
@@ -11,6 +12,7 @@ import { createOpenAI } from "@ai-sdk/openai";
|
|
|
11
12
|
import { classifyModelHost, randomUUID, safeParseToolArgs, schemaToJsonSchema } from "@copilotkit/shared";
|
|
12
13
|
import { createGoogleGenerativeAI } from "@ai-sdk/google";
|
|
13
14
|
import { Observable } from "rxjs";
|
|
15
|
+
import { z } from "zod";
|
|
14
16
|
import { AbstractAgent, EventType, PROTOCOL_VERSION } from "@ag-ui/client";
|
|
15
17
|
import { RENDER_A2UI_TOOL } from "@ag-ui/a2ui-middleware";
|
|
16
18
|
import { Validator } from "@cfworker/json-schema";
|
|
@@ -18,7 +20,6 @@ import { jsonSchema, stepCountIs, streamText, tool } from "ai";
|
|
|
18
20
|
import { createMCPClient } from "@ai-sdk/mcp";
|
|
19
21
|
import { createAnthropic } from "@ai-sdk/anthropic";
|
|
20
22
|
import { createVertex } from "@ai-sdk/google-vertex";
|
|
21
|
-
import { z } from "zod";
|
|
22
23
|
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js";
|
|
23
24
|
|
|
24
25
|
//#region src/agent/index.ts
|
|
@@ -550,6 +551,8 @@ var BuiltInAgent = class BuiltInAgent extends AbstractAgent {
|
|
|
550
551
|
constructor(config) {
|
|
551
552
|
super();
|
|
552
553
|
this.config = config;
|
|
554
|
+
if (!isFactoryConfig(config)) this.urlDownload = resolveUrlDownloadSetting(config.urlDownload);
|
|
555
|
+
else if ("urlDownload" in config) throw new Error("BuiltInAgent: urlDownload has no effect in factory mode. Pass experimental_download: createSafeUrlDownload({ signal: ctx.abortSignal }) (from @copilotkit/runtime/v2) to your own streamText() call instead.");
|
|
553
556
|
this.skillRegistry = config.learnedSkills === void 0 ? void 0 : new SkillRegistry(config.learnedSkills);
|
|
554
557
|
this.modelHostClass = isFactoryConfig(config) ? "unknown" : classifyModelSpec(config.model);
|
|
555
558
|
}
|
|
@@ -670,7 +673,8 @@ This is state from the application that you can edit by calling AGUISendStateSna
|
|
|
670
673
|
stopSequences: config.stopSequences,
|
|
671
674
|
seed: config.seed,
|
|
672
675
|
providerOptions: config.providerOptions,
|
|
673
|
-
maxRetries: config.maxRetries
|
|
676
|
+
maxRetries: config.maxRetries,
|
|
677
|
+
experimental_download: this.urlDownload?.(abortController.signal)
|
|
674
678
|
};
|
|
675
679
|
if (input.forwardedProps && typeof input.forwardedProps === "object") {
|
|
676
680
|
const props = input.forwardedProps;
|
|
@@ -816,7 +820,8 @@ This is state from the application that you can edit by calling AGUISendStateSna
|
|
|
816
820
|
const response = streamText({
|
|
817
821
|
...streamTextParams,
|
|
818
822
|
...messages.length > 0 ? { system: systemMessages.length > 0 ? systemMessages : void 0 } : { messages: systemMessages },
|
|
819
|
-
abortSignal: abortController.signal
|
|
823
|
+
abortSignal: abortController.signal,
|
|
824
|
+
onError: ({ error }) => logModelCallError(error)
|
|
820
825
|
});
|
|
821
826
|
const interruptToolNames = new Set((isFactoryConfig(this.config) ? [] : this.config.tools ?? []).filter((t) => t.interrupt).map((t) => t.name));
|
|
822
827
|
const interruptToolMeta = new Map((isFactoryConfig(this.config) ? [] : this.config.tools ?? []).filter((t) => t.interrupt).map((t) => [t.name, {
|