Models
Codistry works with the model you choose. The simplest path is a Codistry hosted model: sign in, pick a model, and usage is billed through your plan. Prefer your own keys? Use the built-in Anthropic and OpenAI providers, or any OpenAI-compatible endpoint you point Codistry at, including local models that never leave your machine. You manage all of this from Settings → Models.
Your provider determines which models are available. Set it with adronite-agent.modelProvider (codistry, anthropic, openai, or custom-openai), then choose the specific model.
Codistry hosted models
Hosted models need no API keys and no setup: sign in with your Codistry account, pick a hosted model from the model selector, and token usage is metered and billed through your Codistry plan. The Codistry hosted card at the top of Settings → Models shows the available models and your access status.
- Paid plans only. Hosted model access requires an active paid subscription. On the free plan the card shows an upgrade prompt instead of the model list; see Account & Subscription.
- Full model features. Hosted models behave the same as the equivalent models used with your own API keys: tool use, extended thinking on Claude models, and reasoning effort on GPT reasoning models all work.
- Team billing. When you belong to a team, hosted usage is billed to the team's pooled credits rather than your personal plan.
- Credits. If your credit balance runs out, hosted requests pause until you top up (or auto top-up runs) from the Codistry dashboard. The Account tab shows a status-only credits card.
Using hosted models never disables providers you configured yourself. The Use your own API keys section below the hosted card just collapses when you don't need it; anything configured in it stays active.
Default model & switching per chat
The model you pick in Settings → Models (the adronite-agent.model setting) is the default model every new chat session starts with. Change it there and the next chat you open uses it.
Inside a chat, the model picker in the chat header switches the model for that session only. Codistry saves the choice with the session, so each chat remembers its own model and your settings-page default is left untouched for future chats.
Changing the default in Settings affects new sessions only. It doesn't retroactively switch chats you've already started.
Using your own API keys
Everything below lives in the collapsible Use your own API keys section of the Models tab. It expands automatically when you already have a key or custom model configured.
Anthropic
Claude models: strong code understanding and precise instruction following.
OpenAI
GPT and o-series reasoning models, using your own API key.
Custom OpenAI
Any OpenAI-compatible endpoint: local models, corporate infra, or air-gapped setups.
Running a local model? The LM Studio and Ollama guides walk through setup end to end.
Adding a custom model
Choose Settings → Models → Add Custom Model to register any OpenAI-compatible endpoint. This is how you connect local runtimes (Ollama, LM Studio), a corporate gateway, or any provider that speaks the OpenAI API.
What you'll fill in
| Field | Required | What it's for |
|---|---|---|
| Display Name | Yes | A friendly name shown in the model picker. |
| Model Name | Yes | The exact model id sent to the API (e.g. o3, llama3:latest). |
| API URL | Yes | The OpenAI-compatible endpoint (e.g. http://localhost:11434/v1). |
| Max Tokens | Yes | The model's total context window. |
| Max Output Tokens | Yes | Most it may generate in a single reply. |
| Description | No | An optional note to help you remember what it is. |
| API Key | No | Auth for this endpoint. Local servers usually need none. |
Capabilities
Tick the boxes that match your model so Codistry talks to it correctly: Reasoning, Images, Temperature, and Streaming.
There's no “supports tools” checkbox. Codistry requires tool calling to function, so any custom model must support it. Pick a model that does.
Reasoning & thinking format
When you mark a model as a reasoning model, an extra Reasoning/Thinking Format section appears. It tells Codistry how that model exposes its thinking so it can be displayed (and optionally stripped from the final answer). The sensible default, <think> tags, is filled in for you; only change it if your model differs.
| Model family | Format |
|---|---|
| QwQ / DeepSeek-R1 | XML Tags → tag name “think” |
| Cerebras Qwen | XML Tags → tag name “thinking” |
| Ollama | Message Field → field “thinking” |
| OpenRouter / DeepSeek API | Delta Field → field “reasoning_content” |
Advanced settings
Tucked behind an Advanced Settings disclosure are two knobs most people never need:
Tool Format
Keep tools (modern OpenAI) unless your endpoint only understands the legacy functions format.
Sampling parameters
Optional overrides sent on every request to this model. Leave a field blank to use the server/model default.
Sampling parameters at a glance
| Parameter | Typical | Notes |
|---|---|---|
temperature | 0.2 – 0.7 | Lower is more deterministic. 0.7 is sent when blank. |
top_p | 0.95 | Nucleus sampling cutoff (0–1). |
top_k | 40 | vLLM / llama.cpp extension; ignored elsewhere. |
min_p | 0.05 | vLLM / llama.cpp extension; ignored elsewhere. |
repetition_penalty | 1.05 | >1 discourages repetition (vLLM / llama.cpp). |
frequency_penalty | 0.0 | OpenAI-style, −2 to 2. |
presence_penalty | 0.0 | OpenAI-style, −2 to 2. |
Unchecking the Temperature capability stops temperature from being sent at all, useful for models that reject it.