@nodetool-ai/runtime 0.7.0-rc.22 → 0.8.1
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/README.md +29 -0
- package/dist/.nodetool-build-stamp +1 -0
- package/dist/agent-memory.d.ts +118 -0
- package/dist/agent-memory.d.ts.map +1 -0
- package/dist/agent-memory.js +186 -0
- package/dist/agent-memory.js.map +1 -0
- package/dist/async-local-storage.d.ts +20 -0
- package/dist/async-local-storage.d.ts.map +1 -0
- package/dist/async-local-storage.js +28 -0
- package/dist/async-local-storage.js.map +1 -0
- package/dist/blender-executor.d.ts +93 -0
- package/dist/blender-executor.d.ts.map +1 -0
- package/dist/blender-executor.js +294 -0
- package/dist/blender-executor.js.map +1 -0
- package/dist/comfy-executor.d.ts +23 -1
- package/dist/comfy-executor.d.ts.map +1 -1
- package/dist/comfy-executor.js +234 -55
- package/dist/comfy-executor.js.map +1 -1
- package/dist/context-packer.d.ts +1 -1
- package/dist/context-packer.d.ts.map +1 -1
- package/dist/context-packer.js +23 -25
- package/dist/context-packer.js.map +1 -1
- package/dist/context.d.ts +954 -127
- package/dist/context.d.ts.map +1 -1
- package/dist/context.js +2424 -513
- package/dist/context.js.map +1 -1
- package/dist/cost-reconciler.d.ts +32 -0
- package/dist/cost-reconciler.d.ts.map +1 -0
- package/dist/cost-reconciler.js +21 -0
- package/dist/cost-reconciler.js.map +1 -0
- package/dist/entities.d.ts +33 -0
- package/dist/entities.d.ts.map +1 -0
- package/dist/entities.js +43 -0
- package/dist/entities.js.map +1 -0
- package/dist/external-media-fetch.d.ts +29 -0
- package/dist/external-media-fetch.d.ts.map +1 -0
- package/dist/external-media-fetch.js +38 -0
- package/dist/external-media-fetch.js.map +1 -0
- package/dist/generation-receipt.d.ts +86 -0
- package/dist/generation-receipt.d.ts.map +1 -0
- package/dist/generation-receipt.js +137 -0
- package/dist/generation-receipt.js.map +1 -0
- package/dist/generation-registry.d.ts +67 -0
- package/dist/generation-registry.d.ts.map +1 -0
- package/dist/generation-registry.js +126 -0
- package/dist/generation-registry.js.map +1 -0
- package/dist/google/client.d.ts +196 -0
- package/dist/google/client.d.ts.map +1 -0
- package/dist/google/client.js +396 -0
- package/dist/google/client.js.map +1 -0
- package/dist/google/index.d.ts +3 -0
- package/dist/google/index.d.ts.map +1 -0
- package/dist/google/index.js +3 -0
- package/dist/google/index.js.map +1 -0
- package/dist/google/token.d.ts +15 -0
- package/dist/google/token.d.ts.map +1 -0
- package/dist/google/token.js +24 -0
- package/dist/google/token.js.map +1 -0
- package/dist/host-binaries.d.ts +106 -0
- package/dist/host-binaries.d.ts.map +1 -0
- package/dist/host-binaries.js +344 -0
- package/dist/host-binaries.js.map +1 -0
- package/dist/image-codec.d.ts +74 -0
- package/dist/image-codec.d.ts.map +1 -0
- package/dist/image-codec.js +273 -0
- package/dist/image-codec.js.map +1 -0
- package/dist/index.d.ts +56 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +43 -4
- package/dist/index.js.map +1 -1
- package/dist/invocation-account.d.ts +43 -0
- package/dist/invocation-account.d.ts.map +1 -0
- package/dist/invocation-account.js +60 -0
- package/dist/invocation-account.js.map +1 -0
- package/dist/media-ref-bytes.d.ts +19 -0
- package/dist/media-ref-bytes.d.ts.map +1 -0
- package/dist/media-ref-bytes.js +181 -0
- package/dist/media-ref-bytes.js.map +1 -0
- package/dist/node-executor.d.ts +113 -2
- package/dist/node-executor.d.ts.map +1 -1
- package/dist/permission-gate.d.ts +152 -0
- package/dist/permission-gate.d.ts.map +1 -0
- package/dist/permission-gate.js +87 -0
- package/dist/permission-gate.js.map +1 -0
- package/dist/prefixed-storage-adapter.d.ts +33 -0
- package/dist/prefixed-storage-adapter.d.ts.map +1 -0
- package/dist/prefixed-storage-adapter.js +70 -0
- package/dist/prefixed-storage-adapter.js.map +1 -0
- package/dist/prompt-asset-refs.d.ts +222 -0
- package/dist/prompt-asset-refs.d.ts.map +1 -0
- package/dist/prompt-asset-refs.js +751 -0
- package/dist/prompt-asset-refs.js.map +1 -0
- package/dist/provider-cache.d.ts +3 -0
- package/dist/provider-cache.d.ts.map +1 -0
- package/dist/provider-cache.js +8 -0
- package/dist/provider-cache.js.map +1 -0
- package/dist/providers/aki-provider.d.ts +33 -10
- package/dist/providers/aki-provider.d.ts.map +1 -1
- package/dist/providers/aki-provider.js +84 -77
- package/dist/providers/aki-provider.js.map +1 -1
- package/dist/providers/alibaba-provider.d.ts +39 -0
- package/dist/providers/alibaba-provider.d.ts.map +1 -0
- package/dist/providers/alibaba-provider.js +86 -0
- package/dist/providers/alibaba-provider.js.map +1 -0
- package/dist/providers/anthropic-provider.d.ts +52 -3
- package/dist/providers/anthropic-provider.d.ts.map +1 -1
- package/dist/providers/anthropic-provider.js +1020 -338
- package/dist/providers/anthropic-provider.js.map +1 -1
- package/dist/providers/atlascloud-provider.d.ts +101 -0
- package/dist/providers/atlascloud-provider.d.ts.map +1 -0
- package/dist/providers/atlascloud-provider.js +1009 -0
- package/dist/providers/atlascloud-provider.js.map +1 -0
- package/dist/providers/atlascloud-transport.d.ts +100 -0
- package/dist/providers/atlascloud-transport.d.ts.map +1 -0
- package/dist/providers/atlascloud-transport.js +364 -0
- package/dist/providers/atlascloud-transport.js.map +1 -0
- package/dist/providers/atlascloud-webhook-registry.d.ts +35 -0
- package/dist/providers/atlascloud-webhook-registry.d.ts.map +1 -0
- package/dist/providers/atlascloud-webhook-registry.js +104 -0
- package/dist/providers/atlascloud-webhook-registry.js.map +1 -0
- package/dist/providers/audio-mime.d.ts +11 -0
- package/dist/providers/audio-mime.d.ts.map +1 -0
- package/dist/providers/audio-mime.js +46 -0
- package/dist/providers/audio-mime.js.map +1 -0
- package/dist/providers/base-provider.d.ts +481 -24
- package/dist/providers/base-provider.d.ts.map +1 -1
- package/dist/providers/base-provider.js +1259 -42
- package/dist/providers/base-provider.js.map +1 -1
- package/dist/providers/cassette-provider.d.ts +217 -0
- package/dist/providers/cassette-provider.d.ts.map +1 -0
- package/dist/providers/cassette-provider.js +502 -0
- package/dist/providers/cassette-provider.js.map +1 -0
- package/dist/providers/cerebras-provider.d.ts +6 -12
- package/dist/providers/cerebras-provider.d.ts.map +1 -1
- package/dist/providers/cerebras-provider.js +8 -33
- package/dist/providers/cerebras-provider.js.map +1 -1
- package/dist/providers/claude-agent-provider.d.ts +131 -68
- package/dist/providers/claude-agent-provider.d.ts.map +1 -1
- package/dist/providers/claude-agent-provider.js +1095 -515
- package/dist/providers/claude-agent-provider.js.map +1 -1
- package/dist/providers/codex-provider.d.ts +82 -0
- package/dist/providers/codex-provider.d.ts.map +1 -0
- package/dist/providers/codex-provider.js +492 -0
- package/dist/providers/codex-provider.js.map +1 -0
- package/dist/providers/cohere-provider.d.ts +5 -2
- package/dist/providers/cohere-provider.d.ts.map +1 -1
- package/dist/providers/cohere-provider.js +9 -2
- package/dist/providers/cohere-provider.js.map +1 -1
- package/dist/providers/comfy-cloud-provider.d.ts +30 -0
- package/dist/providers/comfy-cloud-provider.d.ts.map +1 -0
- package/dist/providers/comfy-cloud-provider.js +42 -0
- package/dist/providers/comfy-cloud-provider.js.map +1 -0
- package/dist/providers/content-filter.d.ts +46 -0
- package/dist/providers/content-filter.d.ts.map +1 -0
- package/dist/providers/content-filter.js +92 -0
- package/dist/providers/content-filter.js.map +1 -0
- package/dist/providers/context-exceeded.d.ts +37 -0
- package/dist/providers/context-exceeded.d.ts.map +1 -0
- package/dist/providers/context-exceeded.js +114 -0
- package/dist/providers/context-exceeded.js.map +1 -0
- package/dist/providers/context-window.d.ts +44 -0
- package/dist/providers/context-window.d.ts.map +1 -0
- package/dist/providers/context-window.js +145 -0
- package/dist/providers/context-window.js.map +1 -0
- package/dist/providers/contract/index.d.ts +4 -0
- package/dist/providers/contract/index.d.ts.map +1 -0
- package/dist/providers/contract/index.js +4 -0
- package/dist/providers/contract/index.js.map +1 -0
- package/dist/providers/contract/probe-manifest.d.ts +75 -0
- package/dist/providers/contract/probe-manifest.d.ts.map +1 -0
- package/dist/providers/contract/probe-manifest.js +379 -0
- package/dist/providers/contract/probe-manifest.js.map +1 -0
- package/dist/providers/contract/probe-runner.d.ts +57 -0
- package/dist/providers/contract/probe-runner.d.ts.map +1 -0
- package/dist/providers/contract/probe-runner.js +180 -0
- package/dist/providers/contract/probe-runner.js.map +1 -0
- package/dist/providers/contract/redact.d.ts +29 -0
- package/dist/providers/contract/redact.d.ts.map +1 -0
- package/dist/providers/contract/redact.js +113 -0
- package/dist/providers/contract/redact.js.map +1 -0
- package/dist/providers/core-tools.d.ts +74 -0
- package/dist/providers/core-tools.d.ts.map +1 -0
- package/dist/providers/core-tools.js +127 -0
- package/dist/providers/core-tools.js.map +1 -0
- package/dist/providers/cost-calculator.d.ts +69 -50
- package/dist/providers/cost-calculator.d.ts.map +1 -1
- package/dist/providers/cost-calculator.js +207 -397
- package/dist/providers/cost-calculator.js.map +1 -1
- package/dist/providers/credential-check.d.ts +45 -0
- package/dist/providers/credential-check.d.ts.map +1 -0
- package/dist/providers/credential-check.js +159 -0
- package/dist/providers/credential-check.js.map +1 -0
- package/dist/providers/custom-model-kinds.d.ts +33 -0
- package/dist/providers/custom-model-kinds.d.ts.map +1 -0
- package/dist/providers/custom-model-kinds.js +96 -0
- package/dist/providers/custom-model-kinds.js.map +1 -0
- package/dist/providers/custom-openai-provider.d.ts +81 -0
- package/dist/providers/custom-openai-provider.d.ts.map +1 -0
- package/dist/providers/custom-openai-provider.js +182 -0
- package/dist/providers/custom-openai-provider.js.map +1 -0
- package/dist/providers/custom-provider-registry.d.ts +19 -0
- package/dist/providers/custom-provider-registry.d.ts.map +1 -0
- package/dist/providers/custom-provider-registry.js +52 -0
- package/dist/providers/custom-provider-registry.js.map +1 -0
- package/dist/providers/deepseek-provider.d.ts +8 -14
- package/dist/providers/deepseek-provider.d.ts.map +1 -1
- package/dist/providers/deepseek-provider.js +6 -35
- package/dist/providers/deepseek-provider.js.map +1 -1
- package/dist/providers/defaults.d.ts +12 -0
- package/dist/providers/defaults.d.ts.map +1 -0
- package/dist/providers/defaults.js +12 -0
- package/dist/providers/defaults.js.map +1 -0
- package/dist/providers/elevenlabs-provider.d.ts +49 -0
- package/dist/providers/elevenlabs-provider.d.ts.map +1 -0
- package/dist/providers/elevenlabs-provider.js +142 -0
- package/dist/providers/elevenlabs-provider.js.map +1 -0
- package/dist/providers/entity-references.d.ts +31 -0
- package/dist/providers/entity-references.d.ts.map +1 -0
- package/dist/providers/entity-references.js +113 -0
- package/dist/providers/entity-references.js.map +1 -0
- package/dist/providers/evolink-provider.d.ts +38 -0
- package/dist/providers/evolink-provider.d.ts.map +1 -0
- package/dist/providers/evolink-provider.js +304 -0
- package/dist/providers/evolink-provider.js.map +1 -0
- package/dist/providers/fake-provider.d.ts +72 -1
- package/dist/providers/fake-provider.d.ts.map +1 -1
- package/dist/providers/fake-provider.js +203 -1
- package/dist/providers/fake-provider.js.map +1 -1
- package/dist/providers/fal-generations.d.ts +106 -0
- package/dist/providers/fal-generations.d.ts.map +1 -0
- package/dist/providers/fal-generations.js +286 -0
- package/dist/providers/fal-generations.js.map +1 -0
- package/dist/providers/fal-provider.d.ts +171 -7
- package/dist/providers/fal-provider.d.ts.map +1 -1
- package/dist/providers/fal-provider.js +1369 -64
- package/dist/providers/fal-provider.js.map +1 -1
- package/dist/providers/fal-queue.d.ts +47 -0
- package/dist/providers/fal-queue.d.ts.map +1 -0
- package/dist/providers/fal-queue.js +231 -0
- package/dist/providers/fal-queue.js.map +1 -0
- package/dist/providers/gemini-provider.d.ts +148 -8
- package/dist/providers/gemini-provider.d.ts.map +1 -1
- package/dist/providers/gemini-provider.js +1500 -316
- package/dist/providers/gemini-provider.js.map +1 -1
- package/dist/providers/gmi-provider.d.ts +21 -0
- package/dist/providers/gmi-provider.d.ts.map +1 -0
- package/dist/providers/gmi-provider.js +34 -0
- package/dist/providers/gmi-provider.js.map +1 -0
- package/dist/providers/gpt-image-size.d.ts +3 -0
- package/dist/providers/gpt-image-size.d.ts.map +1 -0
- package/dist/providers/gpt-image-size.js +37 -0
- package/dist/providers/gpt-image-size.js.map +1 -0
- package/dist/providers/groq-provider.d.ts +9 -12
- package/dist/providers/groq-provider.d.ts.map +1 -1
- package/dist/providers/groq-provider.js +19 -33
- package/dist/providers/groq-provider.js.map +1 -1
- package/dist/providers/groq-request.d.ts +38 -0
- package/dist/providers/groq-request.d.ts.map +1 -0
- package/dist/providers/groq-request.js +138 -0
- package/dist/providers/groq-request.js.map +1 -0
- package/dist/providers/higgsfield-provider.d.ts +30 -0
- package/dist/providers/higgsfield-provider.d.ts.map +1 -0
- package/dist/providers/higgsfield-provider.js +131 -0
- package/dist/providers/higgsfield-provider.js.map +1 -0
- package/dist/providers/higgsfield-transport.d.ts +106 -0
- package/dist/providers/higgsfield-transport.d.ts.map +1 -0
- package/dist/providers/higgsfield-transport.js +182 -0
- package/dist/providers/higgsfield-transport.js.map +1 -0
- package/dist/providers/http-transport.d.ts +74 -0
- package/dist/providers/http-transport.d.ts.map +1 -0
- package/dist/providers/http-transport.js +152 -0
- package/dist/providers/http-transport.js.map +1 -0
- package/dist/providers/huggingface-provider.d.ts +71 -3
- package/dist/providers/huggingface-provider.d.ts.map +1 -1
- package/dist/providers/huggingface-provider.js +230 -34
- package/dist/providers/huggingface-provider.js.map +1 -1
- package/dist/providers/image-mime.d.ts +39 -0
- package/dist/providers/image-mime.d.ts.map +1 -0
- package/dist/providers/image-mime.js +111 -0
- package/dist/providers/image-mime.js.map +1 -0
- package/dist/providers/image-ref.d.ts +21 -0
- package/dist/providers/image-ref.d.ts.map +1 -0
- package/dist/providers/image-ref.js +44 -0
- package/dist/providers/image-ref.js.map +1 -0
- package/dist/providers/index.d.ts +84 -8
- package/dist/providers/index.d.ts.map +1 -1
- package/dist/providers/index.js +239 -56
- package/dist/providers/index.js.map +1 -1
- package/dist/providers/jina-provider.d.ts +10 -2
- package/dist/providers/jina-provider.d.ts.map +1 -1
- package/dist/providers/jina-provider.js +16 -7
- package/dist/providers/jina-provider.js.map +1 -1
- package/dist/providers/kie-provider.d.ts +170 -9
- package/dist/providers/kie-provider.d.ts.map +1 -1
- package/dist/providers/kie-provider.js +1176 -228
- package/dist/providers/kie-provider.js.map +1 -1
- package/dist/providers/kie-webhook-registry.d.ts +28 -0
- package/dist/providers/kie-webhook-registry.d.ts.map +1 -0
- package/dist/providers/kie-webhook-registry.js +91 -0
- package/dist/providers/kie-webhook-registry.js.map +1 -0
- package/dist/providers/llama-provider.d.ts +21 -37
- package/dist/providers/llama-provider.d.ts.map +1 -1
- package/dist/providers/llama-provider.js +43 -354
- package/dist/providers/llama-provider.js.map +1 -1
- package/dist/providers/lmstudio-provider.d.ts +4 -7
- package/dist/providers/lmstudio-provider.d.ts.map +1 -1
- package/dist/providers/lmstudio-provider.js +24 -15
- package/dist/providers/lmstudio-provider.js.map +1 -1
- package/dist/providers/manifest-models.d.ts +341 -1
- package/dist/providers/manifest-models.d.ts.map +1 -1
- package/dist/providers/manifest-models.js +1106 -22
- package/dist/providers/manifest-models.js.map +1 -1
- package/dist/providers/media-mime.d.ts +14 -0
- package/dist/providers/media-mime.d.ts.map +1 -0
- package/dist/providers/media-mime.js +35 -0
- package/dist/providers/media-mime.js.map +1 -0
- package/dist/providers/meshy-provider.d.ts +14 -1
- package/dist/providers/meshy-provider.d.ts.map +1 -1
- package/dist/providers/meshy-provider.js +76 -46
- package/dist/providers/meshy-provider.js.map +1 -1
- package/dist/providers/meta-provider.d.ts +22 -0
- package/dist/providers/meta-provider.d.ts.map +1 -0
- package/dist/providers/meta-provider.js +54 -0
- package/dist/providers/meta-provider.js.map +1 -0
- package/dist/providers/minimax-provider.d.ts +25 -18
- package/dist/providers/minimax-provider.d.ts.map +1 -1
- package/dist/providers/minimax-provider.js +211 -72
- package/dist/providers/minimax-provider.js.map +1 -1
- package/dist/providers/mistral-provider.d.ts +6 -12
- package/dist/providers/mistral-provider.d.ts.map +1 -1
- package/dist/providers/mistral-provider.js +10 -34
- package/dist/providers/mistral-provider.js.map +1 -1
- package/dist/providers/moonshot-provider.d.ts +11 -15
- package/dist/providers/moonshot-provider.d.ts.map +1 -1
- package/dist/providers/moonshot-provider.js +33 -23
- package/dist/providers/moonshot-provider.js.map +1 -1
- package/dist/providers/node-llama-cpp-provider.d.ts +98 -0
- package/dist/providers/node-llama-cpp-provider.d.ts.map +1 -0
- package/dist/providers/node-llama-cpp-provider.js +479 -0
- package/dist/providers/node-llama-cpp-provider.js.map +1 -0
- package/dist/providers/nodetool-provider.d.ts +49 -0
- package/dist/providers/nodetool-provider.d.ts.map +1 -0
- package/dist/providers/nodetool-provider.js +224 -0
- package/dist/providers/nodetool-provider.js.map +1 -0
- package/dist/providers/oauth/browser-launcher.d.ts +23 -0
- package/dist/providers/oauth/browser-launcher.d.ts.map +1 -0
- package/dist/providers/oauth/browser-launcher.js +45 -0
- package/dist/providers/oauth/browser-launcher.js.map +1 -0
- package/dist/providers/oauth/claude-code-credentials.d.ts +74 -0
- package/dist/providers/oauth/claude-code-credentials.d.ts.map +1 -0
- package/dist/providers/oauth/claude-code-credentials.js +133 -0
- package/dist/providers/oauth/claude-code-credentials.js.map +1 -0
- package/dist/providers/oauth/claude-code-login.d.ts +124 -0
- package/dist/providers/oauth/claude-code-login.d.ts.map +1 -0
- package/dist/providers/oauth/claude-code-login.js +230 -0
- package/dist/providers/oauth/claude-code-login.js.map +1 -0
- package/dist/providers/oauth/claude-code-oauth-client.d.ts +111 -0
- package/dist/providers/oauth/claude-code-oauth-client.d.ts.map +1 -0
- package/dist/providers/oauth/claude-code-oauth-client.js +207 -0
- package/dist/providers/oauth/claude-code-oauth-client.js.map +1 -0
- package/dist/providers/oauth/errors.d.ts +54 -0
- package/dist/providers/oauth/errors.d.ts.map +1 -0
- package/dist/providers/oauth/errors.js +79 -0
- package/dist/providers/oauth/errors.js.map +1 -0
- package/dist/providers/oauth/index.d.ts +105 -0
- package/dist/providers/oauth/index.d.ts.map +1 -0
- package/dist/providers/oauth/index.js +167 -0
- package/dist/providers/oauth/index.js.map +1 -0
- package/dist/providers/oauth/jwt-claims.d.ts +23 -0
- package/dist/providers/oauth/jwt-claims.d.ts.map +1 -0
- package/dist/providers/oauth/jwt-claims.js +67 -0
- package/dist/providers/oauth/jwt-claims.js.map +1 -0
- package/dist/providers/oauth/local-callback-server.d.ts +60 -0
- package/dist/providers/oauth/local-callback-server.d.ts.map +1 -0
- package/dist/providers/oauth/local-callback-server.js +148 -0
- package/dist/providers/oauth/local-callback-server.js.map +1 -0
- package/dist/providers/oauth/oauth-client.d.ts +55 -0
- package/dist/providers/oauth/oauth-client.d.ts.map +1 -0
- package/dist/providers/oauth/oauth-client.js +161 -0
- package/dist/providers/oauth/oauth-client.js.map +1 -0
- package/dist/providers/oauth/openai-oauth-provider.d.ts +129 -0
- package/dist/providers/oauth/openai-oauth-provider.d.ts.map +1 -0
- package/dist/providers/oauth/openai-oauth-provider.js +265 -0
- package/dist/providers/oauth/openai-oauth-provider.js.map +1 -0
- package/dist/providers/oauth/pkce-helper.d.ts +43 -0
- package/dist/providers/oauth/pkce-helper.d.ts.map +1 -0
- package/dist/providers/oauth/pkce-helper.js +57 -0
- package/dist/providers/oauth/pkce-helper.js.map +1 -0
- package/dist/providers/oauth/redaction.d.ts +22 -0
- package/dist/providers/oauth/redaction.d.ts.map +1 -0
- package/dist/providers/oauth/redaction.js +59 -0
- package/dist/providers/oauth/redaction.js.map +1 -0
- package/dist/providers/oauth/secure-credential-store.d.ts +67 -0
- package/dist/providers/oauth/secure-credential-store.d.ts.map +1 -0
- package/dist/providers/oauth/secure-credential-store.js +73 -0
- package/dist/providers/oauth/secure-credential-store.js.map +1 -0
- package/dist/providers/oauth/token-store.d.ts +53 -0
- package/dist/providers/oauth/token-store.d.ts.map +1 -0
- package/dist/providers/oauth/token-store.js +78 -0
- package/dist/providers/oauth/token-store.js.map +1 -0
- package/dist/providers/oauth/types.d.ts +64 -0
- package/dist/providers/oauth/types.d.ts.map +1 -0
- package/dist/providers/oauth/types.js +12 -0
- package/dist/providers/oauth/types.js.map +1 -0
- package/dist/providers/object-tracking.d.ts +47 -0
- package/dist/providers/object-tracking.d.ts.map +1 -0
- package/dist/providers/object-tracking.js +46 -0
- package/dist/providers/object-tracking.js.map +1 -0
- package/dist/providers/offline-model-index.d.ts +20 -0
- package/dist/providers/offline-model-index.d.ts.map +1 -0
- package/dist/providers/offline-model-index.js +112 -0
- package/dist/providers/offline-model-index.js.map +1 -0
- package/dist/providers/ollama-provider.d.ts +28 -1
- package/dist/providers/ollama-provider.d.ts.map +1 -1
- package/dist/providers/ollama-provider.js +193 -43
- package/dist/providers/ollama-provider.js.map +1 -1
- package/dist/providers/openai-compat/client.d.ts +57 -0
- package/dist/providers/openai-compat/client.d.ts.map +1 -0
- package/dist/providers/openai-compat/client.js +157 -0
- package/dist/providers/openai-compat/client.js.map +1 -0
- package/dist/providers/openai-compat/decode.d.ts +36 -0
- package/dist/providers/openai-compat/decode.d.ts.map +1 -0
- package/dist/providers/openai-compat/decode.js +55 -0
- package/dist/providers/openai-compat/decode.js.map +1 -0
- package/dist/providers/openai-compat/errors.d.ts +54 -0
- package/dist/providers/openai-compat/errors.d.ts.map +1 -0
- package/dist/providers/openai-compat/errors.js +144 -0
- package/dist/providers/openai-compat/errors.js.map +1 -0
- package/dist/providers/openai-compat/index.d.ts +8 -0
- package/dist/providers/openai-compat/index.d.ts.map +1 -0
- package/dist/providers/openai-compat/index.js +5 -0
- package/dist/providers/openai-compat/index.js.map +1 -0
- package/dist/providers/openai-compat/sse.d.ts +14 -0
- package/dist/providers/openai-compat/sse.d.ts.map +1 -0
- package/dist/providers/openai-compat/sse.js +69 -0
- package/dist/providers/openai-compat/sse.js.map +1 -0
- package/dist/providers/openai-compat/types.d.ts +75 -0
- package/dist/providers/openai-compat/types.d.ts.map +1 -0
- package/dist/providers/openai-compat/types.js +9 -0
- package/dist/providers/openai-compat/types.js.map +1 -0
- package/dist/providers/openai-compat-provider.d.ts +90 -0
- package/dist/providers/openai-compat-provider.d.ts.map +1 -0
- package/dist/providers/openai-compat-provider.js +282 -0
- package/dist/providers/openai-compat-provider.js.map +1 -0
- package/dist/providers/openai-provider.d.ts +89 -26
- package/dist/providers/openai-provider.d.ts.map +1 -1
- package/dist/providers/openai-provider.js +990 -105
- package/dist/providers/openai-provider.js.map +1 -1
- package/dist/providers/openrouter-provider.d.ts +6 -12
- package/dist/providers/openrouter-provider.d.ts.map +1 -1
- package/dist/providers/openrouter-provider.js +24 -53
- package/dist/providers/openrouter-provider.js.map +1 -1
- package/dist/providers/provider-call-failure.d.ts +39 -0
- package/dist/providers/provider-call-failure.d.ts.map +1 -0
- package/dist/providers/provider-call-failure.js +132 -0
- package/dist/providers/provider-call-failure.js.map +1 -0
- package/dist/providers/provider-error.d.ts +59 -0
- package/dist/providers/provider-error.d.ts.map +1 -0
- package/dist/providers/provider-error.js +165 -0
- package/dist/providers/provider-error.js.map +1 -0
- package/dist/providers/provider-generations.d.ts +99 -0
- package/dist/providers/provider-generations.d.ts.map +1 -0
- package/dist/providers/provider-generations.js +71 -0
- package/dist/providers/provider-generations.js.map +1 -0
- package/dist/providers/provider-queue.d.ts +62 -0
- package/dist/providers/provider-queue.d.ts.map +1 -0
- package/dist/providers/provider-queue.js +28 -0
- package/dist/providers/provider-queue.js.map +1 -0
- package/dist/providers/provider-registry.d.ts +33 -14
- package/dist/providers/provider-registry.d.ts.map +1 -1
- package/dist/providers/provider-registry.js +85 -68
- package/dist/providers/provider-registry.js.map +1 -1
- package/dist/providers/provider-request-log.d.ts +53 -0
- package/dist/providers/provider-request-log.d.ts.map +1 -0
- package/dist/providers/provider-request-log.js +157 -0
- package/dist/providers/provider-request-log.js.map +1 -0
- package/dist/providers/provider-session.d.ts +3 -0
- package/dist/providers/provider-session.d.ts.map +1 -0
- package/dist/providers/provider-session.js +10 -0
- package/dist/providers/provider-session.js.map +1 -0
- package/dist/providers/provider-transport.d.ts +11 -0
- package/dist/providers/provider-transport.d.ts.map +1 -0
- package/dist/providers/provider-transport.js +11 -0
- package/dist/providers/provider-transport.js.map +1 -0
- package/dist/providers/python-provider.d.ts +20 -12
- package/dist/providers/python-provider.d.ts.map +1 -1
- package/dist/providers/python-provider.js +185 -25
- package/dist/providers/python-provider.js.map +1 -1
- package/dist/providers/replicate-provider.d.ts +89 -7
- package/dist/providers/replicate-provider.d.ts.map +1 -1
- package/dist/providers/replicate-provider.js +801 -65
- package/dist/providers/replicate-provider.js.map +1 -1
- package/dist/providers/replicate-retry.d.ts +30 -0
- package/dist/providers/replicate-retry.d.ts.map +1 -0
- package/dist/providers/replicate-retry.js +97 -0
- package/dist/providers/replicate-retry.js.map +1 -0
- package/dist/providers/responses-api.d.ts +27 -0
- package/dist/providers/responses-api.d.ts.map +1 -0
- package/dist/providers/responses-api.js +297 -0
- package/dist/providers/responses-api.js.map +1 -0
- package/dist/providers/reve-provider.d.ts +45 -0
- package/dist/providers/reve-provider.d.ts.map +1 -0
- package/dist/providers/reve-provider.js +159 -0
- package/dist/providers/reve-provider.js.map +1 -0
- package/dist/providers/rodin-provider.d.ts +23 -1
- package/dist/providers/rodin-provider.d.ts.map +1 -1
- package/dist/providers/rodin-provider.js +89 -51
- package/dist/providers/rodin-provider.js.map +1 -1
- package/dist/providers/safe-url.d.ts +70 -0
- package/dist/providers/safe-url.d.ts.map +1 -0
- package/dist/providers/safe-url.js +277 -0
- package/dist/providers/safe-url.js.map +1 -0
- package/dist/providers/scripted-provider.d.ts +9 -0
- package/dist/providers/scripted-provider.d.ts.map +1 -1
- package/dist/providers/scripted-provider.js +86 -10
- package/dist/providers/scripted-provider.js.map +1 -1
- package/dist/providers/structured-output.d.ts +42 -0
- package/dist/providers/structured-output.d.ts.map +1 -0
- package/dist/providers/structured-output.js +83 -0
- package/dist/providers/structured-output.js.map +1 -0
- package/dist/providers/together-provider.d.ts +19 -16
- package/dist/providers/together-provider.d.ts.map +1 -1
- package/dist/providers/together-provider.js +103 -225
- package/dist/providers/together-provider.js.map +1 -1
- package/dist/providers/topaz-provider.d.ts +44 -0
- package/dist/providers/topaz-provider.d.ts.map +1 -0
- package/dist/providers/topaz-provider.js +239 -0
- package/dist/providers/topaz-provider.js.map +1 -0
- package/dist/providers/types.d.ts +603 -4
- package/dist/providers/types.d.ts.map +1 -1
- package/dist/providers/types.js +81 -1
- package/dist/providers/types.js.map +1 -1
- package/dist/providers/useapi-provider.d.ts +27 -0
- package/dist/providers/useapi-provider.d.ts.map +1 -0
- package/dist/providers/useapi-provider.js +266 -0
- package/dist/providers/useapi-provider.js.map +1 -0
- package/dist/providers/video-duration.d.ts +6 -0
- package/dist/providers/video-duration.d.ts.map +1 -0
- package/dist/providers/video-duration.js +63 -0
- package/dist/providers/video-duration.js.map +1 -0
- package/dist/providers/video-frame-fallback.d.ts +39 -0
- package/dist/providers/video-frame-fallback.d.ts.map +1 -0
- package/dist/providers/video-frame-fallback.js +155 -0
- package/dist/providers/video-frame-fallback.js.map +1 -0
- package/dist/providers/video-frames.d.ts +61 -0
- package/dist/providers/video-frames.d.ts.map +1 -0
- package/dist/providers/video-frames.js +208 -0
- package/dist/providers/video-frames.js.map +1 -0
- package/dist/providers/video-mime.d.ts +14 -0
- package/dist/providers/video-mime.d.ts.map +1 -0
- package/dist/providers/video-mime.js +44 -0
- package/dist/providers/video-mime.js.map +1 -0
- package/dist/providers/video-to-audio.d.ts +34 -0
- package/dist/providers/video-to-audio.d.ts.map +1 -0
- package/dist/providers/video-to-audio.js +62 -0
- package/dist/providers/video-to-audio.js.map +1 -0
- package/dist/providers/vllm-provider.d.ts +22 -8
- package/dist/providers/vllm-provider.d.ts.map +1 -1
- package/dist/providers/vllm-provider.js +48 -23
- package/dist/providers/vllm-provider.js.map +1 -1
- package/dist/providers/voyage-provider.d.ts +10 -2
- package/dist/providers/voyage-provider.d.ts.map +1 -1
- package/dist/providers/voyage-provider.js +16 -7
- package/dist/providers/voyage-provider.js.map +1 -1
- package/dist/providers/xai-provider.d.ts +54 -13
- package/dist/providers/xai-provider.d.ts.map +1 -1
- package/dist/providers/xai-provider.js +299 -22
- package/dist/providers/xai-provider.js.map +1 -1
- package/dist/python-bridge-base.d.ts +358 -0
- package/dist/python-bridge-base.d.ts.map +1 -0
- package/dist/python-bridge-base.js +1557 -0
- package/dist/python-bridge-base.js.map +1 -0
- package/dist/python-bridge-codec.d.ts +28 -0
- package/dist/python-bridge-codec.d.ts.map +1 -0
- package/dist/python-bridge-codec.js +39 -0
- package/dist/python-bridge-codec.js.map +1 -0
- package/dist/python-bridge-factory.d.ts +52 -0
- package/dist/python-bridge-factory.d.ts.map +1 -0
- package/dist/python-bridge-factory.js +69 -0
- package/dist/python-bridge-factory.js.map +1 -0
- package/dist/python-bridge-framing.d.ts +68 -0
- package/dist/python-bridge-framing.d.ts.map +1 -0
- package/dist/python-bridge-framing.js +91 -0
- package/dist/python-bridge-framing.js.map +1 -0
- package/dist/python-bridge-types.d.ts +545 -2
- package/dist/python-bridge-types.d.ts.map +1 -1
- package/dist/python-bridge-types.js +49 -1
- package/dist/python-bridge-types.js.map +1 -1
- package/dist/python-graph-resolver.d.ts +57 -0
- package/dist/python-graph-resolver.d.ts.map +1 -0
- package/dist/python-graph-resolver.js +79 -0
- package/dist/python-graph-resolver.js.map +1 -0
- package/dist/python-node-executor.d.ts +36 -4
- package/dist/python-node-executor.d.ts.map +1 -1
- package/dist/python-node-executor.js +177 -86
- package/dist/python-node-executor.js.map +1 -1
- package/dist/python-stdio-bridge.d.ts +18 -37
- package/dist/python-stdio-bridge.d.ts.map +1 -1
- package/dist/python-stdio-bridge.js +148 -475
- package/dist/python-stdio-bridge.js.map +1 -1
- package/dist/python-websocket-bridge.d.ts +140 -0
- package/dist/python-websocket-bridge.d.ts.map +1 -0
- package/dist/python-websocket-bridge.js +561 -0
- package/dist/python-websocket-bridge.js.map +1 -0
- package/dist/python-worker-stderr.d.ts +4 -0
- package/dist/python-worker-stderr.d.ts.map +1 -0
- package/dist/python-worker-stderr.js +24 -0
- package/dist/python-worker-stderr.js.map +1 -0
- package/dist/recommended-models.d.ts +2 -2
- package/dist/recommended-models.d.ts.map +1 -1
- package/dist/recommended-models.js +24 -4
- package/dist/recommended-models.js.map +1 -1
- package/dist/recoverable-node-error.d.ts +31 -0
- package/dist/recoverable-node-error.d.ts.map +1 -0
- package/dist/recoverable-node-error.js +37 -0
- package/dist/recoverable-node-error.js.map +1 -0
- package/dist/redact-params.d.ts +13 -0
- package/dist/redact-params.d.ts.map +1 -0
- package/dist/redact-params.js +57 -0
- package/dist/redact-params.js.map +1 -0
- package/dist/sandbox-module-catalog.d.ts +43 -0
- package/dist/sandbox-module-catalog.d.ts.map +1 -0
- package/dist/sandbox-module-catalog.js +25 -0
- package/dist/sandbox-module-catalog.js.map +1 -0
- package/dist/storage-workspace.d.ts +59 -0
- package/dist/storage-workspace.d.ts.map +1 -0
- package/dist/storage-workspace.js +426 -0
- package/dist/storage-workspace.js.map +1 -0
- package/dist/swappable-python-bridge.d.ts +83 -0
- package/dist/swappable-python-bridge.d.ts.map +1 -0
- package/dist/swappable-python-bridge.js +246 -0
- package/dist/swappable-python-bridge.js.map +1 -0
- package/dist/telemetry.d.ts +7 -0
- package/dist/telemetry.d.ts.map +1 -1
- package/dist/telemetry.js +23 -0
- package/dist/telemetry.js.map +1 -1
- package/dist/testing.d.ts +81 -0
- package/dist/testing.d.ts.map +1 -0
- package/dist/testing.js +130 -0
- package/dist/testing.js.map +1 -0
- package/dist/token-counter.d.ts +30 -0
- package/dist/token-counter.d.ts.map +1 -0
- package/dist/token-counter.js +156 -0
- package/dist/token-counter.js.map +1 -0
- package/dist/trace-exporters.d.ts +10 -0
- package/dist/trace-exporters.d.ts.map +1 -1
- package/dist/trace-exporters.js +59 -20
- package/dist/trace-exporters.js.map +1 -1
- package/dist/tracing-helpers.d.ts +45 -4
- package/dist/tracing-helpers.d.ts.map +1 -1
- package/dist/tracing-helpers.js +62 -19
- package/dist/tracing-helpers.js.map +1 -1
- package/dist/turn-budget.d.ts +278 -0
- package/dist/turn-budget.d.ts.map +1 -0
- package/dist/turn-budget.js +365 -0
- package/dist/turn-budget.js.map +1 -0
- package/dist/variable-channel.d.ts +48 -0
- package/dist/variable-channel.d.ts.map +1 -0
- package/dist/variable-channel.js +110 -0
- package/dist/variable-channel.js.map +1 -0
- package/dist/workspace.d.ts +119 -0
- package/dist/workspace.d.ts.map +1 -0
- package/dist/workspace.js +112 -0
- package/dist/workspace.js.map +1 -0
- package/package.json +107 -19
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
import type { Chunk } from "@nodetool-ai/protocol";
|
|
2
|
-
export
|
|
1
|
+
import type { Chunk, ProviderId, ProviderSession } from "@nodetool-ai/protocol";
|
|
2
|
+
export { PROVIDER_IDS } from "@nodetool-ai/protocol";
|
|
3
|
+
export type { ProviderId };
|
|
4
|
+
export type { ProviderSession };
|
|
3
5
|
export interface LanguageModel {
|
|
4
6
|
id: string;
|
|
5
7
|
name: string;
|
|
@@ -10,18 +12,99 @@ export interface ImageModel {
|
|
|
10
12
|
name: string;
|
|
11
13
|
provider: ProviderId;
|
|
12
14
|
supportedTasks?: string[];
|
|
15
|
+
/**
|
|
16
|
+
* Per-model output-size constraints derived from the provider manifest's
|
|
17
|
+
* enum fields (e.g. FAL's image_size / aspect_ratio). When present the
|
|
18
|
+
* picker offers only these values so users can't request a ratio the
|
|
19
|
+
* endpoint will silently ignore.
|
|
20
|
+
*/
|
|
21
|
+
aspectRatios?: string[];
|
|
22
|
+
resolutions?: string[];
|
|
13
23
|
}
|
|
14
24
|
export interface VideoModel {
|
|
15
25
|
id: string;
|
|
16
26
|
name: string;
|
|
17
27
|
provider: ProviderId;
|
|
18
28
|
supportedTasks?: string[];
|
|
29
|
+
/**
|
|
30
|
+
* Per-model option constraints derived from the provider manifest's enum
|
|
31
|
+
* fields. When present the composer offers only these values (e.g. a model
|
|
32
|
+
* that only supports 5s/10s clips), avoiding 422s from unsupported params.
|
|
33
|
+
*/
|
|
34
|
+
durations?: number[];
|
|
35
|
+
resolutions?: string[];
|
|
36
|
+
aspectRatios?: string[];
|
|
37
|
+
}
|
|
38
|
+
export interface ModelArtifactRef {
|
|
39
|
+
source: "huggingface";
|
|
40
|
+
repoId: string;
|
|
41
|
+
revision?: string;
|
|
42
|
+
path?: string;
|
|
43
|
+
}
|
|
44
|
+
export interface ModelAdapterInfo {
|
|
45
|
+
state: "installed" | "missing_dependency" | "unknown";
|
|
46
|
+
reasonCode?: string;
|
|
47
|
+
reason?: string;
|
|
48
|
+
artifactRef?: ModelArtifactRef;
|
|
19
49
|
}
|
|
20
50
|
export interface TTSModel {
|
|
21
51
|
id: string;
|
|
22
52
|
name: string;
|
|
23
53
|
provider: ProviderId;
|
|
24
54
|
voices?: string[];
|
|
55
|
+
capabilities?: string[];
|
|
56
|
+
languages?: string[];
|
|
57
|
+
sampleRate?: number;
|
|
58
|
+
requiresReferenceText?: boolean;
|
|
59
|
+
/** Execution adapter facts reported by the local worker without loading weights. */
|
|
60
|
+
adapter?: ModelAdapterInfo;
|
|
61
|
+
}
|
|
62
|
+
export interface TextToSpeechParams {
|
|
63
|
+
text: string;
|
|
64
|
+
model: string;
|
|
65
|
+
voice?: string;
|
|
66
|
+
speed?: number;
|
|
67
|
+
referenceAudio?: Uint8Array;
|
|
68
|
+
referenceText?: string;
|
|
69
|
+
language?: string;
|
|
70
|
+
instructions?: string;
|
|
71
|
+
/** Requested output container; raw-PCM providers may ignore this hint. */
|
|
72
|
+
audioFormat?: string;
|
|
73
|
+
}
|
|
74
|
+
export interface MusicModel {
|
|
75
|
+
id: string;
|
|
76
|
+
name: string;
|
|
77
|
+
provider: ProviderId;
|
|
78
|
+
/** Capability hints, e.g. `["text_to_music"]`. */
|
|
79
|
+
supportedTasks?: string[];
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* A model that takes audio and hands back audio: voice conversion, isolation
|
|
83
|
+
* and denoise, stem separation, audio super-resolution, audio inpaint/extend.
|
|
84
|
+
* None of these generate from a prompt alone, so they belong in no TTS or
|
|
85
|
+
* music picker — offered as one, they fail at call time with nothing to work
|
|
86
|
+
* on. `isAudioTransformNode` in `manifest-models.ts` is what identifies them.
|
|
87
|
+
*/
|
|
88
|
+
export interface AudioToAudioModel {
|
|
89
|
+
id: string;
|
|
90
|
+
name: string;
|
|
91
|
+
provider: ProviderId;
|
|
92
|
+
/** Capability hints, e.g. `["audio_to_audio"]`. */
|
|
93
|
+
supportedTasks?: string[];
|
|
94
|
+
}
|
|
95
|
+
export interface AudioToAudioParams {
|
|
96
|
+
model: AudioToAudioModel;
|
|
97
|
+
/** What the transform should do, for endpoints that take direction. */
|
|
98
|
+
prompt?: string | null;
|
|
99
|
+
/** Target voice, for voice-conversion endpoints that name one. */
|
|
100
|
+
voice?: string | null;
|
|
101
|
+
/** How far from the source to move, for endpoints that take it (0..1). */
|
|
102
|
+
strength?: number | null;
|
|
103
|
+
seed?: number | null;
|
|
104
|
+
/** Requested output container hint (e.g. "mp3", "wav"). */
|
|
105
|
+
audioFormat?: string | null;
|
|
106
|
+
/** Per-call timeout. Providers translate this into a max polling window. */
|
|
107
|
+
timeoutSeconds?: number | null;
|
|
25
108
|
}
|
|
26
109
|
export interface ASRModel {
|
|
27
110
|
id: string;
|
|
@@ -49,16 +132,102 @@ export interface ToolCall {
|
|
|
49
132
|
thought_signature?: string;
|
|
50
133
|
/** Raw Gemini parts to echo back (preserves thought content). */
|
|
51
134
|
_rawGeminiParts?: unknown[];
|
|
135
|
+
_anthropicThinkingBlocks?: AnthropicThinkingBlock[];
|
|
52
136
|
}
|
|
137
|
+
export type AnthropicThinkingBlock = {
|
|
138
|
+
type: "thinking";
|
|
139
|
+
thinking: string;
|
|
140
|
+
signature: string;
|
|
141
|
+
} | {
|
|
142
|
+
type: "redacted_thinking";
|
|
143
|
+
data: string;
|
|
144
|
+
};
|
|
145
|
+
export type ProviderThinkingDisplay = "summarized" | "omitted";
|
|
146
|
+
export type ProviderThinkingConfig = {
|
|
147
|
+
type: "adaptive";
|
|
148
|
+
display?: ProviderThinkingDisplay;
|
|
149
|
+
} | {
|
|
150
|
+
type: "manual";
|
|
151
|
+
budgetTokens: number;
|
|
152
|
+
display?: ProviderThinkingDisplay;
|
|
153
|
+
} | {
|
|
154
|
+
type: "disabled";
|
|
155
|
+
};
|
|
156
|
+
export type ProviderEffort = "low" | "medium" | "high" | "xhigh" | "max";
|
|
157
|
+
export interface ProviderCacheControl {
|
|
158
|
+
type: "ephemeral";
|
|
159
|
+
ttl?: "5m" | "1h";
|
|
160
|
+
}
|
|
161
|
+
export type ProviderToolCaller = "direct" | "code_execution_20250825" | "code_execution_20260120" | "code_execution_20260521";
|
|
162
|
+
/**
|
|
163
|
+
* Canonical name for the web-search tool. Providers with a built-in web search
|
|
164
|
+
* (`supportsNativeWebSearch`) render a tool with this name as their native
|
|
165
|
+
* server-side search instead of a function call; everyone else falls back to
|
|
166
|
+
* the SerpAPI-backed `WebSearchTool`.
|
|
167
|
+
*/
|
|
168
|
+
export declare const WEB_SEARCH_TOOL_NAME = "web_search";
|
|
169
|
+
/**
|
|
170
|
+
* Canonical name for the image-generation tool. Providers with a built-in,
|
|
171
|
+
* server-side image generator (`supportsNativeImageGeneration`, e.g. the
|
|
172
|
+
* OpenAI Responses `image_generation` tool) render a tool with this name as
|
|
173
|
+
* their native tool: the generated image arrives inside the model turn as an
|
|
174
|
+
* `image_generation_call` output item — there is no function-call round-trip —
|
|
175
|
+
* and the provider surfaces it as image content on the assistant message.
|
|
176
|
+
* Providers without native support fall back to a function tool that calls
|
|
177
|
+
* `textToImage`/`imageToImage`.
|
|
178
|
+
*/
|
|
179
|
+
export declare const IMAGE_GENERATION_TOOL_NAME = "image_generation";
|
|
53
180
|
export interface ProviderTool {
|
|
54
181
|
name: string;
|
|
55
182
|
description?: string;
|
|
56
183
|
inputSchema?: Record<string, unknown>;
|
|
184
|
+
inputExamples?: Record<string, unknown>[];
|
|
185
|
+
cacheControl?: ProviderCacheControl;
|
|
186
|
+
strict?: boolean;
|
|
187
|
+
deferLoading?: boolean;
|
|
188
|
+
allowedCallers?: ProviderToolCaller[];
|
|
57
189
|
type?: "function" | "code_interpreter";
|
|
190
|
+
/**
|
|
191
|
+
* Optional self-contained executor for this tool. When present,
|
|
192
|
+
* {@link BaseProvider.generateLoop} (and the Claude Agent SDK MCP handlers)
|
|
193
|
+
* dispatch the tool call to `execute` directly, instead of routing it through
|
|
194
|
+
* the harness-supplied `executeTool` callback. Returns the result fed back to
|
|
195
|
+
* the model — plain text, or {@link MessageContent} blocks for results that
|
|
196
|
+
* carry images. Tools without `execute` still flow through `executeTool`.
|
|
197
|
+
*/
|
|
198
|
+
execute?: (args: Record<string, unknown>, toolCallId?: string) => Promise<string | MessageContent[]>;
|
|
199
|
+
/**
|
|
200
|
+
* When `true`, the agentic loop ends after this tool runs: `generateLoop`
|
|
201
|
+
* finishes emitting the current turn's results, then stops iterating (and the
|
|
202
|
+
* Claude Agent SDK loop is aborted). Use for tools that signal completion
|
|
203
|
+
* (e.g. a `finish`/`submit` tool). Defaults to falsy (loop continues).
|
|
204
|
+
*/
|
|
205
|
+
terminal?: boolean;
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* A user-defined skill handed to a provider that drives its own agent loop.
|
|
209
|
+
*
|
|
210
|
+
* The Claude Agent SDK has a native skill mechanism (a `Skill` tool with
|
|
211
|
+
* progressive disclosure), but it only discovers skills from the filesystem
|
|
212
|
+
* via `settingSources` — which {@link ClaudeAgentProvider} deliberately locks
|
|
213
|
+
* to `[]`. This shape lets the harness hand the user's DB-backed skills to the
|
|
214
|
+
* provider, which materializes them as an isolated local plugin so the native
|
|
215
|
+
* loop can list and load them on demand. Providers that don't own their loop
|
|
216
|
+
* (the base `generateLoop`) ignore it; those receive skills baked into the
|
|
217
|
+
* system prompt instead.
|
|
218
|
+
*/
|
|
219
|
+
export interface ProviderSkill {
|
|
220
|
+
/** Filesystem-safe skill name (matches the SKILL.md `name` frontmatter). */
|
|
221
|
+
name: string;
|
|
222
|
+
/** One-line "when to use this" summary shown in the skill listing. */
|
|
223
|
+
description: string;
|
|
224
|
+
/** The full skill instructions (the SKILL.md body). */
|
|
225
|
+
content: string;
|
|
58
226
|
}
|
|
59
227
|
export interface MessageTextContent {
|
|
60
228
|
type: "text";
|
|
61
229
|
text: string;
|
|
230
|
+
citations?: MessageCitation[];
|
|
62
231
|
}
|
|
63
232
|
export interface MessageImageContent {
|
|
64
233
|
type: "image_url";
|
|
@@ -76,19 +245,102 @@ export interface MessageAudioContent {
|
|
|
76
245
|
mimeType?: string;
|
|
77
246
|
};
|
|
78
247
|
}
|
|
79
|
-
export
|
|
248
|
+
export interface MessageVideoContent {
|
|
249
|
+
type: "video";
|
|
250
|
+
video: {
|
|
251
|
+
uri?: string;
|
|
252
|
+
data?: Uint8Array | string;
|
|
253
|
+
mimeType?: string;
|
|
254
|
+
};
|
|
255
|
+
}
|
|
256
|
+
export interface MessageDocumentContent {
|
|
257
|
+
type: "document";
|
|
258
|
+
document: {
|
|
259
|
+
uri?: string;
|
|
260
|
+
data?: Uint8Array | string;
|
|
261
|
+
mimeType?: string;
|
|
262
|
+
title?: string;
|
|
263
|
+
};
|
|
264
|
+
citations?: boolean;
|
|
265
|
+
context?: string;
|
|
266
|
+
}
|
|
267
|
+
interface MessageDocumentCitationBase {
|
|
268
|
+
citedText: string;
|
|
269
|
+
documentIndex: number;
|
|
270
|
+
documentTitle?: string | null;
|
|
271
|
+
fileId?: string | null;
|
|
272
|
+
}
|
|
273
|
+
export interface MessageCharCitation extends MessageDocumentCitationBase {
|
|
274
|
+
type: "char_location";
|
|
275
|
+
startCharIndex: number;
|
|
276
|
+
endCharIndex: number;
|
|
277
|
+
}
|
|
278
|
+
export interface MessagePageCitation extends MessageDocumentCitationBase {
|
|
279
|
+
type: "page_location";
|
|
280
|
+
startPageNumber: number;
|
|
281
|
+
endPageNumber: number;
|
|
282
|
+
}
|
|
283
|
+
export interface MessageContentBlockCitation extends MessageDocumentCitationBase {
|
|
284
|
+
type: "content_block_location";
|
|
285
|
+
startBlockIndex: number;
|
|
286
|
+
endBlockIndex: number;
|
|
287
|
+
}
|
|
288
|
+
export interface MessageWebSearchCitation {
|
|
289
|
+
type: "web_search_result_location";
|
|
290
|
+
citedText: string;
|
|
291
|
+
encryptedIndex: string;
|
|
292
|
+
url: string;
|
|
293
|
+
title?: string | null;
|
|
294
|
+
}
|
|
295
|
+
export interface MessageSearchResultCitation {
|
|
296
|
+
type: "search_result_location";
|
|
297
|
+
citedText: string;
|
|
298
|
+
searchResultIndex: number;
|
|
299
|
+
source: string;
|
|
300
|
+
title?: string | null;
|
|
301
|
+
startBlockIndex: number;
|
|
302
|
+
endBlockIndex: number;
|
|
303
|
+
}
|
|
304
|
+
export type MessageCitation = MessageCharCitation | MessagePageCitation | MessageContentBlockCitation | MessageWebSearchCitation | MessageSearchResultCitation;
|
|
305
|
+
export type MessageContent = MessageTextContent | MessageImageContent | MessageAudioContent | MessageVideoContent | MessageDocumentContent;
|
|
306
|
+
export interface ProviderToolErrorResult {
|
|
307
|
+
content: string | MessageContent[];
|
|
308
|
+
isError: true;
|
|
309
|
+
}
|
|
310
|
+
export type ProviderToolResult = string | MessageContent[] | ProviderToolErrorResult;
|
|
311
|
+
export declare function isProviderToolErrorResult(result: ProviderToolResult): result is ProviderToolErrorResult;
|
|
80
312
|
export interface Message {
|
|
81
313
|
role: "system" | "user" | "assistant" | "tool";
|
|
82
314
|
content?: string | MessageContent[] | null;
|
|
83
315
|
toolCalls?: ToolCall[] | null;
|
|
84
316
|
toolCallId?: string | null;
|
|
317
|
+
isError?: boolean;
|
|
85
318
|
threadId?: string | null;
|
|
86
319
|
/** Provider-specific raw parts to echo back (e.g., Gemini thought parts). */
|
|
87
320
|
_rawGeminiParts?: unknown[];
|
|
321
|
+
_anthropicThinkingBlocks?: AnthropicThinkingBlock[];
|
|
322
|
+
}
|
|
323
|
+
/**
|
|
324
|
+
* A reusable entity (character, prop, location, style) riding along with a
|
|
325
|
+
* generation call for cross-shot consistency. Any provider consumer — nodes,
|
|
326
|
+
* the chat WebSocket, CLI — can attach these to the params; {@link BaseProvider}
|
|
327
|
+
* expands them centrally before the concrete provider runs: the descriptor
|
|
328
|
+
* joins the prompt as a `Consistency references:` block, and on image-editing
|
|
329
|
+
* tasks the reference image bytes are appended to the source-image list.
|
|
330
|
+
*/
|
|
331
|
+
export interface EntityReference {
|
|
332
|
+
/** Display name, referenced from the prompt text. */
|
|
333
|
+
name: string;
|
|
334
|
+
/** Canonical visual descriptor injected into the prompt. */
|
|
335
|
+
descriptor?: string | null;
|
|
336
|
+
/** Encoded reference image bytes (routed to image inputs on editing tasks). */
|
|
337
|
+
image?: Uint8Array | null;
|
|
88
338
|
}
|
|
89
339
|
export interface TextToImageParams {
|
|
90
340
|
model: ImageModel;
|
|
91
341
|
prompt: string;
|
|
342
|
+
/** Consistency entities; descriptors join the prompt (t2i takes no images). */
|
|
343
|
+
entities?: EntityReference[] | null;
|
|
92
344
|
negativePrompt?: string | null;
|
|
93
345
|
width?: number;
|
|
94
346
|
height?: number;
|
|
@@ -100,10 +352,21 @@ export interface TextToImageParams {
|
|
|
100
352
|
seed?: number | null;
|
|
101
353
|
scheduler?: string | null;
|
|
102
354
|
safetyCheck?: boolean | null;
|
|
355
|
+
/**
|
|
356
|
+
* Cancellation for the upstream request. Providers that can abort their
|
|
357
|
+
* transport honor it; the rest ignore it (the caller still discards the
|
|
358
|
+
* result). Optional so provider implementations opt in individually.
|
|
359
|
+
*/
|
|
360
|
+
signal?: AbortSignal;
|
|
103
361
|
}
|
|
104
362
|
export interface ImageToImageParams {
|
|
105
363
|
model: ImageModel;
|
|
106
364
|
prompt: string;
|
|
365
|
+
/**
|
|
366
|
+
* Consistency entities; descriptors join the prompt and reference images are
|
|
367
|
+
* appended to the source-image list (after the caller's own images).
|
|
368
|
+
*/
|
|
369
|
+
entities?: EntityReference[] | null;
|
|
107
370
|
negativePrompt?: string | null;
|
|
108
371
|
targetWidth?: number | null;
|
|
109
372
|
targetHeight?: number | null;
|
|
@@ -115,10 +378,159 @@ export interface ImageToImageParams {
|
|
|
115
378
|
strength?: number | null;
|
|
116
379
|
seed?: number | null;
|
|
117
380
|
scheduler?: string | null;
|
|
381
|
+
/**
|
|
382
|
+
* Cancellation for the upstream request. Providers that can abort their
|
|
383
|
+
* transport honor it; the rest ignore it (the caller still discards the
|
|
384
|
+
* result). Optional so provider implementations opt in individually.
|
|
385
|
+
*/
|
|
386
|
+
signal?: AbortSignal;
|
|
387
|
+
}
|
|
388
|
+
/**
|
|
389
|
+
* Inpaint (mask-guided edit): regenerate the masked region of one or more
|
|
390
|
+
* source images according to a prompt. Identical to {@link ImageToImageParams}
|
|
391
|
+
* but the `mask` is required — endpoints are selected and routed by their
|
|
392
|
+
* declared mask field. White pixels in the mask mark the region to regenerate.
|
|
393
|
+
*/
|
|
394
|
+
export interface InpaintingParams extends ImageToImageParams {
|
|
395
|
+
/** Mask image — white pixels indicate the region to regenerate. */
|
|
396
|
+
mask: Uint8Array;
|
|
397
|
+
}
|
|
398
|
+
/**
|
|
399
|
+
* Increase the resolution / detail of an image. Some upscalers (e.g. Clarity,
|
|
400
|
+
* Magic Refiner) accept a guiding `prompt` and `creativity` to hallucinate
|
|
401
|
+
* detail; pure ESRGAN-style models ignore them.
|
|
402
|
+
*/
|
|
403
|
+
export interface UpscaleImageParams {
|
|
404
|
+
model: ImageModel;
|
|
405
|
+
/** Target magnification factor, e.g. 2 or 4. */
|
|
406
|
+
scale?: number | null;
|
|
407
|
+
prompt?: string | null;
|
|
408
|
+
/** 0–1 hint for how much new detail the model may invent. */
|
|
409
|
+
creativity?: number | null;
|
|
410
|
+
seed?: number | null;
|
|
411
|
+
}
|
|
412
|
+
/**
|
|
413
|
+
* How far to grow the canvas on each side, in source-image pixels.
|
|
414
|
+
*
|
|
415
|
+
* Endpoints spell outpainting three ways: per-side pixel counts
|
|
416
|
+
* (`fal-ai/image-apps-v2/outpaint`), per-side booleans plus one ratio
|
|
417
|
+
* (`fal-ai/wan-vace-14b/outpainting`), and a target canvas or aspect ratio
|
|
418
|
+
* (`bria/expand-image`, `fal-ai/ltx-2.3-quality/outpaint`). Pixels are the one
|
|
419
|
+
* spelling that carries the others' information, so callers state pixels and
|
|
420
|
+
* each provider reduces them to what its endpoint declares.
|
|
421
|
+
*/
|
|
422
|
+
export interface OutpaintPadding {
|
|
423
|
+
left?: number | null;
|
|
424
|
+
right?: number | null;
|
|
425
|
+
top?: number | null;
|
|
426
|
+
bottom?: number | null;
|
|
427
|
+
}
|
|
428
|
+
/**
|
|
429
|
+
* Outpaint (uncrop): keep the source image and generate new content in the
|
|
430
|
+
* area the padding adds around it. The inverse of {@link InpaintingParams} —
|
|
431
|
+
* inpainting repaints inside the frame, outpainting extends past it.
|
|
432
|
+
*/
|
|
433
|
+
export interface OutpaintImageParams {
|
|
434
|
+
model: ImageModel;
|
|
435
|
+
/** What belongs in the new area; blank lets the model continue the scene. */
|
|
436
|
+
prompt?: string | null;
|
|
437
|
+
entities?: EntityReference[] | null;
|
|
438
|
+
negativePrompt?: string | null;
|
|
439
|
+
padding?: OutpaintPadding | null;
|
|
440
|
+
/** Target canvas aspect ratio, for endpoints that expand to one. */
|
|
441
|
+
aspectRatio?: string | null;
|
|
442
|
+
seed?: number | null;
|
|
443
|
+
signal?: AbortSignal;
|
|
444
|
+
}
|
|
445
|
+
/** Remove the background from an image, returning an image with alpha. */
|
|
446
|
+
export interface RemoveBackgroundParams {
|
|
447
|
+
model: ImageModel;
|
|
448
|
+
}
|
|
449
|
+
/** A rectangle in source-image pixels. */
|
|
450
|
+
export interface ImageBox {
|
|
451
|
+
x: number;
|
|
452
|
+
y: number;
|
|
453
|
+
width: number;
|
|
454
|
+
height: number;
|
|
455
|
+
}
|
|
456
|
+
/** A click that includes or excludes a region, in source-image pixels. */
|
|
457
|
+
export interface SegmentPoint {
|
|
458
|
+
x: number;
|
|
459
|
+
y: number;
|
|
460
|
+
/** true = the object is here; false = it is not. */
|
|
461
|
+
include: boolean;
|
|
462
|
+
}
|
|
463
|
+
/**
|
|
464
|
+
* Segment an image into object masks. The prompts are alternatives, not a
|
|
465
|
+
* pipeline: a `prompt` names the concept to find ("the dog"), `points` and
|
|
466
|
+
* `box` point at one object, and passing none asks the model for whatever it
|
|
467
|
+
* finds. A model serves only the prompt kinds its endpoint declares.
|
|
468
|
+
*/
|
|
469
|
+
export interface SegmentImageParams {
|
|
470
|
+
model: ImageModel;
|
|
471
|
+
/** Concept to segment, for text-promptable models. */
|
|
472
|
+
prompt?: string | null;
|
|
473
|
+
points?: SegmentPoint[] | null;
|
|
474
|
+
box?: ImageBox | null;
|
|
475
|
+
/** Upper bound on how many masks to return. */
|
|
476
|
+
maxMasks?: number | null;
|
|
477
|
+
/** Drop masks the model scores below this (0–1). */
|
|
478
|
+
minConfidence?: number | null;
|
|
479
|
+
signal?: AbortSignal;
|
|
480
|
+
}
|
|
481
|
+
/** One object found by {@link SegmentImageParams}. */
|
|
482
|
+
export interface ImageSegmentationMask {
|
|
483
|
+
/** Encoded mask image — white inside the object, black outside. */
|
|
484
|
+
mask: Uint8Array;
|
|
485
|
+
mimeType: string;
|
|
486
|
+
/** Mask size in pixels, when the provider reports it. */
|
|
487
|
+
width?: number | null;
|
|
488
|
+
height?: number | null;
|
|
489
|
+
/** What the model called this object, when it names them. */
|
|
490
|
+
label?: string | null;
|
|
491
|
+
/** Model confidence 0–1, when the model scores its masks. */
|
|
492
|
+
confidence?: number | null;
|
|
493
|
+
/** Bounding box in source-image pixels, when the provider reports one. */
|
|
494
|
+
box?: ImageBox | null;
|
|
495
|
+
}
|
|
496
|
+
/**
|
|
497
|
+
* Re-light a subject according to a text prompt and/or a background reference.
|
|
498
|
+
*/
|
|
499
|
+
export interface RelightImageParams {
|
|
500
|
+
model: ImageModel;
|
|
501
|
+
prompt?: string | null;
|
|
502
|
+
negativePrompt?: string | null;
|
|
503
|
+
seed?: number | null;
|
|
504
|
+
}
|
|
505
|
+
/** Convert a raster image into a vector (SVG) representation. */
|
|
506
|
+
export interface VectorizeImageParams {
|
|
507
|
+
model: ImageModel;
|
|
508
|
+
}
|
|
509
|
+
/**
|
|
510
|
+
* Generate music / instrumental audio from a text prompt. Mirrors the
|
|
511
|
+
* `TextTo<Media>Params` pattern. Music providers return a fully-encoded audio
|
|
512
|
+
* file (mp3/wav/flac), so {@link BaseProvider.textToMusic} resolves to an
|
|
513
|
+
* {@link EncodedAudioResult} rather than raw PCM samples.
|
|
514
|
+
*/
|
|
515
|
+
export interface TextToMusicParams {
|
|
516
|
+
model: MusicModel;
|
|
517
|
+
/** Free-text description of the desired music (style, mood, instruments). */
|
|
518
|
+
prompt: string;
|
|
519
|
+
/** Optional song lyrics for vocal models (e.g. Suno, ACE-Step, MiniMax). */
|
|
520
|
+
lyrics?: string | null;
|
|
521
|
+
/** Requested duration in seconds (providers clamp to their own limits). */
|
|
522
|
+
durationSeconds?: number | null;
|
|
523
|
+
seed?: number | null;
|
|
524
|
+
/** Requested output container hint (e.g. "mp3", "wav"). */
|
|
525
|
+
audioFormat?: string | null;
|
|
526
|
+
/** Per-call timeout. Providers translate this into a max polling window. */
|
|
527
|
+
timeoutSeconds?: number | null;
|
|
118
528
|
}
|
|
119
529
|
export interface TextToVideoParams {
|
|
120
530
|
model: VideoModel;
|
|
121
531
|
prompt: string;
|
|
532
|
+
/** Consistency entities; descriptors join the prompt (text-only for video). */
|
|
533
|
+
entities?: EntityReference[] | null;
|
|
122
534
|
negativePrompt?: string | null;
|
|
123
535
|
numFrames?: number | null;
|
|
124
536
|
/** Requested duration in seconds (provider decides fps). */
|
|
@@ -128,10 +540,26 @@ export interface TextToVideoParams {
|
|
|
128
540
|
guidanceScale?: number | null;
|
|
129
541
|
numInferenceSteps?: number | null;
|
|
130
542
|
seed?: number | null;
|
|
543
|
+
/** Per-call timeout. Providers translate this into a max polling window. */
|
|
544
|
+
timeoutSeconds?: number | null;
|
|
545
|
+
/**
|
|
546
|
+
* Cancellation for the upstream request. Providers that can abort their
|
|
547
|
+
* transport honor it; the rest ignore it (the caller still discards the
|
|
548
|
+
* result). Optional so provider implementations opt in individually.
|
|
549
|
+
*/
|
|
550
|
+
signal?: AbortSignal;
|
|
131
551
|
}
|
|
132
552
|
export interface ImageToVideoParams {
|
|
133
553
|
model: VideoModel;
|
|
134
554
|
prompt?: string | null;
|
|
555
|
+
/** Optional final frame for models that interpolate between two images. */
|
|
556
|
+
endImage?: Uint8Array | null;
|
|
557
|
+
/**
|
|
558
|
+
* Consistency entities; descriptors join the prompt. Images are NOT appended
|
|
559
|
+
* here — the image list's first frame drives the animation, so extra images
|
|
560
|
+
* would change its meaning.
|
|
561
|
+
*/
|
|
562
|
+
entities?: EntityReference[] | null;
|
|
135
563
|
negativePrompt?: string | null;
|
|
136
564
|
numFrames?: number | null;
|
|
137
565
|
/** Requested duration in seconds (provider decides fps). */
|
|
@@ -141,8 +569,179 @@ export interface ImageToVideoParams {
|
|
|
141
569
|
guidanceScale?: number | null;
|
|
142
570
|
numInferenceSteps?: number | null;
|
|
143
571
|
seed?: number | null;
|
|
572
|
+
/** Per-call timeout. Providers translate this into a max polling window. */
|
|
573
|
+
timeoutSeconds?: number | null;
|
|
574
|
+
/**
|
|
575
|
+
* Cancellation for the upstream request. Providers that can abort their
|
|
576
|
+
* transport honor it; the rest ignore it (the caller still discards the
|
|
577
|
+
* result). Optional so provider implementations opt in individually.
|
|
578
|
+
*/
|
|
579
|
+
signal?: AbortSignal;
|
|
580
|
+
}
|
|
581
|
+
export interface ReferenceToVideoInputs {
|
|
582
|
+
images: Uint8Array[];
|
|
583
|
+
videos: Uint8Array[];
|
|
584
|
+
audios?: Uint8Array[];
|
|
585
|
+
}
|
|
586
|
+
export interface ReferenceToVideoParams extends TextToVideoParams {
|
|
587
|
+
/** Allow conditioning on audio tracks carried by reference videos. */
|
|
588
|
+
useReferenceVideoAudio?: boolean | null;
|
|
589
|
+
}
|
|
590
|
+
/**
|
|
591
|
+
* Transform an existing video into a restyled / edited video, guided by a
|
|
592
|
+
* prompt (e.g. style transfer, motion restyle). Mirrors `ImageToImageParams`
|
|
593
|
+
* for the video domain.
|
|
594
|
+
*/
|
|
595
|
+
export interface VideoToVideoParams {
|
|
596
|
+
model: VideoModel;
|
|
597
|
+
prompt?: string | null;
|
|
598
|
+
/** Ordered identity/style images, separate from the source video. */
|
|
599
|
+
referenceImages?: readonly Uint8Array[];
|
|
600
|
+
referenceAssetIds?: readonly string[];
|
|
601
|
+
signal?: AbortSignal;
|
|
602
|
+
/** Consistency entities contribute descriptors and reference images. */
|
|
603
|
+
entities?: EntityReference[] | null;
|
|
604
|
+
negativePrompt?: string | null;
|
|
605
|
+
strength?: number | null;
|
|
606
|
+
durationSeconds?: number | null;
|
|
607
|
+
resolution?: string | null;
|
|
608
|
+
seed?: number | null;
|
|
609
|
+
}
|
|
610
|
+
/** Extend the supplied video window, retaining it in the returned video. */
|
|
611
|
+
export interface ExtendVideoParams {
|
|
612
|
+
model: VideoModel;
|
|
613
|
+
prompt: string;
|
|
614
|
+
mode: "start" | "end";
|
|
615
|
+
/** Additional source seconds, not the total output duration. */
|
|
616
|
+
durationSeconds: number;
|
|
617
|
+
signal?: AbortSignal;
|
|
144
618
|
}
|
|
145
|
-
|
|
619
|
+
/**
|
|
620
|
+
* Increase the resolution / detail of a video. The video-domain twin of
|
|
621
|
+
* {@link UpscaleImageParams}: `scale` is a magnification factor and
|
|
622
|
+
* `targetResolution` names a rung instead ("1080p", "2160p"). Endpoints take
|
|
623
|
+
* one or the other, so a caller may set both and let the provider pick.
|
|
624
|
+
*/
|
|
625
|
+
export interface UpscaleVideoParams {
|
|
626
|
+
model: VideoModel;
|
|
627
|
+
/** Target magnification factor, e.g. 2 or 4. */
|
|
628
|
+
scale?: number | null;
|
|
629
|
+
/** Target output resolution, e.g. "1080p" — for endpoints that take a rung. */
|
|
630
|
+
targetResolution?: string | null;
|
|
631
|
+
/** Guidance for generative upscalers; pure ESRGAN-style models ignore it. */
|
|
632
|
+
prompt?: string | null;
|
|
633
|
+
/** 0-1 hint for how much new detail the model may invent. */
|
|
634
|
+
creativity?: number | null;
|
|
635
|
+
seed?: number | null;
|
|
636
|
+
timeoutSeconds?: number | null;
|
|
637
|
+
signal?: AbortSignal;
|
|
638
|
+
}
|
|
639
|
+
/**
|
|
640
|
+
* Frame interpolation: synthesize intermediate frames so a clip plays at a
|
|
641
|
+
* higher frame rate, or in slow motion at the same one. `targetFps` and
|
|
642
|
+
* `factor` are alternatives — an endpoint declares one (`target_fps` on Topaz,
|
|
643
|
+
* `recursive_interpolation_passes` on AMT) and ignores the other.
|
|
644
|
+
*/
|
|
645
|
+
export interface InterpolateVideoParams {
|
|
646
|
+
model: VideoModel;
|
|
647
|
+
/** Frames per second to interpolate up to. */
|
|
648
|
+
targetFps?: number | null;
|
|
649
|
+
/** Multiply the frame count by this instead of naming an fps. */
|
|
650
|
+
factor?: number | null;
|
|
651
|
+
seed?: number | null;
|
|
652
|
+
timeoutSeconds?: number | null;
|
|
653
|
+
signal?: AbortSignal;
|
|
654
|
+
}
|
|
655
|
+
/**
|
|
656
|
+
* Outpaint a video: keep the source footage and generate new content in the
|
|
657
|
+
* area the padding adds around it, consistently across frames. The video twin
|
|
658
|
+
* of {@link OutpaintImageParams}.
|
|
659
|
+
*/
|
|
660
|
+
export interface OutpaintVideoParams {
|
|
661
|
+
model: VideoModel;
|
|
662
|
+
/** What belongs in the new area; blank lets the model continue the scene. */
|
|
663
|
+
prompt?: string | null;
|
|
664
|
+
entities?: EntityReference[] | null;
|
|
665
|
+
negativePrompt?: string | null;
|
|
666
|
+
padding?: OutpaintPadding | null;
|
|
667
|
+
/**
|
|
668
|
+
* Fraction of the source dimension to add on each padded side, for endpoints
|
|
669
|
+
* that take one ratio plus per-side switches rather than pixel counts.
|
|
670
|
+
*/
|
|
671
|
+
expandRatio?: number | null;
|
|
672
|
+
/** Target canvas aspect ratio, for endpoints that expand to one. */
|
|
673
|
+
aspectRatio?: string | null;
|
|
674
|
+
resolution?: string | null;
|
|
675
|
+
seed?: number | null;
|
|
676
|
+
timeoutSeconds?: number | null;
|
|
677
|
+
signal?: AbortSignal;
|
|
678
|
+
}
|
|
679
|
+
/**
|
|
680
|
+
* Drive a face in a video (or still image) to match speech in an audio track.
|
|
681
|
+
* The primary visual is passed positionally to `lipSync`; the `audio` bytes
|
|
682
|
+
* ride along in the params.
|
|
683
|
+
*/
|
|
684
|
+
export interface LipSyncParams {
|
|
685
|
+
model: VideoModel;
|
|
686
|
+
/** Encoded audio bytes (e.g. WAV/MP3) the mouth motion should follow. */
|
|
687
|
+
audio: Uint8Array;
|
|
688
|
+
seed?: number | null;
|
|
689
|
+
}
|
|
690
|
+
/**
|
|
691
|
+
* Internal-only stream item carrying a session-continuity update. It is NOT a
|
|
692
|
+
* wire message — the chat pipeline consumes it to persist the continuation
|
|
693
|
+
* token onto the assistant message, and never forwards it to clients. A
|
|
694
|
+
* provider emits one per turn once it has captured/refreshed its session.
|
|
695
|
+
*/
|
|
696
|
+
export interface ProviderSessionUpdate {
|
|
697
|
+
type: "session";
|
|
698
|
+
session: ProviderSession;
|
|
699
|
+
}
|
|
700
|
+
/**
|
|
701
|
+
* A finalized conversation message produced during an agentic loop
|
|
702
|
+
* ({@link BaseProvider.generateLoop}) — an assistant turn (text + tool calls) or
|
|
703
|
+
* a tool result. The harness persists/collects these; live text still arrives
|
|
704
|
+
* as {@link Chunk}s for incremental display. Not a wire message.
|
|
705
|
+
*/
|
|
706
|
+
export interface ProviderMessageEvent {
|
|
707
|
+
type: "message";
|
|
708
|
+
message: Message;
|
|
709
|
+
}
|
|
710
|
+
/**
|
|
711
|
+
* Why an agentic loop ({@link BaseProvider.generateLoop}) stopped, when it was
|
|
712
|
+
* not the model ending its turn. Yielded as the loop's final item, exactly
|
|
713
|
+
* once, so a consumer can tell a budget stop from a finished answer — a silent
|
|
714
|
+
* return reads identically to success and is a bug (invariant I-3).
|
|
715
|
+
*/
|
|
716
|
+
export interface ProviderStop {
|
|
717
|
+
type: "stop";
|
|
718
|
+
reason: "budget" | "deadline" | "iterations" | "aborted";
|
|
719
|
+
/** Human-readable reason, naming the limit that was hit. */
|
|
720
|
+
detail: string;
|
|
721
|
+
}
|
|
722
|
+
/**
|
|
723
|
+
* The loop ended because the caller aborted it. One shared value so every
|
|
724
|
+
* abort path — the base loop's and each override's — says the same thing.
|
|
725
|
+
*/
|
|
726
|
+
export declare const PROVIDER_STOP_ABORTED: ProviderStop;
|
|
727
|
+
export type ProviderStreamItem = Chunk | ToolCall | ProviderSessionUpdate | ProviderMessageEvent | ProviderStop;
|
|
728
|
+
/**
|
|
729
|
+
* Narrow a stream item to a {@link ProviderSessionUpdate}. `Chunk` carries
|
|
730
|
+
* `type: "chunk"` and `ToolCall` has no `type`, so a `type === "session"` check
|
|
731
|
+
* is unambiguous. Existing loops that only switch on chunk/tool-call ignore it.
|
|
732
|
+
*/
|
|
733
|
+
export declare function isProviderSessionUpdate(item: ProviderStreamItem): item is ProviderSessionUpdate;
|
|
734
|
+
/** Narrow a stream item to a {@link Chunk} carrying text content. */
|
|
735
|
+
export declare function isChunk(item: ProviderStreamItem): item is Chunk;
|
|
736
|
+
/**
|
|
737
|
+
* Narrow a stream item to a {@link ToolCall}. It is the one member of the union
|
|
738
|
+
* with no `type` discriminator, so it is identified by shape: `name` and `id`.
|
|
739
|
+
*/
|
|
740
|
+
export declare function isToolCall(item: ProviderStreamItem): item is ToolCall;
|
|
741
|
+
/** Narrow a stream item to a {@link ProviderStop}. */
|
|
742
|
+
export declare function isProviderStop(item: ProviderStreamItem): item is ProviderStop;
|
|
743
|
+
/** Narrow a stream item to a {@link ProviderMessageEvent}. */
|
|
744
|
+
export declare function isProviderMessageEvent(item: ProviderStreamItem): item is ProviderMessageEvent;
|
|
146
745
|
export interface StreamingAudioChunk {
|
|
147
746
|
samples: Int16Array;
|
|
148
747
|
/** Sample rate in Hz. Defaults to 24000 when omitted. */
|