Модели в OpenCode: id, закрепление и маршрутизация по агентам
Введение
Сам OpenCode бесплатен и открыт; модель — единственная регулярная статья расходов. Он разговаривает напрямую с 75+ провайдерами и с локальными серверами, а курируемый шлюз — OpenCode Console. Эта страница о том, как пользоваться моделью внутри OpenCode: какой уровень выбрать, как записываются id, где закрепить модель по умолчанию, как дать каждому агенту свою модель и как держать счёт на виду. Сами модели — семейства, цены, контекст — в разделе «Модели ИИ».
Три уровня, один выбор по умолчанию
Три модели закрывают 95 процентов ежедневной работы. По умолчанию — бесплатная, повышайте до дешёвой, трудные задачи доводите топовой. Цены двигаются — проверяйте актуальные тарифы перед планированием бюджета:
| Модель | Id в Console | Цена / 1M вход+выход | Для чего |
|---|---|---|---|
| Бесплатная модель OpenCode | opencode/deepseek-v4.1-flash-free | Бесплатно | Ежедневный выбор по умолчанию для публичного кода: вопросы, черновики, массовые правки, изучение кодовой базы |
| GPT 6 Luna | opencode/gpt-6-luna | $0.10 / $0.50 | Дешёвый платный шаг, когда упёрлись в бесплатные лимиты: рефакторинг, ревью в CI, длинные сессии |
| Claude Opus 5.5 | opencode/claude-opus-5-5 | $4.00 / $20.00 | Лучшее качество: архитектура, сложные баги, проверка безопасности, финальный проход |
Бесплатная модель OpenCode — ваша основная рабочая лошадка. В Console всегда есть несколько бесплатных моделей. Какая из них текущая, какие у неё замены и какова однострочная проверка перед закреплением id — на странице «Бесплатная модель OpenCode». Бесплатные id меняются: прежний выбор по умолчанию, Muse Spark 1.3 Free, ушёл из каталога в октябре 2026, и каждый конфиг, где он был закреплён, перестал разрешаться. Его платный близнец описан в материале «Muse Spark 1.3».
Приватность бесплатного тарифа: тариф для участников меняет цену на право использовать запросы и ответы для обучения будущих моделей. Никогда не отправляйте секреты, данные клиентов или закрытый код на бесплатную модель, чьи условия вы не прочитали. Большинство других бесплатных моделей обещают не хранить данные в бесплатный период, но некоторые всё же используют их для улучшения — сначала прочитайте заметки о приватности в Console, а для чувствительной работы переходите на платную или локальную модель.
GPT 6 Luna — самая дешёвая умная платная модель. Luna — младшая в семействе GPT 6 (Astra, Sol, Luna). Примерно за десять центов за 1M входных токенов она дешевле большинства моделей Flash, Nano и Mini, но достаточно хороша как агент: следует за инструментами, держит контекст и переживает долгий рефакторинг. Берите её, когда бесплатная модель упёрлась в лимиты или исчезла, для ночных прогонов и для задач CI, где вы считаете каждый цент. Старший брат opencode/gpt-6-sol примерно за $2.00 / $10.00 — средняя ступень перед флагманскими моделями.
Claude Opus 5.5 — топовая модель для тяжёлой работы. Opus 5.5 — текущая вершина линейки Claude в Console, выше Sonnet 5.5 примерно за $2.00 / $10.00 и Haiku 5.5 примерно за $0.10 / $0.50. Она выигрывает на больших рефакторингах, хитрых багах, проектировании API и внимательной проверке безопасности. На входе она примерно в 40 раз дороже Luna, поэтому не сжигайте её на вопросах, на которые хорошо отвечает бесплатная модель. Типичное разделение: бесплатная модель делает 80 процентов шагов, Luna — рутинную платную работу, Opus 5.5 — последние 10 процентов, которые решают качество. Более новые ревизии вроде Sonnet 5.x или Opus 5.x следуют тому же правилу: берите новейший Opus для максимального качества, новейший Sonnet — для качества за доллар.
Другие ориентировочные цены из OpenCode Console, за 1M токенов вход+выход. Тарифы меняются — перепроверяйте, как описано в разделе «Проверяйте цены перед планированием бюджета»:
| Модель | Цена / 1M вход+выход |
|---|---|
| GPT 5 Nano | $0.05 / $0.40 |
| DeepSeek V4.1 Flash | $0.30 / $1.20 |
| Kimi K2.5 | $0.60 / $3.00 |
| GPT 5.4 Mini | $0.75 / $4.50 |
| GPT 5.5 | $5.00 / $30.00 |
Бесплатные id меняются. Живой список, порядок замены и проверка — на странице «Бесплатная модель OpenCode»; когда бесплатный id исчезает, возьмите следующий оттуда или вернитесь к локальной Ollama.
Id моделей и варианты
Id модели — это provider/model с необязательным #variant для глубины рассуждений или скорости. Модели Console используют opencode/<model-id>; ваши собственные ключи провайдеров оставляют этого провайдера впереди, и он же выставляет счёт:
| Id | Маршрут |
|---|---|
| opencode/gpt-6-luna | OpenCode Console, кредиты по факту |
| opencode/claude-opus-5-5 | OpenCode Console, тот же ключ, что и у бесплатной модели |
| anthropic/claude-opus-5-5 | Ваш собственный ключ Anthropic, счёт от Anthropic |
| openai/gpt-5.2#high | Ваш собственный ключ OpenAI, вариант с глубокими рассуждениями |
| ollama/qwen3:8b | Локальная модель, без ключа, без платы за токен |
Свои варианты и псевдонимы определяются в конфигурации, поэтому короткое имя может нести модель, уровень усилий и настройки провайдера. Живой список id, включая бесплатные, приходит из эндпоинта моделей или из оболочки:
curl https://opencode.ai/inference/v1/models
opencode models
Поищите свой id в выводе JSON, прежде чем закреплять его. В TUI та же проверка — /models.
Маршрутизация по агентам
Одна модель на всё — дорогой выбор по умолчанию. Дайте каждой роли свою модель, начиная с самой дешёвой:
| Роль | Файл агента | Модель |
|---|---|---|
| Triage: объясняет и направляет, никогда не правит | triage.md | бесплатная модель OpenCode |
| Build: реализует и запускает тесты | builder.md | GPT 6 Luna |
| Review: судит дифф, только отчёт | reviewer.md | Claude Opus 5.5 |
Модель сессии по умолчанию остаётся дешёвой; за топовый уровень платит только reviewer, в opencode.jsonc в корне проекта:
vi opencode.jsonc
{ "$schema": "https://opencode.ai/config.json", "model": "opencode/gpt-6-luna", "agents": { "reviewer": { "description": "Final correctness and security pass", "mode": "subagent", "model": "opencode/claude-opus-5-5" } } }
Полная раскладка трёх ролей, с навыками, ограниченными по агентам, — в разделе «Три модели, один проект». Сами файлы агентов — frontmatter, разрешения, четыре готовых примера — в материале «Агенты OpenCode».
Переключение моделей
- Внутри TUI: /models открывает список выбора без потери контекста, F2 переключает недавние модели, Ctrl+X, затем M открывает тот же список.
- Из оболочки: opencode models перечисляет id, opencode run --model <id> "prompt" закрепляет одну модель для одного неинтерактивного прогона.
- На проект: ключ model в opencode.jsonc, причём ближний файл перекрывает дальний.
- На агента: ключ model внутри определения агента, как выше.
Оставайтесь в одной сессии и повышайте модель только при смене роли: контекст накапливается, и следующая модель наследует работу, а не перечитывает репозиторий. Для трудной функции сначала переключитесь в режим Plan, итерируйте план, затем вернитесь в Build — не давайте сильной модели править по первому промпту.
Контроль расходов
- Сначала бесплатное: поставьте бесплатную модель по умолчанию, делайте на ней всё, повышайте только при неудаче. Одно это снижает большинство счетов на порядок.
- Лимиты: задайте месячные лимиты рабочей области и участника в Console, а автопополнение включайте осознанно, а не по умолчанию.
- Наглядность: просматривайте opencode stats --cost --models каждую неделю, по моделям и с деталями по токенам. Генерация заголовков сессий использует дешёвые модели и попадает в историю отдельно.
- Пороги уровней: Luna выше 272K токенов, Sonnet выше 200K и Haiku выше 100K стоят дороже за токен. Длинные сессии переходят эту черту незаметно — включите сжатие с бюджетом keep.tokens и коммитьте по ходу.
- Ограничьте верхний уровень: Opus ревьюит диффы, а не целые репозитории. Ограничьте reviewer несколькими шагами, запретите shell, чтобы он не уходил в сторону, и держите модель сессии на Luna.
Другие провайдеры и локальные модели
Console — один маршрут, а не единственный. Ваши собственные ключи Anthropic, OpenAI или Google оплачивает этот провайдер; OpenRouter держит 300+ моделей за одним ключом через запись провайдера, совместимого с OpenAI. Локальным моделям ключ не нужен вовсе: если запущен ollama serve, OpenCode находит их по адресу по умолчанию, и то же работает для LM Studio и vLLM. Смотрите «Ollama: локальные модели простым способом» и «Qwen: скачать, установить, дообучить и применять».
Решение проблем
- Список моделей пуст: вы пропустили подключение — выполните /connect или opencode auth login opencode. Для Ollama проверьте ollama serve и ollama list.
- Бесплатная модель пропала или упёрлась в лимиты: бесплатные id меняются — возьмите следующий живой id из порядка замены, переключите модель по умолчанию на opencode/gpt-6-luna или вернитесь к локальной Ollama.
- Модель не найдена после правки конфигурации: сверьте id с живым списком, затем выполните opencode reload. Каталог, учётные данные и конфигурация привязаны к расположению, поэтому модель, доступная в одном проекте, может отсутствовать в другом.
- Неожиданные списания: задайте месячные лимиты рабочей области и участника в Console, просматривайте opencode stats --cost --models и переводите рутинные шаги с верхнего уровня на Luna.
Официальные источники:
- opencode.ai/v2/docs
- opencode.ai/docs/console/models (id, эндпоинты, цены, приватность)
- opencode.ai/inference/v1/models (живой список id)
Автор статьи: Клавдия Кондакова