@workglow/anthropic 0.2.36 → 0.2.37
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/ai/AnthropicProvider.d.ts +1 -1
- package/dist/ai/AnthropicProvider.d.ts.map +1 -1
- package/dist/ai/AnthropicQueuedProvider.d.ts +1 -1
- package/dist/ai/AnthropicQueuedProvider.d.ts.map +1 -1
- package/dist/ai/common/Anthropic_JobRunFns.d.ts +1 -1
- package/dist/ai/common/Anthropic_JobRunFns.d.ts.map +1 -1
- package/dist/ai/common/Anthropic_StructuredGeneration.d.ts.map +1 -1
- package/dist/ai/common/Anthropic_TextGeneration.d.ts.map +1 -1
- package/dist/ai/common/Anthropic_TextRewriter.d.ts.map +1 -1
- package/dist/ai/common/Anthropic_TextSummary.d.ts.map +1 -1
- package/dist/ai-runtime.js +5 -5
- package/dist/ai-runtime.js.map +12 -12
- package/dist/ai.js.map +7 -7
- package/package.json +11 -11
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
* Copyright 2025 Steven Roussey <sroussey@gmail.com>
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { AiProvider } from "@workglow/ai/worker";
|
|
7
6
|
import type { Capability, ModelRecord } from "@workglow/ai/worker";
|
|
7
|
+
import { AiProvider } from "@workglow/ai/worker";
|
|
8
8
|
declare const AnthropicProvider_base: new (promiseRunFns?: readonly import("@workglow/ai").AiProviderRunFnRegistration<any, any, {
|
|
9
9
|
capabilities?: string[] | undefined;
|
|
10
10
|
description?: string | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AnthropicProvider.d.ts","sourceRoot":"","sources":["../../src/ai/AnthropicProvider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"AnthropicProvider.d.ts","sourceRoot":"","sources":["../../src/ai/AnthropicProvider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQjD;;;;;;;;;;GAUG;AACH,qBAAa,iBAAkB,SAAQ,sBAGrC;IACS,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,UAAU,EAAE,CAEpE;IAED,UAAmB,gBAAgB,IAAI,SAAS;QAAE,MAAM,EAAE,SAAS,UAAU,EAAE,CAAA;KAAE,EAAE,CAElF;CACF"}
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
* Copyright 2025 Steven Roussey <sroussey@gmail.com>
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { AiProvider } from "@workglow/ai";
|
|
7
6
|
import type { Capability, ModelRecord } from "@workglow/ai";
|
|
7
|
+
import { AiProvider } from "@workglow/ai";
|
|
8
8
|
declare const AnthropicQueuedProvider_base: new (promiseRunFns?: readonly import("@workglow/ai").AiProviderRunFnRegistration<any, any, {
|
|
9
9
|
capabilities?: string[] | undefined;
|
|
10
10
|
description?: string | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AnthropicQueuedProvider.d.ts","sourceRoot":"","sources":["../../src/ai/AnthropicQueuedProvider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"AnthropicQueuedProvider.d.ts","sourceRoot":"","sources":["../../src/ai/AnthropicQueuedProvider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAS1C;;;;;;;;;;;GAWG;AACH,qBAAa,uBAAwB,SAAQ,4BAM5C;IACU,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,UAAU,EAAE,CAEpE;IAED,UAAmB,gBAAgB,IAAI,SAAS;QAAE,MAAM,EAAE,SAAS,UAAU,EAAE,CAAA;KAAE,EAAE,CAElF;CACF"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Copyright 2025 Steven Roussey <sroussey@gmail.com>
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import type {
|
|
6
|
+
import type { AiProviderPreviewRunFn, AiProviderRunFnRegistration } from "@workglow/ai";
|
|
7
7
|
import type { AnthropicModelConfig } from "./Anthropic_ModelSchema";
|
|
8
8
|
export { getClient, getMaxTokens, getModelName, loadAnthropicSDK } from "./Anthropic_Client";
|
|
9
9
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Anthropic_JobRunFns.d.ts","sourceRoot":"","sources":["../../../src/ai/common/Anthropic_JobRunFns.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"Anthropic_JobRunFns.d.ts","sourceRoot":"","sources":["../../../src/ai/common/Anthropic_JobRunFns.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,2BAA2B,EAAE,MAAM,cAAc,CAAC;AAWxF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAEpE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAc7F;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,EAAE,SAAS,2BAA2B,CAElE,GAAG,EAEH,GAAG,EACH,oBAAoB,CACrB,EASA,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAC1C,MAAM,EAEN,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,oBAAoB,CAAC,CAGvD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Anthropic_StructuredGeneration.d.ts","sourceRoot":"","sources":["../../../src/ai/common/Anthropic_StructuredGeneration.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,6BAA6B,EAC7B,8BAA8B,EAC/B,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"Anthropic_StructuredGeneration.d.ts","sourceRoot":"","sources":["../../../src/ai/common/Anthropic_StructuredGeneration.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,6BAA6B,EAC7B,8BAA8B,EAC/B,MAAM,cAAc,CAAC;AAGtB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAEpE;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,qCAAqC,EAAE,eAAe,CACjE,6BAA6B,EAC7B,8BAA8B,EAC9B,oBAAoB,CA6CrB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Anthropic_TextGeneration.d.ts","sourceRoot":"","sources":["../../../src/ai/common/Anthropic_TextGeneration.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"Anthropic_TextGeneration.d.ts","sourceRoot":"","sources":["../../../src/ai/common/Anthropic_TextGeneration.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,cAAc,CAAC;AAGtB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAepE;;;;;;;;;;GAUG;AACH,eAAO,MAAM,+BAA+B,EAAE,eAAe,CAC3D,uBAAuB,EACvB,wBAAwB,EACxB,oBAAoB,CAqErB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Anthropic_TextRewriter.d.ts","sourceRoot":"","sources":["../../../src/ai/common/Anthropic_TextRewriter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"Anthropic_TextRewriter.d.ts","sourceRoot":"","sources":["../../../src/ai/common/Anthropic_TextRewriter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAEnG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAEpE,eAAO,MAAM,6BAA6B,EAAE,eAAe,CACzD,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,CAqBrB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Anthropic_TextSummary.d.ts","sourceRoot":"","sources":["../../../src/ai/common/Anthropic_TextSummary.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"Anthropic_TextSummary.d.ts","sourceRoot":"","sources":["../../../src/ai/common/Anthropic_TextSummary.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAEjG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAEpE,eAAO,MAAM,4BAA4B,EAAE,eAAe,CACxD,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,CAqBrB,CAAC"}
|
package/dist/ai-runtime.js
CHANGED
|
@@ -52,9 +52,6 @@ import { registerProviderInline } from "@workglow/ai/provider-utils";
|
|
|
52
52
|
import { AiProvider } from "@workglow/ai";
|
|
53
53
|
import { createCloudProviderClass } from "@workglow/ai/provider-utils";
|
|
54
54
|
|
|
55
|
-
// src/ai/common/Anthropic_Constants.ts
|
|
56
|
-
var ANTHROPIC = "ANTHROPIC";
|
|
57
|
-
|
|
58
55
|
// src/ai/common/Anthropic_CapabilitySets.ts
|
|
59
56
|
var ANTHROPIC_TEXT_GENERATION = ["text.generation"];
|
|
60
57
|
var ANTHROPIC_TOOL_USE = ["text.generation", "tool-use"];
|
|
@@ -139,6 +136,9 @@ function inferAnthropicCapabilities(model) {
|
|
|
139
136
|
return ["model.search", "model.info"];
|
|
140
137
|
}
|
|
141
138
|
|
|
139
|
+
// src/ai/common/Anthropic_Constants.ts
|
|
140
|
+
var ANTHROPIC = "ANTHROPIC";
|
|
141
|
+
|
|
142
142
|
// src/ai/AnthropicQueuedProvider.ts
|
|
143
143
|
class AnthropicQueuedProvider extends createCloudProviderClass(AiProvider, {
|
|
144
144
|
name: ANTHROPIC,
|
|
@@ -563,8 +563,8 @@ async function registerAnthropicInline(options) {
|
|
|
563
563
|
import { registerProviderWorker } from "@workglow/ai/provider-utils";
|
|
564
564
|
|
|
565
565
|
// src/ai/AnthropicProvider.ts
|
|
566
|
-
import { AiProvider as AiProvider2 } from "@workglow/ai/worker";
|
|
567
566
|
import { createCloudProviderClass as createCloudProviderClass2 } from "@workglow/ai/provider-utils";
|
|
567
|
+
import { AiProvider as AiProvider2 } from "@workglow/ai/worker";
|
|
568
568
|
class AnthropicProvider extends createCloudProviderClass2(AiProvider2, {
|
|
569
569
|
name: ANTHROPIC,
|
|
570
570
|
displayName: "Anthropic"
|
|
@@ -590,4 +590,4 @@ export {
|
|
|
590
590
|
getClient
|
|
591
591
|
};
|
|
592
592
|
|
|
593
|
-
//# debugId=
|
|
593
|
+
//# debugId=B90E6C10EA91DC3164756E2164756E21
|
package/dist/ai-runtime.js.map
CHANGED
|
@@ -1,26 +1,26 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../src/ai/common/Anthropic_Client.ts", "../src/ai/registerAnthropicInline.ts", "../src/ai/AnthropicQueuedProvider.ts", "../src/ai/common/
|
|
3
|
+
"sources": ["../src/ai/common/Anthropic_Client.ts", "../src/ai/registerAnthropicInline.ts", "../src/ai/AnthropicQueuedProvider.ts", "../src/ai/common/Anthropic_CapabilitySets.ts", "../src/ai/common/Anthropic_Capabilities.ts", "../src/ai/common/Anthropic_Constants.ts", "../src/ai/common/Anthropic_CountTokens.ts", "../src/ai/common/Anthropic_ModelInfo.ts", "../src/ai/common/Anthropic_ModelSearch.ts", "../src/ai/common/Anthropic_StructuredGeneration.ts", "../src/ai/common/Anthropic_TextGeneration.ts", "../src/ai/common/Anthropic_ToolCalling.ts", "../src/ai/common/Anthropic_TextRewriter.ts", "../src/ai/common/Anthropic_TextSummary.ts", "../src/ai/common/Anthropic_JobRunFns.ts", "../src/ai/registerAnthropicWorker.ts", "../src/ai/AnthropicProvider.ts"],
|
|
4
4
|
"sourcesContent": [
|
|
5
5
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { isBrowserLike, resolveApiKey } from \"@workglow/ai/provider-utils\";\nimport type { AnthropicModelConfig } from \"./Anthropic_ModelSchema\";\n\ntype AnthropicSDKModule = typeof import(\"@anthropic-ai/sdk\");\ntype AnthropicClientClass = AnthropicSDKModule[\"default\"];\n\nlet _loadPromise: Promise<AnthropicClientClass> | undefined;\n\n// NOTE: we do not want to de-dup this in the provider-utils, vite wants direct import with string literals.\nexport async function loadAnthropicSDK(): Promise<AnthropicClientClass> {\n _loadPromise ??= import(\"@anthropic-ai/sdk\")\n .then((mod) => mod.default)\n .catch(() => {\n _loadPromise = undefined;\n throw new Error(\n \"@anthropic-ai/sdk is required for Anthropic tasks. Install it with: bun add @anthropic-ai/sdk\"\n );\n });\n return _loadPromise;\n}\n\ninterface ResolvedProviderConfig {\n readonly credential_key?: string;\n readonly api_key?: string;\n readonly model_name?: string;\n readonly base_url?: string;\n readonly max_tokens?: number;\n}\n\nexport async function getClient(model: AnthropicModelConfig | undefined) {\n const Anthropic = await loadAnthropicSDK();\n const config = model?.provider_config as ResolvedProviderConfig | undefined;\n const apiKey = resolveApiKey({\n config,\n envVar: \"ANTHROPIC_API_KEY\",\n providerLabel: \"Anthropic\",\n });\n try {\n return new Anthropic({\n apiKey,\n baseURL: config?.base_url || undefined,\n dangerouslyAllowBrowser: isBrowserLike(),\n });\n } catch (err) {\n throw new Error(\n `Failed to create Anthropic client: ${err instanceof Error ? err.message : \"unknown error\"}`\n );\n }\n}\n\nexport function getModelName(model: AnthropicModelConfig | undefined): string {\n const name = model?.provider_config?.model_name;\n if (!name) {\n throw new Error(\"Missing model name in provider_config.model_name.\");\n }\n return name;\n}\n\nexport function getMaxTokens(\n input: { maxTokens?: number },\n model: AnthropicModelConfig | undefined\n): number {\n return input.maxTokens ?? model?.provider_config?.max_tokens ?? 1024;\n}\n",
|
|
6
6
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { AiProviderRegisterOptions } from \"@workglow/ai\";\nimport { registerProviderInline } from \"@workglow/ai/provider-utils\";\nimport { AnthropicQueuedProvider } from \"./AnthropicQueuedProvider\";\nimport { ANTHROPIC_PREVIEW_TASKS, ANTHROPIC_RUN_FNS } from \"./common/Anthropic_JobRunFns\";\n\nexport async function registerAnthropicInline(options?: AiProviderRegisterOptions): Promise<void> {\n await registerProviderInline(\n new AnthropicQueuedProvider(ANTHROPIC_RUN_FNS, ANTHROPIC_PREVIEW_TASKS),\n \"Anthropic\",\n options\n );\n}\n",
|
|
7
|
-
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {
|
|
8
|
-
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nexport const ANTHROPIC = \"ANTHROPIC\";\n",
|
|
7
|
+
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { Capability, ModelRecord } from \"@workglow/ai\";\nimport { AiProvider } from \"@workglow/ai\";\nimport { createCloudProviderClass } from \"@workglow/ai/provider-utils\";\nimport {\n anthropicWorkerRunFnSpecs,\n inferAnthropicCapabilities,\n} from \"./common/Anthropic_Capabilities\";\nimport { ANTHROPIC } from \"./common/Anthropic_Constants\";\nimport type { AnthropicModelConfig } from \"./common/Anthropic_ModelSchema\";\n\n/**\n * Main-thread registration shell for Anthropic. Used both for inline mode\n * (constructed with the run-fn registrations array) and worker-backed mode\n * (constructed empty so the base class registers worker proxies).\n *\n * **No queue is created** — Anthropic uses {@link DirectExecutionStrategy}.\n * The `Queued` suffix is a historical artefact from when each provider\n * paired with a per-provider {@link JobQueue}; the class name is retained\n * only to avoid churning every import site.\n *\n * Note: Anthropic does not offer an embeddings API.\n */\nexport class AnthropicQueuedProvider extends createCloudProviderClass<AnthropicModelConfig>(\n AiProvider,\n {\n name: ANTHROPIC,\n displayName: \"Anthropic\",\n }\n) {\n override inferCapabilities(model: ModelRecord): readonly Capability[] {\n return inferAnthropicCapabilities(model);\n }\n\n protected override workerRunFnSpecs(): readonly { serves: readonly Capability[] }[] {\n return anthropicWorkerRunFnSpecs();\n }\n}\n",
|
|
9
8
|
"/**\n * @license\n * Copyright 2026 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { Capability } from \"@workglow/ai/worker\";\n\n/**\n * Single source of truth for Anthropic's capability sets.\n *\n * Both `ANTHROPIC_RUN_FNS` (the worker-side registration list) and\n * `workerRunFnSpecs()` (the main-thread proxy declaration) derive their\n * `serves` arrays from these named exports. SDK-free so the main thread\n * can import without paying the Anthropic client cost.\n *\n * To add a new capability set: declare a new `as const` constant here,\n * then reference it from both `ANTHROPIC_RUN_FNS` and `ANTHROPIC_RUN_FN_SPECS`.\n *\n * Note: Anthropic does NOT support embeddings, image generation, or image editing.\n * Structured generation is implemented via Anthropic's tool-use API under the hood,\n * but it is registered under `[\"text.generation\", \"json-mode\"]` per the capability\n * dispatch model so the consumer receives a parsed object in `finish.data.object`.\n */\nexport const ANTHROPIC_TEXT_GENERATION = [\"text.generation\"] as const satisfies Capability[];\nexport const ANTHROPIC_TOOL_USE = [\"text.generation\", \"tool-use\"] as const satisfies Capability[];\nexport const ANTHROPIC_JSON_MODE = [\"text.generation\", \"json-mode\"] as const satisfies Capability[];\nexport const ANTHROPIC_TEXT_REWRITER = [\"text.rewriter\"] as const satisfies Capability[];\nexport const ANTHROPIC_TEXT_SUMMARY = [\"text.summary\"] as const satisfies Capability[];\nexport const ANTHROPIC_COUNT_TOKENS = [\"model.count-tokens\"] as const satisfies Capability[];\nexport const ANTHROPIC_MODEL_SEARCH = [\"model.search\"] as const satisfies Capability[];\nexport const ANTHROPIC_MODEL_INFO = [\"model.info\"] as const satisfies Capability[];\n\n/** Aggregated list — for `workerRunFnSpecs()` derivation. Order MUST match `ANTHROPIC_RUN_FNS`; validated by the `capability-set parity` test in `AnthropicProvider.test.ts`. */\nexport const ANTHROPIC_CAPABILITY_SETS = [\n ANTHROPIC_TEXT_GENERATION,\n ANTHROPIC_TOOL_USE,\n ANTHROPIC_JSON_MODE,\n ANTHROPIC_TEXT_REWRITER,\n ANTHROPIC_TEXT_SUMMARY,\n ANTHROPIC_COUNT_TOKENS,\n ANTHROPIC_MODEL_SEARCH,\n ANTHROPIC_MODEL_INFO,\n] as const;\n",
|
|
10
9
|
"/**\n * @license\n * Copyright 2026 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { Capability, ModelRecord } from \"@workglow/ai/worker\";\nimport { ANTHROPIC_CAPABILITY_SETS } from \"./Anthropic_CapabilitySets\";\n\n// ---------------------------------------------------------------------------\n// Worker-proxy spec list (derived from the single source of truth)\n// ---------------------------------------------------------------------------\n\n/**\n * Closed list of capability-set specs the Anthropic provider serves. Derived\n * from {@link ANTHROPIC_CAPABILITY_SETS} — do not edit here. Used by the\n * main-thread provider shells when registering worker-mode proxies (the\n * actual runFns live in {@link ANTHROPIC_RUN_FNS} on the worker side, but the\n * main thread still needs to know which `serves` sets to register so the\n * dispatcher can route requests to the worker proxy).\n */\nexport const ANTHROPIC_RUN_FN_SPECS = ANTHROPIC_CAPABILITY_SETS.map((serves) => ({ serves }));\n\nexport function anthropicWorkerRunFnSpecs(): readonly { readonly serves: readonly Capability[] }[] {\n return ANTHROPIC_RUN_FN_SPECS;\n}\n\n/**\n * Shape used by the model-name regexes — `model_id` is required, the rest\n * is loosely-typed metadata only used to opportunistically widen the\n * inferred capability set.\n */\ntype CapabilityHints = Pick<ModelRecord, \"model_id\" | \"provider_config\" | \"capabilities\">;\n\n/**\n * Heuristic capability inference for an Anthropic {@link ModelRecord}. Pattern-\n * matches the canonical Anthropic model id strings (and the `provider_config.\n * model_name` if present) to a closed set of {@link Capability}s. Falls back\n * to the model's stored `capabilities` array (or a baseline of search +\n * info) when no pattern matches.\n *\n * Main-thread method only — workers do not run capability inference.\n */\nexport function inferAnthropicCapabilities(model: CapabilityHints): readonly Capability[] {\n const id = String(\n model.model_id ??\n (model.provider_config as { model_name?: string } | undefined)?.model_name ??\n \"\"\n );\n\n // Claude 3.5 / 3.7 family (sonnet, haiku) — full capability set with vision.\n if (/^claude-3[.-][57]-/i.test(id)) {\n return [\n \"text.generation\",\n \"text.rewriter\",\n \"text.summary\",\n \"tool-use\",\n \"json-mode\",\n \"vision-input\",\n \"model.count-tokens\",\n \"model.info\",\n \"model.search\",\n ];\n }\n\n // Claude 4-series (claude-sonnet-4*, claude-opus-4*, claude-haiku-4*) — full caps with vision.\n if (/^claude-(sonnet|opus|haiku)-4/i.test(id)) {\n return [\n \"text.generation\",\n \"text.rewriter\",\n \"text.summary\",\n \"tool-use\",\n \"json-mode\",\n \"vision-input\",\n \"model.count-tokens\",\n \"model.info\",\n \"model.search\",\n ];\n }\n\n // Claude 3 Haiku, Claude 3 Opus, Claude 3 Sonnet — full caps, all have vision-input.\n if (/^claude-3[.-](haiku|opus|sonnet)/i.test(id)) {\n return [\n \"text.generation\",\n \"text.rewriter\",\n \"text.summary\",\n \"tool-use\",\n \"json-mode\",\n \"vision-input\",\n \"model.count-tokens\",\n \"model.info\",\n \"model.search\",\n ];\n }\n\n // Claude 2.x — text generation without vision.\n if (/^claude-2/i.test(id)) {\n return [\n \"text.generation\",\n \"text.rewriter\",\n \"text.summary\",\n \"tool-use\",\n \"json-mode\",\n \"model.count-tokens\",\n \"model.info\",\n \"model.search\",\n ];\n }\n\n // Unknown Claude id with declared capabilities → return as-is.\n const declared = (model.capabilities as readonly Capability[] | undefined) ?? [];\n if (declared.length > 0) return declared;\n // Unknown id with no declared caps → baseline meta-ops.\n return [\"model.search\", \"model.info\"];\n}\n",
|
|
10
|
+
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nexport const ANTHROPIC = \"ANTHROPIC\";\n",
|
|
11
11
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderPreviewRunFn,\n AiProviderRunFn,\n CountTokensTaskInput,\n CountTokensTaskOutput,\n} from \"@workglow/ai\";\nimport { getClient, getModelName } from \"./Anthropic_Client\";\nimport type { AnthropicModelConfig } from \"./Anthropic_ModelSchema\";\n\nexport const Anthropic_CountTokens_Stream: AiProviderRunFn<\n CountTokensTaskInput,\n CountTokensTaskOutput,\n AnthropicModelConfig\n> = async (input, model, signal, emit) => {\n const client = await getClient(model);\n const result = await client.messages.countTokens({\n model: getModelName(model),\n messages: [{ role: \"user\", content: input.text }],\n });\n emit({ type: \"finish\", data: { count: result.input_tokens } });\n};\n\nexport const Anthropic_CountTokens_Preview: AiProviderPreviewRunFn<\n CountTokensTaskInput,\n CountTokensTaskOutput,\n AnthropicModelConfig\n> = async (input, _model) => {\n return { count: Math.ceil(input.text.length / 4) };\n};\n",
|
|
12
12
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { AiProviderRunFn, ModelInfoTaskInput, ModelInfoTaskOutput } from \"@workglow/ai\";\nimport type { AnthropicModelConfig } from \"./Anthropic_ModelSchema\";\n\nexport const Anthropic_ModelInfo_Stream: AiProviderRunFn<\n ModelInfoTaskInput,\n ModelInfoTaskOutput,\n AnthropicModelConfig\n> = async (input, _model, _signal, emit) => {\n const result: ModelInfoTaskOutput = {\n model: input.model,\n is_local: false,\n is_remote: true,\n supports_browser: true,\n supports_node: true,\n is_cached: false,\n is_loaded: false,\n file_sizes: null,\n };\n emit({ type: \"finish\", data: result });\n};\n",
|
|
13
13
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n ModelSearchResultItem,\n ModelSearchTaskInput,\n ModelSearchTaskOutput,\n} from \"@workglow/ai\";\nimport { filterLabeledModelsByQuery } from \"@workglow/ai/provider-utils\";\nimport { getClient } from \"./Anthropic_Client\";\nimport { ANTHROPIC } from \"./Anthropic_Constants\";\n\ninterface AnthropicModelListItem {\n readonly label: string;\n readonly value: string;\n readonly description?: string;\n}\n\nconst ANTHROPIC_FALLBACK: Array<{ label: string; value: string }> = [\n { label: \"claude-opus-4-7\", value: \"claude-opus-4-7\" },\n { label: \"claude-sonnet-4-6\", value: \"claude-sonnet-4-6\" },\n { label: \"claude-haiku-4-5-20251001\", value: \"claude-haiku-4-5-20251001\" },\n { label: \"claude-opus-4-6\", value: \"claude-opus-4-6\" },\n { label: \"claude-sonnet-4-5-20250929\", value: \"claude-sonnet-4-5-20250929\" },\n { label: \"claude-3-5-sonnet-20241022\", value: \"claude-3-5-sonnet-20241022\" },\n { label: \"claude-3-5-haiku-20241022\", value: \"claude-3-5-haiku-20241022\" },\n];\n\nasync function listAnthropicModels(credentialKey: string): Promise<AnthropicModelListItem[]> {\n const client = await getClient({\n provider: ANTHROPIC,\n provider_config: { model_name: \"\", credential_key: credentialKey },\n });\n const models: AnthropicModelListItem[] = [];\n for await (const m of client.beta.models.list()) {\n models.push({ label: m.display_name, value: m.id, description: m.id });\n }\n return models;\n}\n\nfunction mapModelList(models: AnthropicModelListItem[]): ModelSearchResultItem[] {\n return models.map((m) => ({\n id: m.value,\n label: m.label,\n description: m.description ?? \"\",\n record: {\n model_id: m.value,\n provider: ANTHROPIC,\n title: m.value,\n description: \"\",\n capabilities: [],\n provider_config: { model_name: m.value },\n metadata: {},\n },\n raw: m,\n }));\n}\n\nexport const Anthropic_ModelSearch_Stream: AiProviderRunFn<\n ModelSearchTaskInput,\n ModelSearchTaskOutput\n> = async (input, _model, _signal, emit) => {\n let models: AnthropicModelListItem[];\n if (!input.credential_key) {\n models = ANTHROPIC_FALLBACK;\n } else {\n models = await listAnthropicModels(input.credential_key);\n }\n models = filterLabeledModelsByQuery(models, input.query);\n emit({ type: \"finish\", data: { results: mapModelList(models) } });\n};\n",
|
|
14
|
-
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n StructuredGenerationTaskInput,\n StructuredGenerationTaskOutput,\n} from \"@workglow/ai\";\nimport { parsePartialJson } from \"@workglow/util/worker\";\nimport
|
|
15
|
-
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n TextGenerationTaskInput,\n TextGenerationTaskOutput,\n} from \"@workglow/ai\";\nimport { getLogger } from \"@workglow/util/worker\";\nimport
|
|
14
|
+
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n StructuredGenerationTaskInput,\n StructuredGenerationTaskOutput,\n} from \"@workglow/ai\";\nimport { parsePartialJson } from \"@workglow/util/worker\";\nimport { getClient, getMaxTokens, getModelName } from \"./Anthropic_Client\";\nimport type { AnthropicModelConfig } from \"./Anthropic_ModelSchema\";\n\n/**\n * Streaming run-fn for the `[\"text.generation\", \"json-mode\"]` capability.\n *\n * Anthropic implements structured generation via tool-use under the hood:\n * a synthetic `structured_output` tool forces the model to emit JSON conforming\n * to the output schema. We accumulate the `input_json_delta` stream events and\n * yield `object-delta` for consumers that want incremental updates. The final\n * `finish` event carries the parsed object in `finish.data.object` per the\n * documented streaming-convention exception for structured generation (CLAUDE.md\n * lines 201-205): the `StructuredGenerationTask` consumer reads the parsed\n * object from `finish.data` directly instead of accumulating deltas.\n */\nexport const Anthropic_StructuredGeneration_Stream: AiProviderRunFn<\n StructuredGenerationTaskInput,\n StructuredGenerationTaskOutput,\n AnthropicModelConfig\n> = async (input, model, signal, emit, outputSchema) => {\n const client = await getClient(model);\n const modelName = getModelName(model);\n\n const schema = input.outputSchema ?? outputSchema;\n\n const stream = client.messages.stream(\n {\n model: modelName,\n messages: [{ role: \"user\", content: input.prompt as string }],\n tools: [\n {\n name: \"structured_output\",\n description: \"Output structured data conforming to the schema\",\n input_schema: schema as any,\n },\n ],\n tool_choice: { type: \"tool\" as const, name: \"structured_output\" },\n max_tokens: getMaxTokens(input, model),\n },\n { signal }\n );\n\n let accumulatedJson = \"\";\n for await (const event of stream) {\n if (event.type === \"content_block_delta\" && event.delta.type === \"input_json_delta\") {\n accumulatedJson += event.delta.partial_json;\n const partial = parsePartialJson(accumulatedJson);\n if (partial !== undefined) {\n emit({ type: \"object-delta\", port: \"object\", objectDelta: partial });\n }\n }\n }\n\n let finalObject: Record<string, unknown>;\n try {\n finalObject = JSON.parse(accumulatedJson);\n } catch {\n finalObject = parsePartialJson(accumulatedJson) ?? {};\n }\n // Exception: structured generation MUST populate finish.data.object so the\n // StructuredGenerationTask consumer can read the parsed object without a\n // JSON streaming parser. See CLAUDE.md streaming-convention-exception note.\n emit({ type: \"finish\", data: { object: finalObject } as StructuredGenerationTaskOutput });\n};\n",
|
|
15
|
+
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n TextGenerationTaskInput,\n TextGenerationTaskOutput,\n} from \"@workglow/ai\";\nimport { getLogger } from \"@workglow/util/worker\";\nimport { getClient, getMaxTokens, getModelName } from \"./Anthropic_Client\";\nimport type { AnthropicModelConfig } from \"./Anthropic_ModelSchema\";\nimport { buildAnthropicMessages } from \"./Anthropic_ToolCalling\";\n\n/**\n * Inputs that the unified `[\"text.generation\"]` runFn handles. Both\n * {@link TextGenerationTask} and {@link AiChatTask} declare\n * `requires: [\"text.generation\"]`, so the capability dispatcher routes both\n * here. AiChatTask supplies a populated `messages` array; TextGenerationTask\n * (and other simple prompt callers) supply a `prompt` string only.\n */\ninterface UnifiedTextGenerationInput extends TextGenerationTaskInput {\n readonly messages?: readonly unknown[];\n readonly systemPrompt?: string;\n}\n\n/**\n * Streaming run-fn for the `[\"text.generation\"]` capability. Used by both\n * {@link TextGenerationTask} (prompt-only input) and {@link AiChatTask}\n * (full conversation history). Yields `text-delta` events on the `text` port\n * and a final empty `finish` event per the streaming convention (consumer\n * accumulates).\n *\n * Discriminates on `Array.isArray(input.messages) && input.messages.length > 0`\n * to choose the chat vs. prompt path — safe because AiChatTask always provides\n * `messages` and TextGenerationTask never does.\n */\nexport const Anthropic_TextGeneration_Stream: AiProviderRunFn<\n TextGenerationTaskInput,\n TextGenerationTaskOutput,\n AnthropicModelConfig\n> = async (input, model, signal, emit, _outputSchema, sessionId) => {\n const logger = getLogger();\n const timerLabel = `anthropic:TextGeneration:${getModelName(model)}`;\n logger.time(timerLabel, { model: getModelName(model) });\n try {\n const client = await getClient(model);\n const modelName = getModelName(model);\n const unified = input as UnifiedTextGenerationInput;\n const hasMessages = Array.isArray(unified.messages) && unified.messages.length > 0;\n\n const messages = hasMessages\n ? buildAnthropicMessages(\n unified.messages as Parameters<typeof buildAnthropicMessages>[0],\n unified.prompt ?? \"\"\n )\n : [{ role: \"user\" as const, content: input.prompt }];\n\n const params: Record<string, unknown> = {\n model: modelName,\n messages,\n max_tokens: getMaxTokens(input, model),\n };\n if (input.temperature !== undefined) params.temperature = input.temperature;\n if ((input as { topP?: number }).topP !== undefined)\n params.top_p = (input as { topP?: number }).topP;\n\n if (unified.systemPrompt) {\n params.system = sessionId\n ? [\n {\n type: \"text\",\n text: unified.systemPrompt,\n cache_control: { type: \"ephemeral\" },\n },\n ]\n : unified.systemPrompt;\n }\n\n // Prompt caching: annotate the last user message block when sessionId is present.\n if (sessionId && hasMessages && Array.isArray(messages) && messages.length > 0) {\n const last = messages[messages.length - 1] as { content: unknown };\n if (Array.isArray(last.content) && last.content.length > 0) {\n const blocks = last.content as Array<Record<string, unknown>>;\n blocks[blocks.length - 1] = {\n ...blocks[blocks.length - 1],\n cache_control: { type: \"ephemeral\" },\n };\n }\n }\n\n const stream = (client.messages.stream as (p: unknown, o: unknown) => AsyncIterable<unknown>)(\n params,\n { signal }\n );\n\n for await (const event of stream) {\n const e = event as {\n type: string;\n delta?: { type?: string; text?: string };\n };\n if (e.type === \"content_block_delta\" && e.delta?.type === \"text_delta\") {\n emit({ type: \"text-delta\", port: \"text\", textDelta: e.delta.text ?? \"\" });\n }\n }\n emit({ type: \"finish\", data: {} as TextGenerationTaskOutput });\n } finally {\n logger.timeEnd(timerLabel, { model: getModelName(model) });\n }\n};\n",
|
|
16
16
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n ChatMessage,\n ToolCall,\n ToolCallingTaskInput,\n ToolCallingTaskOutput,\n ToolDefinition,\n} from \"@workglow/ai\";\nimport { buildToolDescription, filterValidToolCalls } from \"@workglow/ai/worker\";\nimport { parsePartialJson } from \"@workglow/util/worker\";\nimport { getClient, getMaxTokens, getModelName } from \"./Anthropic_Client\";\nimport type { AnthropicModelConfig } from \"./Anthropic_ModelSchema\";\n\nexport function buildAnthropicMessages(\n messages: ReadonlyArray<ChatMessage> | undefined,\n prompt: unknown\n): any[] {\n if (!messages || messages.length === 0) {\n return [{ role: \"user\", content: prompt }];\n }\n const out: any[] = [];\n for (const msg of messages) {\n if (msg.role === \"user\") {\n const blocks = msg.content.map((b) => {\n if (b.type === \"text\") return { type: \"text\", text: b.text };\n if (b.type === \"image\") {\n return {\n type: \"image\",\n source: { type: \"base64\", media_type: b.mimeType, data: b.data },\n };\n }\n return b;\n });\n out.push({ role: \"user\", content: blocks });\n } else if (msg.role === \"assistant\") {\n const blocks = msg.content.map((b) => {\n if (b.type === \"text\") return { type: \"text\", text: b.text };\n if (b.type === \"tool_use\") {\n return { type: \"tool_use\", id: b.id, name: b.name, input: b.input };\n }\n return b;\n });\n out.push({ role: \"assistant\", content: blocks });\n } else if (msg.role === \"tool\") {\n const blocks = msg.content\n .filter(\n (b): b is Extract<ChatMessage[\"content\"][number], { type: \"tool_result\" }> =>\n b.type === \"tool_result\"\n )\n .map((b) => {\n const content = b.content.map((inner) => {\n if (inner.type === \"text\") return { type: \"text\", text: inner.text };\n if (inner.type === \"image\") {\n return {\n type: \"image\",\n source: { type: \"base64\", media_type: inner.mimeType, data: inner.data },\n };\n }\n return inner;\n });\n return {\n type: \"tool_result\",\n tool_use_id: b.tool_use_id,\n content,\n ...(b.is_error ? { is_error: true } : {}),\n };\n });\n out.push({ role: \"user\", content: blocks });\n } else if (msg.role === \"system\") {\n // System prompts are handled separately via params.system; skip here.\n continue;\n }\n }\n return out;\n}\n\nfunction mapAnthropicToolChoice(\n toolChoice: string | undefined\n): { type: \"auto\" } | { type: \"any\" } | { type: \"tool\"; name: string } | undefined {\n if (!toolChoice || toolChoice === \"auto\") return { type: \"auto\" };\n if (toolChoice === \"none\") return undefined;\n if (toolChoice === \"required\") return { type: \"any\" };\n return { type: \"tool\", name: toolChoice };\n}\n\nexport const Anthropic_ToolCalling_Stream: AiProviderRunFn<\n ToolCallingTaskInput,\n ToolCallingTaskOutput,\n AnthropicModelConfig\n> = async (input, model, signal, emit, _outputSchema, sessionId) => {\n const client = await getClient(model);\n const modelName = getModelName(model);\n\n const tools = input.tools.map((t: ToolDefinition) => ({\n name: t.name,\n description: buildToolDescription(t),\n input_schema: t.inputSchema as any,\n }));\n\n const toolChoice = mapAnthropicToolChoice(input.toolChoice);\n\n const messages = buildAnthropicMessages(input.messages, input.prompt);\n\n const params: any = {\n model: modelName,\n messages,\n max_tokens: getMaxTokens(input, model),\n temperature: input.temperature,\n };\n\n if (input.systemPrompt) {\n params.system = input.systemPrompt;\n }\n\n if (toolChoice !== undefined) {\n params.tools = tools;\n params.tool_choice = toolChoice;\n }\n\n if (sessionId) {\n // Add cache_control breakpoints for Anthropic prompt caching\n if (params.system) {\n params.system = [\n {\n type: \"text\",\n text: params.system,\n cache_control: { type: \"ephemeral\" },\n },\n ];\n }\n if (params.tools && params.tools.length > 0) {\n const lastIdx = params.tools.length - 1;\n params.tools[lastIdx] = {\n ...params.tools[lastIdx],\n cache_control: { type: \"ephemeral\" },\n };\n }\n }\n\n const stream = client.messages.stream(params, { signal });\n\n const blockMeta = new Map<number, { type: string; id?: string; name?: string; json: string }>();\n /** Keyed by Anthropic content block index — avoids collisions when `id` is missing during early deltas. */\n const toolCallsByBlockIndex = new Map<number, ToolCall>();\n\n const toolCallsInStreamOrder = (): ToolCall[] =>\n [...toolCallsByBlockIndex.entries()].sort((a, b) => a[0] - b[0]).map(([, tc]) => tc);\n\n /**\n * Defence-in-depth: drop tool calls whose name isn't in the declared tool\n * set before yielding to the consumer. Anthropic's tool API normally\n * respects `input.tools`, but a stray response from a model that\n * hallucinates a function name would otherwise propagate to dispatch.\n */\n const validatedToolCallsInStreamOrder = (): ToolCall[] =>\n filterValidToolCalls(toolCallsInStreamOrder(), input.tools);\n\n for await (const event of stream) {\n if (event.type === \"content_block_start\") {\n const block = event.content_block;\n const index = event.index as number;\n if (block.type === \"tool_use\") {\n blockMeta.set(index, {\n type: \"tool_use\",\n id: block.id,\n name: block.name,\n json: \"\",\n });\n } else if (block.type === \"text\") {\n blockMeta.set(index, { type: \"text\", json: \"\" });\n }\n } else if (event.type === \"content_block_delta\") {\n const index = event.index as number;\n const delta = event.delta as any;\n if (delta.type === \"text_delta\") {\n emit({ type: \"text-delta\", port: \"text\", textDelta: delta.text });\n } else if (delta.type === \"input_json_delta\") {\n const meta = blockMeta.get(index);\n if (meta) {\n meta.json += delta.partial_json;\n let parsedInput: Record<string, unknown>;\n try {\n parsedInput = JSON.parse(meta.json);\n } catch {\n const partial = parsePartialJson(meta.json);\n parsedInput = (partial as Record<string, unknown>) ?? {};\n }\n toolCallsByBlockIndex.set(index, {\n id: meta.id ?? \"\",\n name: meta.name ?? \"\",\n input: parsedInput,\n });\n emit({\n type: \"object-delta\",\n port: \"toolCalls\",\n objectDelta: validatedToolCallsInStreamOrder(),\n });\n }\n }\n } else if (event.type === \"content_block_stop\") {\n const index = event.index as number;\n const meta = blockMeta.get(index);\n if (meta?.type === \"tool_use\") {\n let finalInput: Record<string, unknown>;\n try {\n finalInput = JSON.parse(meta.json);\n } catch {\n finalInput = (parsePartialJson(meta.json) as Record<string, unknown>) ?? {};\n }\n const id = meta.id ?? \"\";\n toolCallsByBlockIndex.set(index, { id, name: meta.name ?? \"\", input: finalInput });\n emit({\n type: \"object-delta\",\n port: \"toolCalls\",\n objectDelta: validatedToolCallsInStreamOrder(),\n });\n }\n blockMeta.delete(index);\n }\n }\n\n emit({ type: \"finish\", data: { text: \"\", toolCalls: [] } as ToolCallingTaskOutput });\n};\n",
|
|
17
|
-
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {
|
|
18
|
-
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {
|
|
19
|
-
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {
|
|
20
|
-
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { registerProviderWorker } from \"@workglow/ai/provider-utils\";\nimport {
|
|
21
|
-
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {
|
|
17
|
+
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { AiProviderRunFn, TextRewriterTaskInput, TextRewriterTaskOutput } from \"@workglow/ai\";\nimport { getClient, getMaxTokens, getModelName } from \"./Anthropic_Client\";\nimport type { AnthropicModelConfig } from \"./Anthropic_ModelSchema\";\n\nexport const Anthropic_TextRewriter_Stream: AiProviderRunFn<\n TextRewriterTaskInput,\n TextRewriterTaskOutput,\n AnthropicModelConfig\n> = async (input, model, signal, emit) => {\n const client = await getClient(model);\n const modelName = getModelName(model);\n\n const stream = client.messages.stream(\n {\n model: modelName,\n system: input.prompt,\n messages: [{ role: \"user\", content: input.text }],\n max_tokens: getMaxTokens({}, model),\n },\n { signal }\n );\n\n for await (const event of stream) {\n if (event.type === \"content_block_delta\" && event.delta.type === \"text_delta\") {\n emit({ type: \"text-delta\", port: \"text\", textDelta: event.delta.text });\n }\n }\n emit({ type: \"finish\", data: {} as TextRewriterTaskOutput });\n};\n",
|
|
18
|
+
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { AiProviderRunFn, TextSummaryTaskInput, TextSummaryTaskOutput } from \"@workglow/ai\";\nimport { getClient, getMaxTokens, getModelName } from \"./Anthropic_Client\";\nimport type { AnthropicModelConfig } from \"./Anthropic_ModelSchema\";\n\nexport const Anthropic_TextSummary_Stream: AiProviderRunFn<\n TextSummaryTaskInput,\n TextSummaryTaskOutput,\n AnthropicModelConfig\n> = async (input, model, signal, emit) => {\n const client = await getClient(model);\n const modelName = getModelName(model);\n\n const stream = client.messages.stream(\n {\n model: modelName,\n system: \"Summarize the following text concisely.\",\n messages: [{ role: \"user\", content: input.text }],\n max_tokens: getMaxTokens({}, model),\n },\n { signal }\n );\n\n for await (const event of stream) {\n if (event.type === \"content_block_delta\" && event.delta.type === \"text_delta\") {\n emit({ type: \"text-delta\", port: \"text\", textDelta: event.delta.text });\n }\n }\n emit({ type: \"finish\", data: {} as TextSummaryTaskOutput });\n};\n",
|
|
19
|
+
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { AiProviderPreviewRunFn, AiProviderRunFnRegistration } from \"@workglow/ai\";\nimport {\n ANTHROPIC_COUNT_TOKENS,\n ANTHROPIC_JSON_MODE,\n ANTHROPIC_MODEL_INFO,\n ANTHROPIC_MODEL_SEARCH,\n ANTHROPIC_TEXT_GENERATION,\n ANTHROPIC_TEXT_REWRITER,\n ANTHROPIC_TEXT_SUMMARY,\n ANTHROPIC_TOOL_USE,\n} from \"./Anthropic_CapabilitySets\";\nimport type { AnthropicModelConfig } from \"./Anthropic_ModelSchema\";\n\nexport { getClient, getMaxTokens, getModelName, loadAnthropicSDK } from \"./Anthropic_Client\";\n\nimport {\n Anthropic_CountTokens_Preview,\n Anthropic_CountTokens_Stream,\n} from \"./Anthropic_CountTokens\";\nimport { Anthropic_ModelInfo_Stream } from \"./Anthropic_ModelInfo\";\nimport { Anthropic_ModelSearch_Stream } from \"./Anthropic_ModelSearch\";\nimport { Anthropic_StructuredGeneration_Stream } from \"./Anthropic_StructuredGeneration\";\nimport { Anthropic_TextGeneration_Stream } from \"./Anthropic_TextGeneration\";\nimport { Anthropic_TextRewriter_Stream } from \"./Anthropic_TextRewriter\";\nimport { Anthropic_TextSummary_Stream } from \"./Anthropic_TextSummary\";\nimport { Anthropic_ToolCalling_Stream } from \"./Anthropic_ToolCalling\";\n\n/**\n * Capability-set run-fn registrations for the Anthropic provider. Order is\n * significant only as a tiebreaker — the dispatcher prefers the smallest\n * `serves` set that is a superset of the task's `requires`, so the bare\n * `[\"text.generation\"]` entry wins for a plain {@link TextGenerationTask} or\n * {@link AiChatTask} while the `[\"text.generation\", \"tool-use\"]` entry wins\n * for {@link ToolCallingTask}.\n *\n * Note: Anthropic does NOT support embeddings, image generation, or image editing.\n */\nexport const ANTHROPIC_RUN_FNS: readonly AiProviderRunFnRegistration<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n any,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n any,\n AnthropicModelConfig\n>[] = [\n { serves: ANTHROPIC_TEXT_GENERATION, runFn: Anthropic_TextGeneration_Stream },\n { serves: ANTHROPIC_TOOL_USE, runFn: Anthropic_ToolCalling_Stream },\n { serves: ANTHROPIC_JSON_MODE, runFn: Anthropic_StructuredGeneration_Stream },\n { serves: ANTHROPIC_TEXT_REWRITER, runFn: Anthropic_TextRewriter_Stream },\n { serves: ANTHROPIC_TEXT_SUMMARY, runFn: Anthropic_TextSummary_Stream },\n { serves: ANTHROPIC_COUNT_TOKENS, runFn: Anthropic_CountTokens_Stream },\n { serves: ANTHROPIC_MODEL_SEARCH, runFn: Anthropic_ModelSearch_Stream },\n { serves: ANTHROPIC_MODEL_INFO, runFn: Anthropic_ModelInfo_Stream },\n];\n\nexport const ANTHROPIC_PREVIEW_TASKS: Record<\n string,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n AiProviderPreviewRunFn<any, any, AnthropicModelConfig>\n> = {\n CountTokensTask: Anthropic_CountTokens_Preview,\n};\n",
|
|
20
|
+
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { registerProviderWorker } from \"@workglow/ai/provider-utils\";\nimport { AnthropicProvider } from \"./AnthropicProvider\";\nimport { ANTHROPIC_PREVIEW_TASKS, ANTHROPIC_RUN_FNS } from \"./common/Anthropic_JobRunFns\";\n\nexport async function registerAnthropicWorker(): Promise<void> {\n await registerProviderWorker(\n (ws) =>\n new AnthropicProvider(ANTHROPIC_RUN_FNS, ANTHROPIC_PREVIEW_TASKS).registerOnWorkerServer(ws),\n \"Anthropic\"\n );\n}\n",
|
|
21
|
+
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { createCloudProviderClass } from \"@workglow/ai/provider-utils\";\nimport type { Capability, ModelRecord } from \"@workglow/ai/worker\";\nimport { AiProvider } from \"@workglow/ai/worker\";\nimport {\n anthropicWorkerRunFnSpecs,\n inferAnthropicCapabilities,\n} from \"./common/Anthropic_Capabilities\";\nimport { ANTHROPIC } from \"./common/Anthropic_Constants\";\nimport type { AnthropicModelConfig } from \"./common/Anthropic_ModelSchema\";\n\n/**\n * Worker-server registration for Anthropic cloud models. Imports `AiProvider`\n * from `@workglow/ai/worker` so the SDK is only loaded in the worker.\n *\n * The class extends the {@link createCloudProviderClass} mixin (which\n * supplies `name` / `displayName` / `isLocal` / `supportsBrowser`) and adds\n * the Anthropic-specific {@link AiProvider.inferCapabilities} and\n * {@link AiProvider.workerRunFnSpecs} overrides.\n *\n * Note: Anthropic does not offer an embeddings API.\n */\nexport class AnthropicProvider extends createCloudProviderClass<AnthropicModelConfig>(AiProvider, {\n name: ANTHROPIC,\n displayName: \"Anthropic\",\n}) {\n override inferCapabilities(model: ModelRecord): readonly Capability[] {\n return inferAnthropicCapabilities(model);\n }\n\n protected override workerRunFnSpecs(): readonly { serves: readonly Capability[] }[] {\n return anthropicWorkerRunFnSpecs();\n }\n}\n"
|
|
22
22
|
],
|
|
23
|
-
"mappings": ";;;;;;;;;AAMA;AAMA,IAAI;AAGJ,eAAsB,gBAAgB,GAAkC;AAAA,EACtE,iBAAwB,4BACrB,KAAK,CAAC,QAAQ,IAAI,OAAO,EACzB,MAAM,MAAM;AAAA,IACX,eAAe;AAAA,IACf,MAAM,IAAI,MACR,+FACF;AAAA,GACD;AAAA,EACH,OAAO;AAAA;AAWT,eAAsB,SAAS,CAAC,OAAyC;AAAA,EACvE,MAAM,YAAY,MAAM,iBAAiB;AAAA,EACzC,MAAM,SAAS,OAAO;AAAA,EACtB,MAAM,SAAS,cAAc;AAAA,IAC3B;AAAA,IACA,QAAQ;AAAA,IACR,eAAe;AAAA,EACjB,CAAC;AAAA,EACD,IAAI;AAAA,IACF,OAAO,IAAI,UAAU;AAAA,MACnB;AAAA,MACA,SAAS,QAAQ,YAAY;AAAA,MAC7B,yBAAyB,cAAc;AAAA,IACzC,CAAC;AAAA,IACD,OAAO,KAAK;AAAA,IACZ,MAAM,IAAI,MACR,sCAAsC,eAAe,QAAQ,IAAI,UAAU,iBAC7E;AAAA;AAAA;AAIG,SAAS,YAAY,CAAC,OAAiD;AAAA,EAC5E,MAAM,OAAO,OAAO,iBAAiB;AAAA,EACrC,IAAI,CAAC,MAAM;AAAA,IACT,MAAM,IAAI,MAAM,mDAAmD;AAAA,EACrE;AAAA,EACA,OAAO;AAAA;AAGF,SAAS,YAAY,CAC1B,OACA,OACQ;AAAA,EACR,OAAO,MAAM,aAAa,OAAO,iBAAiB,cAAc;AAAA;;;AC7DlE;;;ACDA;AAEA;;;ACFO,IAAM,YAAY;;;ACkBlB,IAAM,4BAA4B,CAAC,iBAAiB;AACpD,IAAM,qBAAqB,CAAC,mBAAmB,UAAU;AACzD,IAAM,sBAAsB,CAAC,mBAAmB,WAAW;AAC3D,IAAM,0BAA0B,CAAC,eAAe;AAChD,IAAM,yBAAyB,CAAC,cAAc;AAC9C,IAAM,yBAAyB,CAAC,oBAAoB;AACpD,IAAM,yBAAyB,CAAC,cAAc;AAC9C,IAAM,uBAAuB,CAAC,YAAY;AAG1C,IAAM,4BAA4B;AAAA,EACvC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;;;ACtBO,IAAM,yBAAyB,0BAA0B,IAAI,CAAC,YAAY,EAAE,OAAO,EAAE;AAErF,SAAS,yBAAyB,GAA0D;AAAA,EACjG,OAAO;AAAA;AAmBF,SAAS,0BAA0B,CAAC,OAA+C;AAAA,EACxF,MAAM,KAAK,OACT,MAAM,YACH,MAAM,iBAAyD,cAChE,EACJ;AAAA,EAGA,IAAI,sBAAsB,KAAK,EAAE,GAAG;AAAA,IAClC,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EAGA,IAAI,iCAAiC,KAAK,EAAE,GAAG;AAAA,IAC7C,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EAGA,IAAI,oCAAoC,KAAK,EAAE,GAAG;AAAA,IAChD,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EAGA,IAAI,aAAa,KAAK,EAAE,GAAG;AAAA,IACzB,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EAGA,MAAM,WAAY,MAAM,gBAAsD,CAAC;AAAA,EAC/E,IAAI,SAAS,SAAS;AAAA,IAAG,OAAO;AAAA,EAEhC,OAAO,CAAC,gBAAgB,YAAY;AAAA;;;AHrF/B,MAAM,gCAAgC,yBAC3C,YACA;AAAA,EACE,MAAM;AAAA,EACN,aAAa;AACf,CACF,EAAE;AAAA,EACS,iBAAiB,CAAC,OAA2C;AAAA,IACpE,OAAO,2BAA2B,KAAK;AAAA;AAAA,EAGtB,gBAAgB,GAAiD;AAAA,IAClF,OAAO,0BAA0B;AAAA;AAErC;;;AI3BO,IAAM,+BAIT,OAAO,OAAO,OAAO,QAAQ,SAAS;AAAA,EACxC,MAAM,SAAS,MAAM,UAAU,KAAK;AAAA,EACpC,MAAM,SAAS,MAAM,OAAO,SAAS,YAAY;AAAA,IAC/C,OAAO,aAAa,KAAK;AAAA,IACzB,UAAU,CAAC,EAAE,MAAM,QAAQ,SAAS,MAAM,KAAK,CAAC;AAAA,EAClD,CAAC;AAAA,EACD,KAAK,EAAE,MAAM,UAAU,MAAM,EAAE,OAAO,OAAO,aAAa,EAAE,CAAC;AAAA;AAGxD,IAAM,gCAIT,OAAO,OAAO,WAAW;AAAA,EAC3B,OAAO,EAAE,OAAO,KAAK,KAAK,MAAM,KAAK,SAAS,CAAC,EAAE;AAAA;;;ACxB5C,IAAM,6BAIT,OAAO,OAAO,QAAQ,SAAS,SAAS;AAAA,EAC1C,MAAM,SAA8B;AAAA,IAClC,OAAO,MAAM;AAAA,IACb,UAAU;AAAA,IACV,WAAW;AAAA,IACX,kBAAkB;AAAA,IAClB,eAAe;AAAA,IACf,WAAW;AAAA,IACX,WAAW;AAAA,IACX,YAAY;AAAA,EACd;AAAA,EACA,KAAK,EAAE,MAAM,UAAU,MAAM,OAAO,CAAC;AAAA;;;ACZvC;AAUA,IAAM,qBAA8D;AAAA,EAClE,EAAE,OAAO,mBAAmB,OAAO,kBAAkB;AAAA,EACrD,EAAE,OAAO,qBAAqB,OAAO,oBAAoB;AAAA,EACzD,EAAE,OAAO,6BAA6B,OAAO,4BAA4B;AAAA,EACzE,EAAE,OAAO,mBAAmB,OAAO,kBAAkB;AAAA,EACrD,EAAE,OAAO,8BAA8B,OAAO,6BAA6B;AAAA,EAC3E,EAAE,OAAO,8BAA8B,OAAO,6BAA6B;AAAA,EAC3E,EAAE,OAAO,6BAA6B,OAAO,4BAA4B;AAC3E;AAEA,eAAe,mBAAmB,CAAC,eAA0D;AAAA,EAC3F,MAAM,SAAS,MAAM,UAAU;AAAA,IAC7B,UAAU;AAAA,IACV,iBAAiB,EAAE,YAAY,IAAI,gBAAgB,cAAc;AAAA,EACnE,CAAC;AAAA,EACD,MAAM,SAAmC,CAAC;AAAA,EAC1C,iBAAiB,KAAK,OAAO,KAAK,OAAO,KAAK,GAAG;AAAA,IAC/C,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,OAAO,EAAE,IAAI,aAAa,EAAE,GAAG,CAAC;AAAA,EACvE;AAAA,EACA,OAAO;AAAA;AAGT,SAAS,YAAY,CAAC,QAA2D;AAAA,EAC/E,OAAO,OAAO,IAAI,CAAC,OAAO;AAAA,IACxB,IAAI,EAAE;AAAA,IACN,OAAO,EAAE;AAAA,IACT,aAAa,EAAE,eAAe;AAAA,IAC9B,QAAQ;AAAA,MACN,UAAU,EAAE;AAAA,MACZ,UAAU;AAAA,MACV,OAAO,EAAE;AAAA,MACT,aAAa;AAAA,MACb,cAAc,CAAC;AAAA,MACf,iBAAiB,EAAE,YAAY,EAAE,MAAM;AAAA,MACvC,UAAU,CAAC;AAAA,IACb;AAAA,IACA,KAAK;AAAA,EACP,EAAE;AAAA;AAGG,IAAM,+BAGT,OAAO,OAAO,QAAQ,SAAS,SAAS;AAAA,EAC1C,IAAI;AAAA,EACJ,IAAI,CAAC,MAAM,gBAAgB;AAAA,IACzB,SAAS;AAAA,EACX,EAAO;AAAA,IACL,SAAS,MAAM,oBAAoB,MAAM,cAAc;AAAA;AAAA,EAEzD,SAAS,2BAA2B,QAAQ,MAAM,KAAK;AAAA,EACvD,KAAK,EAAE,MAAM,UAAU,MAAM,EAAE,SAAS,aAAa,MAAM,EAAE,EAAE,CAAC;AAAA;;;AC9DlE;AAgBO,IAAM,wCAIT,OAAO,OAAO,OAAO,QAAQ,MAAM,iBAAiB;AAAA,EACtD,MAAM,SAAS,MAAM,UAAU,KAAK;AAAA,EACpC,MAAM,YAAY,aAAa,KAAK;AAAA,EAEpC,MAAM,SAAS,MAAM,gBAAgB;AAAA,EAErC,MAAM,SAAS,OAAO,SAAS,OAC7B;AAAA,IACE,OAAO;AAAA,IACP,UAAU,CAAC,EAAE,MAAM,QAAQ,SAAS,MAAM,OAAiB,CAAC;AAAA,IAC5D,OAAO;AAAA,MACL;AAAA,QACE,MAAM;AAAA,QACN,aAAa;AAAA,QACb,cAAc;AAAA,MAChB;AAAA,IACF;AAAA,IACA,aAAa,EAAE,MAAM,QAAiB,MAAM,oBAAoB;AAAA,IAChE,YAAY,aAAa,OAAO,KAAK;AAAA,EACvC,GACA,EAAE,OAAO,CACX;AAAA,EAEA,IAAI,kBAAkB;AAAA,EACtB,iBAAiB,SAAS,QAAQ;AAAA,IAChC,IAAI,MAAM,SAAS,yBAAyB,MAAM,MAAM,SAAS,oBAAoB;AAAA,MACnF,mBAAmB,MAAM,MAAM;AAAA,MAC/B,MAAM,UAAU,iBAAiB,eAAe;AAAA,MAChD,IAAI,YAAY,WAAW;AAAA,QACzB,KAAK,EAAE,MAAM,gBAAgB,MAAM,UAAU,aAAa,QAAQ,CAAC;AAAA,MACrE;AAAA,IACF;AAAA,EACF;AAAA,EAEA,IAAI;AAAA,EACJ,IAAI;AAAA,IACF,cAAc,KAAK,MAAM,eAAe;AAAA,IACxC,MAAM;AAAA,IACN,cAAc,iBAAiB,eAAe,KAAK,CAAC;AAAA;AAAA,EAKtD,KAAK,EAAE,MAAM,UAAU,MAAM,EAAE,QAAQ,YAAY,EAAoC,CAAC;AAAA;;;AC/D1F;;;ACGA;AACA,6BAAS;AAIF,SAAS,sBAAsB,CACpC,UACA,QACO;AAAA,EACP,IAAI,CAAC,YAAY,SAAS,WAAW,GAAG;AAAA,IACtC,OAAO,CAAC,EAAE,MAAM,QAAQ,SAAS,OAAO,CAAC;AAAA,EAC3C;AAAA,EACA,MAAM,MAAa,CAAC;AAAA,EACpB,WAAW,OAAO,UAAU;AAAA,IAC1B,IAAI,IAAI,SAAS,QAAQ;AAAA,MACvB,MAAM,SAAS,IAAI,QAAQ,IAAI,CAAC,MAAM;AAAA,QACpC,IAAI,EAAE,SAAS;AAAA,UAAQ,OAAO,EAAE,MAAM,QAAQ,MAAM,EAAE,KAAK;AAAA,QAC3D,IAAI,EAAE,SAAS,SAAS;AAAA,UACtB,OAAO;AAAA,YACL,MAAM;AAAA,YACN,QAAQ,EAAE,MAAM,UAAU,YAAY,EAAE,UAAU,MAAM,EAAE,KAAK;AAAA,UACjE;AAAA,QACF;AAAA,QACA,OAAO;AAAA,OACR;AAAA,MACD,IAAI,KAAK,EAAE,MAAM,QAAQ,SAAS,OAAO,CAAC;AAAA,IAC5C,EAAO,SAAI,IAAI,SAAS,aAAa;AAAA,MACnC,MAAM,SAAS,IAAI,QAAQ,IAAI,CAAC,MAAM;AAAA,QACpC,IAAI,EAAE,SAAS;AAAA,UAAQ,OAAO,EAAE,MAAM,QAAQ,MAAM,EAAE,KAAK;AAAA,QAC3D,IAAI,EAAE,SAAS,YAAY;AAAA,UACzB,OAAO,EAAE,MAAM,YAAY,IAAI,EAAE,IAAI,MAAM,EAAE,MAAM,OAAO,EAAE,MAAM;AAAA,QACpE;AAAA,QACA,OAAO;AAAA,OACR;AAAA,MACD,IAAI,KAAK,EAAE,MAAM,aAAa,SAAS,OAAO,CAAC;AAAA,IACjD,EAAO,SAAI,IAAI,SAAS,QAAQ;AAAA,MAC9B,MAAM,SAAS,IAAI,QAChB,OACC,CAAC,MACC,EAAE,SAAS,aACf,EACC,IAAI,CAAC,MAAM;AAAA,QACV,MAAM,UAAU,EAAE,QAAQ,IAAI,CAAC,UAAU;AAAA,UACvC,IAAI,MAAM,SAAS;AAAA,YAAQ,OAAO,EAAE,MAAM,QAAQ,MAAM,MAAM,KAAK;AAAA,UACnE,IAAI,MAAM,SAAS,SAAS;AAAA,YAC1B,OAAO;AAAA,cACL,MAAM;AAAA,cACN,QAAQ,EAAE,MAAM,UAAU,YAAY,MAAM,UAAU,MAAM,MAAM,KAAK;AAAA,YACzE;AAAA,UACF;AAAA,UACA,OAAO;AAAA,SACR;AAAA,QACD,OAAO;AAAA,UACL,MAAM;AAAA,UACN,aAAa,EAAE;AAAA,UACf;AAAA,aACI,EAAE,WAAW,EAAE,UAAU,KAAK,IAAI,CAAC;AAAA,QACzC;AAAA,OACD;AAAA,MACH,IAAI,KAAK,EAAE,MAAM,QAAQ,SAAS,OAAO,CAAC;AAAA,IAC5C,EAAO,SAAI,IAAI,SAAS,UAAU;AAAA,MAEhC;AAAA,IACF;AAAA,EACF;AAAA,EACA,OAAO;AAAA;AAGT,SAAS,sBAAsB,CAC7B,YACiF;AAAA,EACjF,IAAI,CAAC,cAAc,eAAe;AAAA,IAAQ,OAAO,EAAE,MAAM,OAAO;AAAA,EAChE,IAAI,eAAe;AAAA,IAAQ;AAAA,EAC3B,IAAI,eAAe;AAAA,IAAY,OAAO,EAAE,MAAM,MAAM;AAAA,EACpD,OAAO,EAAE,MAAM,QAAQ,MAAM,WAAW;AAAA;AAGnC,IAAM,+BAIT,OAAO,OAAO,OAAO,QAAQ,MAAM,eAAe,cAAc;AAAA,EAClE,MAAM,SAAS,MAAM,UAAU,KAAK;AAAA,EACpC,MAAM,YAAY,aAAa,KAAK;AAAA,EAEpC,MAAM,QAAQ,MAAM,MAAM,IAAI,CAAC,OAAuB;AAAA,IACpD,MAAM,EAAE;AAAA,IACR,aAAa,qBAAqB,CAAC;AAAA,IACnC,cAAc,EAAE;AAAA,EAClB,EAAE;AAAA,EAEF,MAAM,aAAa,uBAAuB,MAAM,UAAU;AAAA,EAE1D,MAAM,WAAW,uBAAuB,MAAM,UAAU,MAAM,MAAM;AAAA,EAEpE,MAAM,SAAc;AAAA,IAClB,OAAO;AAAA,IACP;AAAA,IACA,YAAY,aAAa,OAAO,KAAK;AAAA,IACrC,aAAa,MAAM;AAAA,EACrB;AAAA,EAEA,IAAI,MAAM,cAAc;AAAA,IACtB,OAAO,SAAS,MAAM;AAAA,EACxB;AAAA,EAEA,IAAI,eAAe,WAAW;AAAA,IAC5B,OAAO,QAAQ;AAAA,IACf,OAAO,cAAc;AAAA,EACvB;AAAA,EAEA,IAAI,WAAW;AAAA,IAEb,IAAI,OAAO,QAAQ;AAAA,MACjB,OAAO,SAAS;AAAA,QACd;AAAA,UACE,MAAM;AAAA,UACN,MAAM,OAAO;AAAA,UACb,eAAe,EAAE,MAAM,YAAY;AAAA,QACrC;AAAA,MACF;AAAA,IACF;AAAA,IACA,IAAI,OAAO,SAAS,OAAO,MAAM,SAAS,GAAG;AAAA,MAC3C,MAAM,UAAU,OAAO,MAAM,SAAS;AAAA,MACtC,OAAO,MAAM,WAAW;AAAA,WACnB,OAAO,MAAM;AAAA,QAChB,eAAe,EAAE,MAAM,YAAY;AAAA,MACrC;AAAA,IACF;AAAA,EACF;AAAA,EAEA,MAAM,SAAS,OAAO,SAAS,OAAO,QAAQ,EAAE,OAAO,CAAC;AAAA,EAExD,MAAM,YAAY,IAAI;AAAA,EAEtB,MAAM,wBAAwB,IAAI;AAAA,EAElC,MAAM,yBAAyB,MAC7B,CAAC,GAAG,sBAAsB,QAAQ,CAAC,EAAE,KAAK,CAAC,GAAG,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,IAAI,QAAQ,EAAE;AAAA,EAQrF,MAAM,kCAAkC,MACtC,qBAAqB,uBAAuB,GAAG,MAAM,KAAK;AAAA,EAE5D,iBAAiB,SAAS,QAAQ;AAAA,IAChC,IAAI,MAAM,SAAS,uBAAuB;AAAA,MACxC,MAAM,QAAQ,MAAM;AAAA,MACpB,MAAM,QAAQ,MAAM;AAAA,MACpB,IAAI,MAAM,SAAS,YAAY;AAAA,QAC7B,UAAU,IAAI,OAAO;AAAA,UACnB,MAAM;AAAA,UACN,IAAI,MAAM;AAAA,UACV,MAAM,MAAM;AAAA,UACZ,MAAM;AAAA,QACR,CAAC;AAAA,MACH,EAAO,SAAI,MAAM,SAAS,QAAQ;AAAA,QAChC,UAAU,IAAI,OAAO,EAAE,MAAM,QAAQ,MAAM,GAAG,CAAC;AAAA,MACjD;AAAA,IACF,EAAO,SAAI,MAAM,SAAS,uBAAuB;AAAA,MAC/C,MAAM,QAAQ,MAAM;AAAA,MACpB,MAAM,QAAQ,MAAM;AAAA,MACpB,IAAI,MAAM,SAAS,cAAc;AAAA,QAC/B,KAAK,EAAE,MAAM,cAAc,MAAM,QAAQ,WAAW,MAAM,KAAK,CAAC;AAAA,MAClE,EAAO,SAAI,MAAM,SAAS,oBAAoB;AAAA,QAC5C,MAAM,OAAO,UAAU,IAAI,KAAK;AAAA,QAChC,IAAI,MAAM;AAAA,UACR,KAAK,QAAQ,MAAM;AAAA,UACnB,IAAI;AAAA,UACJ,IAAI;AAAA,YACF,cAAc,KAAK,MAAM,KAAK,IAAI;AAAA,YAClC,MAAM;AAAA,YACN,MAAM,UAAU,kBAAiB,KAAK,IAAI;AAAA,YAC1C,cAAe,WAAuC,CAAC;AAAA;AAAA,UAEzD,sBAAsB,IAAI,OAAO;AAAA,YAC/B,IAAI,KAAK,MAAM;AAAA,YACf,MAAM,KAAK,QAAQ;AAAA,YACnB,OAAO;AAAA,UACT,CAAC;AAAA,UACD,KAAK;AAAA,YACH,MAAM;AAAA,YACN,MAAM;AAAA,YACN,aAAa,gCAAgC;AAAA,UAC/C,CAAC;AAAA,QACH;AAAA,MACF;AAAA,IACF,EAAO,SAAI,MAAM,SAAS,sBAAsB;AAAA,MAC9C,MAAM,QAAQ,MAAM;AAAA,MACpB,MAAM,OAAO,UAAU,IAAI,KAAK;AAAA,MAChC,IAAI,MAAM,SAAS,YAAY;AAAA,QAC7B,IAAI;AAAA,QACJ,IAAI;AAAA,UACF,aAAa,KAAK,MAAM,KAAK,IAAI;AAAA,UACjC,MAAM;AAAA,UACN,aAAc,kBAAiB,KAAK,IAAI,KAAiC,CAAC;AAAA;AAAA,QAE5E,MAAM,KAAK,KAAK,MAAM;AAAA,QACtB,sBAAsB,IAAI,OAAO,EAAE,IAAI,MAAM,KAAK,QAAQ,IAAI,OAAO,WAAW,CAAC;AAAA,QACjF,KAAK;AAAA,UACH,MAAM;AAAA,UACN,MAAM;AAAA,UACN,aAAa,gCAAgC;AAAA,QAC/C,CAAC;AAAA,MACH;AAAA,MACA,UAAU,OAAO,KAAK;AAAA,IACxB;AAAA,EACF;AAAA,EAEA,KAAK,EAAE,MAAM,UAAU,MAAM,EAAE,MAAM,IAAI,WAAW,CAAC,EAAE,EAA2B,CAAC;AAAA;;;AD5L9E,IAAM,kCAIT,OAAO,OAAO,OAAO,QAAQ,MAAM,eAAe,cAAc;AAAA,EAClE,MAAM,SAAS,UAAU;AAAA,EACzB,MAAM,aAAa,4BAA4B,aAAa,KAAK;AAAA,EACjE,OAAO,KAAK,YAAY,EAAE,OAAO,aAAa,KAAK,EAAE,CAAC;AAAA,EACtD,IAAI;AAAA,IACF,MAAM,SAAS,MAAM,UAAU,KAAK;AAAA,IACpC,MAAM,YAAY,aAAa,KAAK;AAAA,IACpC,MAAM,UAAU;AAAA,IAChB,MAAM,cAAc,MAAM,QAAQ,QAAQ,QAAQ,KAAK,QAAQ,SAAS,SAAS;AAAA,IAEjF,MAAM,WAAW,cACb,uBACE,QAAQ,UACR,QAAQ,UAAU,EACpB,IACA,CAAC,EAAE,MAAM,QAAiB,SAAS,MAAM,OAAO,CAAC;AAAA,IAErD,MAAM,SAAkC;AAAA,MACtC,OAAO;AAAA,MACP;AAAA,MACA,YAAY,aAAa,OAAO,KAAK;AAAA,IACvC;AAAA,IACA,IAAI,MAAM,gBAAgB;AAAA,MAAW,OAAO,cAAc,MAAM;AAAA,IAChE,IAAK,MAA4B,SAAS;AAAA,MACxC,OAAO,QAAS,MAA4B;AAAA,IAE9C,IAAI,QAAQ,cAAc;AAAA,MACxB,OAAO,SAAS,YACZ;AAAA,QACE;AAAA,UACE,MAAM;AAAA,UACN,MAAM,QAAQ;AAAA,UACd,eAAe,EAAE,MAAM,YAAY;AAAA,QACrC;AAAA,MACF,IACA,QAAQ;AAAA,IACd;AAAA,IAGA,IAAI,aAAa,eAAe,MAAM,QAAQ,QAAQ,KAAK,SAAS,SAAS,GAAG;AAAA,MAC9E,MAAM,OAAO,SAAS,SAAS,SAAS;AAAA,MACxC,IAAI,MAAM,QAAQ,KAAK,OAAO,KAAK,KAAK,QAAQ,SAAS,GAAG;AAAA,QAC1D,MAAM,SAAS,KAAK;AAAA,QACpB,OAAO,OAAO,SAAS,KAAK;AAAA,aACvB,OAAO,OAAO,SAAS;AAAA,UAC1B,eAAe,EAAE,MAAM,YAAY;AAAA,QACrC;AAAA,MACF;AAAA,IACF;AAAA,IAEA,MAAM,SAAU,OAAO,SAAS,OAC9B,QACA,EAAE,OAAO,CACX;AAAA,IAEA,iBAAiB,SAAS,QAAQ;AAAA,MAChC,MAAM,IAAI;AAAA,MAIV,IAAI,EAAE,SAAS,yBAAyB,EAAE,OAAO,SAAS,cAAc;AAAA,QACtE,KAAK,EAAE,MAAM,cAAc,MAAM,QAAQ,WAAW,EAAE,MAAM,QAAQ,GAAG,CAAC;AAAA,MAC1E;AAAA,IACF;AAAA,IACA,KAAK,EAAE,MAAM,UAAU,MAAM,CAAC,EAA8B,CAAC;AAAA,YAC7D;AAAA,IACA,OAAO,QAAQ,YAAY,EAAE,OAAO,aAAa,KAAK,EAAE,CAAC;AAAA;AAAA;;;AE/FtD,IAAM,gCAIT,OAAO,OAAO,OAAO,QAAQ,SAAS;AAAA,EACxC,MAAM,SAAS,MAAM,UAAU,KAAK;AAAA,EACpC,MAAM,YAAY,aAAa,KAAK;AAAA,EAEpC,MAAM,SAAS,OAAO,SAAS,OAC7B;AAAA,IACE,OAAO;AAAA,IACP,QAAQ,MAAM;AAAA,IACd,UAAU,CAAC,EAAE,MAAM,QAAQ,SAAS,MAAM,KAAK,CAAC;AAAA,IAChD,YAAY,aAAa,CAAC,GAAG,KAAK;AAAA,EACpC,GACA,EAAE,OAAO,CACX;AAAA,EAEA,iBAAiB,SAAS,QAAQ;AAAA,IAChC,IAAI,MAAM,SAAS,yBAAyB,MAAM,MAAM,SAAS,cAAc;AAAA,MAC7E,KAAK,EAAE,MAAM,cAAc,MAAM,QAAQ,WAAW,MAAM,MAAM,KAAK,CAAC;AAAA,IACxE;AAAA,EACF;AAAA,EACA,KAAK,EAAE,MAAM,UAAU,MAAM,CAAC,EAA4B,CAAC;AAAA;;;ACvBtD,IAAM,+BAIT,OAAO,OAAO,OAAO,QAAQ,SAAS;AAAA,EACxC,MAAM,SAAS,MAAM,UAAU,KAAK;AAAA,EACpC,MAAM,YAAY,aAAa,KAAK;AAAA,EAEpC,MAAM,SAAS,OAAO,SAAS,OAC7B;AAAA,IACE,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,UAAU,CAAC,EAAE,MAAM,QAAQ,SAAS,MAAM,KAAK,CAAC;AAAA,IAChD,YAAY,aAAa,CAAC,GAAG,KAAK;AAAA,EACpC,GACA,EAAE,OAAO,CACX;AAAA,EAEA,iBAAiB,SAAS,QAAQ;AAAA,IAChC,IAAI,MAAM,SAAS,yBAAyB,MAAM,MAAM,SAAS,cAAc;AAAA,MAC7E,KAAK,EAAE,MAAM,cAAc,MAAM,QAAQ,WAAW,MAAM,MAAM,KAAK,CAAC;AAAA,IACxE;AAAA,EACF;AAAA,EACA,KAAK,EAAE,MAAM,UAAU,MAAM,CAAC,EAA2B,CAAC;AAAA;;;ACMrD,IAAM,oBAMP;AAAA,EACJ,EAAE,QAAQ,2BAA2B,OAAO,gCAAgC;AAAA,EAC5E,EAAE,QAAQ,oBAAoB,OAAO,6BAA6B;AAAA,EAClE,EAAE,QAAQ,qBAAqB,OAAO,sCAAsC;AAAA,EAC5E,EAAE,QAAQ,yBAAyB,OAAO,8BAA8B;AAAA,EACxE,EAAE,QAAQ,wBAAwB,OAAO,6BAA6B;AAAA,EACtE,EAAE,QAAQ,wBAAwB,OAAO,6BAA6B;AAAA,EACtE,EAAE,QAAQ,wBAAwB,OAAO,6BAA6B;AAAA,EACtE,EAAE,QAAQ,sBAAsB,OAAO,2BAA2B;AACpE;AAEO,IAAM,0BAIT;AAAA,EACF,iBAAiB;AACnB;;;AbvDA,eAAsB,uBAAuB,CAAC,SAAoD;AAAA,EAChG,MAAM,uBACJ,IAAI,wBAAwB,mBAAmB,uBAAuB,GACtE,aACA,OACF;AAAA;;;AcVF;;;ACAA,uBAAS;AAET,qCAAS;AAmBF,MAAM,0BAA0B,0BAA+C,aAAY;AAAA,EAChG,MAAM;AAAA,EACN,aAAa;AACf,CAAC,EAAE;AAAA,EACQ,iBAAiB,CAAC,OAA2C;AAAA,IACpE,OAAO,2BAA2B,KAAK;AAAA;AAAA,EAGtB,gBAAgB,GAAiD;AAAA,IAClF,OAAO,0BAA0B;AAAA;AAErC;;;AD5BA,eAAsB,uBAAuB,GAAkB;AAAA,EAC7D,MAAM,uBACJ,CAAC,OACC,IAAI,kBAAkB,mBAAmB,uBAAuB,EAAE,uBAAuB,EAAE,GAC7F,WACF;AAAA;",
|
|
24
|
-
"debugId": "
|
|
23
|
+
"mappings": "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",
|
|
24
|
+
"debugId": "B90E6C10EA91DC3164756E2164756E21",
|
|
25
25
|
"names": []
|
|
26
26
|
}
|
package/dist/ai.js.map
CHANGED
|
@@ -7,20 +7,20 @@
|
|
|
7
7
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n ModelSearchResultItem,\n ModelSearchTaskInput,\n ModelSearchTaskOutput,\n} from \"@workglow/ai\";\nimport { filterLabeledModelsByQuery } from \"@workglow/ai/provider-utils\";\nimport { getClient } from \"./Anthropic_Client\";\nimport { ANTHROPIC } from \"./Anthropic_Constants\";\n\ninterface AnthropicModelListItem {\n readonly label: string;\n readonly value: string;\n readonly description?: string;\n}\n\nconst ANTHROPIC_FALLBACK: Array<{ label: string; value: string }> = [\n { label: \"claude-opus-4-7\", value: \"claude-opus-4-7\" },\n { label: \"claude-sonnet-4-6\", value: \"claude-sonnet-4-6\" },\n { label: \"claude-haiku-4-5-20251001\", value: \"claude-haiku-4-5-20251001\" },\n { label: \"claude-opus-4-6\", value: \"claude-opus-4-6\" },\n { label: \"claude-sonnet-4-5-20250929\", value: \"claude-sonnet-4-5-20250929\" },\n { label: \"claude-3-5-sonnet-20241022\", value: \"claude-3-5-sonnet-20241022\" },\n { label: \"claude-3-5-haiku-20241022\", value: \"claude-3-5-haiku-20241022\" },\n];\n\nasync function listAnthropicModels(credentialKey: string): Promise<AnthropicModelListItem[]> {\n const client = await getClient({\n provider: ANTHROPIC,\n provider_config: { model_name: \"\", credential_key: credentialKey },\n });\n const models: AnthropicModelListItem[] = [];\n for await (const m of client.beta.models.list()) {\n models.push({ label: m.display_name, value: m.id, description: m.id });\n }\n return models;\n}\n\nfunction mapModelList(models: AnthropicModelListItem[]): ModelSearchResultItem[] {\n return models.map((m) => ({\n id: m.value,\n label: m.label,\n description: m.description ?? \"\",\n record: {\n model_id: m.value,\n provider: ANTHROPIC,\n title: m.value,\n description: \"\",\n capabilities: [],\n provider_config: { model_name: m.value },\n metadata: {},\n },\n raw: m,\n }));\n}\n\nexport const Anthropic_ModelSearch_Stream: AiProviderRunFn<\n ModelSearchTaskInput,\n ModelSearchTaskOutput\n> = async (input, _model, _signal, emit) => {\n let models: AnthropicModelListItem[];\n if (!input.credential_key) {\n models = ANTHROPIC_FALLBACK;\n } else {\n models = await listAnthropicModels(input.credential_key);\n }\n models = filterLabeledModelsByQuery(models, input.query);\n emit({ type: \"finish\", data: { results: mapModelList(models) } });\n};\n",
|
|
8
8
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { isBrowserLike, resolveApiKey } from \"@workglow/ai/provider-utils\";\nimport type { AnthropicModelConfig } from \"./Anthropic_ModelSchema\";\n\ntype AnthropicSDKModule = typeof import(\"@anthropic-ai/sdk\");\ntype AnthropicClientClass = AnthropicSDKModule[\"default\"];\n\nlet _loadPromise: Promise<AnthropicClientClass> | undefined;\n\n// NOTE: we do not want to de-dup this in the provider-utils, vite wants direct import with string literals.\nexport async function loadAnthropicSDK(): Promise<AnthropicClientClass> {\n _loadPromise ??= import(\"@anthropic-ai/sdk\")\n .then((mod) => mod.default)\n .catch(() => {\n _loadPromise = undefined;\n throw new Error(\n \"@anthropic-ai/sdk is required for Anthropic tasks. Install it with: bun add @anthropic-ai/sdk\"\n );\n });\n return _loadPromise;\n}\n\ninterface ResolvedProviderConfig {\n readonly credential_key?: string;\n readonly api_key?: string;\n readonly model_name?: string;\n readonly base_url?: string;\n readonly max_tokens?: number;\n}\n\nexport async function getClient(model: AnthropicModelConfig | undefined) {\n const Anthropic = await loadAnthropicSDK();\n const config = model?.provider_config as ResolvedProviderConfig | undefined;\n const apiKey = resolveApiKey({\n config,\n envVar: \"ANTHROPIC_API_KEY\",\n providerLabel: \"Anthropic\",\n });\n try {\n return new Anthropic({\n apiKey,\n baseURL: config?.base_url || undefined,\n dangerouslyAllowBrowser: isBrowserLike(),\n });\n } catch (err) {\n throw new Error(\n `Failed to create Anthropic client: ${err instanceof Error ? err.message : \"unknown error\"}`\n );\n }\n}\n\nexport function getModelName(model: AnthropicModelConfig | undefined): string {\n const name = model?.provider_config?.model_name;\n if (!name) {\n throw new Error(\"Missing model name in provider_config.model_name.\");\n }\n return name;\n}\n\nexport function getMaxTokens(\n input: { maxTokens?: number },\n model: AnthropicModelConfig | undefined\n): number {\n return input.maxTokens ?? model?.provider_config?.max_tokens ?? 1024;\n}\n",
|
|
9
9
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { AiProviderRegisterOptions } from \"@workglow/ai\";\nimport { registerProviderWithWorker } from \"@workglow/ai/provider-utils\";\nimport { AnthropicQueuedProvider } from \"./AnthropicQueuedProvider\";\n\nexport async function registerAnthropic(\n options: AiProviderRegisterOptions & {\n worker: Worker | (() => Worker);\n }\n): Promise<void> {\n await registerProviderWithWorker(new AnthropicQueuedProvider(), \"Anthropic\", options);\n}\n",
|
|
10
|
-
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {
|
|
10
|
+
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { Capability, ModelRecord } from \"@workglow/ai\";\nimport { AiProvider } from \"@workglow/ai\";\nimport { createCloudProviderClass } from \"@workglow/ai/provider-utils\";\nimport {\n anthropicWorkerRunFnSpecs,\n inferAnthropicCapabilities,\n} from \"./common/Anthropic_Capabilities\";\nimport { ANTHROPIC } from \"./common/Anthropic_Constants\";\nimport type { AnthropicModelConfig } from \"./common/Anthropic_ModelSchema\";\n\n/**\n * Main-thread registration shell for Anthropic. Used both for inline mode\n * (constructed with the run-fn registrations array) and worker-backed mode\n * (constructed empty so the base class registers worker proxies).\n *\n * **No queue is created** — Anthropic uses {@link DirectExecutionStrategy}.\n * The `Queued` suffix is a historical artefact from when each provider\n * paired with a per-provider {@link JobQueue}; the class name is retained\n * only to avoid churning every import site.\n *\n * Note: Anthropic does not offer an embeddings API.\n */\nexport class AnthropicQueuedProvider extends createCloudProviderClass<AnthropicModelConfig>(\n AiProvider,\n {\n name: ANTHROPIC,\n displayName: \"Anthropic\",\n }\n) {\n override inferCapabilities(model: ModelRecord): readonly Capability[] {\n return inferAnthropicCapabilities(model);\n }\n\n protected override workerRunFnSpecs(): readonly { serves: readonly Capability[] }[] {\n return anthropicWorkerRunFnSpecs();\n }\n}\n",
|
|
11
11
|
"/**\n * @license\n * Copyright 2026 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { Capability } from \"@workglow/ai/worker\";\n\n/**\n * Single source of truth for Anthropic's capability sets.\n *\n * Both `ANTHROPIC_RUN_FNS` (the worker-side registration list) and\n * `workerRunFnSpecs()` (the main-thread proxy declaration) derive their\n * `serves` arrays from these named exports. SDK-free so the main thread\n * can import without paying the Anthropic client cost.\n *\n * To add a new capability set: declare a new `as const` constant here,\n * then reference it from both `ANTHROPIC_RUN_FNS` and `ANTHROPIC_RUN_FN_SPECS`.\n *\n * Note: Anthropic does NOT support embeddings, image generation, or image editing.\n * Structured generation is implemented via Anthropic's tool-use API under the hood,\n * but it is registered under `[\"text.generation\", \"json-mode\"]` per the capability\n * dispatch model so the consumer receives a parsed object in `finish.data.object`.\n */\nexport const ANTHROPIC_TEXT_GENERATION = [\"text.generation\"] as const satisfies Capability[];\nexport const ANTHROPIC_TOOL_USE = [\"text.generation\", \"tool-use\"] as const satisfies Capability[];\nexport const ANTHROPIC_JSON_MODE = [\"text.generation\", \"json-mode\"] as const satisfies Capability[];\nexport const ANTHROPIC_TEXT_REWRITER = [\"text.rewriter\"] as const satisfies Capability[];\nexport const ANTHROPIC_TEXT_SUMMARY = [\"text.summary\"] as const satisfies Capability[];\nexport const ANTHROPIC_COUNT_TOKENS = [\"model.count-tokens\"] as const satisfies Capability[];\nexport const ANTHROPIC_MODEL_SEARCH = [\"model.search\"] as const satisfies Capability[];\nexport const ANTHROPIC_MODEL_INFO = [\"model.info\"] as const satisfies Capability[];\n\n/** Aggregated list — for `workerRunFnSpecs()` derivation. Order MUST match `ANTHROPIC_RUN_FNS`; validated by the `capability-set parity` test in `AnthropicProvider.test.ts`. */\nexport const ANTHROPIC_CAPABILITY_SETS = [\n ANTHROPIC_TEXT_GENERATION,\n ANTHROPIC_TOOL_USE,\n ANTHROPIC_JSON_MODE,\n ANTHROPIC_TEXT_REWRITER,\n ANTHROPIC_TEXT_SUMMARY,\n ANTHROPIC_COUNT_TOKENS,\n ANTHROPIC_MODEL_SEARCH,\n ANTHROPIC_MODEL_INFO,\n] as const;\n",
|
|
12
12
|
"/**\n * @license\n * Copyright 2026 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { Capability, ModelRecord } from \"@workglow/ai/worker\";\nimport { ANTHROPIC_CAPABILITY_SETS } from \"./Anthropic_CapabilitySets\";\n\n// ---------------------------------------------------------------------------\n// Worker-proxy spec list (derived from the single source of truth)\n// ---------------------------------------------------------------------------\n\n/**\n * Closed list of capability-set specs the Anthropic provider serves. Derived\n * from {@link ANTHROPIC_CAPABILITY_SETS} — do not edit here. Used by the\n * main-thread provider shells when registering worker-mode proxies (the\n * actual runFns live in {@link ANTHROPIC_RUN_FNS} on the worker side, but the\n * main thread still needs to know which `serves` sets to register so the\n * dispatcher can route requests to the worker proxy).\n */\nexport const ANTHROPIC_RUN_FN_SPECS = ANTHROPIC_CAPABILITY_SETS.map((serves) => ({ serves }));\n\nexport function anthropicWorkerRunFnSpecs(): readonly { readonly serves: readonly Capability[] }[] {\n return ANTHROPIC_RUN_FN_SPECS;\n}\n\n/**\n * Shape used by the model-name regexes — `model_id` is required, the rest\n * is loosely-typed metadata only used to opportunistically widen the\n * inferred capability set.\n */\ntype CapabilityHints = Pick<ModelRecord, \"model_id\" | \"provider_config\" | \"capabilities\">;\n\n/**\n * Heuristic capability inference for an Anthropic {@link ModelRecord}. Pattern-\n * matches the canonical Anthropic model id strings (and the `provider_config.\n * model_name` if present) to a closed set of {@link Capability}s. Falls back\n * to the model's stored `capabilities` array (or a baseline of search +\n * info) when no pattern matches.\n *\n * Main-thread method only — workers do not run capability inference.\n */\nexport function inferAnthropicCapabilities(model: CapabilityHints): readonly Capability[] {\n const id = String(\n model.model_id ??\n (model.provider_config as { model_name?: string } | undefined)?.model_name ??\n \"\"\n );\n\n // Claude 3.5 / 3.7 family (sonnet, haiku) — full capability set with vision.\n if (/^claude-3[.-][57]-/i.test(id)) {\n return [\n \"text.generation\",\n \"text.rewriter\",\n \"text.summary\",\n \"tool-use\",\n \"json-mode\",\n \"vision-input\",\n \"model.count-tokens\",\n \"model.info\",\n \"model.search\",\n ];\n }\n\n // Claude 4-series (claude-sonnet-4*, claude-opus-4*, claude-haiku-4*) — full caps with vision.\n if (/^claude-(sonnet|opus|haiku)-4/i.test(id)) {\n return [\n \"text.generation\",\n \"text.rewriter\",\n \"text.summary\",\n \"tool-use\",\n \"json-mode\",\n \"vision-input\",\n \"model.count-tokens\",\n \"model.info\",\n \"model.search\",\n ];\n }\n\n // Claude 3 Haiku, Claude 3 Opus, Claude 3 Sonnet — full caps, all have vision-input.\n if (/^claude-3[.-](haiku|opus|sonnet)/i.test(id)) {\n return [\n \"text.generation\",\n \"text.rewriter\",\n \"text.summary\",\n \"tool-use\",\n \"json-mode\",\n \"vision-input\",\n \"model.count-tokens\",\n \"model.info\",\n \"model.search\",\n ];\n }\n\n // Claude 2.x — text generation without vision.\n if (/^claude-2/i.test(id)) {\n return [\n \"text.generation\",\n \"text.rewriter\",\n \"text.summary\",\n \"tool-use\",\n \"json-mode\",\n \"model.count-tokens\",\n \"model.info\",\n \"model.search\",\n ];\n }\n\n // Unknown Claude id with declared capabilities → return as-is.\n const declared = (model.capabilities as readonly Capability[] | undefined) ?? [];\n if (declared.length > 0) return declared;\n // Unknown id with no declared caps → baseline meta-ops.\n return [\"model.search\", \"model.info\"];\n}\n",
|
|
13
13
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderPreviewRunFn,\n AiProviderRunFn,\n CountTokensTaskInput,\n CountTokensTaskOutput,\n} from \"@workglow/ai\";\nimport { getClient, getModelName } from \"./Anthropic_Client\";\nimport type { AnthropicModelConfig } from \"./Anthropic_ModelSchema\";\n\nexport const Anthropic_CountTokens_Stream: AiProviderRunFn<\n CountTokensTaskInput,\n CountTokensTaskOutput,\n AnthropicModelConfig\n> = async (input, model, signal, emit) => {\n const client = await getClient(model);\n const result = await client.messages.countTokens({\n model: getModelName(model),\n messages: [{ role: \"user\", content: input.text }],\n });\n emit({ type: \"finish\", data: { count: result.input_tokens } });\n};\n\nexport const Anthropic_CountTokens_Preview: AiProviderPreviewRunFn<\n CountTokensTaskInput,\n CountTokensTaskOutput,\n AnthropicModelConfig\n> = async (input, _model) => {\n return { count: Math.ceil(input.text.length / 4) };\n};\n",
|
|
14
14
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { AiProviderRunFn, ModelInfoTaskInput, ModelInfoTaskOutput } from \"@workglow/ai\";\nimport type { AnthropicModelConfig } from \"./Anthropic_ModelSchema\";\n\nexport const Anthropic_ModelInfo_Stream: AiProviderRunFn<\n ModelInfoTaskInput,\n ModelInfoTaskOutput,\n AnthropicModelConfig\n> = async (input, _model, _signal, emit) => {\n const result: ModelInfoTaskOutput = {\n model: input.model,\n is_local: false,\n is_remote: true,\n supports_browser: true,\n supports_node: true,\n is_cached: false,\n is_loaded: false,\n file_sizes: null,\n };\n emit({ type: \"finish\", data: result });\n};\n",
|
|
15
|
-
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n StructuredGenerationTaskInput,\n StructuredGenerationTaskOutput,\n} from \"@workglow/ai\";\nimport { parsePartialJson } from \"@workglow/util/worker\";\nimport
|
|
16
|
-
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n TextGenerationTaskInput,\n TextGenerationTaskOutput,\n} from \"@workglow/ai\";\nimport { getLogger } from \"@workglow/util/worker\";\nimport
|
|
15
|
+
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n StructuredGenerationTaskInput,\n StructuredGenerationTaskOutput,\n} from \"@workglow/ai\";\nimport { parsePartialJson } from \"@workglow/util/worker\";\nimport { getClient, getMaxTokens, getModelName } from \"./Anthropic_Client\";\nimport type { AnthropicModelConfig } from \"./Anthropic_ModelSchema\";\n\n/**\n * Streaming run-fn for the `[\"text.generation\", \"json-mode\"]` capability.\n *\n * Anthropic implements structured generation via tool-use under the hood:\n * a synthetic `structured_output` tool forces the model to emit JSON conforming\n * to the output schema. We accumulate the `input_json_delta` stream events and\n * yield `object-delta` for consumers that want incremental updates. The final\n * `finish` event carries the parsed object in `finish.data.object` per the\n * documented streaming-convention exception for structured generation (CLAUDE.md\n * lines 201-205): the `StructuredGenerationTask` consumer reads the parsed\n * object from `finish.data` directly instead of accumulating deltas.\n */\nexport const Anthropic_StructuredGeneration_Stream: AiProviderRunFn<\n StructuredGenerationTaskInput,\n StructuredGenerationTaskOutput,\n AnthropicModelConfig\n> = async (input, model, signal, emit, outputSchema) => {\n const client = await getClient(model);\n const modelName = getModelName(model);\n\n const schema = input.outputSchema ?? outputSchema;\n\n const stream = client.messages.stream(\n {\n model: modelName,\n messages: [{ role: \"user\", content: input.prompt as string }],\n tools: [\n {\n name: \"structured_output\",\n description: \"Output structured data conforming to the schema\",\n input_schema: schema as any,\n },\n ],\n tool_choice: { type: \"tool\" as const, name: \"structured_output\" },\n max_tokens: getMaxTokens(input, model),\n },\n { signal }\n );\n\n let accumulatedJson = \"\";\n for await (const event of stream) {\n if (event.type === \"content_block_delta\" && event.delta.type === \"input_json_delta\") {\n accumulatedJson += event.delta.partial_json;\n const partial = parsePartialJson(accumulatedJson);\n if (partial !== undefined) {\n emit({ type: \"object-delta\", port: \"object\", objectDelta: partial });\n }\n }\n }\n\n let finalObject: Record<string, unknown>;\n try {\n finalObject = JSON.parse(accumulatedJson);\n } catch {\n finalObject = parsePartialJson(accumulatedJson) ?? {};\n }\n // Exception: structured generation MUST populate finish.data.object so the\n // StructuredGenerationTask consumer can read the parsed object without a\n // JSON streaming parser. See CLAUDE.md streaming-convention-exception note.\n emit({ type: \"finish\", data: { object: finalObject } as StructuredGenerationTaskOutput });\n};\n",
|
|
16
|
+
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n TextGenerationTaskInput,\n TextGenerationTaskOutput,\n} from \"@workglow/ai\";\nimport { getLogger } from \"@workglow/util/worker\";\nimport { getClient, getMaxTokens, getModelName } from \"./Anthropic_Client\";\nimport type { AnthropicModelConfig } from \"./Anthropic_ModelSchema\";\nimport { buildAnthropicMessages } from \"./Anthropic_ToolCalling\";\n\n/**\n * Inputs that the unified `[\"text.generation\"]` runFn handles. Both\n * {@link TextGenerationTask} and {@link AiChatTask} declare\n * `requires: [\"text.generation\"]`, so the capability dispatcher routes both\n * here. AiChatTask supplies a populated `messages` array; TextGenerationTask\n * (and other simple prompt callers) supply a `prompt` string only.\n */\ninterface UnifiedTextGenerationInput extends TextGenerationTaskInput {\n readonly messages?: readonly unknown[];\n readonly systemPrompt?: string;\n}\n\n/**\n * Streaming run-fn for the `[\"text.generation\"]` capability. Used by both\n * {@link TextGenerationTask} (prompt-only input) and {@link AiChatTask}\n * (full conversation history). Yields `text-delta` events on the `text` port\n * and a final empty `finish` event per the streaming convention (consumer\n * accumulates).\n *\n * Discriminates on `Array.isArray(input.messages) && input.messages.length > 0`\n * to choose the chat vs. prompt path — safe because AiChatTask always provides\n * `messages` and TextGenerationTask never does.\n */\nexport const Anthropic_TextGeneration_Stream: AiProviderRunFn<\n TextGenerationTaskInput,\n TextGenerationTaskOutput,\n AnthropicModelConfig\n> = async (input, model, signal, emit, _outputSchema, sessionId) => {\n const logger = getLogger();\n const timerLabel = `anthropic:TextGeneration:${getModelName(model)}`;\n logger.time(timerLabel, { model: getModelName(model) });\n try {\n const client = await getClient(model);\n const modelName = getModelName(model);\n const unified = input as UnifiedTextGenerationInput;\n const hasMessages = Array.isArray(unified.messages) && unified.messages.length > 0;\n\n const messages = hasMessages\n ? buildAnthropicMessages(\n unified.messages as Parameters<typeof buildAnthropicMessages>[0],\n unified.prompt ?? \"\"\n )\n : [{ role: \"user\" as const, content: input.prompt }];\n\n const params: Record<string, unknown> = {\n model: modelName,\n messages,\n max_tokens: getMaxTokens(input, model),\n };\n if (input.temperature !== undefined) params.temperature = input.temperature;\n if ((input as { topP?: number }).topP !== undefined)\n params.top_p = (input as { topP?: number }).topP;\n\n if (unified.systemPrompt) {\n params.system = sessionId\n ? [\n {\n type: \"text\",\n text: unified.systemPrompt,\n cache_control: { type: \"ephemeral\" },\n },\n ]\n : unified.systemPrompt;\n }\n\n // Prompt caching: annotate the last user message block when sessionId is present.\n if (sessionId && hasMessages && Array.isArray(messages) && messages.length > 0) {\n const last = messages[messages.length - 1] as { content: unknown };\n if (Array.isArray(last.content) && last.content.length > 0) {\n const blocks = last.content as Array<Record<string, unknown>>;\n blocks[blocks.length - 1] = {\n ...blocks[blocks.length - 1],\n cache_control: { type: \"ephemeral\" },\n };\n }\n }\n\n const stream = (client.messages.stream as (p: unknown, o: unknown) => AsyncIterable<unknown>)(\n params,\n { signal }\n );\n\n for await (const event of stream) {\n const e = event as {\n type: string;\n delta?: { type?: string; text?: string };\n };\n if (e.type === \"content_block_delta\" && e.delta?.type === \"text_delta\") {\n emit({ type: \"text-delta\", port: \"text\", textDelta: e.delta.text ?? \"\" });\n }\n }\n emit({ type: \"finish\", data: {} as TextGenerationTaskOutput });\n } finally {\n logger.timeEnd(timerLabel, { model: getModelName(model) });\n }\n};\n",
|
|
17
17
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n ChatMessage,\n ToolCall,\n ToolCallingTaskInput,\n ToolCallingTaskOutput,\n ToolDefinition,\n} from \"@workglow/ai\";\nimport { buildToolDescription, filterValidToolCalls } from \"@workglow/ai/worker\";\nimport { parsePartialJson } from \"@workglow/util/worker\";\nimport { getClient, getMaxTokens, getModelName } from \"./Anthropic_Client\";\nimport type { AnthropicModelConfig } from \"./Anthropic_ModelSchema\";\n\nexport function buildAnthropicMessages(\n messages: ReadonlyArray<ChatMessage> | undefined,\n prompt: unknown\n): any[] {\n if (!messages || messages.length === 0) {\n return [{ role: \"user\", content: prompt }];\n }\n const out: any[] = [];\n for (const msg of messages) {\n if (msg.role === \"user\") {\n const blocks = msg.content.map((b) => {\n if (b.type === \"text\") return { type: \"text\", text: b.text };\n if (b.type === \"image\") {\n return {\n type: \"image\",\n source: { type: \"base64\", media_type: b.mimeType, data: b.data },\n };\n }\n return b;\n });\n out.push({ role: \"user\", content: blocks });\n } else if (msg.role === \"assistant\") {\n const blocks = msg.content.map((b) => {\n if (b.type === \"text\") return { type: \"text\", text: b.text };\n if (b.type === \"tool_use\") {\n return { type: \"tool_use\", id: b.id, name: b.name, input: b.input };\n }\n return b;\n });\n out.push({ role: \"assistant\", content: blocks });\n } else if (msg.role === \"tool\") {\n const blocks = msg.content\n .filter(\n (b): b is Extract<ChatMessage[\"content\"][number], { type: \"tool_result\" }> =>\n b.type === \"tool_result\"\n )\n .map((b) => {\n const content = b.content.map((inner) => {\n if (inner.type === \"text\") return { type: \"text\", text: inner.text };\n if (inner.type === \"image\") {\n return {\n type: \"image\",\n source: { type: \"base64\", media_type: inner.mimeType, data: inner.data },\n };\n }\n return inner;\n });\n return {\n type: \"tool_result\",\n tool_use_id: b.tool_use_id,\n content,\n ...(b.is_error ? { is_error: true } : {}),\n };\n });\n out.push({ role: \"user\", content: blocks });\n } else if (msg.role === \"system\") {\n // System prompts are handled separately via params.system; skip here.\n continue;\n }\n }\n return out;\n}\n\nfunction mapAnthropicToolChoice(\n toolChoice: string | undefined\n): { type: \"auto\" } | { type: \"any\" } | { type: \"tool\"; name: string } | undefined {\n if (!toolChoice || toolChoice === \"auto\") return { type: \"auto\" };\n if (toolChoice === \"none\") return undefined;\n if (toolChoice === \"required\") return { type: \"any\" };\n return { type: \"tool\", name: toolChoice };\n}\n\nexport const Anthropic_ToolCalling_Stream: AiProviderRunFn<\n ToolCallingTaskInput,\n ToolCallingTaskOutput,\n AnthropicModelConfig\n> = async (input, model, signal, emit, _outputSchema, sessionId) => {\n const client = await getClient(model);\n const modelName = getModelName(model);\n\n const tools = input.tools.map((t: ToolDefinition) => ({\n name: t.name,\n description: buildToolDescription(t),\n input_schema: t.inputSchema as any,\n }));\n\n const toolChoice = mapAnthropicToolChoice(input.toolChoice);\n\n const messages = buildAnthropicMessages(input.messages, input.prompt);\n\n const params: any = {\n model: modelName,\n messages,\n max_tokens: getMaxTokens(input, model),\n temperature: input.temperature,\n };\n\n if (input.systemPrompt) {\n params.system = input.systemPrompt;\n }\n\n if (toolChoice !== undefined) {\n params.tools = tools;\n params.tool_choice = toolChoice;\n }\n\n if (sessionId) {\n // Add cache_control breakpoints for Anthropic prompt caching\n if (params.system) {\n params.system = [\n {\n type: \"text\",\n text: params.system,\n cache_control: { type: \"ephemeral\" },\n },\n ];\n }\n if (params.tools && params.tools.length > 0) {\n const lastIdx = params.tools.length - 1;\n params.tools[lastIdx] = {\n ...params.tools[lastIdx],\n cache_control: { type: \"ephemeral\" },\n };\n }\n }\n\n const stream = client.messages.stream(params, { signal });\n\n const blockMeta = new Map<number, { type: string; id?: string; name?: string; json: string }>();\n /** Keyed by Anthropic content block index — avoids collisions when `id` is missing during early deltas. */\n const toolCallsByBlockIndex = new Map<number, ToolCall>();\n\n const toolCallsInStreamOrder = (): ToolCall[] =>\n [...toolCallsByBlockIndex.entries()].sort((a, b) => a[0] - b[0]).map(([, tc]) => tc);\n\n /**\n * Defence-in-depth: drop tool calls whose name isn't in the declared tool\n * set before yielding to the consumer. Anthropic's tool API normally\n * respects `input.tools`, but a stray response from a model that\n * hallucinates a function name would otherwise propagate to dispatch.\n */\n const validatedToolCallsInStreamOrder = (): ToolCall[] =>\n filterValidToolCalls(toolCallsInStreamOrder(), input.tools);\n\n for await (const event of stream) {\n if (event.type === \"content_block_start\") {\n const block = event.content_block;\n const index = event.index as number;\n if (block.type === \"tool_use\") {\n blockMeta.set(index, {\n type: \"tool_use\",\n id: block.id,\n name: block.name,\n json: \"\",\n });\n } else if (block.type === \"text\") {\n blockMeta.set(index, { type: \"text\", json: \"\" });\n }\n } else if (event.type === \"content_block_delta\") {\n const index = event.index as number;\n const delta = event.delta as any;\n if (delta.type === \"text_delta\") {\n emit({ type: \"text-delta\", port: \"text\", textDelta: delta.text });\n } else if (delta.type === \"input_json_delta\") {\n const meta = blockMeta.get(index);\n if (meta) {\n meta.json += delta.partial_json;\n let parsedInput: Record<string, unknown>;\n try {\n parsedInput = JSON.parse(meta.json);\n } catch {\n const partial = parsePartialJson(meta.json);\n parsedInput = (partial as Record<string, unknown>) ?? {};\n }\n toolCallsByBlockIndex.set(index, {\n id: meta.id ?? \"\",\n name: meta.name ?? \"\",\n input: parsedInput,\n });\n emit({\n type: \"object-delta\",\n port: \"toolCalls\",\n objectDelta: validatedToolCallsInStreamOrder(),\n });\n }\n }\n } else if (event.type === \"content_block_stop\") {\n const index = event.index as number;\n const meta = blockMeta.get(index);\n if (meta?.type === \"tool_use\") {\n let finalInput: Record<string, unknown>;\n try {\n finalInput = JSON.parse(meta.json);\n } catch {\n finalInput = (parsePartialJson(meta.json) as Record<string, unknown>) ?? {};\n }\n const id = meta.id ?? \"\";\n toolCallsByBlockIndex.set(index, { id, name: meta.name ?? \"\", input: finalInput });\n emit({\n type: \"object-delta\",\n port: \"toolCalls\",\n objectDelta: validatedToolCallsInStreamOrder(),\n });\n }\n blockMeta.delete(index);\n }\n }\n\n emit({ type: \"finish\", data: { text: \"\", toolCalls: [] } as ToolCallingTaskOutput });\n};\n",
|
|
18
|
-
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {
|
|
19
|
-
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {
|
|
20
|
-
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {
|
|
18
|
+
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { AiProviderRunFn, TextRewriterTaskInput, TextRewriterTaskOutput } from \"@workglow/ai\";\nimport { getClient, getMaxTokens, getModelName } from \"./Anthropic_Client\";\nimport type { AnthropicModelConfig } from \"./Anthropic_ModelSchema\";\n\nexport const Anthropic_TextRewriter_Stream: AiProviderRunFn<\n TextRewriterTaskInput,\n TextRewriterTaskOutput,\n AnthropicModelConfig\n> = async (input, model, signal, emit) => {\n const client = await getClient(model);\n const modelName = getModelName(model);\n\n const stream = client.messages.stream(\n {\n model: modelName,\n system: input.prompt,\n messages: [{ role: \"user\", content: input.text }],\n max_tokens: getMaxTokens({}, model),\n },\n { signal }\n );\n\n for await (const event of stream) {\n if (event.type === \"content_block_delta\" && event.delta.type === \"text_delta\") {\n emit({ type: \"text-delta\", port: \"text\", textDelta: event.delta.text });\n }\n }\n emit({ type: \"finish\", data: {} as TextRewriterTaskOutput });\n};\n",
|
|
19
|
+
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { AiProviderRunFn, TextSummaryTaskInput, TextSummaryTaskOutput } from \"@workglow/ai\";\nimport { getClient, getMaxTokens, getModelName } from \"./Anthropic_Client\";\nimport type { AnthropicModelConfig } from \"./Anthropic_ModelSchema\";\n\nexport const Anthropic_TextSummary_Stream: AiProviderRunFn<\n TextSummaryTaskInput,\n TextSummaryTaskOutput,\n AnthropicModelConfig\n> = async (input, model, signal, emit) => {\n const client = await getClient(model);\n const modelName = getModelName(model);\n\n const stream = client.messages.stream(\n {\n model: modelName,\n system: \"Summarize the following text concisely.\",\n messages: [{ role: \"user\", content: input.text }],\n max_tokens: getMaxTokens({}, model),\n },\n { signal }\n );\n\n for await (const event of stream) {\n if (event.type === \"content_block_delta\" && event.delta.type === \"text_delta\") {\n emit({ type: \"text-delta\", port: \"text\", textDelta: event.delta.text });\n }\n }\n emit({ type: \"finish\", data: {} as TextSummaryTaskOutput });\n};\n",
|
|
20
|
+
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { AiProviderPreviewRunFn, AiProviderRunFnRegistration } from \"@workglow/ai\";\nimport {\n ANTHROPIC_COUNT_TOKENS,\n ANTHROPIC_JSON_MODE,\n ANTHROPIC_MODEL_INFO,\n ANTHROPIC_MODEL_SEARCH,\n ANTHROPIC_TEXT_GENERATION,\n ANTHROPIC_TEXT_REWRITER,\n ANTHROPIC_TEXT_SUMMARY,\n ANTHROPIC_TOOL_USE,\n} from \"./Anthropic_CapabilitySets\";\nimport type { AnthropicModelConfig } from \"./Anthropic_ModelSchema\";\n\nexport { getClient, getMaxTokens, getModelName, loadAnthropicSDK } from \"./Anthropic_Client\";\n\nimport {\n Anthropic_CountTokens_Preview,\n Anthropic_CountTokens_Stream,\n} from \"./Anthropic_CountTokens\";\nimport { Anthropic_ModelInfo_Stream } from \"./Anthropic_ModelInfo\";\nimport { Anthropic_ModelSearch_Stream } from \"./Anthropic_ModelSearch\";\nimport { Anthropic_StructuredGeneration_Stream } from \"./Anthropic_StructuredGeneration\";\nimport { Anthropic_TextGeneration_Stream } from \"./Anthropic_TextGeneration\";\nimport { Anthropic_TextRewriter_Stream } from \"./Anthropic_TextRewriter\";\nimport { Anthropic_TextSummary_Stream } from \"./Anthropic_TextSummary\";\nimport { Anthropic_ToolCalling_Stream } from \"./Anthropic_ToolCalling\";\n\n/**\n * Capability-set run-fn registrations for the Anthropic provider. Order is\n * significant only as a tiebreaker — the dispatcher prefers the smallest\n * `serves` set that is a superset of the task's `requires`, so the bare\n * `[\"text.generation\"]` entry wins for a plain {@link TextGenerationTask} or\n * {@link AiChatTask} while the `[\"text.generation\", \"tool-use\"]` entry wins\n * for {@link ToolCallingTask}.\n *\n * Note: Anthropic does NOT support embeddings, image generation, or image editing.\n */\nexport const ANTHROPIC_RUN_FNS: readonly AiProviderRunFnRegistration<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n any,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n any,\n AnthropicModelConfig\n>[] = [\n { serves: ANTHROPIC_TEXT_GENERATION, runFn: Anthropic_TextGeneration_Stream },\n { serves: ANTHROPIC_TOOL_USE, runFn: Anthropic_ToolCalling_Stream },\n { serves: ANTHROPIC_JSON_MODE, runFn: Anthropic_StructuredGeneration_Stream },\n { serves: ANTHROPIC_TEXT_REWRITER, runFn: Anthropic_TextRewriter_Stream },\n { serves: ANTHROPIC_TEXT_SUMMARY, runFn: Anthropic_TextSummary_Stream },\n { serves: ANTHROPIC_COUNT_TOKENS, runFn: Anthropic_CountTokens_Stream },\n { serves: ANTHROPIC_MODEL_SEARCH, runFn: Anthropic_ModelSearch_Stream },\n { serves: ANTHROPIC_MODEL_INFO, runFn: Anthropic_ModelInfo_Stream },\n];\n\nexport const ANTHROPIC_PREVIEW_TASKS: Record<\n string,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n AiProviderPreviewRunFn<any, any, AnthropicModelConfig>\n> = {\n CountTokensTask: Anthropic_CountTokens_Preview,\n};\n",
|
|
21
21
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\n// organize-imports-ignore\n\nexport * from \"./common/Anthropic_Constants\";\nexport * from \"./common/Anthropic_ModelSchema\";\nexport * from \"./common/Anthropic_ModelSearch\";\nexport * from \"./registerAnthropic\";\n\nimport { AnthropicQueuedProvider } from \"./AnthropicQueuedProvider\";\nimport { ANTHROPIC_RUN_FN_SPECS } from \"./common/Anthropic_Capabilities\";\nimport { ANTHROPIC_RUN_FNS } from \"./common/Anthropic_JobRunFns\";\n\n/**\n * @internal Symbols exported only for use by `@workglow/test`. Not part of the stable public API.\n */\nexport const _testOnly = {\n AnthropicQueuedProvider,\n ANTHROPIC_RUN_FN_SPECS,\n ANTHROPIC_RUN_FNS,\n} as const;\n"
|
|
22
22
|
],
|
|
23
|
-
"mappings": ";;;;;;;;;AAMO,IAAM,YAAY;;ACAzB;AAIO,IAAM,uBAAuB;AAAA,EAClC,MAAM;AAAA,EACN,YAAY;AAAA,IACV,UAAU;AAAA,MACR,OAAO;AAAA,MACP,aAAa;AAAA,IACf;AAAA,IACA,iBAAiB;AAAA,MACf,MAAM;AAAA,MACN,aAAa;AAAA,MACb,YAAY;AAAA,QACV,YAAY;AAAA,UACV,MAAM;AAAA,UACN,aACE;AAAA,QACJ;AAAA,QACA,gBAAgB;AAAA,UACd,MAAM;AAAA,UACN,QAAQ;AAAA,UACR,aAAa;AAAA,UACb,eAAe;AAAA,QACjB;AAAA,QACA,UAAU;AAAA,UACR,MAAM;AAAA,UACN,aAAa;AAAA,QACf;AAAA,QACA,YAAY;AAAA,UACV,MAAM;AAAA,UACN,aAAa;AAAA,UACb,SAAS;AAAA,UACT,SAAS;AAAA,QACX;AAAA,MACF;AAAA,MACA,UAAU,CAAC,YAAY;AAAA,MACvB,sBAAsB;AAAA,IACxB;AAAA,EACF;AAAA,EACA,UAAU,CAAC,YAAY,iBAAiB;AAAA,EACxC,sBAAsB;AACxB;AAEO,IAAM,6BAA6B;AAAA,EACxC,MAAM;AAAA,EACN,YAAY;AAAA,OACP,kBAAkB;AAAA,OAClB,qBAAqB;AAAA,EAC1B;AAAA,EACA,UAAU,CAAC,GAAG,kBAAkB,UAAU,GAAG,qBAAqB,QAAQ;AAAA,EAC1E,sBAAsB;AACxB;AAIO,IAAM,6BAA6B;AAAA,EACxC,MAAM;AAAA,EACN,YAAY;AAAA,OACP,kBAAkB;AAAA,OAClB,qBAAqB;AAAA,EAC1B;AAAA,EACA,UAAU,CAAC,GAAG,kBAAkB,UAAU,GAAG,qBAAqB,QAAQ;AAAA,EAC1E,sBAAsB;AACxB;;AC3DA;;;ACNA;AAMA,IAAI;AAGJ,eAAsB,gBAAgB,GAAkC;AAAA,EACtE,iBAAwB,4BACrB,KAAK,CAAC,QAAQ,IAAI,OAAO,EACzB,MAAM,MAAM;AAAA,IACX,eAAe;AAAA,IACf,MAAM,IAAI,MACR,+FACF;AAAA,GACD;AAAA,EACH,OAAO;AAAA;AAWT,eAAsB,SAAS,CAAC,OAAyC;AAAA,EACvE,MAAM,YAAY,MAAM,iBAAiB;AAAA,EACzC,MAAM,SAAS,OAAO;AAAA,EACtB,MAAM,SAAS,cAAc;AAAA,IAC3B;AAAA,IACA,QAAQ;AAAA,IACR,eAAe;AAAA,EACjB,CAAC;AAAA,EACD,IAAI;AAAA,IACF,OAAO,IAAI,UAAU;AAAA,MACnB;AAAA,MACA,SAAS,QAAQ,YAAY;AAAA,MAC7B,yBAAyB,cAAc;AAAA,IACzC,CAAC;AAAA,IACD,OAAO,KAAK;AAAA,IACZ,MAAM,IAAI,MACR,sCAAsC,eAAe,QAAQ,IAAI,UAAU,iBAC7E;AAAA;AAAA;AAIG,SAAS,YAAY,CAAC,OAAiD;AAAA,EAC5E,MAAM,OAAO,OAAO,iBAAiB;AAAA,EACrC,IAAI,CAAC,MAAM;AAAA,IACT,MAAM,IAAI,MAAM,mDAAmD;AAAA,EACrE;AAAA,EACA,OAAO;AAAA;AAGF,SAAS,YAAY,CAC1B,OACA,OACQ;AAAA,EACR,OAAO,MAAM,aAAa,OAAO,iBAAiB,cAAc;AAAA;;;AD9ClE,IAAM,qBAA8D;AAAA,EAClE,EAAE,OAAO,mBAAmB,OAAO,kBAAkB;AAAA,EACrD,EAAE,OAAO,qBAAqB,OAAO,oBAAoB;AAAA,EACzD,EAAE,OAAO,6BAA6B,OAAO,4BAA4B;AAAA,EACzE,EAAE,OAAO,mBAAmB,OAAO,kBAAkB;AAAA,EACrD,EAAE,OAAO,8BAA8B,OAAO,6BAA6B;AAAA,EAC3E,EAAE,OAAO,8BAA8B,OAAO,6BAA6B;AAAA,EAC3E,EAAE,OAAO,6BAA6B,OAAO,4BAA4B;AAC3E;AAEA,eAAe,mBAAmB,CAAC,eAA0D;AAAA,EAC3F,MAAM,SAAS,MAAM,UAAU;AAAA,IAC7B,UAAU;AAAA,IACV,iBAAiB,EAAE,YAAY,IAAI,gBAAgB,cAAc;AAAA,EACnE,CAAC;AAAA,EACD,MAAM,SAAmC,CAAC;AAAA,EAC1C,iBAAiB,KAAK,OAAO,KAAK,OAAO,KAAK,GAAG;AAAA,IAC/C,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,OAAO,EAAE,IAAI,aAAa,EAAE,GAAG,CAAC;AAAA,EACvE;AAAA,EACA,OAAO;AAAA;AAGT,SAAS,YAAY,CAAC,QAA2D;AAAA,EAC/E,OAAO,OAAO,IAAI,CAAC,OAAO;AAAA,IACxB,IAAI,EAAE;AAAA,IACN,OAAO,EAAE;AAAA,IACT,aAAa,EAAE,eAAe;AAAA,IAC9B,QAAQ;AAAA,MACN,UAAU,EAAE;AAAA,MACZ,UAAU;AAAA,MACV,OAAO,EAAE;AAAA,MACT,aAAa;AAAA,MACb,cAAc,CAAC;AAAA,MACf,iBAAiB,EAAE,YAAY,EAAE,MAAM;AAAA,MACvC,UAAU,CAAC;AAAA,IACb;AAAA,IACA,KAAK;AAAA,EACP,EAAE;AAAA;AAGG,IAAM,+BAGT,OAAO,OAAO,QAAQ,SAAS,SAAS;AAAA,EAC1C,IAAI;AAAA,EACJ,IAAI,CAAC,MAAM,gBAAgB;AAAA,IACzB,SAAS;AAAA,EACX,EAAO;AAAA,IACL,SAAS,MAAM,oBAAoB,MAAM,cAAc;AAAA;AAAA,EAEzD,SAAS,2BAA2B,QAAQ,MAAM,KAAK;AAAA,EACvD,KAAK,EAAE,MAAM,UAAU,MAAM,EAAE,SAAS,aAAa,MAAM,EAAE,EAAE,CAAC;AAAA;;AElElE;;;ACDA;AAEA;;;ACgBO,IAAM,4BAA4B,CAAC,iBAAiB;AACpD,IAAM,qBAAqB,CAAC,mBAAmB,UAAU;AACzD,IAAM,sBAAsB,CAAC,mBAAmB,WAAW;AAC3D,IAAM,0BAA0B,CAAC,eAAe;AAChD,IAAM,yBAAyB,CAAC,cAAc;AAC9C,IAAM,yBAAyB,CAAC,oBAAoB;AACpD,IAAM,yBAAyB,CAAC,cAAc;AAC9C,IAAM,uBAAuB,CAAC,YAAY;AAG1C,IAAM,4BAA4B;AAAA,EACvC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;;;ACtBO,IAAM,yBAAyB,0BAA0B,IAAI,CAAC,YAAY,EAAE,OAAO,EAAE;AAErF,SAAS,yBAAyB,GAA0D;AAAA,EACjG,OAAO;AAAA;AAmBF,SAAS,0BAA0B,CAAC,OAA+C;AAAA,EACxF,MAAM,KAAK,OACT,MAAM,YACH,MAAM,iBAAyD,cAChE,EACJ;AAAA,EAGA,IAAI,sBAAsB,KAAK,EAAE,GAAG;AAAA,IAClC,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EAGA,IAAI,iCAAiC,KAAK,EAAE,GAAG;AAAA,IAC7C,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EAGA,IAAI,oCAAoC,KAAK,EAAE,GAAG;AAAA,IAChD,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EAGA,IAAI,aAAa,KAAK,EAAE,GAAG;AAAA,IACzB,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EAGA,MAAM,WAAY,MAAM,gBAAsD,CAAC;AAAA,EAC/E,IAAI,SAAS,SAAS;AAAA,IAAG,OAAO;AAAA,EAEhC,OAAO,CAAC,gBAAgB,YAAY;AAAA;;;AFrF/B,MAAM,gCAAgC,yBAC3C,YACA;AAAA,EACE,MAAM;AAAA,EACN,aAAa;AACf,CACF,EAAE;AAAA,EACS,iBAAiB,CAAC,OAA2C;AAAA,IACpE,OAAO,2BAA2B,KAAK;AAAA;AAAA,EAGtB,gBAAgB,GAAiD;AAAA,IAClF,OAAO,0BAA0B;AAAA;AAErC;;;ADhCA,eAAsB,iBAAiB,CACrC,SAGe;AAAA,EACf,MAAM,2BAA2B,IAAI,yBAA2B,aAAa,OAAO;AAAA;;AIA/E,IAAM,+BAIT,OAAO,OAAO,OAAO,QAAQ,SAAS;AAAA,EACxC,MAAM,SAAS,MAAM,UAAU,KAAK;AAAA,EACpC,MAAM,SAAS,MAAM,OAAO,SAAS,YAAY;AAAA,IAC/C,OAAO,aAAa,KAAK;AAAA,IACzB,UAAU,CAAC,EAAE,MAAM,QAAQ,SAAS,MAAM,KAAK,CAAC;AAAA,EAClD,CAAC;AAAA,EACD,KAAK,EAAE,MAAM,UAAU,MAAM,EAAE,OAAO,OAAO,aAAa,EAAE,CAAC;AAAA;AAGxD,IAAM,gCAIT,OAAO,OAAO,WAAW;AAAA,EAC3B,OAAO,EAAE,OAAO,KAAK,KAAK,MAAM,KAAK,SAAS,CAAC,EAAE;AAAA;;;ACxB5C,IAAM,6BAIT,OAAO,OAAO,QAAQ,SAAS,SAAS;AAAA,EAC1C,MAAM,SAA8B;AAAA,IAClC,OAAO,MAAM;AAAA,IACb,UAAU;AAAA,IACV,WAAW;AAAA,IACX,kBAAkB;AAAA,IAClB,eAAe;AAAA,IACf,WAAW;AAAA,IACX,WAAW;AAAA,IACX,YAAY;AAAA,EACd;AAAA,EACA,KAAK,EAAE,MAAM,UAAU,MAAM,OAAO,CAAC;AAAA;;;ACbvC;AAgBO,IAAM,wCAIT,OAAO,OAAO,OAAO,QAAQ,MAAM,iBAAiB;AAAA,EACtD,MAAM,SAAS,MAAM,UAAU,KAAK;AAAA,EACpC,MAAM,YAAY,aAAa,KAAK;AAAA,EAEpC,MAAM,SAAS,MAAM,gBAAgB;AAAA,EAErC,MAAM,SAAS,OAAO,SAAS,OAC7B;AAAA,IACE,OAAO;AAAA,IACP,UAAU,CAAC,EAAE,MAAM,QAAQ,SAAS,MAAM,OAAiB,CAAC;AAAA,IAC5D,OAAO;AAAA,MACL;AAAA,QACE,MAAM;AAAA,QACN,aAAa;AAAA,QACb,cAAc;AAAA,MAChB;AAAA,IACF;AAAA,IACA,aAAa,EAAE,MAAM,QAAiB,MAAM,oBAAoB;AAAA,IAChE,YAAY,aAAa,OAAO,KAAK;AAAA,EACvC,GACA,EAAE,OAAO,CACX;AAAA,EAEA,IAAI,kBAAkB;AAAA,EACtB,iBAAiB,SAAS,QAAQ;AAAA,IAChC,IAAI,MAAM,SAAS,yBAAyB,MAAM,MAAM,SAAS,oBAAoB;AAAA,MACnF,mBAAmB,MAAM,MAAM;AAAA,MAC/B,MAAM,UAAU,iBAAiB,eAAe;AAAA,MAChD,IAAI,YAAY,WAAW;AAAA,QACzB,KAAK,EAAE,MAAM,gBAAgB,MAAM,UAAU,aAAa,QAAQ,CAAC;AAAA,MACrE;AAAA,IACF;AAAA,EACF;AAAA,EAEA,IAAI;AAAA,EACJ,IAAI;AAAA,IACF,cAAc,KAAK,MAAM,eAAe;AAAA,IACxC,MAAM;AAAA,IACN,cAAc,iBAAiB,eAAe,KAAK,CAAC;AAAA;AAAA,EAKtD,KAAK,EAAE,MAAM,UAAU,MAAM,EAAE,QAAQ,YAAY,EAAoC,CAAC;AAAA;;;AC/D1F;;;ACGA;AACA,6BAAS;AAIF,SAAS,sBAAsB,CACpC,UACA,QACO;AAAA,EACP,IAAI,CAAC,YAAY,SAAS,WAAW,GAAG;AAAA,IACtC,OAAO,CAAC,EAAE,MAAM,QAAQ,SAAS,OAAO,CAAC;AAAA,EAC3C;AAAA,EACA,MAAM,MAAa,CAAC;AAAA,EACpB,WAAW,OAAO,UAAU;AAAA,IAC1B,IAAI,IAAI,SAAS,QAAQ;AAAA,MACvB,MAAM,SAAS,IAAI,QAAQ,IAAI,CAAC,MAAM;AAAA,QACpC,IAAI,EAAE,SAAS;AAAA,UAAQ,OAAO,EAAE,MAAM,QAAQ,MAAM,EAAE,KAAK;AAAA,QAC3D,IAAI,EAAE,SAAS,SAAS;AAAA,UACtB,OAAO;AAAA,YACL,MAAM;AAAA,YACN,QAAQ,EAAE,MAAM,UAAU,YAAY,EAAE,UAAU,MAAM,EAAE,KAAK;AAAA,UACjE;AAAA,QACF;AAAA,QACA,OAAO;AAAA,OACR;AAAA,MACD,IAAI,KAAK,EAAE,MAAM,QAAQ,SAAS,OAAO,CAAC;AAAA,IAC5C,EAAO,SAAI,IAAI,SAAS,aAAa;AAAA,MACnC,MAAM,SAAS,IAAI,QAAQ,IAAI,CAAC,MAAM;AAAA,QACpC,IAAI,EAAE,SAAS;AAAA,UAAQ,OAAO,EAAE,MAAM,QAAQ,MAAM,EAAE,KAAK;AAAA,QAC3D,IAAI,EAAE,SAAS,YAAY;AAAA,UACzB,OAAO,EAAE,MAAM,YAAY,IAAI,EAAE,IAAI,MAAM,EAAE,MAAM,OAAO,EAAE,MAAM;AAAA,QACpE;AAAA,QACA,OAAO;AAAA,OACR;AAAA,MACD,IAAI,KAAK,EAAE,MAAM,aAAa,SAAS,OAAO,CAAC;AAAA,IACjD,EAAO,SAAI,IAAI,SAAS,QAAQ;AAAA,MAC9B,MAAM,SAAS,IAAI,QAChB,OACC,CAAC,MACC,EAAE,SAAS,aACf,EACC,IAAI,CAAC,MAAM;AAAA,QACV,MAAM,UAAU,EAAE,QAAQ,IAAI,CAAC,UAAU;AAAA,UACvC,IAAI,MAAM,SAAS;AAAA,YAAQ,OAAO,EAAE,MAAM,QAAQ,MAAM,MAAM,KAAK;AAAA,UACnE,IAAI,MAAM,SAAS,SAAS;AAAA,YAC1B,OAAO;AAAA,cACL,MAAM;AAAA,cACN,QAAQ,EAAE,MAAM,UAAU,YAAY,MAAM,UAAU,MAAM,MAAM,KAAK;AAAA,YACzE;AAAA,UACF;AAAA,UACA,OAAO;AAAA,SACR;AAAA,QACD,OAAO;AAAA,UACL,MAAM;AAAA,UACN,aAAa,EAAE;AAAA,UACf;AAAA,aACI,EAAE,WAAW,EAAE,UAAU,KAAK,IAAI,CAAC;AAAA,QACzC;AAAA,OACD;AAAA,MACH,IAAI,KAAK,EAAE,MAAM,QAAQ,SAAS,OAAO,CAAC;AAAA,IAC5C,EAAO,SAAI,IAAI,SAAS,UAAU;AAAA,MAEhC;AAAA,IACF;AAAA,EACF;AAAA,EACA,OAAO;AAAA;AAGT,SAAS,sBAAsB,CAC7B,YACiF;AAAA,EACjF,IAAI,CAAC,cAAc,eAAe;AAAA,IAAQ,OAAO,EAAE,MAAM,OAAO;AAAA,EAChE,IAAI,eAAe;AAAA,IAAQ;AAAA,EAC3B,IAAI,eAAe;AAAA,IAAY,OAAO,EAAE,MAAM,MAAM;AAAA,EACpD,OAAO,EAAE,MAAM,QAAQ,MAAM,WAAW;AAAA;AAGnC,IAAM,+BAIT,OAAO,OAAO,OAAO,QAAQ,MAAM,eAAe,cAAc;AAAA,EAClE,MAAM,SAAS,MAAM,UAAU,KAAK;AAAA,EACpC,MAAM,YAAY,aAAa,KAAK;AAAA,EAEpC,MAAM,QAAQ,MAAM,MAAM,IAAI,CAAC,OAAuB;AAAA,IACpD,MAAM,EAAE;AAAA,IACR,aAAa,qBAAqB,CAAC;AAAA,IACnC,cAAc,EAAE;AAAA,EAClB,EAAE;AAAA,EAEF,MAAM,aAAa,uBAAuB,MAAM,UAAU;AAAA,EAE1D,MAAM,WAAW,uBAAuB,MAAM,UAAU,MAAM,MAAM;AAAA,EAEpE,MAAM,SAAc;AAAA,IAClB,OAAO;AAAA,IACP;AAAA,IACA,YAAY,aAAa,OAAO,KAAK;AAAA,IACrC,aAAa,MAAM;AAAA,EACrB;AAAA,EAEA,IAAI,MAAM,cAAc;AAAA,IACtB,OAAO,SAAS,MAAM;AAAA,EACxB;AAAA,EAEA,IAAI,eAAe,WAAW;AAAA,IAC5B,OAAO,QAAQ;AAAA,IACf,OAAO,cAAc;AAAA,EACvB;AAAA,EAEA,IAAI,WAAW;AAAA,IAEb,IAAI,OAAO,QAAQ;AAAA,MACjB,OAAO,SAAS;AAAA,QACd;AAAA,UACE,MAAM;AAAA,UACN,MAAM,OAAO;AAAA,UACb,eAAe,EAAE,MAAM,YAAY;AAAA,QACrC;AAAA,MACF;AAAA,IACF;AAAA,IACA,IAAI,OAAO,SAAS,OAAO,MAAM,SAAS,GAAG;AAAA,MAC3C,MAAM,UAAU,OAAO,MAAM,SAAS;AAAA,MACtC,OAAO,MAAM,WAAW;AAAA,WACnB,OAAO,MAAM;AAAA,QAChB,eAAe,EAAE,MAAM,YAAY;AAAA,MACrC;AAAA,IACF;AAAA,EACF;AAAA,EAEA,MAAM,SAAS,OAAO,SAAS,OAAO,QAAQ,EAAE,OAAO,CAAC;AAAA,EAExD,MAAM,YAAY,IAAI;AAAA,EAEtB,MAAM,wBAAwB,IAAI;AAAA,EAElC,MAAM,yBAAyB,MAC7B,CAAC,GAAG,sBAAsB,QAAQ,CAAC,EAAE,KAAK,CAAC,GAAG,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,IAAI,QAAQ,EAAE;AAAA,EAQrF,MAAM,kCAAkC,MACtC,qBAAqB,uBAAuB,GAAG,MAAM,KAAK;AAAA,EAE5D,iBAAiB,SAAS,QAAQ;AAAA,IAChC,IAAI,MAAM,SAAS,uBAAuB;AAAA,MACxC,MAAM,QAAQ,MAAM;AAAA,MACpB,MAAM,QAAQ,MAAM;AAAA,MACpB,IAAI,MAAM,SAAS,YAAY;AAAA,QAC7B,UAAU,IAAI,OAAO;AAAA,UACnB,MAAM;AAAA,UACN,IAAI,MAAM;AAAA,UACV,MAAM,MAAM;AAAA,UACZ,MAAM;AAAA,QACR,CAAC;AAAA,MACH,EAAO,SAAI,MAAM,SAAS,QAAQ;AAAA,QAChC,UAAU,IAAI,OAAO,EAAE,MAAM,QAAQ,MAAM,GAAG,CAAC;AAAA,MACjD;AAAA,IACF,EAAO,SAAI,MAAM,SAAS,uBAAuB;AAAA,MAC/C,MAAM,QAAQ,MAAM;AAAA,MACpB,MAAM,QAAQ,MAAM;AAAA,MACpB,IAAI,MAAM,SAAS,cAAc;AAAA,QAC/B,KAAK,EAAE,MAAM,cAAc,MAAM,QAAQ,WAAW,MAAM,KAAK,CAAC;AAAA,MAClE,EAAO,SAAI,MAAM,SAAS,oBAAoB;AAAA,QAC5C,MAAM,OAAO,UAAU,IAAI,KAAK;AAAA,QAChC,IAAI,MAAM;AAAA,UACR,KAAK,QAAQ,MAAM;AAAA,UACnB,IAAI;AAAA,UACJ,IAAI;AAAA,YACF,cAAc,KAAK,MAAM,KAAK,IAAI;AAAA,YAClC,MAAM;AAAA,YACN,MAAM,UAAU,kBAAiB,KAAK,IAAI;AAAA,YAC1C,cAAe,WAAuC,CAAC;AAAA;AAAA,UAEzD,sBAAsB,IAAI,OAAO;AAAA,YAC/B,IAAI,KAAK,MAAM;AAAA,YACf,MAAM,KAAK,QAAQ;AAAA,YACnB,OAAO;AAAA,UACT,CAAC;AAAA,UACD,KAAK;AAAA,YACH,MAAM;AAAA,YACN,MAAM;AAAA,YACN,aAAa,gCAAgC;AAAA,UAC/C,CAAC;AAAA,QACH;AAAA,MACF;AAAA,IACF,EAAO,SAAI,MAAM,SAAS,sBAAsB;AAAA,MAC9C,MAAM,QAAQ,MAAM;AAAA,MACpB,MAAM,OAAO,UAAU,IAAI,KAAK;AAAA,MAChC,IAAI,MAAM,SAAS,YAAY;AAAA,QAC7B,IAAI;AAAA,QACJ,IAAI;AAAA,UACF,aAAa,KAAK,MAAM,KAAK,IAAI;AAAA,UACjC,MAAM;AAAA,UACN,aAAc,kBAAiB,KAAK,IAAI,KAAiC,CAAC;AAAA;AAAA,QAE5E,MAAM,KAAK,KAAK,MAAM;AAAA,QACtB,sBAAsB,IAAI,OAAO,EAAE,IAAI,MAAM,KAAK,QAAQ,IAAI,OAAO,WAAW,CAAC;AAAA,QACjF,KAAK;AAAA,UACH,MAAM;AAAA,UACN,MAAM;AAAA,UACN,aAAa,gCAAgC;AAAA,QAC/C,CAAC;AAAA,MACH;AAAA,MACA,UAAU,OAAO,KAAK;AAAA,IACxB;AAAA,EACF;AAAA,EAEA,KAAK,EAAE,MAAM,UAAU,MAAM,EAAE,MAAM,IAAI,WAAW,CAAC,EAAE,EAA2B,CAAC;AAAA;;;AD5L9E,IAAM,kCAIT,OAAO,OAAO,OAAO,QAAQ,MAAM,eAAe,cAAc;AAAA,EAClE,MAAM,SAAS,UAAU;AAAA,EACzB,MAAM,aAAa,4BAA4B,aAAa,KAAK;AAAA,EACjE,OAAO,KAAK,YAAY,EAAE,OAAO,aAAa,KAAK,EAAE,CAAC;AAAA,EACtD,IAAI;AAAA,IACF,MAAM,SAAS,MAAM,UAAU,KAAK;AAAA,IACpC,MAAM,YAAY,aAAa,KAAK;AAAA,IACpC,MAAM,UAAU;AAAA,IAChB,MAAM,cAAc,MAAM,QAAQ,QAAQ,QAAQ,KAAK,QAAQ,SAAS,SAAS;AAAA,IAEjF,MAAM,WAAW,cACb,uBACE,QAAQ,UACR,QAAQ,UAAU,EACpB,IACA,CAAC,EAAE,MAAM,QAAiB,SAAS,MAAM,OAAO,CAAC;AAAA,IAErD,MAAM,SAAkC;AAAA,MACtC,OAAO;AAAA,MACP;AAAA,MACA,YAAY,aAAa,OAAO,KAAK;AAAA,IACvC;AAAA,IACA,IAAI,MAAM,gBAAgB;AAAA,MAAW,OAAO,cAAc,MAAM;AAAA,IAChE,IAAK,MAA4B,SAAS;AAAA,MACxC,OAAO,QAAS,MAA4B;AAAA,IAE9C,IAAI,QAAQ,cAAc;AAAA,MACxB,OAAO,SAAS,YACZ;AAAA,QACE;AAAA,UACE,MAAM;AAAA,UACN,MAAM,QAAQ;AAAA,UACd,eAAe,EAAE,MAAM,YAAY;AAAA,QACrC;AAAA,MACF,IACA,QAAQ;AAAA,IACd;AAAA,IAGA,IAAI,aAAa,eAAe,MAAM,QAAQ,QAAQ,KAAK,SAAS,SAAS,GAAG;AAAA,MAC9E,MAAM,OAAO,SAAS,SAAS,SAAS;AAAA,MACxC,IAAI,MAAM,QAAQ,KAAK,OAAO,KAAK,KAAK,QAAQ,SAAS,GAAG;AAAA,QAC1D,MAAM,SAAS,KAAK;AAAA,QACpB,OAAO,OAAO,SAAS,KAAK;AAAA,aACvB,OAAO,OAAO,SAAS;AAAA,UAC1B,eAAe,EAAE,MAAM,YAAY;AAAA,QACrC;AAAA,MACF;AAAA,IACF;AAAA,IAEA,MAAM,SAAU,OAAO,SAAS,OAC9B,QACA,EAAE,OAAO,CACX;AAAA,IAEA,iBAAiB,SAAS,QAAQ;AAAA,MAChC,MAAM,IAAI;AAAA,MAIV,IAAI,EAAE,SAAS,yBAAyB,EAAE,OAAO,SAAS,cAAc;AAAA,QACtE,KAAK,EAAE,MAAM,cAAc,MAAM,QAAQ,WAAW,EAAE,MAAM,QAAQ,GAAG,CAAC;AAAA,MAC1E;AAAA,IACF;AAAA,IACA,KAAK,EAAE,MAAM,UAAU,MAAM,CAAC,EAA8B,CAAC;AAAA,YAC7D;AAAA,IACA,OAAO,QAAQ,YAAY,EAAE,OAAO,aAAa,KAAK,EAAE,CAAC;AAAA;AAAA;;;AE/FtD,IAAM,gCAIT,OAAO,OAAO,OAAO,QAAQ,SAAS;AAAA,EACxC,MAAM,SAAS,MAAM,UAAU,KAAK;AAAA,EACpC,MAAM,YAAY,aAAa,KAAK;AAAA,EAEpC,MAAM,SAAS,OAAO,SAAS,OAC7B;AAAA,IACE,OAAO;AAAA,IACP,QAAQ,MAAM;AAAA,IACd,UAAU,CAAC,EAAE,MAAM,QAAQ,SAAS,MAAM,KAAK,CAAC;AAAA,IAChD,YAAY,aAAa,CAAC,GAAG,KAAK;AAAA,EACpC,GACA,EAAE,OAAO,CACX;AAAA,EAEA,iBAAiB,SAAS,QAAQ;AAAA,IAChC,IAAI,MAAM,SAAS,yBAAyB,MAAM,MAAM,SAAS,cAAc;AAAA,MAC7E,KAAK,EAAE,MAAM,cAAc,MAAM,QAAQ,WAAW,MAAM,MAAM,KAAK,CAAC;AAAA,IACxE;AAAA,EACF;AAAA,EACA,KAAK,EAAE,MAAM,UAAU,MAAM,CAAC,EAA4B,CAAC;AAAA;;;ACvBtD,IAAM,+BAIT,OAAO,OAAO,OAAO,QAAQ,SAAS;AAAA,EACxC,MAAM,SAAS,MAAM,UAAU,KAAK;AAAA,EACpC,MAAM,YAAY,aAAa,KAAK;AAAA,EAEpC,MAAM,SAAS,OAAO,SAAS,OAC7B;AAAA,IACE,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,UAAU,CAAC,EAAE,MAAM,QAAQ,SAAS,MAAM,KAAK,CAAC;AAAA,IAChD,YAAY,aAAa,CAAC,GAAG,KAAK;AAAA,EACpC,GACA,EAAE,OAAO,CACX;AAAA,EAEA,iBAAiB,SAAS,QAAQ;AAAA,IAChC,IAAI,MAAM,SAAS,yBAAyB,MAAM,MAAM,SAAS,cAAc;AAAA,MAC7E,KAAK,EAAE,MAAM,cAAc,MAAM,QAAQ,WAAW,MAAM,MAAM,KAAK,CAAC;AAAA,IACxE;AAAA,EACF;AAAA,EACA,KAAK,EAAE,MAAM,UAAU,MAAM,CAAC,EAA2B,CAAC;AAAA;;;ACMrD,IAAM,oBAMP;AAAA,EACJ,EAAE,QAAQ,2BAA2B,OAAO,gCAAgC;AAAA,EAC5E,EAAE,QAAQ,oBAAoB,OAAO,6BAA6B;AAAA,EAClE,EAAE,QAAQ,qBAAqB,OAAO,sCAAsC;AAAA,EAC5E,EAAE,QAAQ,yBAAyB,OAAO,8BAA8B;AAAA,EACxE,EAAE,QAAQ,wBAAwB,OAAO,6BAA6B;AAAA,EACtE,EAAE,QAAQ,wBAAwB,OAAO,6BAA6B;AAAA,EACtE,EAAE,QAAQ,wBAAwB,OAAO,6BAA6B;AAAA,EACtE,EAAE,QAAQ,sBAAsB,OAAO,2BAA2B;AACpE;AAEO,IAAM,0BAIT;AAAA,EACF,iBAAiB;AACnB;;;AC9CO,IAAM,YAAY;AAAA,EACvB;AAAA,EACA;AAAA,EACA;AACF;",
|
|
23
|
+
"mappings": "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",
|
|
24
24
|
"debugId": "4152D03071B4556864756E2164756E21",
|
|
25
25
|
"names": []
|
|
26
26
|
}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@workglow/anthropic",
|
|
3
3
|
"type": "module",
|
|
4
4
|
"sideEffects": false,
|
|
5
|
-
"version": "0.2.
|
|
5
|
+
"version": "0.2.37",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
8
8
|
"url": "https://github.com/workglow-dev/libs.git",
|
|
@@ -34,11 +34,11 @@
|
|
|
34
34
|
"@anthropic-ai/sdk": "^0.96.0"
|
|
35
35
|
},
|
|
36
36
|
"peerDependencies": {
|
|
37
|
-
"@workglow/ai": "0.2.
|
|
38
|
-
"@workglow/job-queue": "0.2.
|
|
39
|
-
"@workglow/storage": "0.2.
|
|
40
|
-
"@workglow/task-graph": "0.2.
|
|
41
|
-
"@workglow/util": "0.2.
|
|
37
|
+
"@workglow/ai": "0.2.37",
|
|
38
|
+
"@workglow/job-queue": "0.2.37",
|
|
39
|
+
"@workglow/storage": "0.2.37",
|
|
40
|
+
"@workglow/task-graph": "0.2.37",
|
|
41
|
+
"@workglow/util": "0.2.37"
|
|
42
42
|
},
|
|
43
43
|
"peerDependenciesMeta": {
|
|
44
44
|
"@workglow/ai": {
|
|
@@ -58,11 +58,11 @@
|
|
|
58
58
|
}
|
|
59
59
|
},
|
|
60
60
|
"devDependencies": {
|
|
61
|
-
"@workglow/ai": "0.2.
|
|
62
|
-
"@workglow/job-queue": "0.2.
|
|
63
|
-
"@workglow/storage": "0.2.
|
|
64
|
-
"@workglow/task-graph": "0.2.
|
|
65
|
-
"@workglow/util": "0.2.
|
|
61
|
+
"@workglow/ai": "0.2.37",
|
|
62
|
+
"@workglow/job-queue": "0.2.37",
|
|
63
|
+
"@workglow/storage": "0.2.37",
|
|
64
|
+
"@workglow/task-graph": "0.2.37",
|
|
65
|
+
"@workglow/util": "0.2.37"
|
|
66
66
|
},
|
|
67
67
|
"files": [
|
|
68
68
|
"dist",
|