free-coding-models 0.3.55 โ†’ 0.3.57

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.
Files changed (75) hide show
  1. package/CHANGELOG.md +55 -56
  2. package/README.md +214 -160
  3. package/bin/free-coding-models.js +46 -0
  4. package/package.json +2 -2
  5. package/sources.js +134 -310
  6. package/src/analysis.js +23 -10
  7. package/src/app.js +66 -27
  8. package/src/cache.js +1 -1
  9. package/src/cli-help.js +9 -0
  10. package/src/command-palette.js +15 -13
  11. package/src/config.js +201 -35
  12. package/src/constants.js +4 -4
  13. package/src/endpoint-installer.js +45 -1
  14. package/src/favorites.js +22 -0
  15. package/src/graphify-out/cache/089db1c1def873cf6d112f1590da4490e61e691aff0db41e006aa2fb15ba0656.json +1 -0
  16. package/src/graphify-out/cache/0b510b53cf1a1393fb52b1fc3bbbf88b63938e961ec5b82119a2e9715fee8bd7.json +1 -0
  17. package/src/graphify-out/cache/0ec9a95a326bde58e0316889018b278062d06d494d0f31ba177c9de71e5fed2d.json +1 -0
  18. package/src/graphify-out/cache/1548663a24a68dce740ebab1bd1d3091048c9604e9d067a1650a42a6d82541d4.json +1 -0
  19. package/src/graphify-out/cache/1783af63cb6d0dfb4d469009f71ac83a74ba0b33d48186ff2c6e63f9429e900a.json +1 -0
  20. package/src/graphify-out/cache/1e109f5eb5dc4fd285871c3613e32b6b14a8c225f4080ee34b51c7e1a1764571.json +1 -0
  21. package/src/graphify-out/cache/1eb24dbeb69b46c8bc1caf925df2f2a964af0f33aea143adf8ddf88e017db6ca.json +1 -0
  22. package/src/graphify-out/cache/21e1bcfed11685e8347243f9d8516072dda183266a4bfe22c52fb31753a446c8.json +1 -0
  23. package/src/graphify-out/cache/2327473478b9c4b1940bf7ef66c9ee960b3cba8d5302e56b625df8274246e0b4.json +1 -0
  24. package/src/graphify-out/cache/25955b81fd25454c8fa90fb71a47db8d1215cf621beb8ff3cbd580aaf011b4f3.json +1 -0
  25. package/src/graphify-out/cache/2739677f19c702f88f3de0a0bac475066adbda98709907ad3de967aef689f86d.json +1 -0
  26. package/src/graphify-out/cache/2bba03422f6b3ee7f5b5d29cc90314a064d259e5822a176657bda3e04505cf00.json +1 -0
  27. package/src/graphify-out/cache/2ddf1d2c6d10147b0402446bc71a7988187b79b6210dd7e7250be8c555b9ff35.json +1 -0
  28. package/src/graphify-out/cache/2ee07457a5767c95a57f8e9eb95b28f800044f35666e0715e9d88ad1103a092e.json +1 -0
  29. package/src/graphify-out/cache/2fe9f75dc2951c417f2c8dd22749092cf550dc67599f1c8d1866900dc6e9154e.json +1 -0
  30. package/src/graphify-out/cache/41c4b7c27e7fc3e2948d3a4bf95a72de2ed9a6f0463994babdce8ed2cc84598c.json +1 -0
  31. package/src/graphify-out/cache/5028defd54b7fbd3c7e444973e493de036e097e9b1d2a7cae7f19b88d68aacde.json +1 -0
  32. package/src/graphify-out/cache/5b133aba3fb16410c5b1fdbd1730039fc7fa1ac93abd99d7be08f60da70fc8d4.json +1 -0
  33. package/src/graphify-out/cache/74252e5b0978d85ab3421a3de1a9384aa282ffd2be2cfe7db2530139089f4275.json +1 -0
  34. package/src/graphify-out/cache/7695ebeea056095edd14332963cc43354ef3a097caf46f1e28d0f01369642901.json +1 -0
  35. package/src/graphify-out/cache/777aa7085c395a935c6556bbde182cd871edb61f3a685ed8068ec0c8f6fb0075.json +1 -0
  36. package/src/graphify-out/cache/82a723881980e82273c113def8315533d7da28827e300413d9ad30f27b7407df.json +1 -0
  37. package/src/graphify-out/cache/86b87c9603e6cd188f42c7eed3b86c291d48a781c223a707e74f3e7ed0c02a21.json +1 -0
  38. package/src/graphify-out/cache/890fead9a78cadaed560a2d2453916121fa605c3e43a334910ac4bc951a9ef6d.json +1 -0
  39. package/src/graphify-out/cache/89d3ea66f52783caa775ef9a30923d7d6225e1d8ae9e962f4741b8c7785dab1e.json +1 -0
  40. package/src/graphify-out/cache/8cc82cd9edce41f0e1c092f14a94fd52bf847addf3237b616dc5a9e505bd05bd.json +1 -0
  41. package/src/graphify-out/cache/93ba2e25e3ff7ad525f397902345fbd375df7315de7b402e20cc803c14eccde8.json +1 -0
  42. package/src/graphify-out/cache/99beed29580b9c7bfecfee794cb3d8e535fcf0eb3b92113108f88bdd0a8e79b3.json +1 -0
  43. package/src/graphify-out/cache/aeeb931fa477c65ce2e51d8149957350fa54225c613222bbbe8448998d1afd3d.json +1 -0
  44. package/src/graphify-out/cache/baf91bef5b5ecb2a476433b6cc0c48c563c54ee2d07fc3c192e543685e3e7222.json +1 -0
  45. package/src/graphify-out/cache/bd98b94ac4e9b92b6336d47b26e0366b51a4eaf0711d722f05f98dfae23ab42b.json +1 -0
  46. package/src/graphify-out/cache/bfcb51e9328e9cbfbee4f6fee0f56635d7b03488addc9f6c4e4b190b70a73362.json +1 -0
  47. package/src/graphify-out/cache/c0d3dabeb093aa758c49eadf41b87ecc96a16c1449c2670aaf48cbfc891d8da6.json +1 -0
  48. package/src/graphify-out/cache/c20d6630236f473c1406068c3ae205853e649b216495c93dfec055dd222c55cf.json +1 -0
  49. package/src/graphify-out/cache/c22b9122816bebce0a2f79af41a986559d01e00163dbcd579c5755621b4cb483.json +1 -0
  50. package/src/graphify-out/cache/ca556ec14453ddb8f9e0c5a832dac90d77111b9bad5f8c2d80d272e2e7a06371.json +1 -0
  51. package/src/graphify-out/cache/d6dbc9135dfa35a756b3b09b06700e4bc229fdccba11bb963f2ba44028e0bbae.json +1 -0
  52. package/src/graphify-out/cache/e1cf71276f1779d0fa075f79bd7c8a9fd0b8eef6932ac043137451b7c7fa7cbe.json +1 -0
  53. package/src/graphify-out/cache/e4b3be14494467df2d2ed389bc4f18f099021cb5bc355b901fa88387b2d8b8a2.json +1 -0
  54. package/src/graphify-out/cache/eaea0dded097f6f9553b654220046c6ec0c9be592a5973d906564ee60af34e0d.json +1 -0
  55. package/src/graphify-out/cache/ef07d0cd2675d1f79d2a2fdbf3bc3319687638751e9ce89b0d0d97ed1cd9f7e1.json +1 -0
  56. package/src/graphify-out/cache/f81272d6eb8aaff9e96d5a1d9f06777db70ac3652a646b951ded51f79871d733.json +1 -0
  57. package/src/graphify-out/cache/f9619dd92186f75a6dbda937e0c606647153918524cdb5763f956e6ec2a9e386.json +1 -0
  58. package/src/graphify-out/cache/fd88b1b2ff4bfcae08559d9c2aaeeb9a3f1e2f5cd8928762c311196956c170a5.json +1 -0
  59. package/src/key-handler.js +322 -114
  60. package/src/kilo.js +20 -1
  61. package/src/opencode.js +23 -2
  62. package/src/overlays.js +199 -98
  63. package/src/provider-metadata.js +26 -17
  64. package/src/quota-capabilities.js +6 -10
  65. package/src/render-helpers.js +38 -8
  66. package/src/render-table.js +119 -248
  67. package/src/router-daemon.js +1986 -0
  68. package/src/router-dashboard.js +902 -0
  69. package/src/sync-set.js +479 -0
  70. package/src/theme.js +4 -0
  71. package/src/tool-launchers.js +1 -0
  72. package/src/tool-metadata.js +6 -2
  73. package/src/utils.js +30 -6
  74. package/web/dist/assets/{index-C03JjCgA.js โ†’ index-DKHCzbK1.js} +2 -2
  75. package/web/dist/index.html +1 -1
