free-coding-models — бенчмарк 229 бесплатных coding-моделей и установка в CLI за секунды
📂 Исходный код на GitHubOpen-source CLI-инструмент (MIT), который в реальном времени бенчмаркает 229 бесплатных coding-LLM от 24 провайдеров — живая латентность, Stability Score 0-100, тиры по SWE-bench Verified — и прописывает выбранную модель прямо в конфиг OpenCode, Crush, Goose, Aider, Cline и ещё 17 инструментов. Включает TUI, веб-дашборд, плагины для OpenCode и Pi, а также локальный OpenAI-совместимый Smart Model Router с circuit breaker и авто-failover.
Бесплатных coding-моделей сегодня десятки: OpenRouter, Groq, Cerebras, NVIDIA NIM, Alibaba DashScope, Ollama Cloud — и у каждого провайдера свой каталог, свои лимиты и своё качество сервиса. Какая из них быстрее прямо сейчас? Какая реально стабильна, а не просто повезло с последним пингом? Проект free-coding-models (FCM) от Vava-Nessa отвечает на эти вопросы: инструмент пингует все модели параллельно, показывает живую латентность и Stability Score, а после выбора прописывает модель прямо в конфиг вашего кодинг-инструмента и запускает его. От вопроса «какую модель взять?» до кодинга — меньше 10 секунд.
Что это и зачем
В каталоге FCM — 24 провайдера и 229 живых моделей (список генерируется из sources.js, так что цифры не расходятся с кодом). Средняя латентность сама по себе мало о чём говорит: модель, которая случайно прыгает до 6 секунд, ненадёжна, даже если в среднем быстрая. Поэтому FCM считает Stability Score (0–100) — комбинацию p95-латентности, джиттера, частоты спайков и uptime.
После выбора модели FCM записывает её в конфиг инструмента и открывает сам инструмент. Поддерживаются 21 лончер: 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 и другие.
Четыре поверхности одного инструмента:
| Поверхность | Что это |
|---|---|
| 🎛️ TUI | Интерактивный терминальный дашборд: живой рейтинг, выбор и запуск |
| 🌐 Web Dashboard | Браузерный центр управления с шарибельными фильтрами, готов к Docker |
| 🔌 Agent Extensions | Плагины для OpenCode и Pi: смена модели посреди сессии |
| 🔀 Smart Model Router | Локальный OpenAI-совместимый демон с авто-failover |
Дополнительно: AI Speed Test (реальные генерации с замером AI Latency и TPS), Smart Recommend — визард из трёх вопросов с топ-3 рекомендациями, Command Palette на Ctrl+P, общий 24-часовой кэш пробов между всеми поверхностями, живая квота из response-заголовков, обогащение данными models.dev с детекцией дрейфа и тировая шкала на основе SWE-bench Verified (от S+ с ≥ 70% до C).
Быстрый старт
Нужен Node.js 18+, нативных сборок нет, sudo не требуется:
npm install -g free-coding-models
free-coding-models --help # печатает все флаги
Дальше — один бесплатный API-ключ (хватит одного, остальные можно добавить позже клавишей P прямо в приложении):
- Groq → console.groq.com/keys
- Cerebras → cloud.cerebras.ai (самая низкая латентность в каталоге)
- NVIDIA NIM → build.nvidia.com (самая большая квота без кредитной карты)
При первом запуске FCM предложит вставить ключи (Enter пропускает), модели запингуются параллельно, строки с живыми моделями загорятся зелёным. Дальше — ↑↓ для навигации, Enter — записать модель в конфиг и запустить инструмент:
free-coding-models --goose --tier S # Goose, только S-tier
free-coding-models --crush --origin groq # Crush, только модели Groq
free-coding-models --fiable # вывести самую надёжную модель и выйти
Провайдеры
Топ-8 из 24 активных провайдеров, отсортировано по числу живых моделей:
| Провайдер | Моделей | Лучший тир | Переменная окружения |
|---|---|---|---|
| Alibaba DashScope | 27 | S+ | DASHSCOPE_API_KEY |
| Ollama Cloud | 19 | S+ | OLLAMA_API_KEY |
| OpenRouter | 19 | S+ | OPENROUTER_API_KEY |
| Cloudflare AI | 15 | S | CLOUDFLARE_API_TOKEN |
| Kilo | 14 | S+ | KILO_API_KEY |
| NVIDIA NIM | 14 | S+ | NVIDIA_API_KEY |
| Pollinations AI | 13 | S+ | POLLINATIONS_API_KEY |
| OVHcloud AI | 12 | S+ | OVH_AI_ENDPOINTS_ACCESS_TOKEN |
Нюанс: health-пробы расходуют квоту провайдера. FCM автоматически ставит провайдера на паузу при 429, делает экспоненциальный backoff по падающим моделям и показывает чип в футере, пока провайдер отдыхает. Без ключей анонимные liveness-пробы у большинства провайдеров всё равно работают.
Терминальный UI
TUI — сердце FCM: живая сортируемая таблица всех моделей с реальной латентностью, стабильностью и вердиктом, плюс запуск в инструмент одной клавишей. Сортировки — в одну букву (R — rank, S — SWE, V — verdict, B — stability), фильтры — T (тир), D (провайдер), E (видимость). Основные клавиши:
| Клавиша | Действие |
|---|---|
↑↓ / Enter |
Навигация / запуск выбранной модели |
Z |
Циклическое переключение целевого инструмента (OpenCode → OpenClaw → Crush → Goose → …) |
F / Y |
Избранное / режим закреплённых фаворитов |
Ctrl+A / Ctrl+U |
AI Speed Test для выбранной / всех видимых моделей |
Q |
Smart Recommend (визард из 3 вопросов, топ-3 подборки) |
Ctrl+P |
Command Palette (fuzzy-поиск по всем фильтрам и действиям) |
; |
Playground-чат с роутером |
Space |
Развернуть строку (провайдер, endpoint, полный ID модели) |
Shift+B |
Показать/скрыть сломанные модели |
Есть и мышь: клик по заголовку — сортировка, двойной клик по строке — запуск, правый клик — в избранное.
Веб-дашборд
free-coding-models web открывает браузерный центр управления (порт 3333) с полным паритетом фильтров и сортировок TUI, бенчмарками по строкам, избранным, Smart Recommend, Router Dashboard и аналитикой расхода токенов. Виды можно шарить ссылками вида ?tier=S+&sort=verdict&origin=groq. Вариант --daemon поднимает дашборд плюс Router API на порту 19280, а в Docker (ghcr.io/vava-nessa/free-coding-models) всё работает headless.
Smart Model Router
Локальный OpenAI-совместимый демон: направляете любой кодинг-инструмент на http://localhost:19280/v1 с моделью fcm (ключ fcm-local) — и FCM маршрутизирует каждый запрос к лучшей доступной модели из активного набора. Адаптивные health-пробы, per-model circuit breaker'ы, failover с сохранением семейства моделей, автовосстановление сломанных наборов.
free-coding-models --daemon-bg # запустить
free-coding-models --daemon-status # статус
free-coding-models --daemon-stop # остановить
Внутри работает hardened-движок Router v2: failover с валидацией контента (ответ 200 с пустым или мусорным выводом считается провалом и триггерит переключение), quota-aware маршрутизация с паузами по Retry-After, персистентные circuit breaker'ы с состоянием DEGRADED, per-request трейсы решений и endpoint /v1/messages в формате Anthropic. Живую цепочку fallback'ов видно в TUI по Shift+V или в веб-дашборде.
CLI-флаги и агентные расширения
Флаги комбинируются свободно: --best / --premium (элитный пресет: фильтр S + сортировка по verdict), --tier <S|A|B|C>, --origin <provider>, --sort <column> с --asc/--desc, --json (вывод без TUI, удобно с jq), --recommend, --check-drift (дифф sources.js против models.dev, exit 1 при расхождении), --no-telemetry и полный цикл управления демоном.
Для агентов есть три пакета:
- fcm-opencode (плагин OpenCode, beta):
/fcmсканирует и ранжирует,/fcm 1переключает модель,/fcm rescanфорсирует свежий скан; - fcm-pi (расширение Pi, beta): молчит по умолчанию,
/fcmоткрывает выбор модели,/fcm-listпоказывает рейтинг, при ошибках 4xx/5xx автоматически предлагает альтернативу; - fcm-agent-core: общий движок скана/рейтинга/кэша для обоих адаптеров с кросс-инструментным кэшем и интеграцией с демоном.
Безопасность и лицензии
Пакет распространяется под MIT. npm Provenance подписан через Sigstore, SBOM прилагается к каждому релизу, зависимости чисто JavaScript-овые (никаких нативных сборок), Dependabot и npm audit в CI. Ключи хранятся локально в ~/.free-coding-models.json с правами 0600 и отправляются только на endpoint соответствующего провайдера; sudo не нужен, произвольный удалённый код не исполняется. Телеметрия анонимная (версия, ОС, случайный install ID) и отключается флагом --no-telemetry.
Что касается лицензий моделей: сгенерированный код и текст принадлежат вам и доступны для коммерческого использования на условиях провайдеров. Лицензии весов различаются — Apache 2.0 (Qwen, GPT-OSS, Devstral, Gemma), MIT/пермиссивные (GLM Flash, MiniMax), Modified MIT (Kimi K2), Llama Community License (с атрибуцией) — детали стоит проверять на официальных страницах моделей.
Проект создан и поддерживается Vanessa Depraute (@vava-nessa), 2.6k звёзд на GitHub. Исходники и документация: github.com/vava-nessa/free-coding-models.