Skip to main content
Navi uses the Mastra Model Router to turn a provider/model ID into the corresponding adapter from AI SDK providers. Set the provider’s API key and choose the model with NAVI_MODEL. Navi does not maintain a runtime allowlist. Any model the installed Mastra router supports can be selected when its provider key is available. The model also needs the capabilities used by the command: text generation for a repository answer, and tool calling or structured output for some flows.

Use a direct provider

The table below mirrors Navi’s current tested targets in config/tested-models.json. Quick targets cover repository questions. Workflow targets cover flows that use tools or structured results. Start with the default DeepSeek quick target:
To use another direct provider, set the API key and quick target from the same row. Use the workflow target when you want the tested selection for a flow:
You can put these variables in the project .env file instead of exporting them. A variable already set in the shell takes precedence.

Use OpenRouter only when you want a proxy

OpenRouter is a separate route with its own key, billing account, and model ID. Choose it only when you intend to proxy the request instead of calling a model vendor’s direct gateway.
Keep the openrouter/ prefix on this route. It is not interchangeable with the direct OpenAI ID. The model manifest is the machine-readable source for Navi’s compatibility test targets; it does not restrict what the router can run. Use Troubleshooting when a key or model selection is rejected.