tota supports 12 AI providers and tries them in order when the primary fails — rate limits, network errors, API outages. You configure providers once during setup; the fallback chain is automatic.
#Supported providers
| Provider | Top model | Key env var |
|---|---|---|
| OpenAI | gpt-5.2 | OPENAI_API_KEY |
| Anthropic | claude-sonnet-4-20250514 | ANTHROPIC_API_KEY |
| DeepSeek | deepseek-chat | DEEPSEEK_API_KEY |
| Grok (xAI) | grok-4 | XAI_API_KEY |
| Groq | llama-3.3-70b-versatile | GROQ_API_KEY |
| MiMo | mimo-v2.5-pro | MIMO_API_KEY |
| MiMo Token Plan | mimo-v2.5-pro | MIMO_TOKEN_PLAN_API_KEY |
| Ollama (local) | qwen3.5:2b | (none) |
| Ollama (cloud) | gpt-oss:120b | OLLAMA_API_KEY |
| OpenAI-compatible | your chosen model | OPENAI_COMPAT_API_KEY |
| NVIDIA NIM | nvidia/nemotron-3-super-120b-a12b | NVIDIA_API_KEY |
| OpenRouter | openrouter/auto | OPENROUTER_API_KEY |
Env vars are optional — tota stores keys in ~/.tota/config.json. The env vars are only for CI/CD environments or if you prefer not to use the config file.
DeepSeek Reasoner (deepseek-reasoner) and MiMo providers use a specialized AI SDK code path for extended reasoning. Select them during tota setup llm to enable this behavior.
#How fallback works
tota tries the primary provider first. On failure (rate limit, timeout, API error), it retries once, then falls through to the next configured provider. If all fail, it surfaces a clear error message.
The fallback order follows your provider setup order. To see your current chain:
tota status
