CLI
Параметры и команды CLI OpenCode.
CLI OpenCode по умолчанию запускает TUI при запуске без аргументов.
opencodeНо также принимает команды, описанные на этой странице. Это позволяет взаимодействовать с OpenCode программно.
opencode run "Explain how closures work in JavaScript"tui
Запуск терминального пользовательского интерфейса OpenCode.
opencode [project]Флаги
| Флаг | Сокр. | Описание |
|---|---|---|
--continue | -c | Продолжить последнюю сессию |
--session | -s | ID сессии для продолжения |
--prompt | Промпт для использования | |
--model | -m | Модель в формате provider/model |
--agent | Агент для использования | |
--port | Порт для прослушивания | |
--hostname | Имя хоста для прослушивания |
Команды
CLI OpenCode также имеет следующие команды.
agent
Управление агентами для OpenCode.
opencode agent [command]attach
Подключение терминала к уже запущенному серверу OpenCode, запущенному через команды serve или web.
opencode attach [url]Это позволяет использовать TUI с удалённым бэкендом OpenCode. Например:
# Запуск бэкенд-сервера для веб/мобильного доступа
opencode web --port 4096 --hostname 0.0.0.0
# В другом терминале подключаем TUI к работающему бэкенду
opencode attach http://10.20.30.40:4096Флаги
| Флаг | Сокр. | Описание |
|---|---|---|
--dir | Рабочая директория для запуска TUI | |
--session | -s | ID сессии для продолжения |
create
Создание нового агента с пользовательской конфигурацией.
opencode agent createЭта команда проведёт вас через создание нового агента с пользовательским системным промптом и конфигурацией инструментов.
list
Список всех доступных агентов.
opencode agent listauth
Команда для управления учётными данными и входом для провайдеров.
opencode auth [command]login
OpenCode использует список провайдеров с Models.dev (opens in a new tab), поэтому вы можете использовать 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Это настраивает необходимый workflow GitHub Actions и проводит вас через процесс конфигурации. Подробнее.
run
Запуск GitHub-агента. Обычно используется в GitHub Actions.
opencode github runФлаги
| Флаг | Описание |
|---|---|
--event | Тестовое событие GitHub для запуска агента |
--token | Персональный токен доступа GitHub |
mcp
Управление серверами Model Context Protocol.
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.
Это полезно для определения точного имени модели для использования в вашей конфигурации.
Вы можете опционально передать ID провайдера для фильтрации моделей по этому провайдеру.
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-сервера при каждом запуске:
# Запуск headless-сервера в одном терминале
opencode serve
# В другом терминале выполняем команды, подключаясь к нему
opencode run --attach http://localhost:4096 "Explain async/await in JavaScript"Флаги
| Флаг | Сокр. | Описание |
|---|---|---|
--command | Команда для выполнения, используйте message для аргументов | |
--continue | -c | Продолжить последнюю сессию |
--session | -s | ID сессии для продолжения |
--share | Поделиться сессией | |
--model | -m | Модель в формате provider/model |
--agent | Агент для использования | |
--file | -f | Файл(ы) для прикрепления к сообщению |
--format | Формат: default (форматированный) или json (сырые JSON-события) | |
--title | Заголовок для сессии (использует усечённый промпт, если значение не указано) | |
--attach | Подключиться к работающему серверу opencode (например, http://localhost:4096 (opens in a new tab)) | |
--port | Порт для локального сервера (по умолчанию случайный порт) |
serve
Запуск headless-сервера OpenCode для API-доступа. Смотрите документацию сервера для полного HTTP-интерфейса.
opencode serveЭто запускает HTTP-сервер, предоставляющий API-доступ к функциональности opencode без TUI-интерфейса. Установите OPENCODE_SERVER_PASSWORD для включения HTTP basic auth (имя пользователя по умолчанию opencode).
Флаги
| Флаг | Описание |
|---|---|
--port | Порт для прослушивания |
--hostname | Имя хоста для прослушивания |
--mdns | Включить обнаружение mDNS |
--cors | Дополнительные источники браузера для разрешения CORS |
session
Управление сессиями OpenCode.
opencode session [command]list
Список всех сессий OpenCode.
opencode session listФлаги
| Флаг | Сокр. | Описание |
|---|---|---|
--max-count | -n | Ограничить N последними сессиями |
--format | Формат вывода: table или json (table) |
stats
Показать статистику использования токенов и стоимости для ваших сессий OpenCode.
opencode statsФлаги
| Флаг | Описание |
|---|---|
--days | Показать статистику за последние N дней (всё время) |
--tools | Количество инструментов для отображения (все) |
--models | Показать разбивку использования моделей (скрыто по умолчанию). Передайте число для показа топ N |
--project | Фильтр по проекту (все проекты, пустая строка: текущий проект) |
export
Экспорт данных сессии в JSON.
opencode export [sessionID]Если вы не укажете ID сессии, вам будет предложено выбрать из доступных сессий.
import
Импорт данных сессии из JSON-файла или URL для обмена OpenCode.
opencode import <file>Вы можете импортировать из локального файла или URL для обмена OpenCode.
opencode import session.json
opencode import https://opncd.ai/s/abc123web
Запуск headless-сервера OpenCode с веб-интерфейсом.
opencode webЭто запускает HTTP-сервер и открывает веб-браузер для доступа к OpenCode через веб-интерфейс. Установите OPENCODE_SERVER_PASSWORD для включения HTTP basic auth (имя пользователя по умолчанию opencode).
Флаги
| Флаг | Описание |
|---|---|
--port | Порт для прослушивания |
--hostname | Имя хоста для прослушивания |
--mdns | Включить обнаружение mDNS |
--cors | Дополнительные источники браузера для разрешения CORS |
acp
Запуск сервера ACP (Agent Client Protocol).
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 | Метод установки, который был использован; curl, npm, pnpm, bun, brew |
Глобальные флаги
CLI opencode принимает следующие глобальные флаги.
| Флаг | Сокр. | Описание |
|---|---|---|
--help | -h | Показать справку |
--version | -v | Вывести номер версии |
--print-logs | Выводить логи в stderr | |
--log-level | Уровень логирования (DEBUG, INFO, WARN, ERROR) |
Переменные окружения
OpenCode можно настроить с помощью переменных окружения.
| Переменная | Тип | Описание |
|---|---|---|
OPENCODE_AUTO_SHARE | boolean | Автоматически делиться сессиями |
OPENCODE_GIT_BASH_PATH | string | Путь к исполняемому файлу Git Bash в Windows |
OPENCODE_CONFIG | string | Путь к файлу конфигурации |
OPENCODE_CONFIG_DIR | string | Путь к директории конфигурации |
OPENCODE_CONFIG_CONTENT | string | Встроенное содержимое json-конфигурации |
OPENCODE_DISABLE_AUTOUPDATE | boolean | Отключить автоматическую проверку обновлений |
OPENCODE_DISABLE_PRUNE | boolean | Отключить очистку старых данных |
OPENCODE_DISABLE_TERMINAL_TITLE | boolean | Отключить автоматическое обновление заголовка терминала |
OPENCODE_PERMISSION | string | Встроенная json-конфигурация разрешений |
OPENCODE_DISABLE_DEFAULT_PLUGINS | boolean | Отключить плагины по умолчанию |
OPENCODE_DISABLE_LSP_DOWNLOAD | boolean | Отключить автоматическую загрузку LSP-серверов |
OPENCODE_ENABLE_EXPERIMENTAL_MODELS | boolean | Включить экспериментальные модели |
OPENCODE_DISABLE_AUTOCOMPACT | boolean | Отключить автоматическое сжатие контекста |
OPENCODE_DISABLE_CLAUDE_CODE | boolean | Отключить чтение .claude (prompt + skills) |
OPENCODE_DISABLE_CLAUDE_CODE_PROMPT | boolean | Отключить чтение ~/.claude/CLAUDE.md |
OPENCODE_DISABLE_CLAUDE_CODE_SKILLS | boolean | Отключить загрузку .claude/skills |
OPENCODE_DISABLE_MODELS_FETCH | boolean | Отключить получение моделей из удалённых источников |
OPENCODE_FAKE_VCS | string | Фиктивный VCS-провайдер для тестирования |
OPENCODE_DISABLE_FILETIME_CHECK | boolean | Отключить проверку времени файлов для оптимизации |
OPENCODE_CLIENT | string | Идентификатор клиента (по умолчанию cli) |
OPENCODE_ENABLE_EXA | boolean | Включить инструменты веб-поиска Exa |
OPENCODE_SERVER_PASSWORD | string | Включить basic auth для serve/web |
OPENCODE_SERVER_USERNAME | string | Переопределить имя пользователя basic auth (по умолчанию opencode) |
OPENCODE_MODELS_URL | string | Пользовательский URL для получения конфигурации моделей |
Экспериментальные
Эти переменные окружения включают экспериментальные функции, которые могут измениться или быть удалены.
| Переменная | Тип | Описание |
|---|---|---|
OPENCODE_EXPERIMENTAL | boolean | Включить все экспериментальные функции |
OPENCODE_EXPERIMENTAL_ICON_DISCOVERY | boolean | Включить обнаружение иконок |
OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT | boolean | Отключить копирование при выделении в TUI |
OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MS | number | Таймаут по умолчанию для bash-команд в мс |
OPENCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAX | number | Максимальное количество выходных токенов для ответов LLM |
OPENCODE_EXPERIMENTAL_FILEWATCHER | boolean | Включить наблюдатель файлов для всей директории |
OPENCODE_EXPERIMENTAL_OXFMT | boolean | Включить форматтер oxfmt |
OPENCODE_EXPERIMENTAL_LSP_TOOL | boolean | Включить экспериментальный инструмент LSP |
OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHER | boolean | Отключить наблюдатель файлов |
OPENCODE_EXPERIMENTAL_EXA | boolean | Включить экспериментальные функции Exa |
OPENCODE_EXPERIMENTAL_LSP_TY | boolean | Включить экспериментальную проверку типов LSP |
OPENCODE_EXPERIMENTAL_MARKDOWN | boolean | Включить экспериментальные функции markdown |
OPENCODE_EXPERIMENTAL_PLAN_MODE | boolean | Включить режим планирования |