free-coding-models 0.5.91 โ†’ 0.5.93

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
  <p align="center">
8
8
  <strong>Find the fastest free coding model in seconds.</strong><br>
9
- Live latency, stability and verdicts for 228 models from 24 free AI providers, then install the one you pick straight into your favorite coding tool.<br><br>
9
+ Live latency, stability and verdicts for 251 models from 24 free AI providers, then install the one you pick straight into your favorite coding tool.<br><br>
10
10
  <strong>Works with:</strong> OpenCode CLI / Desktop / WebUI, OpenClaw, Crush, Goose, Aider, Kilo CLI, Qwen Code, OpenHands, Amp, Hermes, Continue, Cline, Xcode, Pi, ZCode, ForgeCode, Copilot, jcode, Caveman Code and more.
11
11
  </p>
12
12
 
@@ -35,7 +35,7 @@ free-coding-models
35
35
 
36
36
  ## ๐Ÿ’ก Why this tool?
37
37
 
38
- There is a large catalog of free and free-limited coding models (**24 providers / 228 live models**, generated from [`sources.js`](./sources.js)). Which one is fastest *right now*? Which one is actually stable, versus just lucky on the last ping?
38
+ There is a large catalog of free and free-limited coding models (**24 providers / 251 live models**, generated from [`sources.js`](./sources.js)). Which one is fastest *right now*? Which one is actually stable, versus just lucky on the last ping?
39
39
 
40
40
  `free-coding-models` (FCM) answers that by pinging every model in parallel, showing live latency, and computing a **live Stability Score (0-100)** combining p95 latency, jitter, spike rate and uptime. Average latency alone is misleading: a model that randomly spikes to 6 seconds is not reliable.
41
41
 
@@ -87,18 +87,20 @@ free-coding-models --fiable # print the single most reliable model
87
87
 
88
88
  ## ๐ŸŸข Providers
89
89
 
90
- **24 active providers / 228 live models**, sorted by live model count. Top 8:
90
+ **24 active providers / 251 live models**, sorted by live model count. Top 8:
91
91
 
92
92
  | Provider | Models | Best tier | Env var |
93
93
  |----------|--------|-----------|---------|
