OpenCode: агент по написанию кода на основе ИИ, похожий на Claude Code, но для любой языковой модели

Вы программист и ищете более умный и быстрый способ писать код? Представьте, что у вас есть помощник по написанию кода с искусственным интеллектом прямо в окне терминала вашего компьютера. Именно это и предлагает OpenCode! Это ИИ-агент, похожий на Claude Code, который работает с любой языковой моделью.
В этой статье мы расскажем, что такое OpenCode, рассмотрим его функции, а также узнаем, как установить и использовать OpenCode в Linux.
Что такое OpenCode?
OpenCode (https://opencode.ai/) — это агент для написания кода на основе искусственного интеллекта, созданный для терминала вашего компьютера. Его можно представить как полезного помощника, который понимает и пишет код прямо в окне терминала.
По своим возможностям OpenCode очень похож на Claude Code (https://www.anthropic.com/claude-code). В отличие от Claude Code, который привязан к конкретному провайдеру (Anthropic), OpenCode не привязан ни к одному конкретному провайдеру ИИ.
OpenCode разработан таким образом, чтобы быть отзывчивым, простым в использовании и иметь возможность настройки внешнего вида (тем).
Ключевой особенностью является автоматическая загрузка правильных протоколов языкового сервера (LSP), что помогает ИИ совершать меньше ошибок при написании кода.
OpenCode очень гибок, поскольку поддерживает более 75 различных поставщиков больших языковых моделей (LLM) через систему под названием Models.dev (https://models.dev/).
Для тех, кому интересно: Models.dev — это база данных с открытым исходным кодом, в которой содержатся сведения о характеристиках, ценах и функциях многих моделей ИИ.
OpenCode также может использовать модели, которые вы запускаете на своём компьютере. Это значит, что вы не ограничены одной компанией, занимающейся искусственным интеллектом.
Это проект с открытым исходным кодом, распространяемый по лицензии MIT.
Ключевые особенности
OpenCode обладает несколькими ключевыми функциями, которые упрощают и повышают эффективность программирования:
- Собственный интерфейс терминала: OpenCode работает непосредственно в вашем терминале, обеспечивая плавную и быструю работу. Вы даже можете изменить его внешний вид с помощью различных тем в соответствии со своими предпочтениями
- Более продуманный код, меньше ошибок: Он автоматически находит и использует подходящие протоколы языковых серверов (LSP). LSP — это интеллектуальные инструменты, которые помогают ИИ совершать меньше ошибок при написании кода.
- Поддержка нескольких ИИ-помощников: вы можете использовать несколько ИИ-помощников одновременно для работы над разными частями вашего проекта.
- Поделитесь своей работой: если вам нужно поделиться сеансом с коллегой или попросить о помощи, OpenCode позволяет создавать специальные ссылки на сеансы программирования.
- Работа с любой моделью ИИ: OpenCode не привязан к ИИ одной компании. Он может работать с разными поставщиками ИИ и моделями. Хотя часто рекомендуется использовать Anthropic, OpenCode может использовать модели OpenAI, Google, Amazon Bedrock, Azure, DeepSeek, Groq и даже модели, которые вы запускаете на своём компьютере.
- Модель «клиент-сервер»: OpenCode имеет особую структуру, называемую архитектурой «клиент-сервер». Это позволяет ИИ работать на одном компьютере, а управлять им можно с другого устройства, например с мобильного телефона. Терминальный интерфейс — это лишь один из способов его использования.
- Работает на базе Models.dev: откуда OpenCode знает о таком количестве моделей ИИ? Он использует Models.dev — базу данных с информацией о моделях ИИ с открытым исходным кодом. В этой базе данных есть важные сведения, например о стоимости использования каждой модели (за миллион токенов), её функциях (например, поддерживает ли она вызов инструментов или прикрепление файлов) и о том, какой объём текста она может обработать за один раз (ограничение по контексту). OpenCode использует эту информацию, чтобы помочь вам выбрать подходящую модель и понять её возможности. Вы даже можете внести свой вклад в эту базу данных, чтобы она постоянно обновлялась!
- Бесплатное ПО с открытым исходным кодом: это полностью открытое ПО, и его код находится в свободном доступе на GitHub, где любой может его просмотреть и улучшить.
Установите OpenCode в Linux
Вы можете установить OpenCode с помощью менеджеров пакетов Node. js, таких как npm, Bun, pnpm или Yarn.
Например:
npm install -g opencode-ai
Вы также можете установить OpenCode с помощью официального скрипта установки:
curl -fsSL https://opencode.ai/install | bash
Если вы используете Arch Linux, вы можете установить OpenCode с помощью Paru или Yay AUR helpers.
Использование Paru:
paru -S opencode-bin
Или используя Yay:
yay -S opencode-bin
Как использовать OpenCode
В OpenCode есть специальные команды, которые можно ввести в терминале вашего компьютера, чтобы использовать его.
Чтобы начать использовать OpenCode в текущей папке проекта, просто введите:
opencode
Вы также можете указать другую папку с проектом:
opencode /path/to/project
Основные команды OpenCode
1. Команда run [message..]
Нужен быстрый фрагмент кода или объяснение без запуска полноценного интерактивного инструмента? Вы можете использовать команду run [message..]
.
Вы можете напрямую задать вопрос, что удобно для написания сценариев или получения быстрого ответа. Например:
opencode run Explain the use of context in Go
Вы можете использовать такие флаги, как --continue
(-c
), чтобы выбрать последнюю сессию, --session
(-s
) — для выбора конкретной сессии, --share
— для совместного использования сессии и --model
(-m
) — для выбора конкретной модели ИИ.
2. Команда auth [command]
OpenCode упрощает вход в аккаунты поставщиков ИИ (например, Anthropic или OpenAI) с помощью auth [command]
. Эта команда помогает управлять данными для входа в аккаунты поставщиков ИИ.
auth login
: Позволяет войти в систему провайдера.auth list
илиauth ls
: показывает, какие провайдеры вошли в систему.auth logout
: Выход из аккаунта провайдера.
3. Команда upgrade [target]
Команда upgrade [target]
обновляет OpenCode до последней версии или до определённой более ранней версии.
Чтобы обновить систему до последней версии, выполните команду:
opencode upgrade
Чтобы обновиться до определённой версии, например v0.1.48
:
opencode upgrade v0.1.48
OpenCode также принимает эти общие флаги при запуске:
--help
(-h
): отображает справочную информацию.--version
: выводит номер версии OpenCode.--print-logs
: Отображает сообщения журнала в терминале.--prompt
(-p
): позволяет задать запрос для OpenCode.--model
(-m
): указывает, какую модель ИИ использовать, в форматеprovider/model
.
Как настроить OpenCode
OpenCode использует файл конфигурации JSON для настройки параметров. Этот файл может находиться в двух местах:
- Глобально: в вашем домашнем каталоге (
~/.config/opencode/config.json
). Это удобно для общих настроек, таких как темы или провайдеры. - Для каждого проекта: в основной папке вашего проекта (
opencode.json
). Вы можете безопасно делиться этим файлом с другими пользователями Git. Это удобно, если в разных проектах используются разные поставщики ИИ.
При запуске OpenCode ищет этот файл конфигурации в текущей папке или в папках вашего проекта, пока не найдёт каталог Git.
В файле конфигурации используется специальный шаблон, называемый «схемой» (https://opencode.ai/config.json
), который помогает вашему редактору кода проверять код на наличие ошибок и предлагать варианты.
В этом файле можно задать множество параметров, в том числе:
theme
: меняет внешний вид OpenCode.model
: Устанавливает модель ИИ по умолчанию, например"anthropic/claude-sonnet-4-20250514"
.autoshare
: автоматически распределяет сеансы (может бытьtrue
илиfalse
).autoupdate
: Автоматически обновляет OpenCode (может бытьtrue
илиfalse
).provider
Позволяет добавлять пользовательских поставщиков ИИ и их модели.log_level
: Определяет, какой объём информации OpenCode сохраняет в своих лог-файлах. Варианты:DEBUG
(все сообщения),INFO
(общие сообщения, используется по умолчанию),WARN
(предупреждения и ошибки) иERROR
(только ошибки). Лог-файлы хранятся в определённых папках в зависимости от вашей операционной системы.keybinds
: Позволяет изменить сочетания клавиш, используемые в OpenCode.mcp
: Настраивает параметры для серверов MCP.disabled_providers
Список провайдеров, которых OpenCode не должен загружать, даже если их данные для входа доступны.
Модели и поставщики Услуг
OpenCode использует систему под названием Models.dev, которая представляет собой базу данных с информацией о моделях ИИ с открытым исходным кодом.
В этой базе данных содержится подробная информация о более чем 75 различных поставщиках ИИ и их моделях, включая их стоимость, функции и ограничения. OpenCode использует эту информацию в своих целях.
Models.dev помогает OpenCode поддерживать множество различных моделей ИИ, в том числе те, которые можно запускать локально на вашем компьютере.
Вы даже можете просмотреть подробную информацию о таких моделях, как Claude от Amazon Bedrock, Claude от Anthropic, GPT от Azure, Gemini от Google и многих других, а также узнать об их стоимости ввода/вывода и ограничениях по контексту.
Управление Поставщиками Услуг
Вы можете войти в систему и сохранить данные для входа с помощью команды:
opencode auth login
Затем OpenCode загрузит этих провайдеров из специального файла на вашем компьютере (~/.local/share/opencode/auth.json
).
OpenCode также может автоматически загружать провайдеров, если обнаружит ключи API в настройках среды вашего компьютера или в .env
-файле вашего проекта.
Вы можете посмотреть список всех авторизованных провайдеров, введя команду:
opencode auth list
или,
opencode auth ls
Чтобы выйти из аккаунта провайдера, вы можете удалить его данные из файла учётных данных с помощью:
opencode auth logout
Вы также можете отключить некоторых провайдеров в настройках OpenCode. Это предотвратит их загрузку, даже если у вас есть их данные для входа.
Выбор моделей
Если у вас много моделей, вы можете выбрать, какую из них использовать, введя /models
в OpenCode.
OpenCode определяет, какую модель использовать, проверяя ваш файл конфигурации, запоминая последнюю использованную модель или выбирая модель на основе её внутреннего приоритета.
Пользовательские и локальные модели
Вы можете добавить собственных провайдеров, указав их npm-пакет в конфигурации OpenCode. Для локальных моделей также необходимо указать baseURL
, где они работают.
Заключение
OpenCode — это мощный ИИ-агент для написания кода прямо в вашем терминале.
Он обеспечивает гибкость за счёт поддержки множества различных моделей ИИ и поставщиков через Models.dev. Это значит, что вы можете выбрать наиболее подходящую и экономичную модель ИИ для своих нужд.
Возможность загружать LSP-скрипты помогает ИИ писать более точный код, а такие функции, как поддержка нескольких сеансов и возможность делиться ссылками, делают его универсальным инструментом для разработчиков.
Более подробную информацию можно найти в репозитории OpenCode на GitHub: https://github.com/sst/opencode.
Редактор: AndreyEx