Бесплатная модель OpenCode: текущий выбор, порядок замены и проверки
Имена и провайдеры меняются
Бесплатная модель в OpenCode Console — движущаяся мишень. Id, провайдер за ним и условия использования меняются без предупреждения: бесплатный вариант могут переименовать, перенести к другому провайдеру, сделать платным или убрать. Проверяйте id перед закреплением, проверяйте снова перед долгим прогоном и никогда не копируйте бесплатный id из старой статьи, не проверив его сначала.
Поэтому другие руководства в этом разделе пишут «бесплатная модель OpenCode» и ссылаются сюда, а не называют её. Эта страница — единственное место, где назван текущий бесплатный id, его замены и дата проверки. Примеры конфигурации на других страницах используют id с этой страницы.
Текущая бесплатная модель
Проверено по эндпоинту моделей 22.10.2026:
| Роль | Id в Console | Цена / 1M вход+выход |
|---|---|---|
| Бесплатная модель OpenCode | opencode/deepseek-v4.1-flash-free | Бесплатно |
| Её платный близнец | opencode/deepseek-v4.1-flash | $0.30 / $1.20 |
| Самый дешёвый платный шаг | opencode/gpt-6-luna | $0.10 / $0.50 |
DeepSeek V4.1 Flash Free — бесплатный вариант DeepSeek V4.1 Flash. Его платный близнец лежит в том же каталоге, поэтому когда бесплатный вариант исчезает, та же модель остаётся доступной за деньги. Для рутинной платной работы GPT 6 Luna всё ещё дешевле этого близнеца. Цены двигаются: проверяйте их в документации Console по моделям перед планированием бюджета.
Закрепите её моделью по умолчанию проекта в opencode.jsonc в корне проекта: создайте файл, если его нет, иначе меняйте только строку model. Для всех проектов сразу используйте ~/.config/opencode/opencode.jsonc.
vi opencode.jsonc
{ "$schema": "https://opencode.ai/config.json", "model": "opencode/deepseek-v4.1-flash-free" }
Порядок замены
Когда текущий бесплатный id уходит из каталога, берите следующий живой из этого списка. Правило, на котором держится порядок: сначала бесплатная модель, чей платный близнец есть в том же каталоге, потом бесплатные без него. Модели, которые не пишут код, из списка исключены.
| # | Бесплатный id | Платная модель того же семейства |
|---|---|---|
| 1 | deepseek-v4.1-flash-free | deepseek-v4.1-flash |
| 2 | glm-5.3-flash-free | glm-5.3-flash |
| 3 | minimax-m3.1-flash-free | minimax-m3 |
| 4 | mimo-v2.6-flash-free | нет |
| 5 | nemotron-3.5-lightning-free | нет |
Исключены намеренно: jev-1.13-free отвечает на структурированные вопросы «да-нет» и выбора и не пишет код, nemotron-3.5-super-vl-free — вариант «зрение-язык», beam-free и flint-40b-free не принадлежат ни одному семейству, которое объясняет каталог.
Проверка id перед закреплением
Эндпоинт моделей возвращает id, которые существуют прямо сейчас, без цен. Перечислить все бесплатные id:
curl -s https://opencode.ai/inference/v1/models | grep -o '"[a-z0-9.-]*-free"' | sort
Вывод на 22.10.2026:
"beam-free" "deepseek-v4.1-flash-free" "flint-40b-free" "glm-5.3-flash-free" "jev-1.13-free" "mimo-v2.6-flash-free" "minimax-m3.1-flash-free" "nemotron-3.5-lightning-free" "nemotron-3.5-super-vl-free"
В TUI та же проверка — /models; из оболочки это:
opencode models
Id, которого нет в списке, нигде не разрешается: агент, закреплённый за ним, откатывается к модели сессии или отказывается запускаться, как описано в разделе «Заставить агентов работать».
Автоматическая проверка перед запуском
Репозиторий aredel запускает OpenCode через лаунчер, который сначала проверяет каждый закреплённый id, поэтому ушедший бесплатный id ловится до первого промпта:
container/tools/ai/opencode.sh
Лаунчер запускает check_opencode_models.py, который читает id, закреплённые в opencode.jsonc и .opencode/agents/, и сравнивает их с эндпоинтом:
- бесплатный id, ушедший из каталога, заменяется во всех файлах на первый живой id из container/tools/ai/free-models.txt, то есть из порядка замены выше; изменение видно в git status;
- когда ни один id из списка не жив, или эндпоинт недоступен, он спрашивает перед запуском;
- отсутствующий платный id только сообщается, но никогда не подменяется: другая платная модель — другой счёт.
Режим только отчёта ничего не пишет и не спрашивает, поэтому он работает и в скриптах:
python3 container/tools/ai/check_opencode_models.py --check
ok: opencode/claude-opus-5-5 (.opencode/agents/reviewer.md) ok: opencode/deepseek-v4.1-flash-free (opencode.jsonc, .opencode/agents/triage.md) ok: opencode/gpt-6-luna (.opencode/agents/builder.md)
Вся настройка, к которой относится эта проверка, описана в материале «Аудит настройки агентов: случай aredel».
Приватность и лимиты
Бесплатные тарифы платят за себя вашими данными или вашим терпением. Тариф контрибьютора меняет цену на право использовать промпты и ответы для обучения будущих моделей. Другие бесплатные модели обещают нулевое хранение в бесплатный период, но условия различаются по провайдерам и меняются вместе с провайдером. Читайте заметки о приватности в Console для конкретного id, а секреты, данные клиентов и приватный код держите на платной модели с нулевым хранением или на локальной вроде Ollama.
Бесплатные id ещё и ограничены по частоте запросов, а некоторые ограничены по времени для сбора обратной связи. Для ночных прогонов и CI используйте GPT 6 Luna. Правила доступа, которые держат агента на бесплатной модели подальше от секретов, — в материале «Безопасность ИИ».
История: Muse Spark 1.3 Free
До октября 2026 бесплатной моделью в этих руководствах была Muse Spark 1.3 Free, id opencode/muse-spark-1.3-contributor-free: бесплатный вариант уровня контрибьютора Muse Spark 1.3 от Meta, обслуживаемый через OpenCode Console. Её рекомендовали как ежедневный выбор по умолчанию: достаточно сильная, чтобы объяснять код, писать тесты, делать небольшие функции, переименования по файлам и документацию, — и при этом бесплатная.
Её условия были условиями тарифа контрибьютора: сильно сниженная цена в обмен на право использовать промпты и ответы для обучения будущих моделей, лимиты запросов и срок для сбора обратной связи. Секреты, данные клиентов и приватный код никогда не следовало ей отправлять.
| Id | Статус на 22.10.2026 |
|---|---|
| opencode/muse-spark-1.3-contributor-free | нет в списке эндпоинта моделей |
| opencode/muse-spark-1.3 | в списке, платная, см. Muse Spark 1.3 |
Конфиги, где бесплатный id оставался закреплён, не падали громко: агент откатывался к модели сессии или отказывался запускаться. Репозиторий aredel закреплял его для модели по умолчанию и для агента triage; как это нашли и исправили — в материале «Аудит настройки агентов».
Решение проблем
- Ошибка модели при старте: закреплённый бесплатный id ушёл из каталога. Запустите проверку, возьмите следующий живой id из порядка замены или стартуйте через лаунчер.
- Лимит запросов посреди сессии: сохраните контекст и переключите модель через F2 на GPT 6 Luna.
- Слабые ответы: добавьте контекст файла через @, сократите навык до одного экрана или поднимитесь на Claude Opus 5.5 для трудного шага.
Официальные источники:
- opencode.ai/docs/console/models (id, цены, приватность)
- opencode.ai/inference/v1/models (живые id)
Автор статьи: Клавдия Кондакова