feat(catalog): flip openrouter to the dedicated adapter + per-vendor families

Activates the new adapter wired up in the previous commit:

- adapter = "openrouter" (was "openai_compatible")
- family per model rewritten from the placeholder "openrouter" to the
  vendor-line convention used elsewhere in the catalog: claude-4 (×3),
  gpt-5 (×2), gemini-3 (×2), mimo-v2, minimax-m2, deepseek-v4 (×2),
  kimi-k2, qwen3 (×2), glm-4, nemotron-3, devstral.

The per-vendor families let UIs group all Claude 4 entries across the
direct Anthropic adapter and the OR-routed entries via the family field
alone. None of the in-tree consumers (apps/fabro-web) branch on
family == "openrouter".

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Scott Werner 2026-05-28 15:30:12 -04:00
parent af99acc811
commit fe0af4d530

View file

@ -1,6 +1,6 @@
[providers.openrouter]
display_name = "OpenRouter"
adapter = "openai_compatible"
adapter = "openrouter"
api_key_url = "https://openrouter.ai/keys"
base_url = "https://openrouter.ai/api/v1"
priority = 25
@ -32,7 +32,7 @@ credentials = ["env:OPENROUTER_API_KEY", "vault:OPENROUTER_API_KEY"]
provider = "openrouter"
api_id = "anthropic/claude-opus-4.7"
display_name = "Claude Opus 4.7 (via OpenRouter)"
family = "openrouter"
family = "claude-4"
[models."anthropic/claude-opus-4-7".limits]
context_window = 1000000
@ -53,7 +53,7 @@ cache_input_cost_per_mtok = 0.5
provider = "openrouter"
api_id = "anthropic/claude-sonnet-4.6"
display_name = "Claude Sonnet 4.6 (via OpenRouter)"
family = "openrouter"
family = "claude-4"
default = true
[models."anthropic/claude-sonnet-4-6".limits]
@ -75,7 +75,7 @@ cache_input_cost_per_mtok = 0.3
provider = "openrouter"
api_id = "anthropic/claude-haiku-4.5"
display_name = "Claude Haiku 4.5 (via OpenRouter)"
family = "openrouter"
family = "claude-4"
small_default = true
[models."anthropic/claude-haiku-4-5".limits]
@ -99,7 +99,7 @@ cache_input_cost_per_mtok = 0.1
provider = "openrouter"
api_id = "openai/gpt-5.4"
display_name = "GPT-5.4 (via OpenRouter)"
family = "openrouter"
family = "gpt-5"
[models."openai/gpt-5.4".limits]
context_window = 1050000
@ -118,7 +118,7 @@ output_cost_per_mtok = 15.0
provider = "openrouter"
api_id = "openai/gpt-5.5"
display_name = "GPT-5.5 (via OpenRouter)"
family = "openrouter"
family = "gpt-5"
[models."openai/gpt-5.5".limits]
context_window = 1050000
@ -139,7 +139,7 @@ output_cost_per_mtok = 30.0
provider = "openrouter"
api_id = "google/gemini-3.1-pro-preview"
display_name = "Gemini 3.1 Pro Preview (via OpenRouter)"
family = "openrouter"
family = "gemini-3"
[models."google/gemini-3.1-pro-preview".limits]
context_window = 1048576
@ -158,7 +158,7 @@ output_cost_per_mtok = 12.0
provider = "openrouter"
api_id = "google/gemini-3.5-flash"
display_name = "Gemini 3.5 Flash (via OpenRouter)"
family = "openrouter"
family = "gemini-3"
[models."google/gemini-3.5-flash".limits]
context_window = 1048576
@ -179,7 +179,7 @@ output_cost_per_mtok = 9.0
provider = "openrouter"
api_id = "xiaomi/mimo-v2.5-pro"
display_name = "Xiaomi MiMo v2.5 Pro"
family = "openrouter"
family = "mimo-v2"
[models."xiaomi/mimo-v2.5-pro".limits]
context_window = 1050000
@ -198,7 +198,7 @@ output_cost_per_mtok = 0.87
provider = "openrouter"
api_id = "minimax/minimax-m2.7"
display_name = "MiniMax M2.7"
family = "openrouter"
family = "minimax-m2"
[models."minimax/minimax-m2.7".limits]
context_window = 200000
@ -217,7 +217,7 @@ output_cost_per_mtok = 1.20
provider = "openrouter"
api_id = "deepseek/deepseek-v4-pro"
display_name = "DeepSeek V4 Pro"
family = "openrouter"
family = "deepseek-v4"
[models."deepseek/deepseek-v4-pro".limits]
context_window = 1050000
@ -236,7 +236,7 @@ output_cost_per_mtok = 0.87
provider = "openrouter"
api_id = "deepseek/deepseek-v4-flash"
display_name = "DeepSeek V4 Flash"
family = "openrouter"
family = "deepseek-v4"
[models."deepseek/deepseek-v4-flash".limits]
context_window = 1050000
@ -255,7 +255,7 @@ output_cost_per_mtok = 0.20
provider = "openrouter"
api_id = "moonshotai/kimi-k2.6"
display_name = "Kimi K2.6"
family = "openrouter"
family = "kimi-k2"
[models."moonshotai/kimi-k2.6".limits]
context_window = 262144
@ -274,7 +274,7 @@ output_cost_per_mtok = 3.49
provider = "openrouter"
api_id = "qwen/qwen3-coder"
display_name = "Qwen3 Coder"
family = "openrouter"
family = "qwen3"
[models."qwen/qwen3-coder".limits]
context_window = 1050000
@ -293,7 +293,7 @@ output_cost_per_mtok = 1.80
provider = "openrouter"
api_id = "qwen/qwen3.6-flash"
display_name = "Qwen3.6 Flash"
family = "openrouter"
family = "qwen3"
[models."qwen/qwen3.6-flash".limits]
context_window = 1000000
@ -312,7 +312,7 @@ output_cost_per_mtok = 1.125
provider = "openrouter"
api_id = "z-ai/glm-4.6"
display_name = "GLM 4.6"
family = "openrouter"
family = "glm-4"
[models."z-ai/glm-4.6".limits]
context_window = 203000
@ -331,7 +331,7 @@ output_cost_per_mtok = 1.74
provider = "openrouter"
api_id = "nvidia/nemotron-3-super-120b-a12b"
display_name = "NVIDIA Nemotron 3 Super 120B"
family = "openrouter"
family = "nemotron-3"
[models."nvidia/nemotron-3-super-120b-a12b".limits]
context_window = 1000000
@ -350,7 +350,7 @@ output_cost_per_mtok = 0.45
provider = "openrouter"
api_id = "mistralai/devstral-2512"
display_name = "Devstral 2512"
family = "openrouter"
family = "devstral"
[models."mistralai/devstral-2512".limits]
context_window = 262144