Skip to content

Halon uses two models from each AI account. Its own work, your chats and its investigations, runs on the main model, and quicker tasks run on a cheaper quick model.

Add or edit an account under Settings → Workspace, in the AI accounts card. Each account has two models. See AI accounts.

ModelWhat runs on itFilled in with
Main modelChats and investigations, and the postmortems that grow from them. Code fixes run as belowClaude Sonnet 5.5 on Anthropic, OpenRouter, Amazon Bedrock and Google Vertex AI, and the provider’s own pick elsewhere
Quick modelSummaries, timeline notes, replies to mentions, helpers, and checking what Halon watches and remembersClaude Haiku 5.5 on the same four, GLM-5.2 on Mistral, and the provider’s own fast model elsewhere

Firefight recommends Claude Sonnet 5.5 for the main model because it did Halon’s work best in our tests of real chats, ahead of Claude Opus 5.5 at about half the cost. Claude Haiku 5.5 did the quick work better than GLM-5.2 at a fifth of the cost. You can pick any other model the provider offers for either one. The main model has to be one Firefight knows, since Halon needs to know how much it can read at once. An account you saved before keeps the models it was saved with, so edit it to move it to the recommended models.

To change the model for one chat in the dashboard, use the model picker in the message box. See Choosing the model.

On an Anthropic or OpenRouter account, a code fix is written on Claude Sonnet 5.5, whichever main model you chose, and Claude Opus 5.5 reads the change before it is pushed and can send it back once. On an OpenAI account, the main model writes the fix and reads it. Everything else stays on the account’s own models. Code fixes need an Anthropic, OpenAI or OpenRouter account, so when the first account in the list is another provider, a code fix uses the next account that is one.

On a Firefight you run yourself, code fixes on the server’s own keys follow the same choice when it has an Anthropic or OpenRouter key, unless whoever runs it chose other models for them.

When the main model stops answering in the middle of a chat or an investigation, Halon carries on from the same step instead of failing. It tries the same account’s backup model first, which is Claude Haiku 5.5 where the provider runs it and GLM-5.2 on Mistral, so your own key carries on before anything else. Then it tries the next account in the list on another provider. It says so once, where its steps are shown:

Claude Sonnet 5.5 is not answering, so I switched to Claude Haiku 5.5 for this reply.

You see the line in the chat in the dashboard, in the Slack thread, and on the investigation’s page, where it ends “for the rest of this run”. Your next question starts on the main model again. To have a backup on another provider too, add a second account there and keep it below the first.

On Google Vertex AI, Claude runs only where your project has it enabled. When it is not, Halon carries on with Gemini 3.1 Pro and says that Claude is not available on this account. Summaries and other quick work carry on with Gemini 3.8 Flash the same way.

When you picked another model for a chat in the dashboard, Halon also says when that model’s account runs out of credit or has its key refused, and which model answers instead, such as “The account behind Claude Opus 5.5 is out of credit, so I switched to Claude Haiku 5.5 for this reply.”

An account that runs out of credit or has its key refused is skipped. Halon moves to the next account in the list, and the account waits until a check shows it works again. See AI accounts.

If no model can answer, Halon says why it stopped and lists what it did first, so your team can pick up from there without it:

Something went wrong on my side, so I did not finish that one. Ask me again.
What I did before I stopped:
- Search logs · Checkout
- Restart · Checkout (a change), which failed
I stopped after the last of these, before I decided what to do next.

A step marked as a change is one that changed something. When Halon stopped while a step was still running, the last line names it, so check whether it finished before you try it again. An investigation that gives up posts the same list in its thread under the reason it stopped.