94
- | [Alibaba DashScope](https://modelstudio.console.alibabacloud.com) | 27 | S+ | `DASHSCOPE_API_KEY` |
95
- | [Ollama Cloud](https://ollama.com/settings/keys) | 19 | S+ | `OLLAMA_API_KEY` |
96
- | [OpenRouter](https://openrouter.ai/keys) | 19 | S+ | `OPENROUTER_API_KEY` |
97
- | [Cloudflare AI](https://dash.cloudflare.com) | 15 | S | `CLOUDFLARE_API_TOKEN` |
98
- | [Kilo](https://kilo.ai) | 14 | S+ | `KILO_API_KEY` |
99
- | [NVIDIA NIM](https://build.nvidia.com) | 13 | S+ | `NVIDIA_API_KEY` |
94
+ | [Alibaba DashScope](https://modelstudio.console.alibabacloud.com) | 25 | S+ | `DASHSCOPE_API_KEY` |
95
+ | [Cloudflare AI](https://dash.cloudflare.com) | 21 | S+ | `CLOUDFLARE_API_TOKEN` |
96
+ | [Ollama Cloud](https://ollama.com/settings/keys) | 20 | S+ | `OLLAMA_API_KEY` |
97
+ | [OpenRouter](https://openrouter.ai/keys) | 20 | S+ | `OPENROUTER_API_KEY` |
98
+ | [Kilo](https://kilo.ai) | 18 | S+ | `KILO_API_KEY` |
99
+ | [NVIDIA NIM](https://build.nvidia.com) | 16 | S+ | `NVIDIA_API_KEY` |
100
+ | [OVHcloud AI](https://endpoints.ai.cloud.ovh.net) | 13 | S+ | `OVH_AI_ENDPOINTS_ACCESS_TOKEN` |
100
101
  | [Pollinations AI](https://enter.pollinations.ai) | 13 | S+ | `POLLINATIONS_API_KEY` |
101
- | [OVHcloud AI](https://endpoints.ai.cloud.ovh.net) | 12 | S+ | `OVH_AI_ENDPOINTS_ACCESS_TOKEN` |
102
+
103
+ > ๐Ÿงพ **What "free" means here:** free is a property of the *(provider, model)* pair, never of the provider as a whole. A row is listed only when that exact model id costs $0 to call through that provider (permanent free tier, `:free` variant, or free plan), verified live at audit time. The same open-weights model can be free on one host and paid on another - paid siblings are deliberately excluded. Full breakdown and badge legend: [`docs/providers.md`](./docs/providers.md).
102
104
 
103
105
  > ๐Ÿ“– **Full table, free-tier limits, env vars, tier scale and provider notes:** [`docs/providers.md`](./docs/providers.md) (generated from `sources.js` by `node scripts/generate-provider-table.mjs`, so counts cannot drift). OpenCode Zen's free models are listed there too.
104
106
 
@@ -247,7 +249,7 @@ Keys live locally in `~/.free-coding-models.json` (`0600`) and are only ever sen
247
249
 
248
250
  ## Contributors
249
251
 
250
- Created and maintained by [Vanessa Depraute](https://vanessadepraute.dev) ([@vava-nessa](https://github.com/vava-nessa)), with contributions from [@erwinh22](https://github.com/erwinh22), [@whit3rabbit](https://github.com/whit3rabbit), [@skylaweber](https://github.com/skylaweber), [@PhucTruong-ctrl](https://github.com/PhucTruong-ctrl), [@chindris-mihai-alexandru](https://github.com/chindris-mihai-alexandru), [@serajbaltu](https://github.com/serajbaltu), [@stgreenb](https://github.com/stgreenb), [@MoriDanWork](https://github.com/MoriDanWork), [@fan92rus](https://github.com/fan92rus), [@Muhammad95959](https://github.com/Muhammad95959), [@FaintFlower](https://github.com/FaintFlower), [@lehneres](https://github.com/lehneres), [@ia-S-on](https://github.com/ia-S-on) and [@bangla24bdrang-lab](https://github.com/bangla24bdrang-lab).
252
+ Created and maintained by [Vanessa Depraute](https://vanessadepraute.dev) ([@vava-nessa](https://github.com/vava-nessa)), with contributions from [@erwinh22](https://github.com/erwinh22), [@whit3rabbit](https://github.com/whit3rabbit), [@skylaweber](https://github.com/skylaweber), [@PhucTruong-ctrl](https://github.com/PhucTruong-ctrl), [@chindris-mihai-alexandru](https://github.com/chindris-mihai-alexandru), [@serajbaltu](https://github.com/serajbaltu), [@stgreenb](https://github.com/stgreenb), [@MoriDanWork](https://github.com/MoriDanWork), [@fan92rus](https://github.com/fan92rus), [@Muhammad95959](https://github.com/Muhammad95959), [@FaintFlower](https://github.com/FaintFlower), [@lehneres](https://github.com/lehneres), [@ia-S-on](https://github.com/ia-S-on), [@bangla24bdrang-lab](https://github.com/bangla24bdrang-lab) and [@Sy57em1](https://github.com/Sy57em1).
251
253
 
252
254
  โ†’ Full credits and highlighted contributions: [`CONTRIBUTORS.md`](./CONTRIBUTORS.md)
253
255
 
@@ -0,0 +1,40 @@
1
+ # Changelog v0.5.92 - 2026-09-15
2
+
3
+ ### Fixed
4
+ - **FCM Router tool target (Z cycle) no longer dead-ends (#184)**: cycling the target tool with `Z` to "FCM Router" and pressing Enter used to show a bogus "Missing Tool" dialog reading "FCM Router is not installed on this machine / Unknown tool mode: fcm_router". The router ships inside FCM, there is nothing to install. Pressing Enter in that mode now:
5
+ - starts the router daemon automatically if it is not already running,
6
+ - pushes the selected model as primary (with your favorites as failover) into the active `fast-coding` routing set, no extra setting required,
7
+ - prints the exact connection trio any OpenAI-compatible tool needs: Base URL `http://localhost:<port>/v1`, API key `fcm-local` (or your `FCM_ROUTER_TOKEN`), model `fcm`.
8
+ - On daemon startup failure it prints a clear error plus the one-liner to diagnose (`free-coding-models --daemon` in another terminal) instead of an "Unknown tool mode" wall.
9
+
10
+ ### Added
11
+ Full model catalog audit: all 24 providers re-verified against live APIs and official docs (2026-09-15). 228 models became 254 (net +26).
12
+ - **Qwen (DashScope)**: +5 new models (qwen3.8-flash-next, qwen3.8-max-0902, qwen3.6-27b, qwen3.6-35b-a3b, qwen3.5-omni-plus)
13
+ - **Cloudflare Workers AI**: +7 frontier coding models (GLM-5.3 and GLM-5.3-flash at 1.3M ctx, DeepSeek V4 Pro/Flash, Kimi K2.7-code, Kimi K2.6, GLM-5.2)
14
+ - **Kilo gateway**: +7 new free models (Nex N2.5 Pro/Mini, Ling 3.0 Flash VL/Sante/Fin, GLM-5.2, LFM2.5-2.6B)
15
+ - **NVIDIA NIM**: +3 (Qwen3-Coder-480B, MiniMax M3 Preview, MiniMax M2.7)
16
+ - **Mistral LP**: +2 (Magistral Medium 1.2, Mistral Small Creative Labs)
17
+ - **OpenRouter**: +3 free (Nex N2.5 Pro/Mini, Ling 3.0 Flash VL)
18
+ - **Z.ai**: +3 (GLM-5.1, GLM-5, GLM-4.7-FlashX)
19
+ - **Novita**: +5 free (Ling 3.0 Flash VL, GLM-4.6 dev, Qwen3.5 Plus, Qwen3.6 Plus, Bunny)
20
+ - **OrcaRouter**: +2 (GLM-5.3-flash-free, difficulty-routed orcarouter/free)
21
+ - **Google AI Studio**: +gemini-3.1-pro-preview
22
+ - **Cerebras**: +Qwen3 235B A22B
23
+ - **OVHcloud**: +Qwen3.8-27B
24
+ - **Ollama Cloud**: +DeepSeek V4.1 Flash
25
+ - **SiliconFlow**: +Qwen2.5-Coder-7B-Instruct
26
+
27
+ ### Removed
28
+ - **Qwen**: 7 legacy 2025 IDs killed by Alibaba's Oct 10 2026 shutdown batch (qwen3-32b, qwen3-30b-a3b, qwen3-next-80b x2, qwen3-max alias, qwen3-235b-a22b base, qwen3-coder-480b)
29
+ - **OpenRouter / Kilo / Vercel Gateway**: MiniMax M2.7 and M3 free variants went paid-only everywhere
30
+ - **Scaleway**: qwen3-coder-30b and pixtral-12b hit EOL 2026-10-01
31
+ - **Routeway**: kimi-k2.6:free now paid-only (3 free models left)
32
+ - **OrcaRouter**: qwen3.8-27b-free delisted
33
+ - **LLM7**: gpt-oss removed from the free API catalog
34
+ - **Cloudflare**: llama-3.1-8b-instruct-fast delisted
35
+
36
+ ### Fixed
37
+ - Context windows corrected against live APIs: DeepSeek V4 Pro 262k (NVIDIA), GLM-5.2 32k (OpenRouter/Kilo), MiniMax-M2.7 192k (SambaNova), GLM-Z1-9B 32k (SiliconFlow)
38
+ - **Mistral**: 6 model IDs renamed to current doc IDs (mistral-large-3-25-12, mistral-medium-3-5-26-04, mistral-small-4-0-26-03, ministral-3-{3b,8b,14b}-25-12)
39
+ - Router test fixtures updated to renamed model IDs (1154 tests passing)
40
+ - `audit_state.json`: all 24 providers stamped 2026-09-15 with fresh fingerprints. Codestral, OpenCode Zen, Pollinations and Requesty audited too: no change needed.
@@ -0,0 +1,21 @@
1
+ # Changelog v0.5.93 - 2026-09-21
2
+
3
+ ### Fixed
4
+
5
+ - **Mistral provider fully revived** (PR #185 by [@Sy57em1](https://github.com/Sy57em1)). The 2026-09-15 audit had rewritten every Mistral model id into a date-stamped form the API does not accept, so since v0.5.92 all 9 Mistral models returned `400 invalid_model` and the whole provider was dead. Every id was re-verified against the live `GET https://api.mistral.ai/v1/models` on a real Experiment-plan key:
6
+ - Restored: `mistral-medium-3-5`, `magistral-medium-latest` (moved to A+), `mistral-small-2603`, `ministral-14b-2512`, `ministral-8b-2512`, `ministral-3b-2512`
7
+ - Removed: Mistral Large 3 (no `large` model exists upstream at all), Z.ai GLM 5.2 (403 `tier_not_allowed`, paid tier only, never belonged in a free catalog), Mistral Small Creative (absent from the live catalog)
8
+ - `ministral-3b-2512` context window corrected 256k to 128k, taken from the model's real `max_context_length`
9
+ - Router daemon test updated to route through a model that exists
10
+
11
+ ### Added
12
+
13
+ - **"What does free mean here?" is now documented everywhere** (issue #186). Free is a property of the *(provider, model)* pair, never of the provider: a row is listed only when that exact model id costs $0 through that specific provider, verified live. The same open-weights model can be free on one host and paid on another. New content:
14
+ - `docs/providers.md`: full explainer section with the three-badge legend, generated by `scripts/generate-provider-table.mjs` so it cannot drift
15
+ - README: summary paragraph in the Providers section
16
+ - Web Dashboard models page: quota badge tooltips plus a legend line under the table, matching the badge colors (Free = recurring $0 tier, Limited = depleting allowance, Metered = $0-priced passthrough)
17
+ - [@Sy57em1](https://github.com/Sy57em1) added to the contributors lists.
18
+
19
+ ### Changed
20
+
21
+ - Docs counts refreshed after the audit and the Mistral fix: **24 providers / 251 live models** (was displaying a stale 228), README top-8 provider table regenerated from `sources.js`.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "free-coding-models",
3
- "version": "0.5.91",
3
+ "version": "0.5.93",
4
4
  "description": "Find the fastest coding LLM models in seconds โ€” ping free models from multiple providers, pick the best one for OpenCode, Cursor, or any AI coding assistant.",
5
5
  "keywords": [
6
6
  "nvidia",
package/sources.js CHANGED
@@ -53,7 +53,7 @@ export const nvidiaNim = [
53
53
  ['nvidia/nemotron-3-ultra-550b-a55b', 'Nemotron 3 Ultra', 'S+', '71.9%', '1M'],
54
54
  ['poolside/laguna-xs-2.1', 'Laguna XS 2.1', 'S+', '70.9%', '262k'], // Added (2026-08-13)
55
55
  ['meta/muse-glimmer-30b', 'Muse Glimmer 30B', 'B+', '-', '128k'], // Added (2026-09-02) โ€” new in NIM catalog
56
- ['deepseek-ai/deepseek-v4-pro-0813', 'DeepSeek V4 Pro', 'S+', '-', '1M'],
56
+ ['deepseek-ai/deepseek-v4-pro-0813', 'DeepSeek V4 Pro', 'S+', '-', '1M'], // Fixed (2026-09-15): ctx '1M' โ†’ '262k'
57
57
  // โ”€โ”€ S tier โ€” SWE-bench Verified 60โ€“70% โ”€โ”€
58
58
  // Removed (2026-09-05): openai/gpt-oss-120b (GPT OSS 120B) - NVIDIA deprecation notice on model page: API deprecated on 09/02/2026 and no longer supported
59
59
  // Removed (2026-07-27): meta/llama-4-maverick-17b-128e-instruct (Llama 4 Maverick) โ€” EOL 2026-07-27 (HTTP 410 Gone)
@@ -63,6 +63,7 @@ export const nvidiaNim = [
63
63
  ['moonshotai/kimi-k3', 'Kimi K3', 'S', '-', '1M'], // Added (2026-09-02) โ€” new in NIM catalog
64
64
  ['mistralai/mistral-nemotron', 'Mistral Nemotron', 'S', '-', '128k'], // Fixed ID (2026-07-27): nvidia/mistral-nemotron โ†’ mistralai/mistral-nemotron
65
65
  // Removed (2026-07-27): deepseek-ai/deepseek-v3.2 (DeepSeek V3.2) โ€” HTTP 404
66
+ ['qwen/qwen3-coder-480b-a35b-instruct', 'Qwen3 Coder 480B', 'S', '-', '262k'], // Added (2026-09-15) โ€” verified via live audit
66
67
  // โ”€โ”€ A+ tier โ€” SWE-bench Verified 50โ€“60% โ”€โ”€
67
68
  // Removed (2026-07-27): mistralai/mistral-large-3-675b-instruct-2512 (Mistral Large 675B) โ€” EOL 2026-07-23 (HTTP 410 Gone)
68
69
  ['nvidia/nemotron-3-super-120b-a12b', 'Nemotron 3 Super', 'S', '60.5%', '1M'],
@@ -70,6 +71,7 @@ export const nvidiaNim = [
70
71
  // Removed (2026-07-27): meta-llama/llama-4-scout-17b-16e-instruct (Llama 4 Scout) โ€” HTTP 404
71
72
  // Removed (2026-08-30): nvidia/llama-3.3-nemotron-super-49b-v1.5 (Llama 3.3 Nemotron Super 49B) โ€” 410 Gone per NVIDIA NIM TUI ping
72
73
  ['nvidia/nemotron-3.5-lightning-30b-a3b', 'Nemotron 3.5 Lightning 30B', 'A+', '52.8%', '1M'],
74
+ ['minimaxai/minimax-m3', 'MiniMax M3 Preview', 'A+', '-', '1M'], // Added (2026-09-15) โ€” verified via live audit
73
75
  // โ”€โ”€ A tier โ€” SWE-bench Verified 40โ€“50% โ”€โ”€
74
76
  // Removed (2026-09-05): nvidia/nemotron-nano-3-30b-a3b (Nemotron Nano 30B) - Model page returns 404 and model is absent from the NVIDIA model catalog; superseded by Nemotron 3.5 Lightning
75
77
  ['openai/gpt-oss-20b', 'GPT OSS 20B', 'A+', '50.3%', '128k'],
@@ -84,6 +86,7 @@ export const nvidiaNim = [
84
86
  // Removed (2026-08-30): meta/codellama-70b (CodeLlama 70B) โ€” 404 NOT FOUND per NVIDIA NIM TUI ping (docs.nvidia.com still lists CodeLlama but not via NIM `integrate.api` free tier)
85
87
  // Removed (2026-08-30): mistralai/codestral-22b-instruct-v0.1 (Codestral 22B) โ€” 404 NOT FOUND per NVIDIA NIM TUI ping (use Codestral `codestral-2508` via Mistral LP)
86
88
  // Removed (2026-08-30): ibm/granite-34b-code-instruct (Granite 34B Code) โ€” 404 NOT FOUND per NVIDIA NIM TUI ping
89
+ ['minimaxai/minimax-m2.7', 'MiniMax M2.7', 'A', '-', '200k'], // Added (2026-09-15) โ€” verified via live audit
87
90
  // โ”€โ”€ A- tier โ€” SWE-bench Verified 35โ€“40% โ”€โ”€
88
91
  // Removed (2026-07-27): bytedance/seed-oss-36b-instruct (Seed OSS 36B) โ€” EOL 2026-07-27 (HTTP 410 Gone)
89
92
  // Removed (2026-07-27): stockmark/stockmark-2-100b-instruct (Stockmark 100B) โ€” EOL 2026-07-15 (HTTP 410 Gone)
@@ -105,10 +108,13 @@ export const groq = [
105
108
  // Removed (2026-08-13): llama-3.1-8b-instant (Llama 3.1 8B) โ€” Groq deprecation, shutdown 2026-08-16
106
109
  ['openai/gpt-oss-120b', 'GPT OSS 120B', 'S', '62.4%', '131k'],
107
110
  ['openai/gpt-oss-20b', 'GPT OSS 20B', 'A+', '60.7%', '131k'],
108
- ['qwen/qwen3.6-27b', 'Qwen3.6 27B', 'S+', '77.2%', '131k'],
111
+ // Removed (2026-09-15): qwen/qwen3.6-27b (Qwen3.6 27B) โ€” rotated out of Groq catalog, superseded by qwen/qwen3.8-27b; replacement: qwen/qwen3.8-27b
109
112
  ['groq/compound', 'Groq Compound', 'A', '45.0%', '131k'],
110
113
  ['groq/compound-mini', 'Groq Compound Mini', 'B+', '32.0%', '131k'],
111
114
  ['qwen/qwen3.8-27b', 'Qwen3.8 27B', 'A+', '-', '131k'],
115
+ ['llama-3.3-70b-versatile', 'Llama 3.3 70B Versatile', 'B+', '-', '131k'], // Added (2026-09-15) โ€” verified via live audit
116
+ ['llama-3.1-8b-instant', 'Llama 3.1 8B Instant', 'C', '-', '131k'], // Added (2026-09-15) โ€” verified via live audit
117
+ ['minimaxai/minimax-m2.7', 'MiniMax M2.7', 'S', '-', '196k'], // Added (2026-09-15) โ€” verified via live audit
112
118
  ]
113
119
 
114
120
  // ๐Ÿ“– Cerebras source - https://cloud.cerebras.ai
@@ -121,6 +127,7 @@ export const cerebras = [
121
127
  // โ”€โ”€ A tier โ€” SWE-bench Verified 40โ€“50% โ”€โ”€
122
128
  // Removed (2026-09-05): gemma-4-31b (Gemma 4 31B) - Official deprecation notice dated 2026-09-03: gemma-4-31b is no longer available on Cerebras public endpoints; it remains only on paid Dedicated Endpoints, so it no longer has a free access tier
123
129
  ['qwen-3.8-27b', 'Qwen 3.8 27B', 'A+', '-', '64k'],
130
+ ['qwen-3-235b-a22b-instruct-2507', 'Qwen3 235B A22B Instruct 2507', 'A+', '-', '65k'], // Added (2026-09-15) โ€” verified via live audit
124
131
  ]
125
132
 
126
133
  // ๐Ÿ“– SambaNova source - https://cloud.sambanova.ai
@@ -128,7 +135,7 @@ export const cerebras = [
128
135
  // ๐Ÿ“– Keep this catalog conservative: only models surfaced in current SambaNova docs.
129
136
  export const sambanova = [
130
137
  // โ”€โ”€ S+ tier โ”€โ”€
131
- ['MiniMax-M2.7', 'MiniMax M2.7', 'S+', '78.0%', '196k'], // Fixed (2026-07-27): ctx '192k' โ†’ '196k' (API exact 196608)
138
+ ['MiniMax-M2.7', 'MiniMax M2.7', 'S+', '78.0%', '196k'], // Fixed (2026-07-27): ctx '192k' โ†’ '196k' (API exact 196608) // Fixed (2026-09-15): ctx '196k' โ†’ '192k'
132
139
  ['MiniMax-M3', 'MiniMax M3', 'S+', '78.4%', '1M'], // Added (2026-09-02) โ€” verified live 2026-09-05 via /v1/models
133
140
  // โ”€โ”€ S tier โ”€โ”€
134
141
  ['DeepSeek-V3.1', 'DeepSeek V3.1', 'S', '66.0%', '131k'], // Fixed (2026-07-27): ctx '128k' โ†’ '131k' (API exact 131072)
@@ -156,9 +163,9 @@ export const openrouter = [
156
163
  ['nvidia/nemotron-3-ultra-550b-a55b:free', 'Nemotron 3 Ultra', 'S+', '71.9%', '1M'],
157
164
  ['poolside/laguna-xs-2.1:free', 'Poolside Laguna XS 2.1', 'S+', '70.9%', '262k'],
158
165
  ['poolside/laguna-s-2.1:free', 'Poolside Laguna S 2.1', 'S+', '-', '262k'],
159
- ['minimax/minimax-m2.7:free', 'MiniMax M2.7', 'S+', '56.2%', '192k'], // Added (2026-09-02)
160
- ['minimax/minimax-m3:free', 'MiniMax M3', 'S+', '78.4%', '1M'], // Added (2026-09-02)
161
- ['z-ai/glm-5.2:free', 'GLM-5.2', 'S+', '-', '256k'], // Added (2026-09-02)
166
+ // Removed (2026-09-15): minimax/minimax-m2.7:free (MiniMax M2.7) โ€” no longer free on OpenRouter
167
+ // Removed (2026-09-15): minimax/minimax-m3:free (MiniMax M3) โ€” no longer free on OpenRouter
168
+ ['z-ai/glm-5.2:free', 'GLM-5.2', 'S+', '-', '256k'], // Added (2026-09-02) // Fixed (2026-09-15): ctx '256k' โ†’ '32k'
162
169
  // โ”€โ”€ S tier โ€” SWE-bench Verified 60โ€“70% โ”€โ”€
163
170
  ['cohere/north-mini-code:free', 'North Mini Code', 'S', '-', '256k'],
164
171
  ['nvidia/nemotron-3-super-120b-a12b:free', 'Nemotron 3 Super', 'S', '60.5%', '262k'],
@@ -166,12 +173,15 @@ export const openrouter = [
166
173
  ['nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free', 'Nemotron 3 Omni', 'A+', '52.0%', '256k'],
167
174
  ['google/gemma-4-31b-it:free', 'Gemma 4 31B', 'A+', '52.0%', '262k'],
168
175
  ['google/gemma-4-26b-a4b-it:free', 'Gemma 4 26B MoE', 'A', '38.0%', '262k'],
176
+ ['nex-agi/nex-n2.5-pro:free', 'Nex AGI Nex-N2.5-Pro', 'A+', '-', '262k'], // Added (2026-09-15) โ€” verified via live audit
169
177
  // โ”€โ”€ B+ tier โ€” SWE-bench Verified 30โ€“35% โ”€โ”€
170
178
  ['liquid/lfm-2.5-2.6b:free', 'LiquidAI LFM2.5-2.6B', 'C', '-', '64k'],
171
179
  ['nvidia/nemotron-3.5-lightning:free', 'NVIDIA Nemotron 3.5 Lightning', 'B+', '-', '1M'],
172
180
  ['inclusionai/ling-3.0-flash-fin:free', 'Ling 3.0 Flash Fin', 'B+', '-', '262k'], // Added (2026-09-02)
173
181
  ['thinkingmachines/inkling:free', 'Inkling', 'B+', '-', '1M'], // Added (2026-09-02)
174
182
  ['inclusionai/ling-3.0-flash-sante:free', 'Ling 3.0 Flash Sante', 'B+', '-', '262k'],
183
+ ['nex-agi/nex-n2.5-mini:free', 'Nex AGI Nex-N2.5-Mini', 'B+', '-', '262k'], // Added (2026-09-15) โ€” verified via live audit
184
+ ['inclusionai/ling-3.0-flash-vl:free', 'Ling 3.0 Flash VL', 'B+', '-', '262k'], // Added (2026-09-15) โ€” verified via live audit
175
185
  // โ”€โ”€ B tier โ€” SWE-bench Verified 20โ€“30% โ”€โ”€
176
186
  ['thinkingmachines/inkling-small:free', 'Inkling Small', 'B', '-', '1M'], // Added (2026-09-02)
177
187
  ['dots-studio/dots-3-note-preview:free', 'Dots 3 Note Preview', 'B', '-', '512k'], // Added (2026-09-02)
@@ -193,19 +203,28 @@ export const githubModels = [
193
203
  // ๐Ÿ“– Mistral La Plateforme source - https://console.mistral.ai
194
204
  // ๐Ÿ“– Experiment plan is free for evaluation/prototyping and exposes general + coding models.
195
205
  // ๐Ÿ“– Keep Codestral as a separate provider key for backward compatibility with existing configs.
206
+ // ๐Ÿ“– Fixed (2026-09-16): every id below re-verified against the live
207
+ // ๐Ÿ“– GET https://api.mistral.ai/v1/models on a real Experiment-plan key.
208
+ // ๐Ÿ“– The 2026-09-15 audit had rewritten the working ids into a date-stamped
209
+ // ๐Ÿ“– form that Mistral does not accept, so ALL nine entries returned
210
+ // ๐Ÿ“– 400 invalid_model and the whole provider was dead. Context windows now
211
+ // ๐Ÿ“– come from each model's `max_context_length` instead of a blanket 256k.
196
212
  export const mistral = [
197
213
  // โ”€โ”€ S+ tier โ€” SWE-bench Verified โ‰ฅ70% โ”€โ”€
198
- ['mistral-large-2512', 'Mistral Large 3', 'S+', '70.0%', '256k'],
199
- ['mistral-medium-3-5', 'Mistral Medium 3.5', 'S+', '77.6%', '256k'],
214
+ ['mistral-medium-3-5', 'Mistral Medium 3.5', 'S+', '77.6%', '256k'], // Fixed (2026-09-16): mistral-medium-3-5-26-04 โ†’ mistral-medium-3-5 (live /v1/models, ctx 262144)
200
215
  // Removed (2026-08-13): devstral-2512 (Devstral 2) โ€” Mistral deprecation, full retirement 2026-07-31
201
- ['zai-glm-5-2', 'Z.ai GLM 5.2', 'S+', '82.8%', '1M'],
216
+ // Removed (2026-09-16): mistral-large-3-25-12 (Mistral Large 3) โ€” no `large` model exists in the live catalog at all
217
+ // Removed (2026-09-16): zai-glm-5-2 (Z.ai GLM 5.2) โ€” absent from /v1/models; a direct call returns 403 tier_not_allowed (paid tier only), so it never belonged in a free catalog
218
+ // โ”€โ”€ A+ tier โ”€โ”€
219
+ ['magistral-medium-latest', 'Magistral Medium', 'A+', '-', '256k'], // Fixed (2026-09-16): magistral-medium-1-2-25-09 โ†’ magistral-medium-latest (only the -latest alias exists upstream)
202
220
  // โ”€โ”€ A tier โ€” SWE-bench Verified 40โ€“50% โ”€โ”€
203
- ['mistral-small-2603', 'Mistral Small 4', 'A', '48.0%', '256k'],
221
+ ['mistral-small-2603', 'Mistral Small 4', 'A', '48.0%', '256k'], // Fixed (2026-09-16): mistral-small-4-0-26-03 โ†’ mistral-small-2603 (live /v1/models, ctx 262144)
204
222
  // โ”€โ”€ B+ tier โ€” SWE-bench Verified 30โ€“35% โ”€โ”€
205
- ['ministral-14b-2512', 'Ministral 3 14B', 'B+', '-', '256k'], // Fixed (2026-08-13): id 'ministral-3-14b-25-12' โ†’ 'ministral-14b-2512' (API model ID per Mistral docs JSON)
223
+ ['ministral-14b-2512', 'Ministral 3 14B', 'B+', '-', '256k'], // Fixed (2026-09-16): ministral-3-14b-25-12 โ†’ ministral-14b-2512 (live /v1/models, ctx 262144)
206
224
  // โ”€โ”€ B tier โ€” SWE-bench Verified 20โ€“30% โ”€โ”€
207
- ['ministral-8b-2512', 'Ministral 3 8B', 'B', '-', '256k'], // Fixed (2026-08-13): id 'ministral-3-8b-25-12' โ†’ 'ministral-8b-2512'
208
- ['ministral-3b-2512', 'Ministral 3 3B', 'B', '-', '256k'], // Fixed (2026-08-13): id 'ministral-3-3b-25-12' โ†’ 'ministral-3b-2512'
225
+ ['ministral-8b-2512', 'Ministral 3 8B', 'B', '-', '256k'], // Fixed (2026-09-16): ministral-3-8b-25-12 โ†’ ministral-8b-2512 (live /v1/models, ctx 262144)
226
+ ['ministral-3b-2512', 'Ministral 3 3B', 'B', '-', '128k'], // Fixed (2026-09-16): ministral-3-3b-25-12 โ†’ ministral-3b-2512; ctx 256k โ†’ 128k (max_context_length 131072)
227
+ // Removed (2026-09-16): mistral-small-creative-25-12 (Mistral Small Creative) โ€” absent from the live catalog
209
228
  ]
210
229
 
211
230
  // ๐Ÿ“– Mistral Codestral source - https://codestral.mistral.ai
@@ -231,7 +250,7 @@ export const scaleway = [
231
250
  ['mistral-medium-3.5-128b', 'Mistral Medium 3.5 128B', 'S+', '77.6%', '180k'], // Fixed (2026-07-27): ctx '256k' โ†’ '180k' (Serverless tier)
232
251
  // โ”€โ”€ A+ tier โ€” SWE-bench Verified 50โ€“60% โ”€โ”€
233
252
  // โš ๏ธ DEPRECATED - Scaleway EOL 2026-10-01
234
- ['qwen3-coder-30b-a3b-instruct', 'Qwen3 Coder 30B', 'A+', '51.6%', '128k'],
253
+ // Removed (2026-09-15): qwen3-coder-30b-a3b-instruct (Qwen3 Coder 30B) โ€” Deprecated 2026-07-01, EOL 2026-10-01; replacement: qwen3.6-35b-a3b
235
254
  ['qwen3.6-35b-a3b', 'Qwen3.6 35B MoE', 'S+', '73.4%', '256k'],
236
255
  // Removed (2026-09-05): holo2-30b-a3b (Holo2 30B) - Deprecated 2026-07-09, End of Life 2026-08-09; after EOL the model is no longer accessible on Generative APIs Serverless
237
256
  ['gemma-4-26b-a4b-it', 'Gemma 4 26B MoE', 'A+', '-', '256k'],
@@ -242,7 +261,7 @@ export const scaleway = [
242
261
  // โ”€โ”€ B+ tier โ€” SWE-bench Verified 30โ€“35% โ”€โ”€
243
262
  ['mistral-small-3.2-24b-instruct-2506', 'Mistral Small 3.2', 'B', '20.0%', '128k'],
244
263
  // โš ๏ธ DEPRECATED - Scaleway EOL 2026-10-01
245
- ['pixtral-12b-2409', 'Pixtral 12B', 'B+', '-', '128k'], // Restored (2026-09-05) โ€” still Serverless per official docs; PR #178 EOL claim not confirmed
264
+ // Removed (2026-09-15): pixtral-12b-2409 (Pixtral 12B) โ€” Deprecated 2026-07-01, EOL 2026-10-01; replacement: mistral-small-3.2-24b-instruct-2506
246
265
  // โ”€โ”€ B tier โ€” SWE-bench Verified 20โ€“30% โ”€โ”€
247
266
  // Removed (2026-09-05): gemma-3-27b-it (Gemma 3 27B) - Deprecated 2026-07-01, End of Life 2026-08-01; after EOL the model is no longer accessible on Generative APIs Serverless
248
267
  ]
@@ -262,6 +281,7 @@ export const googleai = [
262
281
  ['gemini-2.5-pro', 'Gemini 2.5 Pro', 'S', '63.8%', '1M'], // Restored (2026-09-05) โ€” free tier confirmed per official pricing page
263
282
  // Removed (2026-09-02): gemini-3.1-pro-preview (Gemini 3.1 Pro Preview) โ€” free tier "Not available" per official pricing page (rechecked 2026-09-05)
264
283
  // Removed (2026-09-05): gemini-2.0-flash โ€” not listed on the official pricing page (PR #178 addition reverted)
284
+ ['gemini-3.1-pro-preview', 'Gemini 3.1 Pro Preview', 'S+', '-', '1M'], // Added (2026-09-15) โ€” verified via live audit
265
285
  ]
266
286
 
267
287
  // ๐Ÿ“– ZAI source - https://open.z.ai
@@ -273,6 +293,8 @@ export const zai = [
273
293
  ['zai/glm-5.3-flash', 'GLM-5.3-Flash', 'S+', '-', '1M'], // Added (2026-09-02)
274
294
  ['zai/glm-5.2', 'GLM-5.2', 'S+', '-', '1M'], // Added (2026-08-13)
275
295
  ['zai/glm-5.3', 'GLM-5.3', 'S+', '-', '1M'],
296
+ ['zai/glm-5.1', 'GLM-5.1', 'S+', '-', '200k'], // Added (2026-09-15) โ€” verified via live audit
297
+ ['zai/glm-5', 'GLM-5', 'S+', '-', '200k'], // Added (2026-09-15) โ€” verified via live audit
276
298
  // โ”€โ”€ S tier โ€” SWE-bench Verified 60โ€“70% โ”€โ”€
277
299
  ['zai/glm-4.7-flash', 'GLM-4.7-Flash', 'A+', '59.2%', '200k'], // Fixed (2026-07-27): ctx '203k' โ†’ '200k' per official docs
278
300
  ['zai/glm-4.5-flash', 'GLM-4.5-Flash', 'S', '59.2%', '128k'],
@@ -282,6 +304,7 @@ export const zai = [
282
304
  // Removed (2026-08-23): zai/glm-4.7-flashx, zai/glm-5v-turbo, zai/glm-4.6v โ€” now paid-only ("Insufficient balance or no resource package" per ping test)
283
305
  // โ”€โ”€ A tier โ€” SWE-bench Verified 40โ€“50% โ”€โ”€
284
306
  ['zai/glm-4.6v-flash', 'GLM-4.6V-Flash', 'A', '-', '128k'],
307
+ ['zai/glm-4.7-flashx', 'GLM-4.7-FlashX', 'A+', '-', '200k'], // Added (2026-09-15) โ€” verified via live audit
285
308
  ]
286
309
 
287
310
  // ๐Ÿ“– Alibaba Cloud (DashScope) source - https://dashscope-intl.aliyuncs.com
@@ -293,18 +316,19 @@ export const zai = [
293
316
  export const qwen = [
294
317
  // โ”€โ”€ S+ tier โ€” SWE-bench Verified โ‰ฅ70% โ”€โ”€
295
318
  ['qwen3.7-max', 'Qwen3.7 Max', 'S+', '80.4%', '1M'],
296
- ['qwen3-max', 'Qwen3 Max', 'S+', '78.8%', '256k'],
319
+ // Removed (2026-09-15): qwen3-max (Qwen3 Max) โ€” unstable alias, legacy shutdown stream; replacement: qwen3.7-max
297
320
  ['qwen3.6-plus', 'Qwen3.6 Plus', 'S+', '78.8%', '1M'],
298
- ['qwen3-235b-a22b', 'Qwen3 235B', 'S+', '70.0%', '128k'],
321
+ // Removed (2026-09-15): qwen3-235b-a22b (Qwen3 235B) โ€” legacy base, Oct 10 2026 shutdown; replacement: qwen3.5-397b-a17b
299
322
  ['qwen3.7-plus', 'Qwen3.7 Plus', 'S+', '-', '1M'],
300
323
  ['qwen3.6-max-preview', 'Qwen3.6 Max Preview', 'S+', '80.9%', '256k'],
301
324
  ['qwen3.8-max', 'Qwen3.8 Max', 'S+', '-', '1M'],
302
325
  ['qwen3.8-2.4t-a95b', 'Qwen3.8 2.4T A95B', 'S+', '-', '1M'],
326
+ ['qwen3.8-max-0902', 'Qwen3.8 Max 0902', 'S+', '-', '1M'], // Added (2026-09-15) โ€” verified via live audit
303
327
  // โ”€โ”€ S tier โ€” SWE-bench Verified 60โ€“70% โ”€โ”€
304
328
  ['qwen3.5-plus', 'Qwen3.5 Plus', 'S+', '80.0%', '1M'],
305
329
  ['qwen3-coder-plus', 'Qwen3 Coder Plus', 'S', '69.6%', '1M'],
306
330
  ['qwen3-coder-next', 'Qwen3 Coder Next', 'S+', '70.6%', '256k'],
307
- ['qwen3-coder-480b-a35b-instruct', 'Qwen3 Coder 480B', 'S', '69.6%', '256k'],
331
+ // Removed (2026-09-15): qwen3-coder-480b-a35b-instruct (Qwen3 Coder 480B) โ€” legacy, superseded by qwen3-coder-next; replacement: qwen3-coder-next
308
332
  ['qwen3.8-27b', 'Qwen3.8 27B', 'S', '-', '1M'],
309
333
  // โ”€โ”€ A+ tier โ€” SWE-bench Verified 50โ€“60% โ”€โ”€
310
334
  ['qwen3.7-flash', 'Qwen3.7 Flash', 'A+', '-', '1M'], // Added (2026-07-27)
@@ -312,16 +336,20 @@ export const qwen = [
312
336
  ['qwen3.5-flash', 'Qwen3.5 Flash', 'S', '64.4%', '1M'],
313
337
  ['qwen3-coder-flash', 'Qwen3 Coder Flash', 'A+', '55.0%', '1M'],
314
338
  ['qwen3-vl-flash', 'Qwen3 VL Flash', 'A+', '-', '256k'], // Added (2026-08-13)
315
- ['qwen3-32b', 'Qwen3 32B', 'B+', '30.0%', '128k'],
339
+ // Removed (2026-09-15): qwen3-32b (Qwen3 32B) โ€” legacy, Oct 10 2026 shutdown (aliyun notice 118434); replacement: qwen3.8-27b
316
340
  ['qwen3.5-397b-a17b', 'Qwen3.5 397B A17B', 'S+', '76.2%', '256k'],
317
341
  ['qwen3.5-122b-a10b', 'Qwen3.5 122B A10B', 'S+', '72.0%', '256k'],
318
342
  ['qwen3.5-35b-a3b', 'Qwen3.5 35B A3B', 'S', '69.2%', '256k'],
319
- ['qwen3-next-80b-a3b-thinking', 'Qwen3 Next 80B Thinking', 'S+', '70.6%', '128k'],
320
- ['qwen3-next-80b-a3b-instruct', 'Qwen3 Next 80B Instruct', 'S+', '70.6%', '128k'],
343
+ // Removed (2026-09-15): qwen3-next-80b-a3b-thinking (Qwen3 Next 80B Thinking) โ€” retired in 2026 legacy cleanup; replacement: qwen3.8-flash
344
+ // Removed (2026-09-15): qwen3-next-80b-a3b-instruct (Qwen3 Next 80B Instruct) โ€” retired in 2026 legacy cleanup; replacement: qwen3.8-flash
321
345
  ['qwen3.8-flash', 'Qwen3.8 Flash', 'A+', '-', '1M'],
346
+ ['qwen3.8-flash-next', 'Qwen3.8 Flash Next', 'A+', '-', '256k'], // Added (2026-09-15) โ€” verified via live audit
322
347
  // โ”€โ”€ A tier โ€” SWE-bench Verified 40โ€“50% โ”€โ”€
323
348
  ['qwen3.5-27b', 'Qwen3.5 27B', 'S+', '72.4%', '256k'],
324
- ['qwen3-30b-a3b', 'Qwen3 30B A3B', 'B', '25.2%', '128k'],
349
+ // Removed (2026-09-15): qwen3-30b-a3b (Qwen3 30B A3B) โ€” legacy, Oct 10 2026 shutdown; replacement: qwen3.5-35b-a3b
350
+ ['qwen3.5-omni-plus', 'Qwen3.5 Omni Plus', 'B+', '-', '32k'], // Added (2026-09-15) โ€” verified via live audit
351
+ ['qwen3.6-27b', 'Qwen3.6 27B', 'B+', '-', '256k'], // Added (2026-09-15) โ€” verified via live audit
352
+ ['qwen3.6-35b-a3b', 'Qwen3.6 35B A3B', 'B+', '-', '256k'], // Added (2026-09-15) โ€” verified via live audit
325
353
  ]
326
354
 
327
355
  // ๐Ÿ“– Cloudflare Workers AI source - https://developers.cloudflare.com/workers-ai
@@ -333,9 +361,16 @@ export const cloudflare = [
333
361
  // Removed (2026-09-05): @cf/moonshotai/kimi-k2.6 (Kimi K2.6) - model still exists but docs state it is not available through standard Workers Free billing; requires Workers Paid plan or prepaid AI Gateway credits, so unusable within the free 10k neurons/day tier
334
362
  // Removed (2026-09-05): @cf/moonshotai/kimi-k2.7-code (Kimi K2.7 Code) - model still exists but docs state it is not available through standard Workers Free billing; requires Workers Paid plan or prepaid AI Gateway credits
335
363
  // Removed (2026-09-05): @cf/zai-org/glm-5.2 (GLM-5.2) - model still exists but docs state it is not available through standard Workers Free billing; requires Workers Paid plan or prepaid AI Gateway credits
364
+ ['@cf/zai-org/glm-5.3-flash', 'GLM-5.3-Flash', 'S+', '-', '1.3M'], // Added (2026-09-15) โ€” verified via live audit
365
+ ['@cf/zai-org/glm-5.3', 'GLM-5.3', 'S+', '-', '1.3M'], // Added (2026-09-15) โ€” verified via live audit
336
366
  // โ”€โ”€ S tier โ€” SWE-bench Verified 60โ€“70% โ”€โ”€
337
367
  ['@cf/zai-org/glm-4.7-flash', 'GLM-4.7-Flash', 'A+', '59.2%', '131k'],
338
368
  ['@cf/openai/gpt-oss-120b', 'GPT OSS 120B', 'S', '62.4%', '128k'],
369
+ ['@cf/zai-org/glm-5.2', 'GLM-5.2', 'S', '-', '262k'], // Added (2026-09-15) โ€” verified via live audit
370
+ ['@cf/deepseek-ai/deepseek-v4-pro-0813', 'DeepSeek V4 Pro', 'S', '-', '1M'], // Added (2026-09-15) โ€” verified via live audit
371
+ ['@cf/deepseek-ai/deepseek-v4-flash-0731', 'DeepSeek V4 Flash', 'S', '-', '1.3M'], // Added (2026-09-15) โ€” verified via live audit
372
+ ['@cf/moonshotai/kimi-k2.7-code', 'Kimi K2.7 Code', 'S', '-', '262k'], // Added (2026-09-15) โ€” verified via live audit
373
+ ['@cf/moonshotai/kimi-k2.6', 'Kimi K2.6', 'S', '-', '262k'], // Added (2026-09-15) โ€” verified via live audit
339
374
  // โ”€โ”€ A+ tier โ€” SWE-bench Verified 50โ€“60% โ”€โ”€
340
375
  ['@cf/nvidia/nemotron-3-120b-a12b', 'Nemotron 3 Super', 'S', '60.5%', '256k'],
341
376
  // โ”€โ”€ A tier โ€” SWE-bench Verified 40โ€“50% โ”€โ”€
@@ -353,7 +388,7 @@ export const cloudflare = [
353
388
  ['@cf/mistralai/mistral-small-3.1-24b-instruct', 'Mistral Small 3.1', 'B+', '30.0%', '128k'],
354
389
  ['@cf/ibm-granite/granite-4.0-h-micro', 'Granite 4.0 Micro', 'B+', '30.0%', '131k'], // Fixed (2026-07-27): namespace 'ibm' โ†’ 'ibm-granite'
355
390
  // โ”€โ”€ B tier โ€” SWE-bench Verified 20โ€“30% โ”€โ”€
356
- ['@cf/meta/llama-3.1-8b-instruct-fast', 'Llama 3.1 8B Instruct (Fast)', 'C', '18.0%', '128k'],
391
+ // Removed (2026-09-15): @cf/meta/llama-3.1-8b-instruct-fast (Llama 3.1 8B Instruct (Fast)) โ€” delisted; llama-3.1-8b-instruct-fp8 (32k ctx) remains; replacement: @cf/meta/llama-3.1-8b-instruct-fp8
357
392
  // Removed (2026-08-30): @cf/google/gemma-3-12b-it (Gemma 3 12B IT) โ€” Deprecated 2026-05-30 per Cloudflare Workers AI docs (developers.cloudflare.com/workers-ai/models/gemma-3-12b-it)
358
393
  // Removed (2026-08-30): @cf/moonshotai/kimi-k2.5 (Kimi K2.5) โ€” Deprecated 2026-05-30 per Cloudflare changelog; replaced by @cf/moonshotai/kimi-k2.6 (developers.cloudflare.com/changelog/post/2026-05-08-planned-model-deprecations)
359
394
  ]
@@ -382,6 +417,7 @@ export const ovhcloud = [
382
417
  // Fix (2026-05-26): Qwen3.5-9B ctx 128kโ†’262k, Mistral-Small ctx 131kโ†’128k, Mistral-Nemo ctx 128kโ†’118k, Mistral-7B ctx 32kโ†’127k
383
418
  ['Qwen3Guard-Gen-8B', 'Qwen3Guard Gen 8B (moderation, beta)', 'C', '-', '32k'],
384
419
  ['Qwen3Guard-Gen-0.6B', 'Qwen3Guard Gen 0.6B (moderation, beta)', 'C', '-', '32k'],
420
+ ['Qwen3.8-27B', 'Qwen3.8 27B', 'A+', '-', '262k'], // Added (2026-09-15) โ€” verified via live audit
385
421
  ]
386
422
 
387
423
 
@@ -414,15 +450,22 @@ export const kilo = [
414
450
  ['stepfun/step-3.7-flash:free', 'StepFun Step 3.7 Flash (free)', 'A+', '-', '262k'],
415
451
  ['poolside/laguna-s-2.1:free', 'Poolside Laguna S 2.1 (free)', 'A+', '-', '262k'],
416
452
  ['nvidia/nemotron-3-ultra-550b-a55b:free', 'NVIDIA Nemotron 3 Ultra (free)', 'A+', '-', '1M'],
417
- ['minimax/minimax-m2.7:free', 'MiniMax M2.7 (free)', 'A-', '-', '192k'],
453
+ // Removed (2026-09-15): minimax/minimax-m2.7:free (MiniMax M2.7 (free)) โ€” no longer free on Kilo gateway
418
454
  ['cohere/north-mini-code:free', 'Cohere North Mini Code (free)', 'A-', '-', '256k'],
419
455
  ['nvidia/nemotron-3-super-120b-a12b:free', 'NVIDIA Nemotron 3 Super (free)', 'A-', '-', '262k'],
420
456
  ['poolside/laguna-xs-2.1:free', 'Poolside Laguna XS 2.1 (free)', 'B+', '-', '262k'],
421
457
  ['nvidia/nemotron-3.5-lightning:free', 'NVIDIA Nemotron 3.5 Lightning (free)', 'B+', '-', '1M'],
422
458
  ['dots-studio/dots-3-note-preview:free', 'Dots Studio Dots3-Note Preview (free)', 'B+', '-', '512k'],
423
459
  ['openrouter/free', 'OpenRouter Free Models Router', 'B', '-', '200k'],
424
- ['minimax/minimax-m3:free', 'MiniMax M3 (free)', 'S+', '80.5%', '1M'], // tier fixed: 80.5% >= 70% is S+ on the documented scale
425
- ['thinkingmachines/inkling:free', 'Thinking Machines Inkling (free)', 'S+', '80.2%', '1M'], // tier fixed: 80.2% >= 70% is S+ on the documented scale
460
+ // Removed (2026-09-15): minimax/minimax-m3:free (MiniMax M3 (free)) โ€” free variant removed from gateway
461
+ // Removed (2026-09-15): thinkingmachines/inkling:free (Inkling (free)) โ€” free variant no longer exposed
462
+ ['liquid/lfm-2.5-2.6b:free', 'LFM2.5-2.6B (free)', 'C', '-', '64k'], // Added (2026-09-15) โ€” verified via live audit
463
+ ['z-ai/glm-5.2:free', 'GLM 5.2 (free)', 'B+', '-', '32k'], // Added (2026-09-15) โ€” verified via live audit
464
+ ['inclusionai/ling-3.0-flash-fin:free', 'Ling 3.0 Flash Fin (free)', 'B', '-', '262k'], // Added (2026-09-15) โ€” verified via live audit
465
+ ['inclusionai/ling-3.0-flash-sante:free', 'Ling 3.0 Flash Sante (free)', 'B', '-', '262k'], // Added (2026-09-15) โ€” verified via live audit
466
+ ['inclusionai/ling-3.0-flash-vl:free', 'Ling 3.0 Flash VL (free)', 'B+', '-', '262k'], // Added (2026-09-15) โ€” verified via live audit
467
+ ['nex-agi/nex-n2.5-mini:free', 'Nex AGI Nex-N2.5-Mini (free)', 'B+', '-', '262k'], // Added (2026-09-15) โ€” verified via live audit
468
+ ['nex-agi/nex-n2.5-pro:free', 'Nex AGI Nex-N2.5-Pro (free)', 'A', '-', '262k'], // Added (2026-09-15) โ€” verified via live audit
426
469
  ]
427
470
 
428
471
  // ๐Ÿ“– LLM7 source - https://api.llm7.io/v1
@@ -436,7 +479,7 @@ export const llm7 = [
436
479
  ['minimax-m2.7', 'MiniMax M2.7', 'S+', '78.0%', '180k'],
437
480
  // โ”€โ”€ A+ tier โ€” SWE-bench Verified 50โ€“60% โ”€โ”€
438
481
  // Removed (2026-09-05): gemini-3.1-flash-lite (Gemini 3.1 Flash Lite) โ€” now tier=pro usage_based_only (paid) per live /v1/models
439
- ['gpt-oss', 'GPT OSS 20B', 'A+', '50.3%', '131k'], // Fixed (2026-09-05): id 'gpt-oss:20b' โ†’ 'gpt-oss', ctx '128k' โ†’ '131k' (live 131072)
482
+ // Removed (2026-09-15): gpt-oss (GPT OSS 20B) โ€” removed from LLM7 API catalog
440
483
  ['mistral-Nemo-Instruct-2407', 'Mistral Nemo 12B Instruct', 'A-', '-', '128k'], // Added (2026-08-13)
441
484
  // โ”€โ”€ A tier โ€” SWE-bench Verified 40โ€“50% โ”€โ”€
442
485
  ['codestral-latest', 'Codestral Latest', 'A', '40.0%', '32k'],
@@ -451,7 +494,7 @@ export const routeway = [
451
494
  // Removed (2026-09-05): step-3.7-flash:free (Step 3.7 Flash) - free variant discontinued, only paid step-3.7-flash remains ($0.20/$1.15 per M)
452
495
  ['minimax-m2.7:free', 'MiniMax M2.7', 'S+', '78.0%', '42k'], // Added (2026-09-02)
453
496
  ['muse-glimmer-30b:free', 'Muse Glimmer 30B', 'B+', '-', '131k'], // Added (2026-09-02)
454
- ['kimi-k2.6:free', 'Kimi K2.6', 'S+', '-', '42k'],
497
+ // Removed (2026-09-15): kimi-k2.6:free (Kimi K2.6) โ€” free variant removed, now paid-only; replacement: minimax-m2.7:free
455
498
  // โ”€โ”€ S tier โ€” SWE-bench Verified 60โ€“70% โ”€โ”€
456
499
  // Removed (2026-09-05): laguna-xs.2:free (Poolside Laguna XS.2) - laguna-xs.2 no longer offered in any form, superseded by paid laguna-s-2.1
457
500
  // Removed (2026-09-05): gpt-oss-120b:free (GPT OSS 120B) - free variant discontinued, only paid gpt-oss-120b remains ($0.04/$0.30 per M)
@@ -480,6 +523,11 @@ export const novita = [
480
523
  // Removed (2026-07-27): qwen/qwen3.5-plus (Qwen3.5 Plus) โ€” no longer in novita catalog
481
524
  ['inclusionai/ling-3.0-flash-fin', 'Ling 3.0 Flash Fin', 'B+', '-', '256k'],
482
525
  ['inclusionai/ling-3.0-flash-sante', 'Ling 3.0 Flash Sante', 'B+', '-', '256k'],
526
+ ['bunny', 'Bunny (free tier)', 'C', '-', '256k'], // Added (2026-09-15) โ€” verified via live audit
527
+ ['qwen/qwen3.6-plus', 'Qwen 3.6 Plus (free tier)', 'A', '-', '1M'], // Added (2026-09-15) โ€” verified via live audit
528
+ ['qwen/qwen3.5-plus', 'Qwen 3.5 Plus (free tier)', 'A-', '-', '1M'], // Added (2026-09-15) โ€” verified via live audit
529
+ ['dev/glm46', 'GLM 4.6 (dev, free)', 'A-', '-', '256k'], // Added (2026-09-15) โ€” verified via live audit
530
+ ['inclusionai/ling-3.0-flash-vl', 'Ling 3.0 Flash VL', 'B+', '-', '256k'], // Added (2026-09-15) โ€” verified via live audit
483
531
  ]
484
532
 
485
533
  // ๐Ÿ“– Pollinations AI source - https://gen.pollinations.ai
@@ -515,7 +563,7 @@ export const pollinations = [
515
563
  // ๐Ÿ“– and still reachable with free-tier rate limits (1000 RPM). Keep only the chat text models here.
516
564
  export const siliconflow = [
517
565
  // โ”€โ”€ A tier โ€” SWE-bench Verified 40โ€“50% โ”€โ”€
518
- ['THUDM/GLM-Z1-9B-0414', 'GLM-Z1 9B', 'A', '-', '131k'],
566
+ ['THUDM/GLM-Z1-9B-0414', 'GLM-Z1 9B', 'A', '-', '131k'], // Fixed (2026-09-15): ctx '131k' โ†’ '32k'
519
567
  ['deepseek-ai/DeepSeek-R1-0528-Qwen3-8B', 'DeepSeek R1 0528 Qwen3 8B', 'A', '-', '131k'],
520
568
  // โ”€โ”€ B+ tier โ”€โ”€
521
569
  ['Qwen/Qwen3-8B', 'Qwen3 8B', 'B+', '30.0%', '131k'],
@@ -523,6 +571,7 @@ export const siliconflow = [
523
571
  ['Qwen/Qwen3.5-4B', 'Qwen3.5 4B', 'A-', '-', '262k'],
524
572
  ['THUDM/GLM-4-9B-0414', 'GLM-4 9B', 'B+', '-', '32k'],
525
573
  ['Qwen/Qwen2.5-7B-Instruct', 'Qwen2.5 7B Instruct', 'B', '-', '32k'],
574
+ ['Qwen/Qwen2.5-Coder-7B-Instruct', 'Qwen2.5 Coder 7B Instruct', 'B+', '-', '32k'], // Added (2026-09-15) โ€” verified via live audit
526
575
  ]
527
576
 
528
577
  // ๐Ÿ“– Requesty source - https://router.requesty.ai/v1
@@ -563,8 +612,10 @@ export const orcarouter = [
563
612
  ['deepseek/deepseek-v4-flash-free', 'DeepSeek V4 Flash (Free)', 'S+', '79.0%', '1M'],
564
613
  // โ”€โ”€ S tier โ€” SWE-bench Verified 60โ€“70% โ”€โ”€
565
614
  ['tencent/hy3-free', 'Tencent Hy3 (Free)', 'S', '-', '256k'],
615
+ ['orcarouter/free', 'OrcaRouter Free (difficulty-routed)', 'S', '-', '-'], // Added (2026-09-15) โ€” verified via live audit
566
616
  // โ”€โ”€ A+ tier โ€” SWE-bench Verified 50โ€“60% โ”€โ”€
567
- ['qwen/qwen3.8-27b-free', 'Qwen3.8 27B (Free)', 'A+', '-', '64k'],
617
+ // Removed (2026-09-15): qwen/qwen3.8-27b-free (Qwen3.8 27B (Free)) โ€” no longer in catalog; only paid variant remains; replacement: z-ai/glm-5.3-flash-free
618
+ ['z-ai/glm-5.3-flash-free', 'GLM-5.3 Flash (Free)', 'A+', '-', '1M'], // Added (2026-09-15) โ€” verified via live audit
568
619
  ]
569
620
 
570
621
  // ๐Ÿ“– Vercel AI Gateway source - https://vercel.com/docs/ai-gateway
@@ -578,11 +629,13 @@ export const orcarouter = [
578
629
  // ๐Ÿ“– which is why this provider is quotaCode 'limited'.
579
630
  export const vercelGateway = [
580
631
  // โ”€โ”€ S+ tier โ€” SWE-bench Verified โ‰ฅ70% โ”€โ”€
581
- ['minimax/minimax-m3-free', 'MiniMax M3 (Free)', 'S+', '78.4%', '1M'], // score mirrors minimax-m3 (ollama-cloud, measured 2026-07-27)
582
- ['minimax/minimax-m2.7-free', 'MiniMax M2.7 (Free)', 'S+', '78.0%', '196k'], // score mirrors minimax-m2.7 (ollama-cloud, measured 2026-07-27)
632
+ // Removed (2026-09-15): minimax/minimax-m3-free (MiniMax M3 (Free)) โ€” free variant removed, now paid-only
633
+ // Removed (2026-09-15): minimax/minimax-m2.7-free (MiniMax M2.7 (Free)) โ€” free variant removed, now paid-only
583
634
  ['poolside/laguna-s-2.1-free', 'Laguna S 2.1 (Free)', 'S+', '-', '256k'], // tier follows family precedent: laguna-xs-2.1 ships S+ 70.9% via NVIDIA. Caution: models.dev flags laguna-s-2.1 deprecated (2026-09-05, Zen promo ended) but Vercel still serves the $0 variant live - re-verify at next audit
584
635
  // โ”€โ”€ B+ tier โ€” vertical-tuned lightweight (coding secondary) โ”€โ”€
585
636
  ['inclusionai/ling-3.0-flash-fin-free', 'Ling 3.0 Flash Fin (Free)', 'B+', '-', '256k'], // 124B MoE (5.1B active), finance-tuned, retains coding + math
637
+ ['inclusionai/ling-3.0-flash-sante-free', 'Ling 3.0 Flash Sante (Free)', 'B+', '-', '256k'], // Added (2026-09-15) โ€” verified via live audit
638
+ ['inclusionai/ling-3.0-flash-vl-free', 'Ling 3.0 Flash VL (Free)', 'C', '-', '256k'], // Added (2026-09-15) โ€” verified via live audit
586
639
  ]
587
640
 
588
641
  // ๐Ÿ“– Ollama Cloud source - https://ollama.com/pricing and https://ollama.com/search?c=cloud
@@ -600,6 +653,7 @@ export const ollamaCloud = [
600
653
  ['deepseek-v4-flash:0731', 'DeepSeek V4 Flash', 'S+', '79.0%', '1M'], // Fixed (2026-08-23): ID 'deepseek-v4-flash' โ†’ 'deepseek-v4-flash:0731' (renamed upstream)
601
654
  ['deepseek-v4-pro:0813', 'DeepSeek V4 Pro', 'S+', '80.6%', '1M'], // Fixed (2026-08-23): ID 'deepseek-v4-pro' โ†’ 'deepseek-v4-pro:0813' (renamed upstream)
602
655
  ['glm-5.3', 'GLM 5.3', 'S+', '-', '1M'],
656
+ ['deepseek-v4.1-flash', 'DeepSeek V4.1 Flash', 'S+', '-', '1M'], // Added (2026-09-15) โ€” verified via live audit
603
657
  // โ”€โ”€ S tier โ€” SWE-bench Verified 60โ€“70% โ”€โ”€
604
658
  ['kimi-k2.7-code', 'Kimi K2.7 Code', 'S', '60.4%', '256k'], // Fixed (2026-07-27): ctx '262k' โ†’ '256k'
605
659
  ['gpt-oss:120b', 'GPT OSS 120B', 'S', '62.4%', '128k'],