Skip to main content

Providers & Models

SuprClaw uses a model_list config — add any provider with just api_base + api_key, no code changes needed.

Supported Providers

Providermodel prefixDefault API BaseProtocol
OpenAIopenai/https://api.openai.com/v1OpenAI
Anthropicanthropic/https://api.anthropic.com/v1Anthropic
Google Geminigemini/https://generativelanguage.googleapis.com/v1betaOpenAI
Groqgroq/https://api.groq.com/openai/v1OpenAI
DeepSeekdeepseek/https://api.deepseek.com/v1OpenAI
OpenRouteropenrouter/https://openrouter.ai/api/v1OpenAI
Ollamaollama/http://localhost:11434/v1OpenAI
Azure OpenAIazure/https://{resource}.openai.azure.comAzure
Cerebrascerebras/https://api.cerebras.ai/v1OpenAI
LiteLLM Proxylitellm/http://localhost:4000/v1OpenAI
vLLMvllm/http://localhost:8000/v1OpenAI
NVIDIAnvidia/https://integrate.api.nvidia.com/v1OpenAI
GitHub Copilotgithub-copilot/localhost:4321gRPC
Antigravityantigravity/Google Cloud Code AssistOAuth
tip

Groq also provides free voice transcription via Whisper — configure it once and audio messages from any channel are auto-transcribed.

Configuration Examples

Anthropic

{
"model_list": [
{
"model_name": "claude-sonnet-4.6",
"model": "anthropic/claude-sonnet-4.6",
"api_key": "sk-ant-your-key"
}
],
"agents": { "defaults": { "model_name": "claude-sonnet-4.6" } }
}

OpenAI

{
"model_list": [
{
"model_name": "gpt-4o",
"model": "openai/gpt-4o",
"api_key": "sk-your-key"
}
]
}

Ollama (Local)

{
"model_list": [
{
"model_name": "llama3",
"model": "ollama/llama3"
}
]
}

No API key needed — Ollama runs locally.

OpenRouter (Access to All Models)

{
"model_list": [
{
"model_name": "claude-sonnet-4.6",
"model": "openrouter/anthropic/claude-sonnet-4.6",
"api_key": "sk-or-v1-your-key"
}
]
}

Free Tier via OpenRouter

{
"agents": {
"defaults": {
"model_name": "openrouter-free"
}
},
"model_list": [
{
"model_name": "openrouter-free",
"model": "openrouter/free",
"api_key": "sk-or-v1-your-key",
"api_base": "https://openrouter.ai/api/v1"
}
]
}
note

Use the full model ID like "openrouter/free" — shorthand like "free" is rejected by OpenRouter.

Groq

{
"model_list": [
{
"model_name": "llama3-70b",
"model": "groq/llama3-70b-8192",
"api_key": "gsk_your-key"
}
]
}

Google Gemini

{
"model_list": [
{
"model_name": "gemini-flash",
"model": "gemini/gemini-2.0-flash",
"api_key": "your-google-api-key"
}
]
}

Load Balancing

Round-robin across multiple endpoints of the same model:

{
"model_list": [
{
"model_name": "gpt-4o",
"model": "openai/gpt-4o",
"api_base": "https://api1.example.com/v1",
"api_key": "sk-key1"
},
{
"model_name": "gpt-4o",
"model": "openai/gpt-4o",
"api_base": "https://api2.example.com/v1",
"api_key": "sk-key2"
}
]
}

model_list Fields

FieldRequiredDescription
model_nameYesInternal name — used in agents.defaults.model_name
modelYesProvider prefix + model ID sent to the API
api_keyNoAPI key (supports enc://, file:// formats)
api_baseNoOverride default API base URL
auth_methodNoSet to "oauth" for OAuth providers (e.g. Antigravity)

Credential Security

API keys support three formats:

FormatExampleBehavior
Plaintextsk-abc123Used as-is
File referencefile://openai.keyRead from config directory
Encryptedenc://<base64>Decrypted at startup

See Credential Encryption for details.