providerDescriptorSchema
constproviderDescriptorSchema:object
The JSON Schemas those models were generated from, for runtime use.
Type Declaration
Section titled “Type Declaration”
readonly$defs:object
$defs.inputKind
Section titled “$defs.inputKind”
readonlyinputKind:object
$defs.inputKind.description
Section titled “$defs.inputKind.description”
readonlydescription:"A kind of input medium a task consumes."
$defs.inputKind.enum
Section titled “$defs.inputKind.enum”
readonlyenum: readonly ["text","image","audio"]
$defs.inputKind.title
Section titled “$defs.inputKind.title”
readonlytitle:"TaskInputKind"
$defs.outputDelivery
Section titled “$defs.outputDelivery”
readonlyoutputDelivery:object
$defs.outputDelivery.description
Section titled “$defs.outputDelivery.description”
readonlydescription:"How a task's result reaches the application: 'inline' content in the result (text), 'playback' as a managed, audible effect on the device with no retrievable bytes, or 'artifact' as retrievable media."
$defs.outputDelivery.enum
Section titled “$defs.outputDelivery.enum”
readonlyenum: readonly ["inline","playback","artifact"]
$defs.outputDelivery.title
Section titled “$defs.outputDelivery.title”
readonlytitle:"OutputDelivery"
$defs.taskCapability
Section titled “$defs.taskCapability”
readonlytaskCapability:object
$defs.taskCapability.additionalProperties
Section titled “$defs.taskCapability.additionalProperties”
readonlyadditionalProperties:true
$defs.taskCapability.description
Section titled “$defs.taskCapability.description”
readonlydescription:"The provider's static capabilities for one task kind."
$defs.taskCapability.properties
Section titled “$defs.taskCapability.properties”
readonlyproperties:object
$defs.taskCapability.properties.cancel
Section titled “$defs.taskCapability.properties.cancel”
readonlycancel:object
$defs.taskCapability.properties.cancel.$ref
Section titled “$defs.taskCapability.properties.cancel.$ref”
readonly$ref:"#/properties/cancel"
$defs.taskCapability.properties.cancel.description
Section titled “$defs.taskCapability.properties.cancel.description”
readonlydescription:"Cancellation guarantee for this task. It may differ from the provider-level cancel, e.g. when stopping playback is immediate but a synthesis request cannot be aborted."
$defs.taskCapability.properties.inputs
Section titled “$defs.taskCapability.properties.inputs”
readonlyinputs:object
$defs.taskCapability.properties.inputs.description
Section titled “$defs.taskCapability.properties.inputs.description”
readonlydescription:"Input media kinds the provider accepts for this task."
$defs.taskCapability.properties.inputs.items
Section titled “$defs.taskCapability.properties.inputs.items”
readonlyitems:object
$defs.taskCapability.properties.inputs.items.$ref
Section titled “$defs.taskCapability.properties.inputs.items.$ref”
readonly$ref:"#/$defs/inputKind"
$defs.taskCapability.properties.inputs.minItems
Section titled “$defs.taskCapability.properties.inputs.minItems”
readonlyminItems:1
$defs.taskCapability.properties.inputs.type
Section titled “$defs.taskCapability.properties.inputs.type”
readonlytype:"array"
$defs.taskCapability.properties.interaction
Section titled “$defs.taskCapability.properties.interaction”
readonlyinteraction:object
$defs.taskCapability.properties.interaction.additionalProperties
Section titled “$defs.taskCapability.properties.interaction.additionalProperties”
readonlyadditionalProperties:true
$defs.taskCapability.properties.interaction.description
Section titled “$defs.taskCapability.properties.interaction.description”
readonlydescription:"Interaction modes the provider supports for this task."
$defs.taskCapability.properties.interaction.properties
Section titled “$defs.taskCapability.properties.interaction.properties”
readonlyproperties:object
$defs.taskCapability.properties.interaction.properties.prepare
Section titled “$defs.taskCapability.properties.interaction.properties.prepare”
readonlyprepare:object
$defs.taskCapability.properties.interaction.properties.prepare.description
Section titled “$defs.taskCapability.properties.interaction.properties.prepare.description”
readonlydescription:"Whether the provider implements prepare() for this task (ADR 019). Absent means false."
$defs.taskCapability.properties.interaction.properties.prepare.type
Section titled “$defs.taskCapability.properties.interaction.properties.prepare.type”
readonlytype:"boolean"
$defs.taskCapability.properties.interaction.properties.run
Section titled “$defs.taskCapability.properties.interaction.properties.run”
readonlyrun:object
$defs.taskCapability.properties.interaction.properties.run.description
Section titled “$defs.taskCapability.properties.interaction.properties.run.description”
readonlydescription:"Whether the provider supports Mode 1 run for this task."
$defs.taskCapability.properties.interaction.properties.run.type
Section titled “$defs.taskCapability.properties.interaction.properties.run.type”
readonlytype:"boolean"
$defs.taskCapability.properties.interaction.properties.stream
Section titled “$defs.taskCapability.properties.interaction.properties.stream”
readonlystream:object
$defs.taskCapability.properties.interaction.properties.stream.description
Section titled “$defs.taskCapability.properties.interaction.properties.stream.description”
readonlydescription:"Whether the provider supports Mode 2 stream for this task."
$defs.taskCapability.properties.interaction.properties.stream.type
Section titled “$defs.taskCapability.properties.interaction.properties.stream.type”
readonlytype:"boolean"
$defs.taskCapability.properties.interaction.required
Section titled “$defs.taskCapability.properties.interaction.required”
readonlyrequired: readonly ["run","stream"]
$defs.taskCapability.properties.interaction.title
Section titled “$defs.taskCapability.properties.interaction.title”
readonlytitle:"ProviderTaskInteraction"
$defs.taskCapability.properties.interaction.type
Section titled “$defs.taskCapability.properties.interaction.type”
readonlytype:"object"
$defs.taskCapability.properties.kind
Section titled “$defs.taskCapability.properties.kind”
readonlykind:object
$defs.taskCapability.properties.kind.description
Section titled “$defs.taskCapability.properties.kind.description”
readonlydescription:"The task kind this entry describes, e.g. 'text_to_speech'."
$defs.taskCapability.properties.kind.minLength
Section titled “$defs.taskCapability.properties.kind.minLength”
readonlyminLength:1
$defs.taskCapability.properties.kind.type
Section titled “$defs.taskCapability.properties.kind.type”
readonlytype:"string"
$defs.taskCapability.properties.locales
Section titled “$defs.taskCapability.properties.locales”
readonlylocales:object
$defs.taskCapability.properties.locales.description
Section titled “$defs.taskCapability.properties.locales.description”
readonlydescription:"BCP 47 locales the provider can serve for this task, when it knows them statically. Absent means unknown; the dynamic check may report them instead."
$defs.taskCapability.properties.locales.items
Section titled “$defs.taskCapability.properties.locales.items”
readonlyitems:object
$defs.taskCapability.properties.locales.items.minLength
Section titled “$defs.taskCapability.properties.locales.items.minLength”
readonlyminLength:1
$defs.taskCapability.properties.locales.items.type
Section titled “$defs.taskCapability.properties.locales.items.type”
readonlytype:"string"
$defs.taskCapability.properties.locales.type
Section titled “$defs.taskCapability.properties.locales.type”
readonlytype:"array"
$defs.taskCapability.properties.outputs
Section titled “$defs.taskCapability.properties.outputs”
readonlyoutputs:object
$defs.taskCapability.properties.outputs.description
Section titled “$defs.taskCapability.properties.outputs.description”
readonlydescription:"How results of this task can be delivered. A provider lists only what it really produces: a provider that can only play audio lists 'playback' and never 'artifact'."
$defs.taskCapability.properties.outputs.items
Section titled “$defs.taskCapability.properties.outputs.items”
readonlyitems:object
$defs.taskCapability.properties.outputs.items.$ref
Section titled “$defs.taskCapability.properties.outputs.items.$ref”
readonly$ref:"#/$defs/taskOutput"
$defs.taskCapability.properties.outputs.minItems
Section titled “$defs.taskCapability.properties.outputs.minItems”
readonlyminItems:1
$defs.taskCapability.properties.outputs.type
Section titled “$defs.taskCapability.properties.outputs.type”
readonlytype:"array"
$defs.taskCapability.properties.privacy
Section titled “$defs.taskCapability.properties.privacy”
readonlyprivacy:object
$defs.taskCapability.properties.privacy.$ref
Section titled “$defs.taskCapability.properties.privacy.$ref”
readonly$ref:"#/properties/privacy"
$defs.taskCapability.properties.privacy.description
Section titled “$defs.taskCapability.properties.privacy.description”
readonlydescription:"Data-egress posture for this task when it differs from the provider-level privacy, e.g. a provider whose speech synthesis uses a network service. Absent inherits descriptor.privacy."
$defs.taskCapability.required
Section titled “$defs.taskCapability.required”
readonlyrequired: readonly ["kind","inputs","interaction","cancel","outputs"]
$defs.taskCapability.title
Section titled “$defs.taskCapability.title”
readonlytitle:"ProviderTaskCapability"
$defs.taskCapability.type
Section titled “$defs.taskCapability.type”
readonlytype:"object"
$defs.taskOutput
Section titled “$defs.taskOutput”
readonlytaskOutput:object
$defs.taskOutput.additionalProperties
Section titled “$defs.taskOutput.additionalProperties”
readonlyadditionalProperties:true
$defs.taskOutput.description
Section titled “$defs.taskOutput.description”
readonlydescription:"One way the provider can deliver a task's result."
$defs.taskOutput.properties
Section titled “$defs.taskOutput.properties”
readonlyproperties:object
$defs.taskOutput.properties.delivery
Section titled “$defs.taskOutput.properties.delivery”
readonlydelivery:object
$defs.taskOutput.properties.delivery.$ref
Section titled “$defs.taskOutput.properties.delivery.$ref”
readonly$ref:"#/$defs/outputDelivery"
$defs.taskOutput.properties.mediaTypes
Section titled “$defs.taskOutput.properties.mediaTypes”
readonlymediaTypes:object
$defs.taskOutput.properties.mediaTypes.description
Section titled “$defs.taskOutput.properties.mediaTypes.description”
readonlydescription:"Media types the provider can produce with this delivery, e.g. 'audio/wav'. Absent means the provider does not declare them; a request that requires specific media types never routes to such an output."
$defs.taskOutput.properties.mediaTypes.items
Section titled “$defs.taskOutput.properties.mediaTypes.items”
readonlyitems:object
$defs.taskOutput.properties.mediaTypes.items.minLength
Section titled “$defs.taskOutput.properties.mediaTypes.items.minLength”
readonlyminLength:1
$defs.taskOutput.properties.mediaTypes.items.type
Section titled “$defs.taskOutput.properties.mediaTypes.items.type”
readonlytype:"string"
$defs.taskOutput.properties.mediaTypes.type
Section titled “$defs.taskOutput.properties.mediaTypes.type”
readonlytype:"array"
$defs.taskOutput.required
Section titled “$defs.taskOutput.required”
readonlyrequired: readonly ["delivery"]
$defs.taskOutput.title
Section titled “$defs.taskOutput.title”
readonlytitle:"ProviderTaskOutput"
$defs.taskOutput.type
Section titled “$defs.taskOutput.type”
readonlytype:"object"
readonly$id:"https://schemas.inderun.dev/1.0/provider-descriptor.schema.json"
$schema
Section titled “$schema”
readonly$schema:"https://json-schema.org/draft/2020-12/schema"
additionalProperties
Section titled “additionalProperties”
readonlyadditionalProperties:true
description
Section titled “description”
readonlydescription:"A provider's static capability declaration: identity, placement, transport, supported interaction modes and tasks, cancellation guarantee, resource limits and privacy posture. It does not change while the provider is registered. The route planner, checkCapabilities() and execution provenance all read this one shape."
properties
Section titled “properties”
readonlyproperties:object
properties.cancel
Section titled “properties.cancel”
readonlycancel:object
properties.cancel.description
Section titled “properties.cancel.description”
readonlydescription:"Cancellation guarantee: 'hard' stops processing including remote work, 'soft' stops reading locally while remote work may continue, 'none' means cancellation is unsupported. Independently of this value, the engine delivers no event after a cancel."
properties.cancel.enum
Section titled “properties.cancel.enum”
readonlyenum: readonly ["hard","soft","none"]
properties.cancel.title
Section titled “properties.cancel.title”
readonlytitle:"CancelSemantics"
properties.id
Section titled “properties.id”
readonlyid:object
properties.id.description
Section titled “properties.id.description”
readonlydescription:"Unique identifier of the provider instance (a target), e.g. 'apple_foundation_models' or 'openai_compatible_cloud:gpt-5-mini'. Model profiles list targets by this id."
properties.id.minLength
Section titled “properties.id.minLength”
readonlyminLength:1
properties.id.type
Section titled “properties.id.type”
readonlytype:"string"
properties.limits
Section titled “properties.limits”
readonlylimits:object
properties.limits.additionalProperties
Section titled “properties.limits.additionalProperties”
readonlyadditionalProperties:true
properties.limits.description
Section titled “properties.limits.description”
readonlydescription:"Optional input and output resource limits."
properties.limits.properties
Section titled “properties.limits.properties”
readonlyproperties:object
properties.limits.properties.maxAudioSeconds
Section titled “properties.limits.properties.maxAudioSeconds”
readonlymaxAudioSeconds:object
properties.limits.properties.maxAudioSeconds.description
Section titled “properties.limits.properties.maxAudioSeconds.description”
readonlydescription:"Longest accepted or produced audio, in seconds."
properties.limits.properties.maxAudioSeconds.minimum
Section titled “properties.limits.properties.maxAudioSeconds.minimum”
readonlyminimum:1
properties.limits.properties.maxAudioSeconds.type
Section titled “properties.limits.properties.maxAudioSeconds.type”
readonlytype:"integer"
properties.limits.properties.maxImageBytes
Section titled “properties.limits.properties.maxImageBytes”
readonlymaxImageBytes:object
properties.limits.properties.maxImageBytes.description
Section titled “properties.limits.properties.maxImageBytes.description”
readonlydescription:"Largest accepted image, in bytes."
properties.limits.properties.maxImageBytes.minimum
Section titled “properties.limits.properties.maxImageBytes.minimum”
readonlyminimum:1
properties.limits.properties.maxImageBytes.type
Section titled “properties.limits.properties.maxImageBytes.type”
readonlytype:"integer"
properties.limits.properties.maxInputTokens
Section titled “properties.limits.properties.maxInputTokens”
readonlymaxInputTokens:object
properties.limits.properties.maxInputTokens.description
Section titled “properties.limits.properties.maxInputTokens.description”
readonlydescription:"Largest accepted input, in tokens."
properties.limits.properties.maxInputTokens.minimum
Section titled “properties.limits.properties.maxInputTokens.minimum”
readonlyminimum:1
properties.limits.properties.maxInputTokens.type
Section titled “properties.limits.properties.maxInputTokens.type”
readonlytype:"integer"
properties.limits.properties.maxOutputTokens
Section titled “properties.limits.properties.maxOutputTokens”
readonlymaxOutputTokens:object
properties.limits.properties.maxOutputTokens.description
Section titled “properties.limits.properties.maxOutputTokens.description”
readonlydescription:"Largest output the provider produces, in tokens."
properties.limits.properties.maxOutputTokens.minimum
Section titled “properties.limits.properties.maxOutputTokens.minimum”
readonlyminimum:1
properties.limits.properties.maxOutputTokens.type
Section titled “properties.limits.properties.maxOutputTokens.type”
readonlytype:"integer"
properties.limits.title
Section titled “properties.limits.title”
readonlytitle:"ProviderLimits"
properties.limits.type
Section titled “properties.limits.type”
readonlytype:"object"
properties.model
Section titled “properties.model”
readonlymodel:object
properties.model.description
Section titled “properties.model.description”
readonlydescription:"The model this provider instance is bound to, when it can name one. Cloud providers report the model id they send; platform-managed models report an opaque platform alias rather than a guessed weight name. Absent means the provider cannot name its model."
properties.model.minLength
Section titled “properties.model.minLength”
readonlyminLength:1
properties.model.type
Section titled “properties.model.type”
readonlytype:"string"
properties.privacy
Section titled “properties.privacy”
readonlyprivacy:object
properties.privacy.additionalProperties
Section titled “properties.privacy.additionalProperties”
readonlyadditionalProperties:true
properties.privacy.description
Section titled “properties.privacy.description”
readonlydescription:"Data-egress posture, used to enforce local and cloud routing rules. Absent means a local or edge provider is treated as keeping data on the device and a cloud provider as sending it off."
properties.privacy.properties
Section titled “properties.privacy.properties”
readonlyproperties:object
properties.privacy.properties.dataLeavesDevice
Section titled “properties.privacy.properties.dataLeavesDevice”
readonlydataLeavesDevice:object
properties.privacy.properties.dataLeavesDevice.description
Section titled “properties.privacy.properties.dataLeavesDevice.description”
readonlydescription:"Whether request content leaves the device."
properties.privacy.properties.dataLeavesDevice.type
Section titled “properties.privacy.properties.dataLeavesDevice.type”
readonlytype:"boolean"
properties.privacy.properties.regions
Section titled “properties.privacy.properties.regions”
readonlyregions:object
properties.privacy.properties.regions.description
Section titled “properties.privacy.properties.regions.description”
readonlydescription:"Geographic regions where a cloud provider processes data."
properties.privacy.properties.regions.items
Section titled “properties.privacy.properties.regions.items”
readonlyitems:object
properties.privacy.properties.regions.items.minLength
Section titled “properties.privacy.properties.regions.items.minLength”
readonlyminLength:1
properties.privacy.properties.regions.items.type
Section titled “properties.privacy.properties.regions.items.type”
readonlytype:"string"
properties.privacy.properties.regions.type
Section titled “properties.privacy.properties.regions.type”
readonlytype:"array"
properties.privacy.required
Section titled “properties.privacy.required”
readonlyrequired: readonly ["dataLeavesDevice"]
properties.privacy.title
Section titled “properties.privacy.title”
readonlytitle:"ProviderPrivacy"
properties.privacy.type
Section titled “properties.privacy.type”
readonlytype:"object"
properties.streamingStyle
Section titled “properties.streamingStyle”
readonlystreamingStyle:object
properties.streamingStyle.description
Section titled “properties.streamingStyle.description”
readonlydescription:"How a streaming provider delivers incremental output: individual tokens, larger chunks, or whole snapshots. Absent for providers that do not stream."
properties.streamingStyle.enum
Section titled “properties.streamingStyle.enum”
readonlyenum: readonly ["tokens","chunks","snapshots"]
properties.streamingStyle.title
Section titled “properties.streamingStyle.title”
readonlytitle:"StreamingStyle"
properties.supports
Section titled “properties.supports”
readonlysupports:object
properties.supports.additionalProperties
Section titled “properties.supports.additionalProperties”
readonlyadditionalProperties:true
properties.supports.description
Section titled “properties.supports.description”
readonlydescription:"Interaction modes and features the provider statically declares."
properties.supports.properties
Section titled “properties.supports.properties”
readonlyproperties:object
properties.supports.properties.multimodal
Section titled “properties.supports.properties.multimodal”
readonlymultimodal:object
properties.supports.properties.multimodal.description
Section titled “properties.supports.properties.multimodal.description”
readonlydescription:"Whether the provider accepts non-text inputs such as images or audio."
properties.supports.properties.multimodal.type
Section titled “properties.supports.properties.multimodal.type”
readonlytype:"boolean"
properties.supports.properties.realtime
Section titled “properties.supports.properties.realtime”
readonlyrealtime:object
properties.supports.properties.realtime.description
Section titled “properties.supports.properties.realtime.description”
readonlydescription:"Whether the provider supports Mode 3 realtime sessions. Reserved; no engine implements Mode 3 yet."
properties.supports.properties.realtime.type
Section titled “properties.supports.properties.realtime.type”
readonlytype:"boolean"
properties.supports.properties.reasoningEvents
Section titled “properties.supports.properties.reasoningEvents”
readonlyreasoningEvents:object
properties.supports.properties.reasoningEvents.description
Section titled “properties.supports.properties.reasoningEvents.description”
readonlydescription:"Whether the provider emits reasoning events alongside content."
properties.supports.properties.reasoningEvents.type
Section titled “properties.supports.properties.reasoningEvents.type”
readonlytype:"boolean"
properties.supports.properties.run
Section titled “properties.supports.properties.run”
readonlyrun:object
properties.supports.properties.run.description
Section titled “properties.supports.properties.run.description”
readonlydescription:"Whether the provider supports Mode 1 run (request/response)."
properties.supports.properties.run.type
Section titled “properties.supports.properties.run.type”
readonlytype:"boolean"
properties.supports.properties.streaming
Section titled “properties.supports.properties.streaming”
readonlystreaming:object
properties.supports.properties.streaming.description
Section titled “properties.supports.properties.streaming.description”
readonlydescription:"Whether the provider supports Mode 2 stream. A provider that declares it must also implement the streaming adapter; the engines report it as unavailable otherwise."
properties.supports.properties.streaming.type
Section titled “properties.supports.properties.streaming.type”
readonlytype:"boolean"
properties.supports.properties.structuredOutput
Section titled “properties.supports.properties.structuredOutput”
readonlystructuredOutput:object
properties.supports.properties.structuredOutput.description
Section titled “properties.supports.properties.structuredOutput.description”
readonlydescription:"Whether the provider supports structured output constrained by a JSON schema."
properties.supports.properties.structuredOutput.type
Section titled “properties.supports.properties.structuredOutput.type”
readonlytype:"boolean"
properties.supports.properties.tools
Section titled “properties.supports.properties.tools”
readonlytools:object
properties.supports.properties.tools.description
Section titled “properties.supports.properties.tools.description”
readonlydescription:"Whether the provider supports tool calling."
properties.supports.properties.tools.type
Section titled “properties.supports.properties.tools.type”
readonlytype:"boolean"
properties.supports.required
Section titled “properties.supports.required”
readonlyrequired: readonly ["run","streaming","realtime","tools","reasoningEvents","structuredOutput","multimodal"]
properties.supports.title
Section titled “properties.supports.title”
readonlytitle:"ProviderSupports"
properties.supports.type
Section titled “properties.supports.type”
readonlytype:"object"
properties.taskCapabilities
Section titled “properties.taskCapabilities”
readonlytaskCapabilities:object
properties.taskCapabilities.description
Section titled “properties.taskCapabilities.description”
readonlydescription:"What the provider can do for each task: accepted inputs, interaction modes, output deliveries and formats, cancellation, locales and privacy. When present it is authoritative for routing and must list every task the provider serves. When absent (a legacy descriptor), routing infers exactly one entry — 'text_to_text' with text input, inline output, run/stream from supports and cancel from cancel — if tasks contains 'text_to_text', and nothing for any other task: a legacy descriptor is never treated as capable of a non-text task."
properties.taskCapabilities.items
Section titled “properties.taskCapabilities.items”
readonlyitems:object
properties.taskCapabilities.items.$ref
Section titled “properties.taskCapabilities.items.$ref”
readonly$ref:"#/$defs/taskCapability"
properties.taskCapabilities.type
Section titled “properties.taskCapabilities.type”
readonlytype:"array"
properties.tasks
Section titled “properties.tasks”
readonlytasks:object
properties.tasks.description
Section titled “properties.tasks.description”
readonlydescription:"Task kinds the provider supports, e.g. 'text_to_text'. When taskCapabilities is present it must describe the same kinds and is what routing reads; without it, routing infers capabilities for 'text_to_text' alone (see taskCapabilities)."
properties.tasks.items
Section titled “properties.tasks.items”
readonlyitems:object
properties.tasks.items.minLength
Section titled “properties.tasks.items.minLength”
readonlyminLength:1
properties.tasks.items.type
Section titled “properties.tasks.items.type”
readonlytype:"string"
properties.tasks.type
Section titled “properties.tasks.type”
readonlytype:"array"
properties.transport
Section titled “properties.transport”
readonlytransport:object
properties.transport.description
Section titled “properties.transport.description”
readonlydescription:"How the engine reaches the provider: in-process runtime, operating-system service, buffered HTTP, server-sent events, or a realtime connection."
properties.transport.enum
Section titled “properties.transport.enum”
readonlyenum: readonly ["in_process","system_service","http","sse","realtime"]
properties.transport.title
Section titled “properties.transport.title”
readonlytitle:"ProviderTransport"
properties.type
Section titled “properties.type”
readonlytype:object
properties.type.description
Section titled “properties.type.description”
readonlydescription:"Execution placement: 'local' (on the device), 'edge', or 'cloud'."
properties.type.enum
Section titled “properties.type.enum”
readonlyenum: readonly ["local","edge","cloud"]
properties.type.title
Section titled “properties.type.title”
readonlytitle:"ProviderType"
required
Section titled “required”
readonlyrequired: readonly ["id","type","transport","supports","cancel","tasks"]
readonlytitle:"ProviderDescriptor"
readonlytype:"object"
IndeRun — open-source AI execution for cross-platform apps. Built and maintained by Independo GmbH (opens in new tab), supported by netidee (opens in new tab).
MIT-licensed SDK · No SDK usage telemetry.
© 2025–2026 Independo GmbH