You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
While using OpenCode with OpenRouter, I explicitly configured the model to MiniMax M2.1. However, the usage logs clearly show that multiple requests are being executed and billed against Claude Haiku 4.5, even though that model was never selected.
This behavior occurs silently, without any warning, visible configuration, or explicit fallback setting enabled.
Evidence
App: OpenCode Expected model: MiniMax M2.1 Actual models used: MiniMax M2.1
Claude Haiku 4.5 (unexpected) Billing impact: Tokens are consumed and charged for Claude Haiku 4.5
Finish types observed: stop
tool_calls
Thank you very much for your help and guidance.
I appreciate any clarification on whether this behavior is normal or related to a missing configuration on my side.
Plugins
No response
OpenCode version
1.1.34
Steps to reproduce
No response
Screenshot and/or share link
Operating System
linux ubuntu 24.04
Terminal
Ghossty
Reacted by Julien Veyssier, Frank Reyes-Garcia, Henrique Magalhaes, Lalit, Luke and Maia
This issue might be a duplicate of existing issues. Please check:
Openrouter unwated requests to Claude Haiku 4.5. #4579: Openrouter unwated requests to Claude Haiku 4.5. - Same problem: unauthorized Claude Haiku calls appearing in OpenRouter usage despite different model selection
All these issues point to a potential underlying bug where Claude Haiku is being called as an unexpected fallback or default when other models are explicitly selected, particularly with OpenRouter provider.
Feel free to ignore if your specific case differs from these.
The fundamental problem is that OpenCode makes assumptions about what users want to do, defaulting to models for background tasks without explicit user consent or clear UI indication.
I'm not implying you're wrong nor that config is the solution, but rather pointing it out for awareness as it can be useful for those who aren't aware, while there is no released solution (I actually dislike the AI titles and have disabled them completely).
I do agree that it's a problem that opencode can silently use paid models without user consent.
Reacted by Adam H, guilhermelowa, Ed Addario and Tobias
Thanks for acknowledging this @rekram1-node. The core issue is OpenCode making assumptions without user consent.
Instead of making further assumptions and defaulting to any model (even cheap ones), title summaries should be an optional feature with explicit configuration:
Optional checkbox for "Enable AI-generated titles"
Separate model selector if enabled (suggest cost-effective defaults)
Transparent UI showing what's being used
This respects user choice, prevents billing surprises, and allows customization. Would you be open to a PR implementing this approach?
Every time you send a message in OpenCode, this feature sends your message to Anthropic (correct me if I'm wrong, i just checked in httpproxy and this is the case),
This is pretty bad for privacy for some people, if they don't want to keylog their data to anthropic (everyone had different choices), Not to mention the cost
Activity
github-actions commentedon Jan 23, 2026
This issue might be a duplicate of existing issues. Please check:
All these issues point to a potential underlying bug where Claude Haiku is being called as an unexpected fallback or default when other models are explicitly selected, particularly with OpenRouter provider.
Feel free to ignore if your specific case differs from these.
justfortheloveof commentedon Jan 23, 2026
In your configuration, set
small_modelto a model of your choice.https://opencode.ai/docs/config/#models
adam-ah commentedon Jan 25, 2026
@justfortheloveof , a workaround Isn't a solution
There has been multiple reports of this bug.
The fundamental problem is that OpenCode makes assumptions about what users want to do, defaulting to models for background tasks without explicit user consent or clear UI indication.
See also #4579
justfortheloveof commentedon Jan 25, 2026
I'm not implying you're wrong nor that config is the solution, but rather pointing it out for awareness as it can be useful for those who aren't aware, while there is no released solution (I actually dislike the AI titles and have disabled them completely).
I do agree that it's a problem that opencode can silently use paid models without user consent.
rekram1-node commentedon Jan 25, 2026
yeah this comes from the title generation requests, it should use cheapest models instead
adam-ah commentedon Jan 25, 2026
Thanks for acknowledging this @rekram1-node. The core issue is OpenCode making assumptions without user consent.
Instead of making further assumptions and defaulting to any model (even cheap ones), title summaries should be an optional feature with explicit configuration:
This respects user choice, prevents billing surprises, and allows customization. Would you be open to a PR implementing this approach?
TheHamkerCat commentedon Jan 31, 2026
Every time you send a message in OpenCode, this feature sends your message to Anthropic (correct me if I'm wrong, i just checked in httpproxy and this is the case),
This is pretty bad for privacy for some people, if they don't want to keylog their data to anthropic (everyone had different choices), Not to mention the cost
OC should disable this by default
github-actions commentedon Apr 1, 2026
To stay organized issues are automatically closed after 90 days of no activity. If the issue is still relevant please open a new one.
HassanJbara commentedon Jul 2, 2026
WHAT ??? DO NOT CLOSE THIS ISSUE
marcoczen commentedon Aug 11, 2026
So no solution ? We are screwed ?
ashesfall commentedon Oct 27, 2026
This is extremely bad