Connect OpenCode
Open-source terminal coding agent; add one OpenAI-compatible provider to its config.
Use cases
Good for an open-source agent that reads your project, edits files and runs tests from the terminal. OpenCode reaches OpenAI-compatible endpoints through @ai-sdk/openai-compatible, configured globally or per project.
Tips
A coding agent sends many long requests per task, so pick a long-context model with tool calling and set a daily spend limit on the key.
Reasoning effort
Whether a reasoning level is sent depends on the reasoning setting you give the model (reasoning_effort on the Chat API). The platform follows the levels the serving line accepts: a level the upstream rejects becomes the next higher accepted level, or its highest one. If the model cannot turn reasoning off, asking for it returns 422 model.reasoning_off_unsupported. Each model's table is under Reasoning effort on its page in the catalog; rewritten calls show the rewrite in usage records.
If it cannot connect
- Use
https://omnimodel.me/v1as the API host, without/chat/completions. - The key starts with
key_and is not paused or revoked;auth.invalid_keymeans the key cannot be used. - The model ID matches the catalog and is in the key's allowed models.
billing.insufficient_creditmeans the balance is too low; see common errors for more.
Setup
- Install: npm install -g opencode-ai.
- Put the block below in ~/.config/opencode/opencode.json, or in opencode.json at a project root to scope it to that project.
- Run opencode in your project and confirm the A2Agent model with /models.
Settings
- API host:
https://omnimodel.me/v1 - API key:
YOUR_API_KEY - Model:
MODEL_ID
This setup follows the OpenCode docs and has not been tested by the platform yet; if something breaks, open a ticket with the request ID.
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"a2agent": {
"npm": "@ai-sdk/openai-compatible",
"name": "A2Agent",
"options": {
"baseURL": "https://omnimodel.me/v1",
"apiKey": "YOUR_API_KEY"
},
"models": {
"MODEL_ID": {}
}
}
},
"model": "a2agent/MODEL_ID"
}
FAQ
- Will the key end up in my repository?
- A project-level opencode.json may be committed. Write apiKey as {env:A2AGENT_API_KEY} and export that variable in your shell instead.
- How do I use more than one model?
- Add more model IDs under models and switch with /models.