OpenCode
Что это
Заголовок раздела «Что это»OpenCode — открытый (open source, лицензия MIT) кодинг-агент, главная особенность которого — независимость от провайдера моделей. В отличие от фирменных харнесов (agent harness), привязанных к моделям своей компании, OpenCode позволяет работать с моделями Anthropic, OpenAI, Google, десятков других провайдеров и с локальными моделями, а также переключаться между ними в любой момент.
Основной форм-фактор — терминальный интерфейс TUI (text user interface): полноэкранное приложение в терминале с историей диалога, подсветкой изменений и командами. Есть также десктоп-приложение и IDE-расширение. Проект начинался в команде SST, сейчас развивается компанией Anomaly; репозиторий — github.com/anomalyco/opencode.
Ключевые возможности
Заголовок раздела «Ключевые возможности»Инструменты
Заголовок раздела «Инструменты»Стандартный набор инструментов кодинг-агента: чтение и редактирование файлов, поиск по коду, запуск команд, веб-запросы. Дополнительно OpenCode интегрируется с LSP (Language Server Protocol), теми же языковыми серверами, что используют редакторы кода, и за счёт этого точнее понимает структуру проекта: определения, ссылки, ошибки компиляции.
Для каждого инструмента настраиваются разрешения: allow (выполнять без вопросов), ask (спрашивать подтверждение), deny (запретить), в том числе по маскам конкретных команд.
Агенты, режимы и субагенты
Заголовок раздела «Агенты, режимы и субагенты»В OpenCode встроены два основных режима-агента, переключаемых клавишей Tab:
- Build — полный доступ к инструментам, обычная работа над кодом;
- Plan — режим анализа и планирования, в котором агент не вносит изменений.
Помимо них есть встроенные субагенты — вспомогательные агенты с отдельным контекстным окном: например, read-only агент для исследования кодовой базы или для изучения документации зависимостей. Основной агент вызывает их сам, либо вы обращаетесь к ним явно через @имя в сообщении. Собственных агентов и субагентов можно описывать markdown-файлами с frontmatter (модель, промпт, разрешения) в папке .opencode/agents/; по духу это близко к скилам, хотя формат свой.
Память и MCP
Заголовок раздела «Память и MCP»- Роль памяти проекта играет файл
AGENTS.md, тот же формат, что у Codex и других харнесов; команда/initсоздаёт его по содержимому репозитория. - MCP поддерживается: локальные и удалённые MCP-серверы подключаются через конфигурацию
opencode.json, их инструменты становятся доступны агенту.
Это главная причина выбирать OpenCode. Через каталог Models.dev доступны более 75 провайдеров: Anthropic, OpenAI, Google, Mistral, DeepSeek, локальные модели через Ollama и другие. Подключить их можно командой /connect (или opencode auth login) в интерфейсе.
Платить можно по-разному:
- Свои API-ключи — вы платите провайдеру за токены напрямую, OpenCode бесплатен.
- Существующие подписки — можно подключить, например, аккаунт ChatGPT или GitHub Copilot и использовать их лимиты.
- OpenCode Zen — необязательный платный шлюз от разработчиков с отобранными и протестированными моделями; удобен, если не хочется заводить ключи у каждого провайдера.
Смена модели посреди работы — обычное дело: дорогую модель берут для сложной задачи, дешёвую оставляют для рутины. Почему это может быть важно, мы обсуждали на странице «Провайдеры и семейства моделей».
Сильные стороны и ограничения
Заголовок раздела «Сильные стороны и ограничения»Сильные стороны:
- Свобода выбора модели: не привязаны ни к одному провайдеру, можно сравнивать модели на своих задачах и переключаться при выходе новых.
- Открытый исходный код и активное сообщество; можно изучить и доработать под себя.
- Гибкая система агентов, разрешений и конфигурации; LSP-интеграция.
- Бесплатен сам по себе: платите только за модели.
Ограничения:
- Фирменные харнесы (Claude Code, Codex) иногда тоньше настроены под «свои» модели: провайдер обучает модель и обвязку вместе. Универсальный харнес такой подгонки не имеет.
- Новые возможности провайдеров могут появляться в OpenCode с задержкой: сообществу нужно время на поддержку.
- Обилие настроек (провайдеры, агенты, разрешения) требует больше внимания при первичной настройке, чем «включил и работает» у фирменных инструментов.
Кому подойдёт
Заголовок раздела «Кому подойдёт»- Тем, кто не хочет привязываться к одному провайдеру или хочет сравнивать модели на реальных задачах.
- Командам с требованиями к инфраструктуре: свои ключи, свои лимиты, локальные модели для чувствительного кода.
- Тем, у кого уже есть подписка ChatGPT или Copilot и кто хочет использовать её в терминальном агенте.
- Сторонникам открытого ПО, которым важно видеть и менять код инструмента.
Как попробовать
Заголовок раздела «Как попробовать»Установка (любой из вариантов):
curl -fsSL https://opencode.ai/install | bashnpm install -g opencode-aiПервый запуск делается из папки проекта:
opencodeВнутри выполните /connect, выберите провайдера и авторизуйтесь (или задайте API-ключ), затем /init для создания AGENTS.md. После этого можно ставить первую задачу.
Что дальше
Заголовок раздела «Что дальше»- pi (pi.dev): противоположный подход: минимальное ядро вместо богатой функциональности.
- Контекст-инжиниринг: как осознанно управлять тем, что видит модель, независимо от харнеса.