package/README.md CHANGED
@@ -2,12 +2,12 @@
2
2
  <img src="https://img.shields.io/npm/v/free-coding-models?color=76b900&label=npm&logo=npm" alt="npm version">
3
3
  <img src="https://img.shields.io/node/v/free-coding-models?color=76b900&logo=node.js" alt="node version">
4
4
  <img src="https://img.shields.io/npm/l/free-coding-models?color=76b900" alt="license">
5
- <img src="https://img.shields.io/badge/models-238-76b900?logo=nvidia" alt="models count">
6
- <img src="https://img.shields.io/badge/providers-25-blue" alt="providers count">
7
- <br>
8
- <img src="https://img.shields.io/badge/dependencies-1-76b900?logo=npm" alt="1 dependency">
9
- <img src="https://img.shields.io/badge/provenance-sigstore-blueviolet?logo=signstore" alt="npm provenance">
10
- <img src="https://img.shields.io/badge/supply_chain-verified-brightgreen" alt="supply chain verified">
5
+ <img src="https://img.shields.io/badge/models-170+-76b900?logo=nvidia" alt="models count">
6
+ <img src="https://img.shields.io/badge/providers-16-blue" alt="providers count">
7
+ </p>
8
+
9
+ <p align="center">
10
+ <img src="logo.webp" alt="free-coding-models logo" width="128">
11
11
  </p>
12
12
 
13
13
  <h1 align="center">free-coding-models</h1>
@@ -16,7 +16,7 @@
16
16
 
17
17
  <p align="center">
18
18
  <strong>Find the fastest free coding model in seconds</strong><br>
19
- <sub>Ping 238 models across 25 AI Free providers in real-time </sub><br> <sub> Install Free API endpoints to your favorite AI coding tool: <br>๐Ÿ“ฆ OpenCode, ๐Ÿ“ฆ OpenCode Desktop, ๐Ÿ“ฆ OpenCode WebUI, ๐Ÿฆž OpenClaw, ๐Ÿ’˜ Crush, ๐Ÿชฟ Goose, ๐Ÿ›  Aider, โšก๏ธ Kilo CLI, ๐Ÿ‰ Qwen Code, ๐Ÿคฒ OpenHands, โšก Amp, ๐Ÿ”ฎ Hermes, โ–ถ๏ธ Continue, ๐Ÿง  Cline, ๐Ÿ› ๏ธ Xcode, ฯ€ Pi, ๐Ÿฆ˜ Rovo or โ™Š Gemini in one keystroke</sub>
19
+ <sub>Track ~170 models across ~15 vetted free or free-limited AI providers in real time</sub><br> <sub> Install Free API endpoints to your favorite AI coding tool: <br>๐Ÿ“ฆ OpenCode, ๐Ÿ“ฆ OpenCode Desktop, ๐Ÿ“ฆ OpenCode WebUI, ๐Ÿฆž OpenClaw, ๐Ÿ’˜ Crush, ๐Ÿชฟ Goose, ๐Ÿ›  Aider, โšก๏ธ Kilo CLI, ๐Ÿ‰ Qwen Code, ๐Ÿคฒ OpenHands, โšก Amp, ๐Ÿ”ฎ Hermes, โ–ถ๏ธ Continue, ๐Ÿง  Cline, ๐Ÿ› ๏ธ Xcode, ฯ€ Pi, ๐Ÿฆ˜ Rovo or โ™Š Gemini in one keystroke</sub>
20
20
  </p>
21
21
 
22
22
 
