CLI
Параметры и команда opencode CLI.
CLI opencode по умолчанию запускает TUI при запуске без каких-либо аргументов.
opencodeНо он также принимает команды, описанные на этой странице. Это позволяет вам программно взаимодействовать с opencode.
opencode run "Explain how closures work in JavaScript"tui
Запустите TUI opencode.
opencode [project]Флаги
| Флаг | Короткий | Описание |
|---|---|---|
--continue | -c | Продолжить последний сеанс |
--session | -s | Идентификатор сеанса для продолжения |
--fork | Разветвить сеанс при продолжении (используйте с --continue или --session) | |
--prompt | Подскажите использовать | |
--model | -m | Модель для использования в виде поставщика/модели. |
--agent | Агент для использования | |
--port | Порт для прослушивания | |
--hostname | Имя хоста для прослушивания |
Команды
CLI opencode также имеет следующие команды.
agent
Управляйте агентами для opencode.
opencode agent [command]attach
Подключите терминал к уже работающему внутреннему серверу opencode, запущенному с помощью команд serve или web.
opencode attach [url]Это позволяет использовать TUI с удаленным сервером opencode. Например:
# Start the backend server for web/mobile accessopencode web --port 4096 --hostname 0.0.0.0
# In another terminal, attach the TUI to the running backendopencode attach http://10.20.30.40:4096Флаги
| Флаг | Короткий | Описание |
|---|---|---|
--dir | Рабочий каталог для запуска TUI | |
--session | -s | Идентификатор сеанса для продолжения |
create
Создайте нового агента с пользовательской конфигурацией.
opencode agent createЭта команда поможет вам создать новый агент с настраиваемой системной подсказкой и настройкой инструмента.
list
Перечислите всех доступных агентов.
opencode agent listauth
Команда для управления учетными данными и входом в систему для провайдеров.
opencode auth [command]login
opencode основан на списке поставщиков по адресу Models.dev), поэтому вы можете использовать opencode auth login для настройки ключей API для любого поставщика, которого вы хотите использовать. Это хранится в ~/.local/share/opencode/auth.json.
opencode auth loginКогда opencode запускается, он загружает поставщиков из файла учетных данных. И если в ваших средах определены какие-либо ключи или файл .env в вашем проекте.
list
Перечисляет всех проверенных поставщиков, которые хранятся в файле учетных данных.
opencode auth listИли короткая версия.
opencode auth lslogout
Выключает вас из провайдера, удаляя его из файла учетных данных.
opencode auth logoutgithub
Управляйте агентом GitHub для автоматизации репозитория.
opencode github [command]install
Установите агент GitHub в свой репозиторий.
opencode github installЭто настроит необходимый рабочий процесс GitHub Actions и проведет вас через процесс настройки. Подробнее.
run
Запустите агент GitHub. Обычно это используется в действиях GitHub.
opencode github runФлаги
| Флаг | Описание |
|---|---|
--event | Имитирующее событие GitHub для запуска агента |
--token | Токен личного доступа GitHub |
mcp
Управляйте серверами протокола контекста модели.
opencode mcp [command]add
Добавьте сервер MCP в свою конфигурацию.
opencode mcp addЭта команда поможет вам добавить локальный или удаленный сервер MCP.
list
Перечислите все настроенные серверы MCP и состояние их подключения.
opencode mcp listИли используйте короткую версию.
opencode mcp lsauth
Аутентификация с помощью сервера MCP с поддержкой OAuth.
opencode mcp auth [name]Если вы не укажете имя сервера, вам будет предложено выбрать один из доступных серверов с поддержкой OAuth.
Вы также можете перечислить серверы с поддержкой OAuth и их статус аутентификации.
opencode mcp auth listИли используйте короткую версию.
opencode mcp auth lslogout
Удалите учетные данные OAuth для сервера MCP.
opencode mcp logout [name]debug
Отладка проблем с подключением OAuth для сервера MCP.
opencode mcp debug <name>models
Перечислите все доступные модели от настроенных поставщиков.
opencode models [provider]Эта команда отображает все модели, доступные у настроенных вами поставщиков, в формате provider/model.
Это полезно для определения точного названия модели, которое будет использоваться в вашем config.
При желании вы можете передать идентификатор поставщика, чтобы фильтровать модели по этому поставщику.
opencode models anthropicФлаги
| Флаг | Описание |
|---|---|
--refresh | Обновите кеш моделей на сайте models.dev. |
--verbose | Используйте более подробный вывод модели (включая метаданные, такие как затраты). |
Используйте флаг --refresh для обновления списка кэшированных моделей. Это полезно, когда к поставщику добавлены новые модели и вы хотите увидеть их в opencode.
opencode models --refreshrun
Запустите opencode в неинтерактивном режиме, передав приглашение напрямую.
opencode run [message..]Это полезно для создания сценариев, автоматизации или когда вам нужен быстрый ответ без запуска полного TUI. Например.
opencode run Explain the use of context in GoВы также можете подключиться к работающему экземпляру opencode serve, чтобы избежать холодной загрузки сервера MCP при каждом запуске:
# Start a headless server in one terminalopencode serve
# In another terminal, run commands that attach to itopencode run --attach http://localhost:4096 "Explain async/await in JavaScript"Флаги
| Флаг | Короткий | Описание |
|---|---|---|
--command | Команда для запуска, используйте сообщение для аргументов | |
--continue | -c | Продолжить последний сеанс |
--session | -s | Идентификатор сеанса для продолжения |
--fork | Разветвить сеанс при продолжении (используйте с --continue или --session) | |
--share | Поделиться сеансом | |
--model | -m | Модель для использования в виде поставщика/модели. |
--agent | Агент для использования | |
--file | -f | Файл(ы) для прикрепления к сообщению |
--format | Формат: по умолчанию (отформатированный) или json (необработанные события JSON). | |
--title | Название сеанса (использует усеченное приглашение, если значение не указано) | |
--attach | Подключитесь к работающему серверу opencode (например, http://localhost:4096) | |
--port | Порт локального сервера (по умолчанию случайный порт) |
serve
Запустите автономный сервер opencode для доступа к API. Полный HTTP-интерфейс можно найти в server docs.
opencode serveПри этом запускается HTTP-сервер, который обеспечивает доступ API к функциям opencode без интерфейса TUI. Установите OPENCODE_SERVER_PASSWORD, чтобы включить базовую аутентификацию HTTP (имя пользователя по умолчанию — opencode).
Флаги
| Флаг | Описание |
|---|---|
--port | Порт для прослушивания |
--hostname | Имя хоста для прослушивания |
--mdns | Включить обнаружение mDNS |
--cors | Дополнительные источники браузера, позволяющие разрешить CORS |
session
Управляйте сессиями opencode.
opencode session [command]list
Перечислите все сеансы opencode.
opencode session listФлаги
| Флаг | Короткий | Описание |
|---|---|---|
--max-count | -n | Ограничить N последних сеансов. |
--format | Формат вывода: таблица или json (таблица) |
stats
Покажите статистику использования токенов и затрат для ваших сеансов opencode.
opencode statsФлаги
| Флаг | Описание |
|---|---|
--days | Показать статистику за последние N дней (все время) |
--tools | Количество инструментов для отображения (все) |
--models | Показать разбивку по использованию модели (по умолчанию скрыто). Передайте номер, чтобы показать верхнюю N |
--project | Фильтровать по проекту (все проекты, пустая строка: текущий проект) |
export
Экспортируйте данные сеанса в формате JSON.
opencode export [sessionID]Если вы не укажете идентификатор сеанса, вам будет предложено выбрать один из доступных сеансов.
import
Импортируйте данные сеанса из файла JSON или URL-адреса общего ресурса opencode.
opencode import <file>Вы можете импортировать из локального файла или URL-адреса общего ресурса opencode.
opencode import session.jsonopencode import https://opncd.ai/s/abc123web
Запустите автономный сервер opencode с веб-интерфейсом.
opencode webПри этом запускается HTTP-сервер и открывается веб-браузер для доступа к opencode через веб-интерфейс. Установите OPENCODE_SERVER_PASSWORD, чтобы включить базовую аутентификацию HTTP (имя пользователя по умолчанию — opencode).
Флаги
| Флаг | Описание |
|---|---|
--port | Порт для прослушивания |
--hostname | Имя хоста для прослушивания |
--mdns | Включить обнаружение mDNS |
--cors | Дополнительные источники браузера, позволяющие разрешить CORS |
acp
Запустите сервер ACP (агент-клиентский протокол).
opencode acpЭта команда запускает сервер ACP, который обменивается данными через stdin/stdout с использованием nd-JSON.
Флаги
| Флаг | Описание |
|---|---|
--cwd | Рабочий каталог |
--port | Порт для прослушивания |
--hostname | Имя хоста для прослушивания |
uninstall
Удалите opencode и удалите все связанные файлы.
opencode uninstallФлаги
| Флаг | Короткий | Описание |
|---|---|---|
--keep-config | -c | Сохраняйте файлы конфигурации |
--keep-data | -d | Храните данные сеанса и снимки |
--dry-run | Покажите, что было бы удалено без удаления | |
--force | -f | Пропустить запросы подтверждения |
upgrade
Обновляет opencode до последней версии или определенной версии.
opencode upgrade [target]Чтобы обновиться до последней версии.
opencode upgradeДля обновления до определенной версии.
opencode upgrade v0.1.48Флаги
| Флаг | Короткий | Описание |
|---|---|---|
--method | -m | Используемый метод установки: local, npm, pnpm, bun, brew |
Глобальные флаги
CLI opencode принимает следующие глобальные флаги.
| Флаг | Короткий | Описание |
|---|---|---|
--help | -h | Отобразить справку |
--version | -v | Распечатать номер версии |
--print-logs | Печать журналов в stderr | |
--log-level | Уровень журнала (DEBUG, INFO, WARN, ERROR) |
Переменные среды
opencode можно настроить с помощью переменных среды.
| Переменная | Тип | Описание |
|---|---|---|
OPENCODE_AUTO_SHARE | логическое значение | Автоматически делиться сеансами |
OPENCODE_GIT_BASH_PATH | строка | Путь к исполняемому файлу Git Bash в Windows |
OPENCODE_CONFIG | строка | Путь к файлу конфигурации |
OPENCODE_CONFIG_DIR | строка | Путь к каталогу конфигурации |
OPENCODE_CONFIG_CONTENT | строка | Встроенное содержимое конфигурации json |
OPENCODE_DISABLE_AUTOUPDATE | логическое значение | Отключить автоматическую проверку обновлений |
OPENCODE_DISABLE_PRUNE | логическое значение | Отключить удаление старых данных |
OPENCODE_DISABLE_TERMINAL_TITLE | логическое значение | Отключить автоматическое обновление заголовка терминала |
OPENCODE_PERMISSION | строка | Встроенная конфигурация разрешений json |
OPENCODE_DISABLE_DEFAULT_PLUGINS | логическое значение | Отключить плагины по умолчанию |
OPENCODE_DISABLE_LSP_DOWNLOAD | логическое значение | Отключить автоматическую загрузку LSP-сервера |
OPENCODE_ENABLE_EXPERIMENTAL_MODELS | логическое значение | Включить экспериментальные модели |
OPENCODE_DISABLE_AUTOCOMPACT | логическое значение | Отключить автоматическое сжатие контекста |
OPENCODE_DISABLE_CLAUDE_CODE | логическое значение | Отключить чтение из .claude (подсказка + навыки) |
OPENCODE_DISABLE_CLAUDE_CODE_PROMPT | логическое значение | Отключить чтение ~/.claude/CLAUDE.md |
OPENCODE_DISABLE_CLAUDE_CODE_SKILLS | логическое значение | Отключить загрузку .claude/skills |
OPENCODE_DISABLE_MODELS_FETCH | логическое значение | Отключить получение моделей из удаленных источников |
OPENCODE_FAKE_VCS | строка | Поддельный поставщик VCS для целей тестирования |
OPENCODE_DISABLE_FILETIME_CHECK | логическое значение | Отключить проверку времени файла для оптимизации |
OPENCODE_CLIENT | строка | Идентификатор клиента (по умолчанию cli) |
OPENCODE_ENABLE_EXA | логическое значение | Включить инструменты веб-поиска Exa |
OPENCODE_SERVER_PASSWORD | строка | Включить базовую аутентификацию для serve/web |
OPENCODE_SERVER_USERNAME | строка | Переопределить имя пользователя базовой аутентификации (по умолчанию opencode) |
OPENCODE_MODELS_URL | строка | Пользовательский URL-адрес для получения конфигурации модели |
Экспериментальный
Эти переменные среды позволяют использовать экспериментальные функции, которые могут быть изменены или удалены.
| Переменная | Тип | Описание |
|---|---|---|
OPENCODE_EXPERIMENTAL | логическое значение | Включить все экспериментальные функции |
OPENCODE_EXPERIMENTAL_ICON_DISCOVERY | логическое значение | Включить обнаружение значков |
OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT | логическое значение | Отключить копирование при выборе в TUI |
OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MS | число | Таймаут по умолчанию для команд bash в мс |
OPENCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAX | число | Максимальное количество токенов вывода для ответов LLM |
OPENCODE_EXPERIMENTAL_FILEWATCHER | логическое значение | Включить просмотр файлов для всего каталога |
OPENCODE_EXPERIMENTAL_OXFMT | логическое значение | Включить форматтер oxfmt |
OPENCODE_EXPERIMENTAL_LSP_TOOL | логическое значение | Включить экспериментальный инструмент LSP |
OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHER | логическое значение | Отключить просмотрщик файлов |
OPENCODE_EXPERIMENTAL_EXA | логическое значение | Включить экспериментальные функции Exa |
OPENCODE_EXPERIMENTAL_LSP_TY | логическое значение | Включить экспериментальную проверку типа LSP |
OPENCODE_EXPERIMENTAL_MARKDOWN | логическое значение | Включить экспериментальные функции Markdown |
OPENCODE_EXPERIMENTAL_PLAN_MODE | логическое значение | Включить режим плана |