I haven't seen much evidence that model routing is being widely used yet. I think it's still more of an experimental mechanism right now.
And, to answer your question, no. The existence of a common API makes it trivial to change zero code and send requests to a different model.
the value of openrouter is it offers centralized billing. you can route your calls to any provider you want, test a whole bunch of models against each other, and you just get one bill from openrouter. switching to a new model, or a new provider of the same model, doesn't mean setting up a new billing account with a new provider.
OpenRouter does more than just proxying; they also aggregate providers for open-weight models, which has a stabilizing effect on pricing and gives you protection against a single provider's downtime.
There are some gotchas with it too. e.g. The "system" role message isn't supported in the Anthropic API. It's not the biggest deal but it's a potential footgun.
On the other hand, the openrouter SDK + API takes care of this for you: Their one gateway has ways of enabling provider-specific features. You can switch the model name and pretty much be good to go.
Claude Code does not work with other models out of the box. You need a wrapper around Claude Code that translates other model requests + respondes to what the harness expects.
As an example, GLM document being committed to compatibility with OpenAI: https://docs.z.ai/guides/develop/openai/python
My uninformed guess would be that everyone except the frontier labs is probably motivated to do that too.
Similarly they document configuring Claude Code for their models, so I assume they implement Anthropic’s interface there too: https://docs.z.ai/devpack/tool/claude#manual-configuration
Claude Code has no built-in way to use non-Anthropic models. It does support overriding the API URL with an environment variable, but there are drawbacks. OpenRouter is not used within Claude Code at all.
My lord. Of all the terrible, uniformed takes the HN posters are spewing, this is the worst one I've seen in a while.
The anti-AI crowd really are clueless, eh?