Skip to content

Providers

Skilleo orchestrates your provider accounts. Skilleo does not store customer API keys — you manage secrets; Skilleo stores only connection pointers (Secrets).

python
# Set keys in YOUR env / secret manager first, then register pointers:
client.providers.connect("openai")
client.providers.connect("anthropic")
client.providers.connect("gemini")
client.providers.connect("minimax")
client.providers.connect("elevenlabs")
client.providers.connect("aws")
client.providers.connect("runpod")

Default secret_ref per provider: OPENAI_API_KEY, ANTHROPIC_API_KEY, RUNPOD_API_KEY, etc.

Routing policy

WorkloadAllowed connectionsRule
llm.generateopenai, anthropic, gemini, minimax, aws, runpodUse any connected LLM provider. Skilleo picks by optimize_for or you pin with options.provider.
speech.generate, voice.cloneminimax, elevenlabsMust connect MiniMax or ElevenLabs. No other voice backends.
image.generate, GPU infrarunpodRunPod only for GPU workloads.

Default when multiple LLM backends exist: MiniMax (source.routing.default_provider). Voice defaults to MiniMax when both voice providers are connected. See Platform availability for the full capability and provider matrix.

By provider

ConnectionBilled byUsed for
openaiOpenAIllm.generate
anthropicAnthropicllm.generate (Claude)
geminiGooglellm.generate
minimaxMiniMaxllm.generate, speech.generate, voice.clone
elevenlabsElevenLabsspeech.generate, voice.clone
awsAWSllm.generate via Bedrock
runpodRunPodGPU, image.generate, optional LLM via public endpoint

Aliases at register time: claudeanthropic, googlegemini, bedrockaws.

Examples

LLM — pick any connected provider

python
client.providers.connect("anthropic")

run = client.capabilities.run(
    "llm.generate",
    version="1",
    input={"objective": "Summarize Kenya wildlife"},
    options={"provider": "anthropic"},
)

Voice — MiniMax or ElevenLabs only

python
client.providers.connect("elevenlabs")

run = client.capabilities.run(
    "speech.generate",
    version="1",
    input={"text": "Earth stops spinning. Here is what happens next."},
    options={"provider": "elevenlabs"},
)

GPU — RunPod only

python
client.providers.connect("runpod")

run = client.capabilities.run(
    "image.generate",
    version="1",
    input={"prompt": "a red cube"},
    options={"endpoint_id": "ep_..."},
)

Agent manifests

Declare which providers an app may use per capability:

yaml
requires:
  llm.generate:
    providers: [openai, anthropic, gemini, minimax, aws, runpod]
  speech.generate:
    providers: [minimax, elevenlabs]
  image.generate:
    providers: [runpod]

Skilleo subscription is separate from all provider usage.

Skilleo — /v1 at api.skilleo.org