Models and providers
Milo never swaps the active model behind your back. You choose the model and the OpenAI-compatible endpoint that serves it.
Choose a model
Type /model in the interactive app to search the active provider’s model catalogue. Milo remembers the selected id for the next session. You can also set it directly:
/model anthropic/claude-sonnet-4.5- Interactive — use
/modelor/model <id>. - Headless — pass
--model <id>tomilo runormilo rpc. - Reasoning — use
/thinkingto select default, off, low, medium, or high.
Choose an endpoint
OpenRouter is the default. Milo also knows OpenAI, Groq, DeepSeek, Mistral, Together AI, Cerebras, xAI, and a local endpoint. List them or save a different default from the shell:
$ milo providers
$ milo providers use groqCustom endpoints
MILO_BASE_URL for any server that implements OpenAI’s /chat/completions API. For a one-run named override, set MILO_PROVIDER.OpenRouter routing
When OpenRouter is active, /provider controls which OpenRouter backends may serve the selected model. This changes the serving provider, not the model id.
$ milo run --model anthropic/claude-sonnet-4.5 "review this change"Cost reporting
--cost-limit is unavailable there.Privacy
Shell commands and file edits happen locally. Milo sends the active conversation — including code and command output it has read — to the model endpoint you selected. API keys come from the environment, the OS keychain, or Milo’s local credentials file.
