OpenCode + Evrona
OpenCode describes a provider in opencode.json and reads the key from an environment variable.
What to prepare
No key yet? Create an account — keys are created in the dashboard under “API keys”, and the full value is shown only once. Copy the Model ID from the catalog in full, including the prefix before “/”.
Connection steps
Write the provider block into opencode.json — in the project folder or in ~/.config/opencode/.
Store the key in the EVRONA_API_KEY environment variable.
Launch opencode and choose the model with /models.
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"evrona": {
"npm": "@ai-sdk/openai-compatible",
"name": "Evrona",
"options": {
"baseURL": "https://evrona.ru/v1",
"apiKey": "{env:EVRONA_API_KEY}"
},
"models": {
"openai/gpt-6-astra": { "name": "GPT-6 Astra" }
}
}
}
}Models are named one by one in the config: OpenCode never asks the provider for a list. Need one more — add it as a line under models.
Function calling is supported, so agentic modes work. Strict JSON mode (response_format) and the retired functions format are turned down with an unsupported_parameter error — no parameter is lost in silence. Image input is taken by models marked "Understands images" in the catalog: a content part of type image_url with a data:image/png;base64,… URL (PNG, JPEG or WebP, up to 5 MB each, up to 50 per request). Remote URLs are not fetched, and a model without that mark returns unsupported_capability — both errors name the reason outright.