Перейти к содержимому

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 access
opencode web --port 4096 --hostname 0.0.0.0
# In another terminal, attach the TUI to the running backend
opencode attach http://10.20.30.40:4096

Флаги

ФлагКороткийОписание
--dirРабочий каталог для запуска TUI
--session-sИдентификатор сеанса для продолжения

create

Создайте нового агента с пользовательской конфигурацией.

Окно терминала
opencode agent create

Эта команда поможет вам создать новый агент с настраиваемой системной подсказкой и настройкой инструмента.


list

Перечислите всех доступных агентов.

Окно терминала
opencode agent list

auth

Команда для управления учетными данными и входом в систему для провайдеров.

Окно терминала
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 ls

logout

Выключает вас из провайдера, удаляя его из файла учетных данных.

Окно терминала
opencode auth logout

github

Управляйте агентом 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 ls

auth

Аутентификация с помощью сервера MCP с поддержкой OAuth.

Окно терминала
opencode mcp auth [name]

Если вы не укажете имя сервера, вам будет предложено выбрать один из доступных серверов с поддержкой OAuth.

Вы также можете перечислить серверы с поддержкой OAuth и их статус аутентификации.

Окно терминала
opencode mcp auth list

Или используйте короткую версию.

Окно терминала
opencode mcp auth ls

logout

Удалите учетные данные 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 --refresh

run

Запустите opencode в неинтерактивном режиме, передав приглашение напрямую.

Окно терминала
opencode run [message..]

Это полезно для создания сценариев, автоматизации или когда вам нужен быстрый ответ без запуска полного TUI. Например.

Окно терминала
opencode run Explain the use of context in Go

Вы также можете подключиться к работающему экземпляру opencode serve, чтобы избежать холодной загрузки сервера MCP при каждом запуске:

Окно терминала
# Start a headless server in one terminal
opencode serve
# In another terminal, run commands that attach to it
opencode 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.json
opencode import https://opncd.ai/s/abc123

web

Запустите автономный сервер 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логическое значениеВключить режим плана