feat(providers): add OpenCode Zen gateway as a declarative provider (#10939)

This commit is contained in:
Vincenzo Palazzo
2026-08-24 07:38:08 +00:00
committed by GitHub
parent 92caef37f8
commit bd16fbfbbe
3 changed files with 34 additions and 0 deletions
@@ -53,6 +53,7 @@ pub fn map_provider_name(provider: &str) -> &str {
"zhipu" => "zhipuai",
"novita" => "novita-ai",
"opencode_go" => "opencode-go",
"opencode_zen" => "opencode",
"ollama_cloud" => "ollama-cloud",
"kimi_code" => "kimi-for-coding",
_ => provider,
@@ -345,6 +346,10 @@ mod tests {
map_to_canonical_model("opencode_go", "kimi-k2.6", r),
Some("opencode-go/kimi-k2.6".to_string())
);
assert_eq!(
map_to_canonical_model("opencode_zen", "kimi-k3", r),
Some("opencode/kimi-k3".to_string())
);
// === OpenRouter ===
assert_eq!(
@@ -39,6 +39,7 @@ pub(crate) mod declarative_providers {
ollama_cloud,
omlx,
opencode_go,
opencode_zen,
orcarouter,
ovhcloud,
perplexity,
@@ -0,0 +1,28 @@
{
"name": "opencode_zen",
"engine": "openai",
"display_name": "OpenCode Zen",
"description": "OpenCode Zen gateway — curated, benchmarked models through the OpenAI-compatible API.",
"api_key_env": "OPENCODE_API_KEY",
"base_url": "https://opencode.ai/zen/v1",
"catalog_provider_id": "opencode",
"dynamic_models": false,
"model_doc_link": "https://opencode.ai/docs/zen",
"preserves_thinking": true,
"models": [
{"name": "kimi-k3", "context_limit": 262144},
{"name": "kimi-k2.7-code", "context_limit": 262144},
{"name": "kimi-k2.6", "context_limit": 262144},
{"name": "kimi-k2.5", "context_limit": 262144},
{"name": "glm-5.2", "context_limit": 204800},
{"name": "glm-5.1", "context_limit": 204800},
{"name": "deepseek-v4-pro", "context_limit": 1000000},
{"name": "deepseek-v4-flash", "context_limit": 1000000},
{"name": "deepseek-v4-flash-free", "context_limit": 1000000},
{"name": "minimax-m3", "context_limit": 204800},
{"name": "minimax-m2.7", "context_limit": 204800},
{"name": "minimax-m2.5", "context_limit": 204800},
{"name": "mimo-v2.5-free", "context_limit": 262144}
],
"supports_streaming": true
}