Issue 2026-07-11
v0.8.67
CodeWhale
any model, open models first
Models & providers

Any model, honestly

30 providers, and every one routes through the same runtime and the same tools. The constitution and safety boundaries live in the harness, not the model — so changing providers doesn't change the product.

Bring your own key

codewhale auth set --provider … stores keys in your local ~/.codewhale/config.toml. Requests go straight to the provider you configured.

No inference markup

CodeWhale never sits in the billing path — no relay, no resale. The bill is between you and your provider; this project isn't on it.

No silent model switching

The provider and model are an explicit route you set, not inferred from a prompt. Changing it is a command you type: /provider and /model.

Start with these routes

DeepSeek

first-class · default
DEEPSEEK_API_KEY

The default provider, with deepseek-v4-pro as the default model. The DeepSeek API (api.deepseek.com) is reachable from mainland China without a proxy. There's also deepseek-anthropic, DeepSeek's opt-in Messages-API route.

Local runtimes

no key at all
vllm · sglang · ollama

vLLM, SGLang, and Ollama against your own localhost endpoints — no key required. The weights are on your machine, and the requests never leave it.

OpenRouter

one key
OPENROUTER_API_KEY

One key that reaches many hosted models — the easiest way to try open models back to back. The route is still yours to set explicitly; OpenRouter changes the endpoint, not the rules.

The rest, as peers

This list is generated from the repo's provider registry and tracks releases. Hosted, closed, or experimental — all of them go through the same approval, sandbox, and rollback pipeline.

NVIDIA NIM
nvidia-nim
NVIDIA_API_KEY / NVIDIA_NIM_API_KEY
OpenAI-compatible
openai
OPENAI_API_KEY
AtlasCloud
atlascloud
ATLASCLOUD_API_KEY
Wanjie Ark
wanjie-ark
WANJIE_ARK_API_KEY / WANJIE_API_KEY / WANJIE_MAAS_API_KEY
Volcengine Ark
volcengine
VOLCENGINE_API_KEY / VOLCENGINE_ARK_API_KEY / ARK_API_KEY
Xiaomi MiMo
xiaomi-mimo
XIAOMI_MIMO_API_KEY / XIAOMI_API_KEY / MIMO_API_KEY
Novita AI
novita
NOVITA_API_KEY
Fireworks AI
fireworks
FIREWORKS_API_KEY
SiliconFlow
siliconflow
SILICONFLOW_API_KEY
SiliconFlow CN
siliconflow-CN
SILICONFLOW_API_KEY
Arcee AI
arcee
ARCEE_API_KEY
Moonshot/Kimi
moonshot
MOONSHOT_API_KEY / KIMI_API_KEY
Hugging Face
huggingface
HUGGINGFACE_API_KEY / HF_TOKEN
Together AI
together
TOGETHER_API_KEY
Baidu Qianfan
qianfan
QIANFAN_API_KEY / BAIDU_QIANFAN_API_KEY
OpenAI Codex
openai-codex
ChatGPT/Codex OAuth via `codex login` (OPENAI_CODEX_ACCESS_TOKEN / CODEX_ACCESS_TOKEN override)
Anthropic
anthropic
ANTHROPIC_API_KEY
OpenModel
openmodel
OPENMODEL_API_KEY
Z.ai
zai
ZAI_API_KEY / Z_AI_API_KEY
StepFun
stepfun
STEPFUN_API_KEY / STEP_API_KEY
MiniMax
minimax
MINIMAX_API_KEY
DeepInfra
deepinfra
DEEPINFRA_API_KEY / DEEPINFRA_TOKEN
Sakana AI
sakana
FUGU_API_KEY / SAKANA_API_KEY
LongCat
longcat
LONGCAT_API_KEY

Don't see the provider you want? That's a good issue to open. The full registry — credentials, base URLs, capability boundaries — lives in docs/PROVIDERS.md.