@@ -36,7 +36,6 @@ create a free account on one of the [providers](#-list-of-free-ai-providers)
36
36
  <a href="#-why-this-tool">๐Ÿ’ก Why</a> โ€ข
37
37
  <a href="#-quick-start">โšก Quick Start</a> โ€ข
38
38
  <a href="#-list-of-free-ai-providers">๐ŸŸข Providers</a> โ€ข
39
- <a href="#-other-free-ai-resources">๐Ÿ†“ Other Free AI Resources</a> โ€ข
40
39
  <a href="#-usage">๐Ÿš€ Usage</a> โ€ข
41
40
  <a href="#-tui-keys">โŒจ๏ธ TUI Keys</a> โ€ข
42
41
  <a href="#-features">โœจ Features</a> โ€ข
@@ -44,14 +43,17 @@ create a free account on one of the [providers](#-list-of-free-ai-providers)
44
43
  <a href="#๏ธ-model-licensing--commercial-use">โš–๏ธ Licensing</a> โ€ข
45
44
  <a href="#-telemetry">๐Ÿ“Š Telemetry</a> โ€ข
46
45
  <a href="#๏ธ-security--trust">๐Ÿ›ก๏ธ Security</a> โ€ข
47
- <a href="#-support">๐Ÿ“ง Support</a> โ€ข
48
- <a href="#-license">๐Ÿ“„ License</a>
46
+ <a href="#-other-free-ai-resources">๐Ÿ†“ Other Free AI Resources</a>
49
47
  </p>
50
48
 
51
49
  <p align="center">
52
50
  <img src="demo.gif" alt="free-coding-models demo" width="100%">
53
51
  </p>
54
52
 
53
+ <p align="center">
54
+ <a href="https://discord.gg/ZTNFHvvCkU"><img src="https://img.shields.io/badge/Discord-Join%20the%20community-5865F2?logo=discord&logoColor=white&style=for-the-badge" alt="Join our Discord"></a>
55
+ </p>
56
+
55
57
  <p align="center">
56
58
  <sub>Made with โค๏ธ and โ˜• by <a href="https://vanessadepraute.dev">Vanessa Depraute</a> (aka <a href="https://vavanessa.dev">Vava-Nessa</a>)</sub>
57
59
  </p>
@@ -60,7 +62,7 @@ create a free account on one of the [providers](#-list-of-free-ai-providers)
60
62
 
61
63
  ## ๐Ÿ’ก Why this tool?
62
64
 
63
- There are **238+ free coding models** scattered across 25 providers. Which one is fastest right now? Which one is actually stable versus just lucky on the last ping?
65
+ There are **~170 cataloged free or free-limited coding models** across ~15 vetted providers. Which one is fastest right now? Which one is actually stable versus just lucky on the last ping?
64
66
 
65
67
  This CLI pings them all in parallel, shows live latency, and calculates a **live Stability Score (0-100)**. Average latency alone is misleading if a model randomly spikes to 6 seconds; the stability score measures true reliability by combining **p95 latency** (30%), **jitter/variance** (30%), **spike rate** (20%), and **uptime** (20%).
66
68
 
@@ -74,113 +76,30 @@ It then writes the model you pick directly into your coding tool's config โ€” so
74
76
 
75
77
  Create a free account on one provider below to get started:
76
78
 
77
- **238 coding models** across 25 providers, ranked by free tier generosity.
79
+ **~170 coding models** across ~15 active providers, ranked by practical free-tier usefulness.
78
80
 
79
81
  | # | Provider | Models | Tier range | Free tier | Env var |
80
82
  |---|----------|--------|-----------|-----------|--------|
81
- | 1 | [NVIDIA NIM](https://build.nvidia.com) | 46 | S+ โ†’ C | ~40 RPM (no credit card) | `NVIDIA_API_KEY` |
83
+ | 1 | [NVIDIA NIM](https://build.nvidia.com) | 42 | S+ โ†’ C | ~40 RPM (no credit card) | `NVIDIA_API_KEY` |
82
84
  | 2 | [Groq](https://console.groq.com/keys) | 8 | S โ†’ B | 30 RPM, 1Kโ€‘14.4K req/day (no credit card) | `GROQ_API_KEY` |
83
85
  | 3 | [Cerebras](https://cloud.cerebras.ai) | 4 | S+ โ†’ B | 30 RPM, 1M tokens/day (no credit card) | `CEREBRAS_API_KEY` |
84
- | 4 | [Google AI Studio](https://aistudio.google.com/apikey) | 6 | B+ โ†’ C | 15โ€‘60 RPM, 250โ€‘1.5K req/day (no credit card) | `GOOGLE_API_KEY` |
85
- | 5 | [Cloudflare Workers AI](https://dash.cloudflare.com) | 15 | S โ†’ B | 10K neurons/day, 300 RPM (no credit card) | `CLOUDFLARE_API_TOKEN` + `CLOUDFLARE_ACCOUNT_ID` |
86
- | 6 | [OpenRouter](https://openrouter.ai/keys) | 25 | S+ โ†’ C | 50 req/day free, 1K/day with $10 spend | `OPENROUTER_API_KEY` |
87
- | 7 | [DeepInfra](https://deepinfra.com/login) | 4 | A- โ†’ B+ | 200 concurrent requests (no credit card) | `DEEPINFRA_API_KEY` |
88
- | 8 | [Hugging Face](https://huggingface.com/settings/tokens) | 2 | S โ†’ B | ~$0.10/month free credits | `HUGGINGFACE_API_KEY` |
89
- | 9 | [Perplexity API](https://www.perplexity.ai/settings/api) | 4 | A+ โ†’ B | ~50 RPM (tiered by spend) | `PERPLEXITY_API_KEY` |
90
- | 10 | [SambaNova](https://sambanova.ai/developers) | 13 | S+ โ†’ B | Dev tier generous quota (no credit card) | `SAMBANOVA_API_KEY` |
91
- | 11 | [Fireworks AI](https://fireworks.ai) | 4 | S โ†’ B+ | $1 free credits, 10 RPM without payment | `FIREWORKS_API_KEY` |
92
- | 12 | [Hyperbolic](https://app.hyperbolic.ai/settings) | 13 | S+ โ†’ A- | $1 free credits (permanent) | `HYPERBOLIC_API_KEY` |
93
- | 13 | [OVHcloud AI Endpoints](https://endpoints.ai.cloud.ovh.net) | 8 | S โ†’ B | 2 req/min/IP free, 400 RPM with key | `OVH_AI_ENDPOINTS_ACCESS_TOKEN` |
94
- | 14 | [Replicate](https://replicate.com/account/api-tokens) | 2 | A- โ†’ B | 6 req/min free, 3K RPM with payment | `REPLICATE_API_TOKEN` |
95
- | 15 | [Codestral](https://codestral.mistral.ai) | 1 | B+ | 30 RPM, 2K req/day (no credit card) | `CODESTRAL_API_KEY` |
96
- | 16 | [ZAI](https://z.ai) | 7 | S+ โ†’ S | Generous free quota (concurrency limited) | `ZAI_API_KEY` |
97
- | 17 | [Scaleway](https://console.scaleway.com/iam/api-keys) | 10 | S+ โ†’ B+ | 1M free tokens (permanent) | `SCALEWAY_API_KEY` |
98
- | 18 | [Alibaba DashScope](https://modelstudio.console.alibabacloud.com) | 11 | S+ โ†’ A | 1M free tokens/model (90 days) | `DASHSCOPE_API_KEY` |
99
- | 19 | [SiliconFlow](https://cloud.siliconflow.cn/account/ak) | 6 | S+ โ†’ A | 100 req/day + $1 free credits | `SILICONFLOW_API_KEY` |
100
- | 20 | [Rovo Dev CLI](https://www.atlassian.com/rovo) | 5 | S+ | 5M tokens/day (beta) | CLI tool ๐Ÿฆ˜ |
101
- | 21 | [Gemini CLI](https://github.com/google-gemini/gemini-cli) | 3 | S+ โ†’ A+ | 1,000 req/day (no credit card) | CLI tool โ™Š |
102
- | 22 | [Chutes AI](https://chutes.ai) | 4 | S โ†’ A | Free community GPU (no credit card) | `CHUTES_API_KEY` |
103
- | 23 | [OpenCode Zen](https://opencode.ai/zen) | 7 | S+ โ†’ A+ | Free with OpenCode account | Zen models โœจ |
104
- | 24 | [Together AI](https://api.together.ai/settings/api-keys) | 19 | S+ โ†’ A- | โŒ No free tier โ€” requires $5 purchase | `TOGETHER_API_KEY` |
105
- | 25 | [iFlow โš ๏ธ](https://platform.iflow.cn) | 11 | S+ โ†’ A+ | Shutting down April 17, 2026 | `IFLOW_API_KEY` |
86
+ | 4 | [Google AI Studio](https://aistudio.google.com/apikey) | 6 | S+ โ†’ A | Gemini free quotas vary by model/region | `GOOGLE_API_KEY` |
87
+ | 5 | [GitHub Models](https://models.github.ai) | 15 | S+ โ†’ C | Quota depends on GitHub/Copilot tier | `GITHUB_TOKEN` |
88
+ | 6 | [Mistral La Plateforme](https://console.mistral.ai/api-keys) | 7 | S+ โ†’ A | Experiment plan, free evaluation tier | `MISTRAL_API_KEY` |
89
+ | 7 | [Cloudflare Workers AI](https://dash.cloudflare.com) | 15 | S+ โ†’ B | 10K neurons/day, 300 RPM (no credit card) | `CLOUDFLARE_API_TOKEN` + `CLOUDFLARE_ACCOUNT_ID` |
90
+ | 8 | [OpenRouter](https://openrouter.ai/keys) | 31 | S+ โ†’ C | 50 req/day free, 1K/day with $10 spend | `OPENROUTER_API_KEY` |
91
+ | 9 | [SambaNova](https://cloud.sambanova.ai/apis) | 6 | S+ โ†’ A- | Small developer quota, useful for light usage | `SAMBANOVA_API_KEY` |
92
+ | 10 | [OVHcloud AI Endpoints](https://endpoints.ai.cloud.ovh.net) | 10 | S โ†’ B | 2 req/min/IP free, 400 RPM with key | `OVH_AI_ENDPOINTS_ACCESS_TOKEN` |
93
+ | 11 | [Codestral](https://console.mistral.ai/api-keys) | 1 | B+ | 30 RPM, 2K req/day | `MISTRAL_API_KEY` |
94
+ | 12 | [ZAI](https://z.ai) | 2 | S | Free Flash models only | `ZAI_API_KEY` |
95
+ | 13 | [Scaleway](https://console.scaleway.com/iam/api-keys) | 10 | S+ โ†’ B | 1M free tokens | `SCALEWAY_API_KEY` |
96
+ | 14 | [Alibaba DashScope](https://modelstudio.console.alibabacloud.com) | 9 | S+ โ†’ A | 1M free tokens/model, Singapore, 90 days | `DASHSCOPE_API_KEY` |
97
+ | 15 | [Gemini CLI](https://github.com/google-gemini/gemini-cli) | 6 | S+ โ†’ A | 1,000 req/day with personal Google account | CLI tool โ™Š |
98
+ | 16 | [OpenCode Zen](https://opencode.ai/zen) | 8 | S+ โ†’ A | Free with OpenCode account | Zen models โœจ |
106
99
 
107
100
  > ๐Ÿ’ก One key is enough. Add more at any time with **`P`** inside the TUI.
108
101
 
109
- ---
110
-
111
- ## ๐Ÿ†“ Other Free AI Resources
112
-
113
- **Curated free resources outside the CLI** โ€” IDE extensions, coding agents, GitHub lists, and trial credits.
114
-
115
- ### ๐Ÿ“š Awesome Lists (curated by the community)
116
-
117
- | Resource | What it is |
118
- |----------|------------|
119
- | [cheahjs/free-llm-api-resources](https://github.com/cheahjs/free-llm-api-resources) (18.4k โญ) | Comprehensive list of free LLM API providers with rate limits |
120
- | [mnfst/awesome-free-llm-apis](https://github.com/mnfst/awesome-free-llm-apis) (2.1k โญ) | Permanent free LLM API tiers organized by provider |
121
- | [inmve/free-ai-coding](https://github.com/inmve/free-ai-coding) (648 โญ) | Pro-grade AI coding tools side-by-side โ€” limits, models, CC requirements |
122
- | [amardeeplakshkar/awesome-free-llm-apis](https://github.com/amardeeplakshkar/awesome-free-llm-apis) | Additional free LLM API resources |
123
-
124
- ### ๐Ÿ–ฅ๏ธ AI-Powered IDEs with Free Tiers
125
-
126
- | IDE | Free tier | Credit card |
127
- |-----|-----------|-------------|
128
- | [Qwen Code](https://github.com/QwenLM/qwen-code) | 2,000 requests/day | No |
129
- | [Rovo Dev CLI](https://www.atlassian.com/rovo) | 5M tokens/day (beta) | No |
130
- | [Gemini CLI](https://github.com/google-gemini/gemini-cli) | 100โ€“250 requests/day | No |
131
- | [Jules](https://jules.google/) | 15 tasks/day | No |
132
- | [AWS Kiro](https://kiro.dev/) | 50 credits/month | No |
133
- | [Trae](https://trae.ai/) | 10 fast + 50 slow requests/month | No |
134
- | [Codeium](https://codeium.com/) | Unlimited forever, basic models | No |
135
- | [JetBrains AI Assistant](https://www.jetbrains.com/ai/) | Unlimited completions + local models | No |
136
- | [Continue.dev](https://www.continue.dev/) | Free VS Code/JetBrains extension, local models via Ollama | No |
137
- | [Warp](https://warp.dev/) | 150 credits/month (first 2 months), then 75/month | No |
138
- | [Amazon Q Developer](https://aws.amazon.com/q/developer/) | 50 agentic requests/month | Required |
139
- | [Windsurf](https://windsurf.com/) | 25 prompt credits/month | Required |
140
- | [Kilo Code](https://kilocode.ai/) | Up to $25 signup credits (one-time) | Required |
141
- | [Tabnine](https://www.tabnine.com/) | Basic completions + chat (limited) | Required |
142
- | [SuperMaven](https://supermaven.com/) | Basic suggestions, 1M token context | Required |
143
-
144
- ### ๐Ÿ”‘ API Providers with Permanent Free Tiers
145
-
146
- | Provider | Free limits | Notable models |
147
- |----------|-------------|----------------|
148
- | [OpenRouter](https://openrouter.ai/keys) | 50 req/day, 1K/day with $10 purchase | Qwen3-Coder, Llama 3.3 70B, Gemma 3 |
149
- | [Google AI Studio](https://aistudio.google.com/apikey) | 5โ€“500 req/day (varies by model) | Gemini 2.5 Flash, Gemma 3 |
150
- | [NVIDIA NIM](https://build.nvidia.com) | 40 RPM | Llama 3.3 70B, Mistral Large, Qwen3 235B |
151
- | [Groq](https://console.groq.com/keys) | 1Kโ€“14.4K req/day (model-dependent) | Llama 3.3 70B, Llama 4 Scout, Kimi K2 |
152
- | [Cerebras](https://cloud.cerebras.ai/) | 30 RPM, 1M tokens/day | Qwen3-235B, Llama 3.1 70B, GPT-OSS 120B |
153
- | [Cohere](https://cohere.com/) | 20 RPM, 1K/month | Command R+, Aya Expanse 32B |
154
- | [Mistral La Plateforme](https://console.mistral.ai/) | 1 req/s, 1B tokens/month | Mistral Large 3, Small 3.1 |
155
- | [Cloudflare Workers AI](https://dash.cloudflare.com) | 10K neurons/day | Llama 3.3 70B, QwQ 32B, 47+ models |
156
- | [GitHub Models](https://github.com/marketplace/models) | Depends on Copilot tier | GPT-4o, DeepSeek-R1, Llama 3.3 |
157
- | [SiliconFlow](https://cloud.siliconflow.cn/account/ak) | 1K RPM, 50K TPM | Qwen3-8B, DeepSeek-R1, GLM-4.1V |
158
- | [HuggingFace](https://huggingface.com/settings/tokens) | ~$0.10/month credits | Llama 3.3 70B, Qwen2.5 72B |
159
-
160
- ### ๐Ÿ’ฐ Providers with Trial Credits
161
-
162
- | Provider | Credits | Duration |
163
- |----------|---------|----------|
164
- | [Hyperbolic](https://app.hyperbolic.ai/) | $1 free | Permanent |
165
- | [Fireworks](https://fireworks.ai/) | $1 | Permanent |
166
- | [Nebius](https://tokenfactory.nebius.com/) | $1 | Permanent |
167
- | [SambaNova Cloud](https://cloud.sambanova.ai/) | $5 | 3 months |
168
- | [AI21](https://studio.ai21.com/) | $10 | 3 months |
169
- | [Upstage](https://console.upstage.ai/) | $10 | 3 months |
170
- | [NLP Cloud](https://nlpcloud.com/home) | $15 | Permanent |
171
- | [Alibaba DashScope](https://bailian.console.alibabacloud.com/) | 1M tokens/model | 90 days |
172
- | [Scaleway](https://console.scaleway.com/generative-api/models) | 1M tokens | Permanent |
173
- | [Modal](https://modal.com) | $5/month | Monthly |
174
- | [Inference.net](https://inference.net) | $1 (+ $25 on survey) | Permanent |
175
- | [Novita](https://novita.ai/) | $0.5 | 1 year |
176
-
177
- ### ๐ŸŽ“ Free with Education/Developer Programs
178
-
179
- | Program | What you get |
180
- |---------|--------------|
181
- | [GitHub Student Pack](https://education.github.com/pack) | Free Copilot Pro for students (verify with .edu email) |
182
- | [GitHub Copilot Free](https://code.visualstudio.com/blogs/2024/12/18/free-github-copilot) | 50 chat + 2,000 completions/month in VS Code |
183
- | [Copilot Pro for teachers/maintainers](https://docs.github.com/en/copilot/how-tos/manage-your-account/get-free-access-to-copilot-pro) | Free Copilot Pro for open source maintainers & educators |
102
+ > ๐Ÿงน Audit cleanup: `iFlow` was removed because it shut down on April 17, 2026. `Together AI`, `Perplexity API`, `DeepInfra`, `Replicate`, `Fireworks`, `Hyperbolic`, `Hugging Face`, `SiliconFlow`, `Chutes AI`, and `Rovo` were removed from the active free catalog because they are paid, trial-credit only, too tiny to be useful, unclear as a stable free API, or tool-specific rather than a generally usable free provider.
184
103
 
185
104
  ---
186
105
 
@@ -244,6 +163,10 @@ free-coding-models --origin nvidia --tier S
244
163
  # "I want the local web dashboard"
245
164
  free-coding-models --web
246
165
 
166
+ # "I want one local endpoint that fails over between free models"
167
+ free-coding-models --daemon-bg
168
+ free-coding-models --daemon-status
169
+
247
170
  # "Start with an elite-focused preset, then adjust filters live"
248
171
  free-coding-models --premium
249
172
 
@@ -256,6 +179,57 @@ free-coding-models --openclaw --origin groq
256
179
 
257
180
  When launching the web dashboard, `free-coding-models` prefers `http://localhost:3333`. If that port is already used by another app, it now auto-picks the next free local port and prints the exact URL to open.
258
181
 
182
+ ### Smart Model Router
183
+
184
+ The **FCM Router** is a local OpenAI-compatible daemon that keeps running after the TUI closes. Point your coding tool at one localhost endpoint and let FCM route each request to the best available model in your active set.
185
+
186
+ ```bash
187
+ # Start the router in the background
188
+ free-coding-models --daemon-bg
189
+
190
+ # Check the active port, set, model count, uptime, and request totals
191
+ free-coding-models --daemon-status
192
+
193
+ # Stop it cleanly
194
+ free-coding-models --daemon-stop
195
+
196
+ # Auto-discover and live-probe models into a named set
197
+ free-coding-models --sync-set
198
+ free-coding-models --sync-set my-coding-set
199
+ ```
200
+
201
+ Configure tools with:
202
+
203
+ | Field | Value |
204
+ |-------|-------|
205
+ | Base URL | `http://localhost:19280/v1` |
206
+ | Model | `fcm` |
207
+ | API key | `fcm-local` |
208
+
209
+ The daemon auto-creates a `fast-coding` set from your configured providers on first start. It stores router settings in `~/.free-coding-models.json`, writes lifecycle logs to `~/.free-coding-models-daemon.log`, and tracks token metadata in `~/.free-coding-models-tokens.json`.
210
+
211
+ Router endpoints:
212
+
213
+ | Endpoint | Purpose |
214
+ |----------|---------|
215
+ | `POST /v1/chat/completions` | Route through the active set |
216
+ | `POST /v1/sets/:name/chat/completions` | Route through a named set |
217
+ | `GET /v1/models` | Return virtual models (`fcm`, `fcm:set-name`) |
218
+ | `GET /health` | Daemon status JSON |
219
+ | `GET /stats` | Routing, health, request log, and token stats |
220
+ | `GET /stream/events` | Live SSE events for dashboard updates |
221
+ | `POST /daemon/probe-mode` | Set probe mode with `{ "probeMode": "eco" | "balanced" | "aggressive" }` |
222
+
223
+ Routing behavior:
224
+
225
+ - Priority order works immediately on cold start, then probes refine health scores over time.
226
+ - Transient failures (`429`, `500`, `502`, `503`, timeouts) fail over to the next model.
227
+ - Authentication problems (`401`, `403`, missing keys) are marked separately so bad credentials do not poison the circuit breaker; after one provider returns an auth error, the router skips the rest of that provider for the current request.
228
+ - Upstream HTML maintenance pages and malformed successful JSON are treated as retryable provider failures instead of being forwarded to your coding tool.
229
+ - Quota and rate-limit failures include retry headers in the final router `503` payload when providers expose them.
230
+ - If a coding tool disconnects mid-request, the daemon aborts the upstream request without counting it as a provider failure.
231
+ - Streaming requests retry before the first byte; after partial output starts, the daemon records the failure and lets the current stream finish as safely as possible.
232
+
259
233
  ### Tool launcher flags
260
234
 
261
235
  | Flag | Launches |
@@ -286,8 +260,8 @@ Press **`Z`** in the TUI to cycle between tools without restarting.
286
260
  **๐Ÿฆ˜ Rovo Dev CLI**
287
261
  - Provider: [Atlassian Rovo](https://www.atlassian.com/rovo)
288
262
  - Install: [Installation Guide](https://support.atlassian.com/rovo/docs/install-and-run-rovo-dev-cli-on-your-device/)
289
- - Free tier: 5M tokens/day (beta, requires Atlassian account)
290
- - Model: Claude Sonnet 4 (72.7% SWE-bench)
263
+ - Free tier: conditional Atlassian/Rovo allowance, not a general free API provider
264
+ - Catalog status: not included in the active free-provider table because access depends on Rovo availability for your account/site
291
265
  - Launch: `free-coding-models --rovo` or press `Z` until Rovo mode
292
266
  - Features: Jira/Confluence integration, MCP server support
293
267
 
@@ -295,7 +269,7 @@ Press **`Z`** in the TUI to cycle between tools without restarting.
295
269
  - Provider: [Google Gemini](https://github.com/google-gemini/gemini-cli)
296
270
  - Install: `npm install -g @google/gemini-cli`
297
271
  - Free tier: 1,000 requests/day (personal Google account, no credit card)
298
- - Models: Gemini 3 Pro (76.2% SWE-bench), Gemini 2.5 Pro, Gemini 2.5 Flash
272
+ - Models: Gemini 3.1 Pro Preview, Gemini 3 Flash Preview, Gemini 2.5 Pro, Gemini 2.5 Flash
299
273
  - Launch: `free-coding-models --gemini` or press `Z` until Gemini mode
300
274
  - Features: OpenAI-compatible API support, MCP server support, Google Search grounding
301
275
 
@@ -309,12 +283,12 @@ Press **`Z`** in the TUI to cycle between tools without restarting.
309
283
  |-------|------|-----------|---------|
310
284
  | Big Pickle | S+ | 72.0% | 200k |
311
285
  | MiniMax M2.5 Free | S+ | 80.2% | 200k |
312
- | MiMo V2 Pro Free | S+ | 78.0% | 1M |
313
- | MiMo V2 Omni Free | S | 64.0% | 128k |
314
- | MiMo V2 Flash Free | S+ | 73.4% | 256k |
315
- | Nemotron 3 Super Free | A+ | 52.0% | 128k |
316
- | GPT 5 Nano | S | 65.0% | 128k |
317
- | Trinity Large Preview Free | S | 62.0% | 128k |
286
+ | Nemotron 3 Super Free | A+ | 52.0% | 1M |
287
+ | GPT 5 Nano | S | 65.0% | 400k |
288
+ | HY3 Preview Free | A+ | - | 128k |
289
+ | Ling 2.6 Flash Free | S | - | 128k |
290
+ | Trinity Large Preview Free | S | - | 128k |
291
+ | Trinity Mini Preview Free | A | - | 128k |
318
292
 
319
293
  To use Zen models: sign up at [opencode.ai/auth](https://opencode.ai/auth) and enter your Zen API key via `P` (Settings). Zen models appear in the main table and auto-switch to OpenCode CLI on launch.
320
294
 
@@ -383,7 +357,7 @@ When a tool mode is active (via `Z`), models incompatible with that tool are hig
383
357
 
384
358
  ## โœจ Features
385
359
 
386
- - **Parallel pings** โ€” all 238 models tested simultaneously via native `fetch`
360
+ - **Parallel pings** โ€” all ~165 API/Zen-callable models tested simultaneously via native `fetch` (~170 total cataloged models including CLI-only Gemini rows)
387
361
  - **Adaptive monitoring** โ€” 2s burst for 60s โ†’ 10s normal โ†’ 30s idle
388
362
  - **Stability score** โ€” composite 0โ€“100 (p95 latency, jitter, spike rate, uptime)
389
363
  - **Smart ranking** โ€” top 3 highlighted ๐Ÿฅ‡๐Ÿฅˆ๐Ÿฅ‰
@@ -391,6 +365,7 @@ When a tool mode is active (via `Z`), models incompatible with that tool are hig
391
365
  - **Configured-only default** โ€” only shows providers you have keys for
392
366
  - **Keyless latency** โ€” models ping even without an API key (show ๐Ÿ”‘ NO KEY)
393
367
  - **Smart Recommend** โ€” questionnaire picks the best model for your task type
368
+ - **Smart Model Router** โ€” local OpenAI-compatible daemon with model sets, failover, circuit breakers, health probes, and token stats
394
369
  - **โšก๏ธ Command Palette** โ€” `Ctrl+P` opens a searchable action launcher for filters, sorting, overlays, and quick toggles
395
370
  - **Install Endpoints** โ€” push a full provider catalog into any tool's config (from Settings `P` or โšก๏ธ Command Palette)
396
371
  - **Missing tool bootstrap** โ€” detect absent CLIs, offer one-click install, then continue the selected launch automatically
@@ -421,7 +396,7 @@ We welcome contributions โ€” issues, PRs, new provider integrations.
421
396
 
422
397
  ## โš–๏ธ Model Licensing & Commercial Use
423
398
 
424
- **Short answer:** All 238 models allow **commercial use of generated output (including code)**. You own what the models generate for you.
399
+ **Short answer:** The ~170 cataloged models are API/CLI-served models where generated-output ownership is generally granted by the provider/model terms. Always verify current provider terms for high-stakes commercial use.
425
400
 
426
401
  ### Output Ownership
427
402
 
@@ -431,23 +406,23 @@ For every model in this tool, **you own the generated output** โ€” code, text, o
431
406
 
432
407
  | License | Models | Commercial Output |
433
408
  |---------|--------|:-----------------:|
434
- | **Apache 2.0** | Qwen3/Qwen3.5/Qwen2.5 Coder, GPT-OSS 120B/20B, Devstral Small 2, Gemma 4, MiMo V2 Flash | โœ… Unrestricted |
435
- | **MIT** | GLM 4.5/4.6/4.7/5, MiniMax M2.1, Devstral 2 | โœ… Unrestricted |
436
- | **Modified MIT** | Kimi K2/K2.5 (>100M MAU โ†’ display "Kimi K2" branding) | โœ… With attribution at scale |
409
+ | **Apache 2.0** | Qwen3/Qwen3.5/Qwen2.5 Coder, GPT-OSS 120B/20B, Devstral 2, Gemma 4 | โœ… Unrestricted |
410
+ | **MIT / permissive model terms** | GLM Flash, MiniMax M2.x, Devstral 2 | โœ… Provider/model terms apply |
411
+ | **Modified MIT** | Kimi K2/K2.6 (>100M MAU โ†’ display "Kimi K2" branding) | โœ… With attribution at scale |
437
412
  | **Llama Community License** | Llama 3.3 70B, Llama 4 Scout/Maverick | โœ… Attribution required. >700M MAU โ†’ separate Meta license |
438
- | **DeepSeek License** | DeepSeek V3/V3.1/V3.2, R1 | โœ… Use restrictions on model (no military, no harm) โ€” output is yours |
413
+ | **DeepSeek License** | DeepSeek V3/V3.1/V3.2/V4 family | โœ… Use restrictions on model (no military, no harm) โ€” output is yours |
439
414
  | **NVIDIA Nemotron License** | Nemotron Super/Ultra/Nano | โœ… Updated Mar 2026, now near-Apache 2.0 permissive |
440
415
  | **MiniMax Model License** | MiniMax M2, M2.5 | โœ… Royalty-free, non-exclusive. Prohibited uses policy applies to model |
441
- | **Proprietary (API)** | Claude (Rovo), Gemini (CLI), Perplexity Sonar, Mistral Large, Codestral | โœ… You own outputs per provider ToS |
442
- | **OpenCode Zen** | Big Pickle, MiMo V2 Pro/Flash/Omni Free, GPT 5 Nano, MiniMax M2.5 Free, Nemotron 3 Super Free | โœ… Per OpenCode Zen ToS |
416
+ | **Proprietary / hosted API terms** | Gemini, GitHub Models, Mistral/Codestral, OpenRouter-hosted models | โœ… Provider ToS applies |
417
+ | **OpenCode Zen** | Big Pickle, GPT 5 Nano, MiniMax M2.5 Free, Nemotron 3 Super Free, HY3/Ling/Trinity previews | โœ… Per OpenCode Zen ToS |
443
418
 
444
419
  ### Key Points
445
420
 
446
421
  1. **Generated code is yours** โ€” no model claims ownership of your output
447
- 2. **Apache 2.0 / MIT models** (Qwen, GLM, GPT-OSS, MiMo, Devstral Small) are the most permissive โ€” no strings attached
422
+ 2. **Apache 2.0 / permissive model families** (Qwen, GLM Flash, GPT-OSS, Devstral, Gemma) are the lowest-friction options
448
423
  3. **Llama** requires "Built with Llama" attribution; >700M MAU needs a Meta license
449
424
  4. **DeepSeek / MiniMax** have use-restriction policies (no military use) that govern the model, not your generated code
450
- 5. **API-served models** (Claude, Gemini, Perplexity) grant full output ownership under their terms of service
425
+ 5. **API-served models** (Gemini, GitHub Models, OpenRouter, Mistral, etc.) grant output ownership under their current terms of service
451
426
 
452
427
  > โš ๏ธ **Disclaimer:** This is a summary, not legal advice. License terms can change. Always verify the current license on the model's official page before making legal decisions.
453
428
 
@@ -470,6 +445,12 @@ Telemetry is enabled by default and can be disabled with any of the following:
470
445
 
471
446
  ## ๐Ÿ›ก๏ธ Security & Trust
472
447
 
448
+ <p align="center">
449
+ <img src="https://img.shields.io/badge/dependencies-1-76b900?logo=npm" alt="1 dependency">
450
+ <img src="https://img.shields.io/badge/provenance-sigstore-blueviolet?logo=signstore" alt="npm provenance">
451
+ <img src="https://img.shields.io/badge/supply_chain-verified-brightgreen" alt="supply chain verified">
452
+ </p>
453
+
473
454
  ### Supply Chain
474
455
 
475
456
  | Signal | Status |
@@ -502,18 +483,6 @@ Telemetry is enabled by default and can be disabled with any of the following:
502
483
 
503
484
  ---
504
485
 
505
- ## ๐Ÿ“ง Support
506
-
507
- [GitHub Issues](https://github.com/vava-nessa/free-coding-models/issues) ยท [Discord](https://discord.gg/ZTNFHvvCkU)
508
-
509
- ---
510
-
511
- ## ๐Ÿ“„ License
512
-
513
- MIT ยฉ [vava](https://github.com/vava-nessa)
514
-
515
- ---
516
-
517
486
  ## Star History
518
487
 
519
488
  <a href="https://www.star-history.com/?repos=vava-nessa%2Ffree-coding-models&type=timeline&logscale=&legend=top-left">
@@ -526,25 +495,110 @@ MIT ยฉ [vava](https://github.com/vava-nessa)
526
495
 
527
496
 
528
497
 
529
- <p align="center">
530
- <strong>Contributors</strong><br>
531
- <a href="https://github.com/vava-nessa"><img src="https://avatars.githubusercontent.com/u/5466264?v=4&s=60" width="60" height="60" style="border-radius:50%" alt="vava-nessa"></a>
532
- <a href="https://github.com/erwinh22"><img src="https://avatars.githubusercontent.com/u/6641858?v=4&s=60" width="60" height="60" style="border-radius:50%" alt="erwinh22"></a>
533
- <a href="https://github.com/whit3rabbit"><img src="https://avatars.githubusercontent.com/u/12357518?v=4&s=60" width="60" height="60" style="border-radius:50%" alt="whit3rabbit"></a>
534
- <a href="https://github.com/skylaweber"><img src="https://avatars.githubusercontent.com/u/172871734?v=4&s=60" width="60" height="60" style="border-radius:50%" alt="skylaweber"></a>
535
- <a href="https://github.com/PhucTruong-ctrl"><img src="https://github.com/PhucTruong-ctrl.png?s=60" width="60" height="60" style="border-radius:50%" alt="PhucTruong-ctrl"></a>
536
- <br>
537
- <sub>
538
- <a href="https://github.com/vava-nessa">vava-nessa</a> &middot;
539
- <a href="https://github.com/erwinh22">erwinh22</a> &middot;
540
- <a href="https://github.com/whit3rabbit">whit3rabbit</a> &middot;
541
- <a href="https://github.com/skylaweber">skylaweber</a> &middot;
542
- <a href="https://github.com/PhucTruong-ctrl">PhucTruong-ctrl</a>
543
- </sub>
544
- </p>
498
+ ## Special thanks to contributors
499
+
500
+ <table align="center">
501
+ <tr>
502
+ <td align="center" width="120"><a href="https://github.com/vava-nessa"><img src="https://avatars.githubusercontent.com/u/5466264?v=4&s=80" width="80" height="80" style="border-radius:50%" alt="vava-nessa"></a></td>
503
+ <td align="center" width="120"><a href="https://github.com/erwinh22"><img src="https://avatars.githubusercontent.com/u/6641858?v=4&s=80" width="80" height="80" style="border-radius:50%" alt="erwinh22"></a></td>
504
+ <td align="center" width="120"><a href="https://github.com/whit3rabbit"><img src="https://avatars.githubusercontent.com/u/12357518?v=4&s=80" width="80" height="80" style="border-radius:50%" alt="whit3rabbit"></a></td>
505
+ <td align="center" width="120"><a href="https://github.com/skylaweber"><img src="https://avatars.githubusercontent.com/u/172871734?v=4&s=80" width="80" height="80" style="border-radius:50%" alt="skylaweber"></a></td>
506
+ <td align="center" width="120"><a href="https://github.com/PhucTruong-ctrl"><img src="https://github.com/PhucTruong-ctrl.png?s=80" width="80" height="80" style="border-radius:50%" alt="PhucTruong-ctrl"></a></td>
507
+ <td align="center" width="120"><a href="https://github.com/chindris-mihai-alexandru"><img src="https://avatars.githubusercontent.com/u/12643176?v=4&s=80" width="80" height="80" style="border-radius:50%" alt="chindris-mihai-alexandru"></a></td>
508
+ <td align="center" width="120"><a href="https://github.com/serajbaltu"><img src="https://avatars.githubusercontent.com/u/90699173?v=4&s=80" width="80" height="80" style="border-radius:50%" alt="serajbaltu"></a></td>
509
+ </tr>
510
+ <tr>
511
+ <td align="center"><a href="https://github.com/vava-nessa"><sub><b>vava-nessa</b></sub></a></td>
512
+ <td align="center"><a href="https://github.com/erwinh22"><sub><b>erwinh22</b></sub></a></td>
513
+ <td align="center"><a href="https://github.com/whit3rabbit"><sub><b>whit3rabbit</b></sub></a></td>
514
+ <td align="center"><a href="https://github.com/skylaweber"><sub><b>skylaweber</b></sub></a></td>
515
+ <td align="center"><a href="https://github.com/PhucTruong-ctrl"><sub><b>PhucTruong-ctrl</b></sub></a></td>
516
+ <td align="center"><a href="https://github.com/chindris-mihai-alexandru"><sub><b>chindris-mihai-alexandru</b></sub></a></td>
517
+ <td align="center"><a href="https://github.com/serajbaltu"><sub><b>serajbaltu</b></sub></a></td>
518
+ </tr>
519
+ </table>
520
+
521
+ ---
545
522
 
523
+ ## ๐Ÿ†“ Other Free AI Resources
546
524
 
525
+ **Curated resources outside the active CLI catalog** โ€” IDE extensions, coding agents, GitHub lists, and providers that are useful but not clean enough for the core free-provider table.
547
526
 
548
- <p align="center">
549
- <sub>Anonymous usage data collected to improve the tool. No personal information ever.</sub>
550
- </p>
527
+ ### ๐Ÿ“š Awesome Lists (curated by the community)
528
+
529
+ | Resource | What it is |
530
+ |----------|------------|
531
+ | [cheahjs/free-llm-api-resources](https://github.com/cheahjs/free-llm-api-resources) (18.4k โญ) | Comprehensive list of free LLM API providers with rate limits |
532
+ | [mnfst/awesome-free-llm-apis](https://github.com/mnfst/awesome-free-llm-apis) (2.1k โญ) | Permanent free LLM API tiers organized by provider |
533
+ | [inmve/free-ai-coding](https://github.com/inmve/free-ai-coding) (648 โญ) | Pro-grade AI coding tools side-by-side โ€” limits, models, CC requirements |
534
+ | [amardeeplakshkar/awesome-free-llm-apis](https://github.com/amardeeplakshkar/awesome-free-llm-apis) | Additional free LLM API resources |
535
+
536
+ ### ๐Ÿ–ฅ๏ธ AI-Powered IDEs with Free Tiers
537
+
538
+ | IDE | Free tier | Credit card |
539
+ |-----|-----------|-------------|
540
+ | [Qwen Code](https://github.com/QwenLM/qwen-code) | 2,000 requests/day | No |
541
+ | [Rovo Dev CLI](https://www.atlassian.com/rovo) | Conditional Atlassian/Rovo allowance | No |
542
+ | [Gemini CLI](https://github.com/google-gemini/gemini-cli) | 1,000 requests/day | No |
543
+ | [Jules](https://jules.google/) | 15 tasks/day | No |
544
+ | [AWS Kiro](https://kiro.dev/) | 50 credits/month | No |
545
+ | [Trae](https://trae.ai/) | 10 fast + 50 slow requests/month | No |
546
+ | [Codeium](https://codeium.com/) | Unlimited forever, basic models | No |
547
+ | [JetBrains AI Assistant](https://www.jetbrains.com/ai/) | Unlimited completions + local models | No |
548
+ | [Continue.dev](https://www.continue.dev/) | Free VS Code/JetBrains extension, local models via Ollama | No |
549
+ | [Warp](https://warp.dev/) | 150 credits/month (first 2 months), then 75/month | No |
550
+ | [Amazon Q Developer](https://aws.amazon.com/q/developer/) | 50 agentic requests/month | Required |
551
+ | [Windsurf](https://windsurf.com/) | 25 prompt credits/month | Required |
552
+ | [Kilo Code](https://kilocode.ai/) | Up to $25 signup credits (one-time) | Required |
553
+ | [Tabnine](https://www.tabnine.com/) | Basic completions + chat (limited) | Required |
554
+ | [SuperMaven](https://supermaven.com/) | Basic suggestions, 1M token context | Required |
555
+
556
+ ### ๐Ÿ”‘ API Providers with Permanent Free Tiers
557
+
558
+ | Provider | Free limits | Notable models |
559
+ |----------|-------------|----------------|
560
+ | [OpenRouter](https://openrouter.ai/keys) | 50 req/day, 1K/day with $10 purchase | Qwen3-Coder, Tencent HY3, Laguna, Gemma 4 |
561
+ | [Google AI Studio](https://aistudio.google.com/apikey) | Varies by Gemini model and region | Gemini 3.1 Pro Preview, Gemini 2.5 Flash |
562
+ | [NVIDIA NIM](https://build.nvidia.com) | ~40 RPM | MiniMax M2.7, GLM 5.1, Kimi K2.6 |
563
+ | [GitHub Models](https://models.github.ai) | Depends on GitHub/Copilot tier | GPT-4.1, DeepSeek V3, Llama 4 |
564
+ | [Groq](https://console.groq.com/keys) | 1Kโ€“14.4K req/day (model-dependent) | Llama 3.3 70B, Llama 4 Scout, GPT-OSS |
565
+ | [Cerebras](https://cloud.cerebras.ai/) | 30 RPM, 1M tokens/day | Qwen3-235B, Llama 3.1 70B, GPT-OSS 120B |
566
+ | [Cohere](https://cohere.com/) | 20 RPM, 1K/month | Command R+, Aya Expanse 32B |
567
+ | [Mistral La Plateforme](https://console.mistral.ai/) | 1 req/s, 1B tokens/month | Mistral Large, Devstral, Magistral |
568
+ | [Cloudflare Workers AI](https://dash.cloudflare.com) | 10K neurons/day | Llama 3.3 70B, QwQ 32B, 47+ models |
569
+ | [OVHcloud AI Endpoints](https://endpoints.ai.cloud.ovh.net) | 2 req/min/IP sandbox | GPT-OSS, Qwen3, Mistral |
570
+
571
+ ### ๐Ÿงช Good Candidates Kept Outside the Core Catalog
572
+
573
+ | Provider | Why it is not core |
574
+ |----------|--------------------|
575
+ | [Vercel AI Gateway](https://vercel.com/docs/ai-gateway) | Useful gateway with included credits, but it is a router/billing layer, not a provider of permanently free models. |
576
+ | [Cohere](https://cohere.com/) | Real evaluation key, but the allowance is small and the catalog is not coding-first enough for the default TUI. |
577
+ | [Ollama Cloud](https://ollama.com/pricing) | Interesting for light cloud usage, but it is closer to hosted Ollama capacity than a classic OpenAI-compatible free provider. |
578
+
579
+ ### ๐Ÿ’ฐ Providers with Trial Credits
580
+
581
+ | Provider | Credits | Duration |
582
+ |----------|---------|----------|
583
+ | [Hyperbolic](https://app.hyperbolic.ai/) | $1 | Trial/promo |
584
+ | [Fireworks](https://fireworks.ai/) | $1 | Trial/promo |
585
+ | [Nebius](https://tokenfactory.nebius.com/) | $1 | Permanent |
586
+ | [SambaNova Cloud](https://cloud.sambanova.ai/) | $5 | 3 months |
587
+ | [AI21](https://studio.ai21.com/) | $10 | 3 months |
588
+ | [Upstage](https://console.upstage.ai/) | $10 | 3 months |
589
+ | [NLP Cloud](https://nlpcloud.com/home) | $15 | Permanent |
590
+ | [Alibaba DashScope](https://bailian.console.alibabacloud.com/) | 1M tokens/model | 90 days |
591
+ | [Scaleway](https://console.scaleway.com/generative-api/models) | 1M tokens | Permanent |
592
+ | [Modal](https://modal.com) | $5/month | Monthly |
593
+ | [Inference.net](https://inference.net) | $1 (+ $25 on survey) | Permanent |
594
+ | [Novita](https://novita.ai/) | $0.5 | 1 year |
595
+
596
+ These trial-credit providers are deliberately not treated as core providers unless their free allowance is practical for recurring coding use. A $0.10/month or $1 one-time credit is useful for experimentation, not for this CLI's default promise.
597
+
598
+ ### ๐ŸŽ“ Free with Education/Developer Programs
599
+
600
+ | Program | What you get |
601
+ |---------|--------------|
602
+ | [GitHub Student Pack](https://education.github.com/pack) | Free Copilot Pro for students (verify with .edu email) |
603
+ | [GitHub Copilot Free](https://code.visualstudio.com/blogs/2024/12/18/free-github-copilot) | 50 chat + 2,000 completions/month in VS Code |
604
+ | [Copilot Pro for teachers/maintainers](https://docs.github.com/en/copilot/how-tos/manage-your-account/get-free-access-to-copilot-pro) | Free Copilot Pro for open source maintainers & educators |
@@ -4,6 +4,11 @@
4
4
  * @description Live terminal availability checker for coding LLM models with OpenCode & OpenClaw integration.
5
5
  */
6
6
 
7
+ // ๐Ÿ“– --dev mode: must set FCM_DEV before any module imports resolve daemon paths
8
+ if (process.argv.includes('--dev')) {
9
+ process.env.FCM_DEV = '1'
10
+ }
11
+
7
12
  import chalk from 'chalk';
8
13
  import { parseArgs, TIER_LETTER_MAP } from '../src/utils.js';
9
14
  import { loadConfig } from '../src/config.js';
@@ -15,6 +20,10 @@ import { runApp } from '../src/app.js';
15
20
 
16
21
  // Global error handlers to ensure terminal is restored if something crashes catastrophically
17
22
  process.on('uncaughtException', (err) => {
23
+ if (process.argv.some(arg => arg === '--daemon')) {
24
+ console.error(err);
25
+ return;
26
+ }
18
27
  process.stdout.write(ALT_LEAVE);
19
28
  console.error(chalk.red('\n[Fatal Error] An unhandled exception occurred.'));
20
29
  console.error(err);
@@ -23,6 +32,10 @@ process.on('uncaughtException', (err) => {
23
32
  });
24
33
 
25
34
  process.on('unhandledRejection', (reason, promise) => {
35
+ if (process.argv.some(arg => arg === '--daemon')) {
36
+ console.error(reason);
37
+ return;
38
+ }
26
39
  process.stdout.write(ALT_LEAVE);
27
40
  console.error(chalk.red('\n[Fatal Error] An unhandled promise rejection occurred.'));
28
41
  console.error(reason);
@@ -40,6 +53,39 @@ async function main() {
40
53
  process.exit(0);
41
54
  }
42
55
 
56
+ // ๐Ÿ“– Router daemon lifecycle flags run before the TUI so automation and
57
+ // ๐Ÿ“– editor integrations can manage the local OpenAI-compatible endpoint.
58
+ if (cliArgs.daemonMode || cliArgs.daemonBackgroundMode || cliArgs.daemonStopMode || cliArgs.daemonStatusMode) {
59
+ const {
60
+ getRouterDaemonStatus,
61
+ runRouterDaemon,
62
+ startRouterDaemonBackground,
63
+ stopRouterDaemon,
64
+ } = await import('../src/router-daemon.js');
65
+
66
+ if (cliArgs.daemonMode) {
67
+ await runRouterDaemon();
68
+ return;
69
+ }
70
+
71
+ const result = cliArgs.daemonBackgroundMode
72
+ ? await startRouterDaemonBackground()
73
+ : cliArgs.daemonStopMode
74
+ ? await stopRouterDaemon()
75
+ : await getRouterDaemonStatus();
76
+
77
+ console.log(JSON.stringify(result, null, 2));
78
+ process.exit(result.ok ? 0 : 1);
79
+ }
80
+
81
+ // ๐Ÿ“– --sync-set [name] โ€” auto-discover, probe, and populate a router set
82
+ if (cliArgs.syncSetMode) {
83
+ const { syncSet } = await import('../src/sync-set.js');
84
+ const result = await syncSet({ name: cliArgs.syncSetName || 'auto' });
85
+ console.log(JSON.stringify(result, null, 2));
86
+ process.exit(result.ok ? 0 : 1);
87
+ }
88
+
43
89
  // Validate --tier early, before entering alternate screen
44
90
  if (cliArgs.tierFilter && !TIER_LETTER_MAP[cliArgs.tierFilter]) {
45
91
  console.error(chalk.red(` Unknown tier "${cliArgs.tierFilter}". Valid tiers: S, A, B, C`));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "free-coding-models",
3
- "version": "0.3.55",
3
+ "version": "0.3.57",
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",
@@ -62,7 +62,7 @@
62
62
  "dependencies": {
63
63
  "chalk": "^5.6.2"
64
64
  },
65
- "packageManager": "pnpm@10.24.0",
65
+ "packageManager": "pnpm@10.33.2",
66
66
  "engines": {
67
67
  "node": ">=18.0.0"
68
68
  },