Providers & Routing¶
RexOS loads provider config from ~/.rexos/config.toml and routes each task kind (planning/coding/summary) to a (provider, model) pair.
Built-in presets (out of the box)¶
After rexos init, your ~/.rexos/config.toml already includes common providers and sensible defaults:
- Local:
ollama - OpenAI-compatible:
deepseek,kimi/kimi_cn,qwen/qwen_cn/qwen_sg,glm,minimax,nvidia - Provider-native:
qwen_native*,glm_native,minimax_native - Gateways:
minimax_anthropic - First-party APIs:
anthropic,gemini
You typically only need to:
1) set the corresponding API key env var (if any)
2) point [router.*] at the provider you want
Provider kinds¶
openai_compatible: OpenAI-compatible Chat Completions APIs (Ollama, DeepSeek, Kimi, many gateways)dashscope_native: Alibaba DashScope native API (Qwen native)zhipu_native: Zhipu GLM native API (JWT auth handled)minimax_native: MiniMax nativetext/chatcompletion_v2anthropic: Claude API (and compatible gateways)gemini: Google Gemini API
Example: Ollama (local)¶
Example: GLM (Zhipu native)¶
Zhipu auth format
If ZHIPUAI_API_KEY looks like id.secret, RexOS will sign a short-lived JWT automatically.
Example: MiniMax (native)¶
Example: NVIDIA NIM (OpenAI-compatible)¶
Routing tips¶
- Use
model = "default"to pickproviders.<name>.default_model. - Prefer “local planning” + “cloud coding” for cost/perf:
API keys (env vars)¶
RexOS reads provider keys from the env var referenced by api_key_env.
Optional smoke tests (real providers)¶
These tests hit real provider endpoints and are #[ignore] by default: