feat(providers): expand ollama catalog with thinking-capable models (#58)

* feat(providers): expand ollama model catalog with thinking-capable models

Add commonly used local models with accurate capability flags:
- gemma4, gemma3: supports_thinking, supports_vision
- deepseek-r1: supports_thinking (fix missing flag)
- deepseek-v3: supports_tools
- qwen3, qwq: supports_thinking
- llama4: supports_vision
- llama3.3: supports_tools
- phi4: supports_tools

Previously only 6 models were listed and none had supports_thinking
(except deepseek-r1), causing the dashboard to hide thinking toggles
for models that actually support it.

* chore(providers): major cleanup — remove defunct providers and old models

Delete 21 defunct/obscure providers:
aion-labs, arcee-ai, deepcogito, eleutherai, essentialai, ibm-granite,
inception, inflection, kwaipilot, lemonade, liquid, morph, nex-agi,
nousresearch, prime-intellect, reka, relace, switchpoint, tngtech,
upstage, writer

Clean up 10 major providers — keep only latest generation models:
- anthropic: remove claude-3.5-sonnet (superseded by 4.x)
- openai: remove gpt-4o/4-turbo/3.5/o1/o3-mini (superseded by gpt-5/4.1/o3/o4-mini)
- gemini: remove 1.5-*/2.0-flash (superseded by 2.5/3.x)
- deepseek: remove coder/chat-v3-0324 (superseded by r1/v3)
- qwen: remove turbo/2.5-coder (superseded by qwen3)
- groq: remove old llama/mixtral/gemma (keep latest only)
- mistral: remove medium/nemo/pixtral-large (keep large/small/codestral)
- xai: remove grok-2 (superseded by grok-3/4)
- meta-llama: remove 3.x/guard (keep llama-4 + 3.3)
- ollama: rewrite with current models (gemma4, qwen3, qwq, llama4, etc)

Total: 90 → 48 models across major providers. All thinking-capable
models now have supports_thinking = true.

* chore: add pre-commit hook for automatic TOML formatting

- .githooks/pre-commit: runs taplo fmt on staged .toml files
- Makefile: add setup target + auto-configure hooks on first make
- .gitignore: add .make-setup-done and .sync_marker
This commit is contained in:
Evan authored and GitHub committed 2026-04-15 22:18:01 +09:00
1 parent 4979c355b2
commit 4f8dd2404d
36 files changed
+151 -1203

No files matched your search

-48
View File
@@ -1,48 +0,0 @@
# aion-labs — auto-generated from OpenRouter API
[provider]
id = "aion-labs"
display_name = "Aion Labs"
api_key_env = "AION_LABS_API_KEY"
base_url = "https://api.aionlabs.ai/v1"
key_required = true
[[models]]
id = "aion-1.0"
display_name = "AionLabs: Aion-1.0"
tier = "frontier"
context_window = 131072
max_output_tokens = 32768
input_cost_per_m = 4.0
output_cost_per_m = 8.0
supports_streaming = true
[[models]]
id = "aion-1.0-mini"
display_name = "AionLabs: Aion-1.0-Mini"
tier = "smart"
context_window = 131072
max_output_tokens = 32768
input_cost_per_m = 0.7
output_cost_per_m = 1.4
supports_streaming = true
[[models]]
id = "aion-2.0"
display_name = "AionLabs: Aion-2.0"
tier = "smart"
context_window = 131072
max_output_tokens = 32768
input_cost_per_m = 0.8
output_cost_per_m = 1.6
supports_streaming = true
[[models]]
id = "aion-rp-llama-3.1-8b"
display_name = "AionLabs: Aion-RP 1.0 (8B)"
tier = "smart"
context_window = 32768
max_output_tokens = 32768
input_cost_per_m = 0.8
output_cost_per_m = 1.6
supports_streaming = true
+1 -15
View File
@@ -1,5 +1,5 @@
# Anthropic — https://anthropic.com
# Models: 7
# Models: 6
[provider]
id = "anthropic"
@@ -91,17 +91,3 @@ supports_vision = true
supports_streaming = true
supports_thinking = true
aliases = []
[[models]]
id = "claude-3-5-sonnet-20241022"
display_name = "Claude 3.5 Sonnet"
tier = "smart"
context_window = 200000
max_output_tokens = 8192
input_cost_per_m = 3.0
output_cost_per_m = 15.0
supports_tools = true
supports_vision = true
supports_streaming = true
supports_thinking = true
aliases = []
-79
View File
@@ -1,79 +0,0 @@
# arcee-ai — auto-generated from OpenRouter API
[provider]
id = "arcee-ai"
display_name = "Arcee Ai"
api_key_env = "ARCEE_API_KEY"
base_url = "https://api.arcee.ai/v1"
key_required = true
[[models]]
id = "coder-large"
display_name = "Arcee AI: Coder Large"
tier = "smart"
context_window = 32768
max_output_tokens = 8192
input_cost_per_m = 0.5
output_cost_per_m = 0.8
supports_streaming = true
[[models]]
id = "maestro-reasoning"
display_name = "Arcee AI: Maestro Reasoning"
tier = "smart"
context_window = 131072
max_output_tokens = 32000
input_cost_per_m = 0.9
output_cost_per_m = 3.3
supports_streaming = true
supports_thinking = true
[[models]]
id = "spotlight"
display_name = "Arcee AI: Spotlight"
tier = "fast"
context_window = 131072
max_output_tokens = 65537
input_cost_per_m = 0.18
output_cost_per_m = 0.18
supports_streaming = true
[[models]]
id = "trinity-large-preview:free"
display_name = "Arcee AI: Trinity Large Preview (free)"
tier = "fast"
context_window = 131000
max_output_tokens = 16384
input_cost_per_m = 0.0
output_cost_per_m = 0.0
supports_streaming = true
[[models]]
id = "trinity-mini"
display_name = "Arcee AI: Trinity Mini"
tier = "fast"
context_window = 131072
max_output_tokens = 131072
input_cost_per_m = 0.045
output_cost_per_m = 0.15
supports_streaming = true
[[models]]
id = "trinity-mini:free"
display_name = "Arcee AI: Trinity Mini (free)"
tier = "fast"
context_window = 131072
max_output_tokens = 16384
input_cost_per_m = 0.0
output_cost_per_m = 0.0
supports_streaming = true
[[models]]
id = "virtuoso-large"
display_name = "Arcee AI: Virtuoso Large"
tier = "smart"
context_window = 131072
max_output_tokens = 64000
input_cost_per_m = 0.75
output_cost_per_m = 1.2
supports_streaming = true
-18
View File
@@ -1,18 +0,0 @@
# deepcogito — auto-generated from OpenRouter API
[provider]
id = "deepcogito"
display_name = "Deepcogito"
api_key_env = "OPENROUTER_API_KEY"
base_url = "https://openrouter.ai/api/v1"
key_required = true
[[models]]
id = "cogito-v2.1-671b"
display_name = "Deep Cogito: Cogito v2.1 671B"
tier = "smart"
context_window = 128000
max_output_tokens = 16384
input_cost_per_m = 1.25
output_cost_per_m = 1.25
supports_streaming = true
+1 -27
View File
@@ -1,5 +1,5 @@
# DeepSeek — https://deepseek.com
# Models: 4
# Models: 2
[provider]
id = "deepseek"
@@ -34,29 +34,3 @@ supports_vision = false
supports_streaming = true
supports_thinking = true
aliases = ["deepseek-r1"]
[[models]]
id = "deepseek-coder"
display_name = "DeepSeek Coder V2"
tier = "balanced"
context_window = 128000
max_output_tokens = 8192
input_cost_per_m = 0.14
output_cost_per_m = 0.28
supports_tools = true
supports_vision = false
supports_streaming = true
aliases = []
[[models]]
id = "deepseek-chat-v3-0324"
display_name = "DeepSeek V3 0324"
tier = "smart"
context_window = 64000
max_output_tokens = 8192
input_cost_per_m = 0.19999999999999998
output_cost_per_m = 0.77
supports_tools = true
supports_vision = false
supports_streaming = true
aliases = []
-18
View File
@@ -1,18 +0,0 @@
# eleutherai — auto-generated from OpenRouter API
[provider]
id = "eleutherai"
display_name = "Eleutherai"
api_key_env = "KRATER_API_KEY"
base_url = "https://api.krater.ai/v1"
key_required = true
[[models]]
id = "llemma_7b"
display_name = "EleutherAI: Llemma 7b"
tier = "smart"
context_window = 4096
max_output_tokens = 4096
input_cost_per_m = 0.8
output_cost_per_m = 1.2
supports_streaming = true
-18
View File
@@ -1,18 +0,0 @@
# essentialai — auto-generated from OpenRouter API
[provider]
id = "essentialai"
display_name = "Essentialai"
api_key_env = "OPENROUTER_API_KEY"
base_url = "https://openrouter.ai/api/v1"
key_required = true
[[models]]
id = "rnj-1-instruct"
display_name = "EssentialAI: Rnj 1 Instruct"
tier = "fast"
context_window = 32768
max_output_tokens = 8192
input_cost_per_m = 0.15
output_cost_per_m = 0.15
supports_streaming = true
+3 -55
View File
@@ -1,5 +1,5 @@
# Google Gemini — https://ai.google.dev
# Models: 10
# Models: 6
[provider]
id = "gemini"
@@ -57,8 +57,8 @@ display_name = "Gemini 2.5 Flash Lite"
tier = "fast"
context_window = 1048576
max_output_tokens = 8192
input_cost_per_m = 0.09999999999999999
output_cost_per_m = 0.39999999999999997
input_cost_per_m = 0.1
output_cost_per_m = 0.4
supports_tools = true
supports_vision = true
supports_streaming = true
@@ -92,55 +92,3 @@ supports_vision = true
supports_streaming = true
supports_thinking = true
aliases = ["flash"]
[[models]]
id = "gemini-2.0-flash"
display_name = "Gemini 2.0 Flash"
tier = "fast"
context_window = 1048576
max_output_tokens = 8192
input_cost_per_m = 0.075
output_cost_per_m = 0.3
supports_tools = true
supports_vision = true
supports_streaming = true
aliases = []
[[models]]
id = "gemini-2.0-flash-lite"
display_name = "Gemini 2.0 Flash Lite"
tier = "fast"
context_window = 1048576
max_output_tokens = 8192
input_cost_per_m = 0.075
output_cost_per_m = 0.30
supports_tools = true
supports_vision = true
supports_streaming = true
aliases = []
[[models]]
id = "gemini-1.5-pro"
display_name = "Gemini 1.5 Pro"
tier = "smart"
context_window = 2097152
max_output_tokens = 8192
input_cost_per_m = 1.25
output_cost_per_m = 5.00
supports_tools = true
supports_vision = true
supports_streaming = true
aliases = []
[[models]]
id = "gemini-1.5-flash"
display_name = "Gemini 1.5 Flash"
tier = "fast"
context_window = 1048576
max_output_tokens = 8192
input_cost_per_m = 0.075
output_cost_per_m = 0.30
supports_tools = true
supports_vision = true
supports_streaming = true
aliases = []
+5 -96
View File
@@ -1,5 +1,5 @@
# Groq — https://groq.com
# Models: 10
# Models: 3
[provider]
id = "groq"
@@ -22,96 +22,18 @@ supports_streaming = true
aliases = ["llama", "llama-70b"]
[[models]]
id = "llama-3.1-8b-instant"
display_name = "Llama 3.1 8B"
tier = "fast"
context_window = 128000
max_output_tokens = 8192
input_cost_per_m = 0.05
output_cost_per_m = 0.08
supports_tools = true
supports_vision = false
supports_streaming = true
aliases = []
[[models]]
id = "llama-3.2-90b-vision-preview"
display_name = "Llama 3.2 90B Vision"
tier = "smart"
context_window = 128000
max_output_tokens = 8192
input_cost_per_m = 0.90
output_cost_per_m = 0.90
supports_tools = true
supports_vision = true
supports_streaming = true
aliases = []
[[models]]
id = "llama-3.2-11b-vision-preview"
display_name = "Llama 3.2 11B Vision"
id = "meta-llama/llama-4-scout-17b-16e-instruct"
display_name = "Llama 4 Scout 17B"
tier = "balanced"
context_window = 128000
max_output_tokens = 8192
input_cost_per_m = 0.18
output_cost_per_m = 0.18
input_cost_per_m = 0.11
output_cost_per_m = 0.34
supports_tools = true
supports_vision = true
supports_streaming = true
aliases = []
[[models]]
id = "llama-3.2-3b-preview"
display_name = "Llama 3.2 3B"
tier = "fast"
context_window = 128000
max_output_tokens = 8192
input_cost_per_m = 0.06
output_cost_per_m = 0.06
supports_tools = true
supports_vision = false
supports_streaming = true
aliases = []
[[models]]
id = "llama-3.2-1b-preview"
display_name = "Llama 3.2 1B"
tier = "fast"
context_window = 128000
max_output_tokens = 8192
input_cost_per_m = 0.04
output_cost_per_m = 0.04
supports_tools = true
supports_vision = false
supports_streaming = true
aliases = []
[[models]]
id = "mixtral-8x7b-32768"
display_name = "Mixtral 8x7B"
tier = "balanced"
context_window = 32768
max_output_tokens = 4096
input_cost_per_m = 0.024
output_cost_per_m = 0.024
supports_tools = true
supports_vision = false
supports_streaming = true
aliases = ["mixtral"]
[[models]]
id = "gemma2-9b-it"
display_name = "Gemma 2 9B"
tier = "fast"
context_window = 8192
max_output_tokens = 4096
input_cost_per_m = 0.02
output_cost_per_m = 0.02
supports_tools = false
supports_vision = false
supports_streaming = true
aliases = []
[[models]]
id = "qwen-qwq-32b"
display_name = "Qwen QWQ 32B"
@@ -125,16 +47,3 @@ supports_vision = false
supports_streaming = true
supports_thinking = true
aliases = []
[[models]]
id = "meta-llama/llama-4-scout-17b-16e-instruct"
display_name = "Llama 4 Scout 17B"
tier = "balanced"
context_window = 128000
max_output_tokens = 8192
input_cost_per_m = 0.11
output_cost_per_m = 0.34
supports_tools = true
supports_vision = true
supports_streaming = true
aliases = []
-18
View File
@@ -1,18 +0,0 @@
# ibm-granite — auto-generated from OpenRouter API
[provider]
id = "ibm-granite"
display_name = "Ibm Granite"
api_key_env = "WATSONX_API_KEY"
base_url = "https://us-south.ml.cloud.ibm.com/ml/v1"
key_required = true
[[models]]
id = "granite-4.0-h-micro"
display_name = "IBM: Granite 4.0 Micro"
tier = "fast"
context_window = 131000
max_output_tokens = 16384
input_cost_per_m = 0.017
output_cost_per_m = 0.11
supports_streaming = true
-38
View File
@@ -1,38 +0,0 @@
# inception — auto-generated from OpenRouter API
[provider]
id = "inception"
display_name = "Inception"
api_key_env = "INCEPTION_API_KEY"
base_url = "https://api.inceptionlabs.ai/v1"
key_required = true
[[models]]
id = "mercury"
display_name = "Inception: Mercury"
tier = "fast"
context_window = 128000
max_output_tokens = 32000
input_cost_per_m = 0.25
output_cost_per_m = 0.75
supports_streaming = true
[[models]]
id = "mercury-2"
display_name = "Inception: Mercury 2"
tier = "fast"
context_window = 128000
max_output_tokens = 50000
input_cost_per_m = 0.25
output_cost_per_m = 0.75
supports_streaming = true
[[models]]
id = "mercury-coder"
display_name = "Inception: Mercury Coder"
tier = "fast"
context_window = 128000
max_output_tokens = 32000
input_cost_per_m = 0.25
output_cost_per_m = 0.75
supports_streaming = true
-28
View File
@@ -1,28 +0,0 @@
# inflection — auto-generated from OpenRouter API
[provider]
id = "inflection"
display_name = "Inflection"
api_key_env = "OPENROUTER_API_KEY"
base_url = "https://openrouter.ai/api/v1"
key_required = true
[[models]]
id = "inflection-3-pi"
display_name = "Inflection: Inflection 3 Pi"
tier = "smart"
context_window = 8000
max_output_tokens = 1024
input_cost_per_m = 2.5
output_cost_per_m = 10.0
supports_streaming = true
[[models]]
id = "inflection-3-productivity"
display_name = "Inflection: Inflection 3 Productivity"
tier = "smart"
context_window = 8000
max_output_tokens = 1024
input_cost_per_m = 2.5
output_cost_per_m = 10.0
supports_streaming = true
-18
View File
@@ -1,18 +0,0 @@
# kwaipilot — auto-generated from OpenRouter API
[provider]
id = "kwaipilot"
display_name = "Kwaipilot"
api_key_env = "OPENROUTER_API_KEY"
base_url = "https://openrouter.ai/api/v1"
key_required = true
[[models]]
id = "kat-coder-pro"
display_name = "Kwaipilot: KAT-Coder-Pro V1"
tier = "fast"
context_window = 256000
max_output_tokens = 128000
input_cost_per_m = 0.3
output_cost_per_m = 1.2
supports_streaming = true
-9
View File
@@ -1,9 +0,0 @@
# Lemonade — local NPU accelerated inference
# Models: 0 (all models discovered dynamically at runtime)
[provider]
id = "lemonade"
display_name = "Lemonade"
api_key_env = "LEMONADE_API_KEY"
base_url = "http://localhost:8888/api/v1"
key_required = false
-59
View File
@@ -1,59 +0,0 @@
# liquid — auto-generated from OpenRouter API
[provider]
id = "liquid"
display_name = "Liquid"
api_key_env = "OPENROUTER_API_KEY"
base_url = "https://openrouter.ai/api/v1"
key_required = true
[[models]]
id = "lfm-2-24b-a2b"
display_name = "LiquidAI: LFM2-24B-A2B"
tier = "fast"
context_window = 32768
max_output_tokens = 8192
input_cost_per_m = 0.03
output_cost_per_m = 0.12
supports_streaming = true
[[models]]
id = "lfm-2.2-6b"
display_name = "LiquidAI: LFM2-2.6B"
tier = "fast"
context_window = 32768
max_output_tokens = 8192
input_cost_per_m = 0.01
output_cost_per_m = 0.02
supports_streaming = true
[[models]]
id = "lfm-2.5-1.2b-instruct:free"
display_name = "LiquidAI: LFM2.5-1.2B-Instruct (free)"
tier = "fast"
context_window = 32768
max_output_tokens = 8192
input_cost_per_m = 0.0
output_cost_per_m = 0.0
supports_streaming = true
[[models]]
id = "lfm-2.5-1.2b-thinking:free"
display_name = "LiquidAI: LFM2.5-1.2B-Thinking (free)"
tier = "fast"
context_window = 32768
max_output_tokens = 8192
input_cost_per_m = 0.0
output_cost_per_m = 0.0
supports_streaming = true
supports_thinking = true
[[models]]
id = "lfm2-8b-a1b"
display_name = "LiquidAI: LFM2-8B-A1B"
tier = "fast"
context_window = 32768
max_output_tokens = 8192
input_cost_per_m = 0.01
output_cost_per_m = 0.02
supports_streaming = true
+4 -103
View File
@@ -1,4 +1,5 @@
# meta-llama — auto-generated from OpenRouter API
# meta-llama — https://llama.com
# Models: 5
[provider]
id = "meta-llama"
@@ -7,106 +8,6 @@ api_key_env = "LLAMA_API_KEY"
base_url = "https://api.llama.com/v1"
key_required = true
[[models]]
id = "llama-3-70b-instruct"
display_name = "Meta: Llama 3 70B Instruct"
tier = "smart"
context_window = 8192
max_output_tokens = 8000
input_cost_per_m = 0.51
output_cost_per_m = 0.74
supports_streaming = true
[[models]]
id = "llama-3-8b-instruct"
display_name = "Meta: Llama 3 8B Instruct"
tier = "fast"
context_window = 8192
max_output_tokens = 16384
input_cost_per_m = 0.03
output_cost_per_m = 0.04
supports_streaming = true
[[models]]
id = "llama-3.1-70b-instruct"
display_name = "Meta: Llama 3.1 70B Instruct"
tier = "fast"
context_window = 131072
max_output_tokens = 16384
input_cost_per_m = 0.4
output_cost_per_m = 0.4
supports_streaming = true
[[models]]
id = "llama-3.1-8b-instruct"
display_name = "Meta: Llama 3.1 8B Instruct"
tier = "fast"
context_window = 16384
max_output_tokens = 16384
input_cost_per_m = 0.02
output_cost_per_m = 0.05
supports_streaming = true
[[models]]
id = "llama-3.2-11b-vision-instruct"
display_name = "Meta: Llama 3.2 11B Vision Instruct"
tier = "fast"
context_window = 131072
max_output_tokens = 16384
input_cost_per_m = 0.245
output_cost_per_m = 0.245
supports_streaming = true
[[models]]
id = "llama-3.2-1b-instruct"
display_name = "Meta: Llama 3.2 1B Instruct"
tier = "fast"
context_window = 60000
max_output_tokens = 15000
input_cost_per_m = 0.027
output_cost_per_m = 0.2
supports_streaming = true
[[models]]
id = "llama-3.2-3b-instruct"
display_name = "Meta: Llama 3.2 3B Instruct"
tier = "fast"
context_window = 80000
max_output_tokens = 16384
input_cost_per_m = 0.051
output_cost_per_m = 0.34
supports_streaming = true
[[models]]
id = "llama-3.2-3b-instruct:free"
display_name = "Meta: Llama 3.2 3B Instruct (free)"
tier = "fast"
context_window = 131072
max_output_tokens = 16384
input_cost_per_m = 0.0
output_cost_per_m = 0.0
supports_streaming = true
[[models]]
id = "llama-3.3-70b-instruct"
display_name = "Meta: Llama 3.3 70B Instruct"
tier = "fast"
context_window = 131072
max_output_tokens = 16384
input_cost_per_m = 0.1
output_cost_per_m = 0.32
supports_streaming = true
[[models]]
id = "llama-3.3-70b-instruct:free"
display_name = "Meta: Llama 3.3 70B Instruct (free)"
tier = "fast"
context_window = 65536
max_output_tokens = 16384
input_cost_per_m = 0.0
output_cost_per_m = 0.0
supports_streaming = true
[[models]]
id = "llama-4-maverick"
display_name = "Meta: Llama 4 Maverick"
@@ -128,8 +29,8 @@ output_cost_per_m = 0.3
supports_streaming = true
[[models]]
id = "llama-guard-3-8b"
display_name = "Llama Guard 3 8B"
id = "llama-3.3-70b-instruct"
display_name = "Meta: Llama 3.3 70B Instruct"
tier = "fast"
context_window = 131072
max_output_tokens = 16384
+1 -40
View File
@@ -1,5 +1,5 @@
# Mistral AI — https://mistral.ai
# Models: 6
# Models: 3
[provider]
id = "mistral"
@@ -21,19 +21,6 @@ supports_vision = false
supports_streaming = true
aliases = ["mistral"]
[[models]]
id = "mistral-medium-latest"
display_name = "Mistral Medium"
tier = "balanced"
context_window = 128000
max_output_tokens = 8192
input_cost_per_m = 2.70
output_cost_per_m = 8.10
supports_tools = true
supports_vision = false
supports_streaming = true
aliases = []
[[models]]
id = "mistral-small-latest"
display_name = "Mistral Small"
@@ -59,29 +46,3 @@ supports_tools = true
supports_vision = false
supports_streaming = true
aliases = ["codestral"]
[[models]]
id = "open-mistral-nemo"
display_name = "Mistral Nemo"
tier = "fast"
context_window = 128000
max_output_tokens = 8192
input_cost_per_m = 0.15
output_cost_per_m = 0.15
supports_tools = true
supports_vision = false
supports_streaming = true
aliases = ["mistral-nemo"]
[[models]]
id = "pixtral-large-latest"
display_name = "Pixtral Large"
tier = "smart"
context_window = 128000
max_output_tokens = 8192
input_cost_per_m = 2.00
output_cost_per_m = 6.00
supports_tools = true
supports_vision = true
supports_streaming = true
aliases = ["pixtral"]
-28
View File
@@ -1,28 +0,0 @@
# morph — auto-generated from OpenRouter API
[provider]
id = "morph"
display_name = "Morph"
api_key_env = "MORPH_API_KEY"
base_url = "https://api.morphllm.com/v1"
key_required = true
[[models]]
id = "morph-v3-fast"
display_name = "Morph: Morph V3 Fast"
tier = "smart"
context_window = 81920
max_output_tokens = 38000
input_cost_per_m = 0.8
output_cost_per_m = 1.2
supports_streaming = true
[[models]]
id = "morph-v3-large"
display_name = "Morph: Morph V3 Large"
tier = "smart"
context_window = 262144
max_output_tokens = 131072
input_cost_per_m = 0.9
output_cost_per_m = 1.9
supports_streaming = true
-18
View File
@@ -1,18 +0,0 @@
# nex-agi — auto-generated from OpenRouter API
[provider]
id = "nex-agi"
display_name = "Nex Agi"
api_key_env = "OPENROUTER_API_KEY"
base_url = "https://openrouter.ai/api/v1"
key_required = true
[[models]]
id = "deepseek-v3.1-nex-n1"
display_name = "Nex AGI: DeepSeek V3.1 Nex N1"
tier = "fast"
context_window = 131072
max_output_tokens = 163840
input_cost_per_m = 0.135
output_cost_per_m = 0.5
supports_streaming = true
-68
View File
@@ -1,68 +0,0 @@
# nousresearch — auto-generated from OpenRouter API
[provider]
id = "nousresearch"
display_name = "Nousresearch"
api_key_env = "OPENROUTER_API_KEY"
base_url = "https://openrouter.ai/api/v1"
key_required = true
[[models]]
id = "hermes-2-pro-llama-3-8b"
display_name = "NousResearch: Hermes 2 Pro - Llama-3 8B"
tier = "fast"
context_window = 8192
max_output_tokens = 8192
input_cost_per_m = 0.14
output_cost_per_m = 0.14
supports_streaming = true
[[models]]
id = "hermes-3-llama-3.1-405b"
display_name = "Nous: Hermes 3 405B Instruct"
tier = "smart"
context_window = 131072
max_output_tokens = 16384
input_cost_per_m = 1.0
output_cost_per_m = 1.0
supports_streaming = true
[[models]]
id = "hermes-3-llama-3.1-405b:free"
display_name = "Nous: Hermes 3 405B Instruct (free)"
tier = "fast"
context_window = 131072
max_output_tokens = 16384
input_cost_per_m = 0.0
output_cost_per_m = 0.0
supports_streaming = true
[[models]]
id = "hermes-3-llama-3.1-70b"
display_name = "Nous: Hermes 3 70B Instruct"
tier = "fast"
context_window = 131072
max_output_tokens = 16384
input_cost_per_m = 0.3
output_cost_per_m = 0.3
supports_streaming = true
[[models]]
id = "hermes-4-405b"
display_name = "Nous: Hermes 4 405B"
tier = "smart"
context_window = 131072
max_output_tokens = 16384
input_cost_per_m = 1.0
output_cost_per_m = 3.0
supports_streaming = true
[[models]]
id = "hermes-4-70b"
display_name = "Nous: Hermes 4 70B"
tier = "fast"
context_window = 131072
max_output_tokens = 16384
input_cost_per_m = 0.13
output_cost_per_m = 0.4
supports_streaming = true
+76 -60
View File
@@ -1,5 +1,5 @@
# Ollama — https://ollama.com
# Models: 6 (static entries; additional models discovered dynamically at runtime)
# Current-generation models only. Additional models are discovered dynamically at runtime.
[provider]
id = "ollama"
@@ -9,80 +9,96 @@ base_url = "http://localhost:11434/v1"
key_required = false
[[models]]
id = "llama3.2"
display_name = "Llama 3.2 (Ollama)"
id = "gemma4"
display_name = "Gemma 4"
tier = "local"
context_window = 128000
max_output_tokens = 4096
max_output_tokens = 8192
input_cost_per_m = 0.0
output_cost_per_m = 0.0
supports_tools = true
supports_vision = false
supports_vision = true
supports_streaming = true
aliases = []
[[models]]
id = "llama3.1"
display_name = "Llama 3.1 (Ollama)"
tier = "local"
context_window = 128000
max_output_tokens = 4096
input_cost_per_m = 0.0
output_cost_per_m = 0.0
supports_tools = true
supports_vision = false
supports_streaming = true
aliases = []
[[models]]
id = "mistral:latest"
display_name = "Mistral (Ollama)"
tier = "local"
context_window = 32768
max_output_tokens = 4096
input_cost_per_m = 0.0
output_cost_per_m = 0.0
supports_tools = true
supports_vision = false
supports_streaming = true
aliases = []
[[models]]
id = "qwen2.5"
display_name = "Qwen 2.5 (Ollama)"
tier = "local"
context_window = 32768
max_output_tokens = 4096
input_cost_per_m = 0.2
output_cost_per_m = 0.6
supports_tools = true
supports_vision = false
supports_streaming = true
aliases = []
[[models]]
id = "phi3"
display_name = "Phi-3 (Ollama)"
tier = "local"
context_window = 128000
max_output_tokens = 4096
input_cost_per_m = 0.0
output_cost_per_m = 0.0
supports_tools = false
supports_vision = false
supports_streaming = true
aliases = []
supports_thinking = true
aliases = ["gemma4:latest"]
[[models]]
id = "deepseek-r1:latest"
display_name = "DeepSeek R1 (Ollama)"
display_name = "DeepSeek R1"
tier = "local"
context_window = 64000
max_output_tokens = 4096
max_output_tokens = 8192
input_cost_per_m = 0.0
output_cost_per_m = 0.0
supports_tools = false
supports_vision = false
supports_streaming = true
supports_thinking = true
aliases = ["deepseek-r1"]
[[models]]
id = "qwen3"
display_name = "Qwen 3"
tier = "local"
context_window = 40960
max_output_tokens = 8192
input_cost_per_m = 0.0
output_cost_per_m = 0.0
supports_tools = true
supports_vision = false
supports_streaming = true
supports_thinking = true
aliases = ["qwen3:latest"]
[[models]]
id = "qwq"
display_name = "QwQ"
tier = "local"
context_window = 40960
max_output_tokens = 8192
input_cost_per_m = 0.0
output_cost_per_m = 0.0
supports_tools = true
supports_vision = false
supports_streaming = true
supports_thinking = true
aliases = ["qwq:latest"]
[[models]]
id = "llama4"
display_name = "Llama 4"
tier = "local"
context_window = 128000
max_output_tokens = 8192
input_cost_per_m = 0.0
output_cost_per_m = 0.0
supports_tools = true
supports_vision = true
supports_streaming = true
aliases = ["llama4:latest"]
[[models]]
id = "mistral:latest"
display_name = "Mistral"
tier = "local"
context_window = 32768
max_output_tokens = 4096
input_cost_per_m = 0.0
output_cost_per_m = 0.0
supports_tools = true
supports_vision = false
supports_streaming = true
aliases = []
[[models]]
id = "phi4"
display_name = "Phi-4"
tier = "local"
context_window = 16384
max_output_tokens = 4096
input_cost_per_m = 0.0
output_cost_per_m = 0.0
supports_tools = true
supports_vision = false
supports_streaming = true
aliases = ["phi4:latest"]
+1 -67
View File
@@ -1,5 +1,5 @@
# OpenAI — https://openai.com
# Models: 18 (including 2 Codex variants)
# Models: 13 (including 2 Codex variants)
[provider]
id = "openai"
@@ -9,32 +9,6 @@ base_url = "https://api.openai.com/v1"
key_required = true
media_capabilities = ["image_generation", "text_to_speech"]
[[models]]
id = "gpt-4o"
display_name = "GPT-4o"
tier = "smart"
context_window = 128000
max_output_tokens = 16384
input_cost_per_m = 2.50
output_cost_per_m = 10.0
supports_tools = true
supports_vision = true
supports_streaming = true
aliases = ["gpt4", "gpt4o"]
[[models]]
id = "gpt-4o-mini"
display_name = "GPT-4o Mini"
tier = "fast"
context_window = 128000
max_output_tokens = 16384
input_cost_per_m = 0.15
output_cost_per_m = 0.60
supports_tools = true
supports_vision = true
supports_streaming = true
aliases = ["gpt4-mini"]
[[models]]
id = "gpt-4.1"
display_name = "GPT-4.1"
@@ -88,20 +62,6 @@ supports_streaming = true
supports_thinking = true
aliases = []
[[models]]
id = "o3-mini"
display_name = "o3-mini"
tier = "smart"
context_window = 200000
max_output_tokens = 100000
input_cost_per_m = 1.10
output_cost_per_m = 4.40
supports_tools = true
supports_vision = false
supports_streaming = true
supports_thinking = true
aliases = []
[[models]]
id = "o4-mini"
display_name = "o4-mini"
@@ -116,32 +76,6 @@ supports_streaming = true
supports_thinking = true
aliases = []
[[models]]
id = "gpt-4-turbo"
display_name = "GPT-4 Turbo"
tier = "smart"
context_window = 128000
max_output_tokens = 4096
input_cost_per_m = 10.00
output_cost_per_m = 30.00
supports_tools = true
supports_vision = true
supports_streaming = true
aliases = []
[[models]]
id = "gpt-3.5-turbo"
display_name = "GPT-3.5 Turbo"
tier = "fast"
context_window = 16385
max_output_tokens = 4096
input_cost_per_m = 0.5
output_cost_per_m = 1.5
supports_tools = true
supports_vision = false
supports_streaming = true
aliases = []
[[models]]
id = "gpt-5"
display_name = "GPT-5"
-18
View File
@@ -1,18 +0,0 @@
# prime-intellect — auto-generated from OpenRouter API
[provider]
id = "prime-intellect"
display_name = "Prime Intellect"
api_key_env = "OPENROUTER_API_KEY"
base_url = "https://openrouter.ai/api/v1"
key_required = true
[[models]]
id = "intellect-3"
display_name = "Prime Intellect: INTELLECT-3"
tier = "fast"
context_window = 131072
max_output_tokens = 131072
input_cost_per_m = 0.2
output_cost_per_m = 1.1
supports_streaming = true
+18 -57
View File
@@ -1,5 +1,5 @@
# Qwen / Alibaba — https://dashscope.aliyuncs.com
# Models: 11
# Models: 9
# Regions: china (default), intl (Singapore), us (Virginia)
[provider]
@@ -41,19 +41,6 @@ supports_vision = false
supports_streaming = true
aliases = ["qwen"]
[[models]]
id = "qwen-turbo"
display_name = "Qwen Turbo"
tier = "fast"
context_window = 131072
max_output_tokens = 8192
input_cost_per_m = 0.0325
output_cost_per_m = 0.13
supports_tools = true
supports_vision = false
supports_streaming = true
aliases = []
[[models]]
id = "qwen-vl-plus"
display_name = "Qwen VL Plus"
@@ -61,15 +48,28 @@ tier = "smart"
context_window = 32768
max_output_tokens = 8192
input_cost_per_m = 0.1365
output_cost_per_m = 0.40950000000000003
output_cost_per_m = 0.4095
supports_tools = false
supports_vision = true
supports_streaming = true
aliases = []
[[models]]
id = "qwen-coder-plus"
display_name = "Qwen Coder Plus"
id = "qwen-vl-max"
display_name = "Qwen VL Max"
tier = "frontier"
context_window = 32768
max_output_tokens = 8192
input_cost_per_m = 0.52
output_cost_per_m = 2.08
supports_tools = false
supports_vision = true
supports_streaming = true
aliases = []
[[models]]
id = "qwen-coder-plus-latest"
display_name = "Qwen Coder Plus (Latest)"
tier = "smart"
context_window = 131072
max_output_tokens = 8192
@@ -78,7 +78,7 @@ output_cost_per_m = 2.00
supports_tools = true
supports_vision = false
supports_streaming = true
aliases = []
aliases = ["qwen-coder"]
[[models]]
id = "qwen-long"
@@ -121,45 +121,6 @@ supports_streaming = true
supports_thinking = true
aliases = []
[[models]]
id = "qwen-coder-plus-latest"
display_name = "Qwen Coder Plus (Latest)"
tier = "smart"
context_window = 131072
max_output_tokens = 8192
input_cost_per_m = 0.80
output_cost_per_m = 2.00
supports_tools = true
supports_vision = false
supports_streaming = true
aliases = ["qwen-coder"]
[[models]]
id = "qwen2.5-coder-32b-instruct"
display_name = "Qwen 2.5 Coder 32B"
tier = "balanced"
context_window = 131072
max_output_tokens = 8192
input_cost_per_m = 0.80
output_cost_per_m = 2.00
supports_tools = true
supports_vision = false
supports_streaming = true
aliases = []
[[models]]
id = "qwen-vl-max"
display_name = "Qwen VL Max"
tier = "frontier"
context_window = 32768
max_output_tokens = 8192
input_cost_per_m = 0.52
output_cost_per_m = 2.08
supports_tools = false
supports_vision = true
supports_streaming = true
aliases = []
[[models]]
id = "tongyi-deepresearch-30b-a3b"
display_name = "Tongyi DeepResearch 30B A3B"
-28
View File
@@ -1,28 +0,0 @@
# reka — auto-generated from OpenRouter API
[provider]
id = "reka"
display_name = "Reka"
api_key_env = "REKA_API_KEY"
base_url = "https://api.reka.ai/v1"
key_required = true
[[models]]
id = "reka-edge"
display_name = "Reka Edge"
tier = "fast"
context_window = 16384
max_output_tokens = 16384
input_cost_per_m = 0.1
output_cost_per_m = 0.1
supports_streaming = true
[[models]]
id = "reka-flash-3"
display_name = "Reka: Flash 3"
tier = "fast"
context_window = 131072
max_output_tokens = 32768
input_cost_per_m = 0.1
output_cost_per_m = 0.2
supports_streaming = true
-28
View File
@@ -1,28 +0,0 @@
# relace — auto-generated from OpenRouter API
[provider]
id = "relace"
display_name = "Relace"
api_key_env = "OPENROUTER_API_KEY"
base_url = "https://openrouter.ai/api/v1"
key_required = true
[[models]]
id = "relace-apply-3"
display_name = "Relace: Relace Apply 3"
tier = "smart"
context_window = 256000
max_output_tokens = 128000
input_cost_per_m = 0.85
output_cost_per_m = 1.25
supports_streaming = true
[[models]]
id = "relace-search"
display_name = "Relace: Relace Search"
tier = "smart"
context_window = 256000
max_output_tokens = 128000
input_cost_per_m = 1.0
output_cost_per_m = 3.0
supports_streaming = true
-18
View File
@@ -1,18 +0,0 @@
# switchpoint — auto-generated from OpenRouter API
[provider]
id = "switchpoint"
display_name = "Switchpoint"
api_key_env = "OPENROUTER_API_KEY"
base_url = "https://openrouter.ai/api/v1"
key_required = true
[[models]]
id = "router"
display_name = "Switchpoint Router"
tier = "smart"
context_window = 131072
max_output_tokens = 16384
input_cost_per_m = 0.85
output_cost_per_m = 3.4
supports_streaming = true
-19
View File
@@ -1,19 +0,0 @@
# tngtech — auto-generated from OpenRouter API
[provider]
id = "tngtech"
display_name = "Tngtech"
api_key_env = "OPENROUTER_API_KEY"
base_url = "https://openrouter.ai/api/v1"
key_required = true
[[models]]
id = "deepseek-r1t2-chimera"
display_name = "TNG: DeepSeek R1T2 Chimera"
tier = "fast"
context_window = 163840
max_output_tokens = 163840
input_cost_per_m = 0.3
output_cost_per_m = 1.1
supports_streaming = true
supports_thinking = true
-18
View File
@@ -1,18 +0,0 @@
# upstage — auto-generated from OpenRouter API
[provider]
id = "upstage"
display_name = "Upstage"
api_key_env = "UPSTAGE_API_KEY"
base_url = "https://api.upstage.ai/v1"
key_required = true
[[models]]
id = "solar-pro-3"
display_name = "Upstage: Solar Pro 3"
tier = "fast"
context_window = 128000
max_output_tokens = 16384
input_cost_per_m = 0.15
output_cost_per_m = 0.6
supports_streaming = true
-61
View File
@@ -1,61 +0,0 @@
# Writer — https://writer.com
# Models: 4
[provider]
id = "writer"
display_name = "Writer"
api_key_env = "WRITER_API_KEY"
base_url = "https://api.writer.com/v1"
key_required = true
[[models]]
id = "palmyra-x5"
display_name = "Palmyra X5"
tier = "frontier"
context_window = 1048576
max_output_tokens = 8192
input_cost_per_m = 0.60
output_cost_per_m = 6.00
supports_tools = true
supports_vision = true
supports_streaming = true
aliases = ["palmyra-x5", "writer-x5"]
[[models]]
id = "palmyra-x4"
display_name = "Palmyra X4"
tier = "smart"
context_window = 131072
max_output_tokens = 4096
input_cost_per_m = 2.50
output_cost_per_m = 10.00
supports_tools = true
supports_vision = false
supports_streaming = true
aliases = ["palmyra-x4", "writer-x4"]
[[models]]
id = "palmyra-med"
display_name = "Palmyra Med"
tier = "smart"
context_window = 32768
max_output_tokens = 4096
input_cost_per_m = 5.00
output_cost_per_m = 12.00
supports_tools = false
supports_vision = false
supports_streaming = true
aliases = ["palmyra-med", "writer-med"]
[[models]]
id = "palmyra-fin"
display_name = "Palmyra Fin"
tier = "smart"
context_window = 131072
max_output_tokens = 4096
input_cost_per_m = 5.00
output_cost_per_m = 12.00
supports_tools = false
supports_vision = false
supports_streaming = true
aliases = ["palmyra-fin", "writer-fin"]
+1 -27
View File
@@ -1,5 +1,5 @@
# xAI — https://x.ai
# Models: 9
# Models: 7
[provider]
id = "xai"
@@ -100,29 +100,3 @@ supports_tools = true
supports_vision = false
supports_streaming = true
aliases = []
[[models]]
id = "grok-2"
display_name = "Grok 2"
tier = "smart"
context_window = 131072
max_output_tokens = 32768
input_cost_per_m = 2.0
output_cost_per_m = 10.0
supports_tools = true
supports_vision = true
supports_streaming = true
aliases = []
[[models]]
id = "grok-2-mini"
display_name = "Grok 2 Mini"
tier = "fast"
context_window = 131072
max_output_tokens = 32768
input_cost_per_m = 0.30
output_cost_per_m = 0.50
supports_tools = true
supports_vision = false
supports_streaming = true
aliases = ["grok-mini"]