Many models, one terminal
Using multiple models without turning the workflow into tabs, accounts, and guesswork.
I use AI most before I write code. I use it to test an approach, not to replace the work.
Why more than one model
One model misses things. A second model often fails in a different direction. That disagreement is useful. It catches edge cases before they turn into production bugs.
The problem was not the thinking. It was the switching: browser tabs, accounts, workspaces, API keys, and stale context.
What omp solves for me
omp keeps providers and accounts in config instead of memory. It can route to Anthropic, OpenAI, Gemini, Groq, OpenRouter, Mistral, xAI, Ollama, or a provider I define myself.
Multiple accounts for the same provider are ranked and rotated. A personal plan and a team workspace can both exist without me signing in and out all day.
The win is not access to every model. The win is that asking a second one is cheap.
The part to know
Credential lookup is ordered. If the wrong account is being used, this is the list I check first:
1. --api-key passed on the command line
2. apiKey pinned in models.yml
3. stored OAuth credential
4. API key saved during /login
5. provider environment variable (including .env files)
6. any other stored API key
7. the models.yml fallback resolver
The easy mistake is a key pinned in models.yml. It outranks a
stored OAuth login, so an old key can silently beat the account you just
connected.
Custom providers
Anything not built in can be described in YAML:
# ~/.omp/agent/models.yml
providers:
my-gateway:
baseUrl: https://gateway.internal/v1
api: openai # speak the OpenAI wire format
apiKey: GATEWAY_API_KEY # reads the env var if it exists,
# otherwise treats this as a literal key
models:
- id: fast
- id: deep That keeps local and hosted providers behind the same workflow. The code review question stays the same. Only the model changes.
What changed
I ask more than one model now because it costs almost nothing. The answer is still my responsibility, but the review surface is wider.