Chutes Provider Setup: OAuth, API Key, and Model Discovery
Learn how to configure the Chutes provider in OpenClaw using OAuth or an API key, discover models, and set aliases. This guide is for developers integrating Chutes' OpenAI-compatible API.
Read this when
- You want to use Chutes with OpenClaw
- You need the OAuth or API key setup path
- You want the default model, aliases, or discovery behavior
Chutes offers open-source model catalogs via an API that follows OpenAI conventions. Authentication with OpenClaw can be done either through browser-based OAuth or using an API key.
| Property | Value |
|---|---|
| Provider | chutes |
| Plugin | official external package (@openclaw/chutes-provider) |
| API | OpenAI-compatible |
| Base URL | https://llm.chutes.ai/v1 |
| Auth | OAuth or API key (see below) |
| Runtime env vars | CHUTES_API_KEY, CHUTES_OAUTH_TOKEN |
When an OAuth access token is already available, CHUTES_OAUTH_TOKEN passes it straight through, which suits scenarios like CI where the interactive browser login isn't practical.
Install plugin
openclaw plugins install @openclaw/chutes-provider
openclaw gateway restart
Getting started
Whichever authentication route you pick, the default model gets set to chutes/zai-org/GLM-5.2-TEE and the Chutes catalog is made available.
OAuth
Run the OAuth onboarding flow
openclaw onboard --auth-choice chutes
On a local machine, OpenClaw runs the browser flow itself; for remote or headless environments it prints a URL and waits for you to paste back the redirect. Token renewal happens automatically through OpenClaw's auth profiles.
API key
Get an API key
Head to chutes.ai/app/settings/api-keys to generate a key.
Run the API key onboarding flow
openclaw onboard --auth-choice chutes-api-key
Discovery behavior
Provided Chutes authentication is configured, OpenClaw calls GET /v1/models using those credentials and picks up whatever models are returned, holding onto the results for five minutes per credential. If the key turns out to be expired or unauthorized, which surfaces as an HTTP 401, OpenClaw makes one more attempt without any credentials. Should discovery come back empty, error out, or respond with a status outside the 2xx range, the bundled static catalog takes over, and this same fallback logic applies to OAuth discovery as well. When startup-time discovery fails, the static catalog is used without further action.
Default aliases
For the Chutes catalog, OpenClaw sets up two handy aliases:
| Alias | Target model |
|---|---|
chutes-pro | chutes/deepseek-ai/DeepSeek-V3.2-TEE |
chutes-vision | chutes/moonshotai/Kimi-K2.6-TEE |
Built-in starter catalog
Included in the fallback catalog are the current starter models below, plus two older-generation references that stay usable but won't show up in pickers:
| Model ref | Picker status |
|---|---|
chutes/zai-org/GLM-5.2-TEE | Visible |
chutes/deepseek-ai/DeepSeek-V3.2-TEE | Visible |
chutes/moonshotai/Kimi-K2.6-TEE | Visible |
chutes/MiniMaxAI/MiniMax-M2.5-TEE | Visible |
chutes/Qwen/Qwen3.6-27B-TEE | Visible |
chutes/moonshotai/Kimi-K2.5-TEE | Hidden |
chutes/Qwen/Qwen3.5-397B-A17B-TEE | Hidden |
To see everything, run openclaw models list --all --provider chutes.
Config example
{
agents: {
defaults: {
model: { primary: "chutes/zai-org/GLM-5.2-TEE" },
models: {
"chutes/zai-org/GLM-5.2-TEE": { alias: "Chutes GLM 5.2" },
"chutes/deepseek-ai/DeepSeek-V3.2-TEE": { alias: "Chutes DeepSeek V3.2" },
},
},
},
}
OAuth overrides
A few optional environment variables let you tailor the OAuth flow:
| Variable | Purpose |
|---|---|
CHUTES_CLIENT_ID | OAuth client id (prompted if unset) |
CHUTES_CLIENT_SECRET | OAuth client secret |
CHUTES_OAUTH_REDIRECT_URI | Redirect URI (default http://127.0.0.1:1456/oauth-callback) |
CHUTES_OAUTH_SCOPES | Space-separated scopes (default openid profile chutes:invoke) |
For details on redirect-app setup and troubleshooting, consult the Chutes OAuth docs.
Notes
- Chutes models are registered as
chutes/<model-id>. - While streaming, Chutes withholds token usage information (
supportsUsageInStreaming: false); once the stream finishes, the usage totals do appear.
Related
-
Model selection, Provider rules, model refs, and failover behavior.
-
Configuration reference, Full config schema including provider settings.
-
Chutes, Chutes dashboard and API docs.
-
Chutes API keys, Create and manage Chutes API keys.