--- title: интерфейс командной строки description: Параметры и команда OpenCode CLI. --- import { Tabs, TabItem } from "@astrojs/starlight/components" Интерфейс командной строки OpenCode по умолчанию запускает [TUI](/docs/tui) при запуске без каких-либо аргументов. ```bash opencode ``` Но он также принимает команды, описанные на этой странице. Это позволяет вам программно взаимодействовать с OpenCode. ```bash opencode run "Explain how closures work in JavaScript" ``` --- ### туй Запустите пользовательский интерфейс терминала OpenCode. ```bash opencode [project] ``` #### Флаги | Флаг | Короткий | Описание | | ------------ | -------- | -------------------------------------------------- | | `--continue` | `-c` | Продолжить последний сеанс | | `--session` | `-s` | Идентификатор сеанса для продолжения | | `--prompt` | | Подскажите использовать | | `--model` | `-m` | Модель для использования в виде поставщика/модели. | | `--agent` | | Агент для использования | | `--port` | | Порт для прослушивания | | `--hostname` | | Имя хоста для прослушивания | --- ## Команды Интерфейс командной строки OpenCode также имеет следующие команды. --- ### агент Управляйте агентами для OpenCode. ```bash opencode agent [command] ``` --- ### прикреплять Подключите терминал к уже работающему внутреннему серверу OpenCode, запущенному с помощью команд `serve` или `web`. ```bash opencode attach [url] ``` Это позволяет использовать TUI с удаленным сервером OpenCode. Например: ```bash # 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` | Идентификатор сеанса для продолжения | --- #### создавать Создайте нового агента с пользовательской конфигурацией. ```bash opencode agent create ``` Эта команда поможет вам создать новый агент с настраиваемой системной подсказкой и настройкой инструмента. --- #### список Перечислите всех доступных агентов. ```bash opencode agent list ``` --- ### авторизация Команда для управления учетными данными и входом в систему для провайдеров. ```bash opencode auth [command] ``` --- #### авторизоваться OpenCode основан на списке поставщиков по адресу [Models.dev](https://models.dev)), поэтому вы можете использовать `opencode auth login` для настройки ключей API для любого поставщика, которого вы хотите использовать. Это хранится в `~/.local/share/opencode/auth.json`. ```bash opencode auth login ``` Когда OpenCode запускается, он загружает поставщиков из файла учетных данных. И если в ваших средах определены какие-либо ключи или файл `.env` в вашем проекте. --- #### список Перечисляет всех проверенных поставщиков, которые хранятся в файле учетных данных. ```bash opencode auth list ``` Или короткая версия. ```bash opencode auth ls ``` --- #### выход из системы Выключает вас из провайдера, удаляя его из файла учетных данных. ```bash opencode auth logout ``` --- ### github Управляйте агентом GitHub для автоматизации репозитория. ```bash opencode github [command] ``` --- #### установить Установите агент GitHub в свой репозиторий. ```bash opencode github install ``` Это настроит необходимый рабочий процесс GitHub Actions и проведет вас через процесс настройки. [Подробнее](/docs/github). --- #### бегать Запустите агент GitHub. Обычно это используется в действиях GitHub. ```bash opencode github run ``` ##### Флаги | Флаг | Описание | | --------- | --------------------------------------------- | | `--event` | Имитирующее событие GitHub для запуска агента | | `--token` | Токен личного доступа GitHub | --- ### мкп Управляйте серверами протокола контекста модели. ```bash opencode mcp [command] ``` --- #### добавлять Добавьте сервер MCP в свою конфигурацию. ```bash opencode mcp add ``` Эта команда поможет вам добавить локальный или удаленный сервер MCP. --- #### список Перечислите все настроенные серверы MCP и состояние их подключения. ```bash opencode mcp list ``` Или используйте короткую версию. ```bash opencode mcp ls ``` --- #### авторизация Аутентификация с помощью сервера MCP с поддержкой OAuth. ```bash opencode mcp auth [name] ``` Если вы не укажете имя сервера, вам будет предложено выбрать один из доступных серверов с поддержкой OAuth. Вы также можете перечислить серверы с поддержкой OAuth и их статус аутентификации. ```bash opencode mcp auth list ``` Или используйте короткую версию. ```bash opencode mcp auth ls ``` --- #### выход из системы Удалите учетные данные OAuth для сервера MCP. ```bash opencode mcp logout [name] ``` --- #### отлаживать Отладка проблем с подключением OAuth для сервера MCP. ```bash opencode mcp debug ``` --- ### модели Перечислите все доступные модели от настроенных поставщиков. ```bash opencode models [provider] ``` Эта команда отображает все модели, доступные у настроенных вами поставщиков, в формате `provider/model`. Это полезно для определения точного названия модели, которое будет использоваться в [вашем config](/docs/config/). При желании вы можете передать идентификатор поставщика, чтобы фильтровать модели по этому поставщику. ```bash opencode models anthropic ``` #### Флаги | Флаг | Описание | | ----------- | --------------------------------------------------------------------------------- | | `--refresh` | Обновите кеш моделей на сайте models.dev. | | `--verbose` | Используйте более подробный вывод модели (включая метаданные, такие как затраты). | Используйте флаг `--refresh` для обновления списка кэшированных моделей. Это полезно, когда к поставщику добавлены новые модели и вы хотите увидеть их в OpenCode. ```bash opencode models --refresh ``` --- ### бегать Запустите открытый код в неинтерактивном режиме, передав приглашение напрямую. ```bash opencode run [message..] ``` Это полезно для создания сценариев, автоматизации или когда вам нужен быстрый ответ без запуска полного TUI. Например. ```bash "opencode run" opencode run Explain the use of context in Go ``` Вы также можете подключиться к работающему экземпляру `opencode serve`, чтобы избежать холодной загрузки сервера MCP при каждом запуске: ```bash # 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` | Идентификатор сеанса для продолжения | | `--share` | | Поделиться сеансом | | `--model` | `-m` | Модель для использования в виде поставщика/модели. | | `--agent` | | Агент для использования | | `--file` | `-f` | Файл(ы) для прикрепления к сообщению | | `--format` | | Формат: по умолчанию (отформатированный) или json (необработанные события JSON). | | `--title` | | Название сеанса (использует усеченное приглашение, если значение не указано) | | `--attach` | | Подключитесь к работающему серверу открытого кода (например, http://localhost:4096) | | `--port` | | Порт локального сервера (по умолчанию случайный порт) | --- ### служить Запустите автономный сервер OpenCode для доступа к API. Полный HTTP-интерфейс можно найти в [server docs](/docs/server). ```bash opencode serve ``` При этом запускается HTTP-сервер, который обеспечивает доступ API к функциям открытого кода без интерфейса TUI. Установите `OPENCODE_SERVER_PASSWORD`, чтобы включить базовую аутентификацию HTTP (имя пользователя по умолчанию — `opencode`). #### Флаги | Флаг | Описание | | ------------ | ------------------------------------------------------------- | | `--port` | Порт для прослушивания | | `--hostname` | Имя хоста для прослушивания | | `--mdns` | Включить обнаружение mDNS | | `--cors` | Дополнительные источники браузера, позволяющие разрешить CORS | --- ### сессия Управляйте сессиями OpenCode. ```bash opencode session [command] ``` --- #### список Перечислите все сеансы OpenCode. ```bash opencode session list ``` ##### Флаги | Флаг | Короткий | Описание | | ------------- | -------- | ----------------------------------------- | | `--max-count` | `-n` | Ограничить N последних сеансов. | | `--format` | | Формат вывода: таблица или json (таблица) | --- ### статистика Покажите статистику использования токенов и затрат для ваших сеансов OpenCode. ```bash opencode stats ``` #### Флаги | Флаг | Описание | | ----------- | ---------------------------------------------------------------------------------------------------------- | | `--days` | Показать статистику за последние N дней (все время) | | `--tools` | Количество инструментов для отображения (все) | | `--models` | Показать разбивку по использованию модели (по умолчанию скрыто). Передайте номер, чтобы показать верхнюю N | | `--project` | Фильтровать по проекту (все проекты, пустая строка: текущий проект) | --- ### экспорт Экспортируйте данные сеанса в формате JSON. ```bash opencode export [sessionID] ``` Если вы не укажете идентификатор сеанса, вам будет предложено выбрать один из доступных сеансов. --- ### импортировать Импортируйте данные сеанса из файла JSON или URL-адреса общего ресурса OpenCode. ```bash opencode import ``` Вы можете импортировать из локального файла или URL-адреса общего ресурса OpenCode. ```bash opencode import session.json opencode import https://opncd.ai/s/abc123 ``` --- ### сеть Запустите автономный сервер OpenCode с веб-интерфейсом. ```bash opencode web ``` При этом запускается HTTP-сервер и открывается веб-браузер для доступа к OpenCode через веб-интерфейс. Установите `OPENCODE_SERVER_PASSWORD`, чтобы включить базовую аутентификацию HTTP (имя пользователя по умолчанию — `opencode`). #### Флаги | Флаг | Описание | | ------------ | ------------------------------------------------------------- | | `--port` | Порт для прослушивания | | `--hostname` | Имя хоста для прослушивания | | `--mdns` | Включить обнаружение mDNS | | `--cors` | Дополнительные источники браузера, позволяющие разрешить CORS | --- ### акп Запустите сервер ACP (агент-клиентский протокол). ```bash opencode acp ``` Эта команда запускает сервер ACP, который обменивается данными через stdin/stdout с использованием nd-JSON. #### Флаги | Флаг | Описание | | ------------ | --------------------------- | | `--cwd` | Рабочий каталог | | `--port` | Порт для прослушивания | | `--hostname` | Имя хоста для прослушивания | --- ### удалить Удалите OpenCode и удалите все связанные файлы. ```bash opencode uninstall ``` #### Флаги | Флаг | Короткий | Описание | | --------------- | -------- | ------------------------------------------ | | `--keep-config` | `-c` | Сохраняйте файлы конфигурации | | `--keep-data` | `-d` | Храните данные сеанса и снимки | | `--dry-run` | | Покажите, что было бы удалено без удаления | | `--force` | `-f` | Пропустить запросы подтверждения | --- ### обновление Обновляет открытый код до последней версии или определенной версии. ```bash opencode upgrade [target] ``` Чтобы обновиться до последней версии. ```bash opencode upgrade ``` Для обновления до определенной версии. ```bash opencode upgrade v0.1.48 ``` #### Флаги | Флаг | Короткий | Описание | | ---------- | -------- | -------------------------------------------------------------------- | | `--method` | `-m` | Используемый метод установки; локон, НПМ, ПНПМ, булочка, заваривание | --- ## Глобальные флаги Интерфейс командной строки открытого кода принимает следующие глобальные флаги. | Флаг | Короткий | Описание | | -------------- | -------- | ------------------------------------------------------------- | | `--help` | `-h` | Отобразить справку | | `--version` | `-v` | Распечатать номер версии | | `--print-logs` | | Печать журналов в stderr | | `--log-level` | | Уровень журнала (ОТЛАДКА, ИНФОРМАЦИЯ, ПРЕДУПРЕЖДЕНИЕ, ОШИБКА) | --- ## Переменные среды 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` | логическое значение | Включить экспериментальные функции уценки | | `OPENCODE_EXPERIMENTAL_PLAN_MODE` | логическое значение | Включить режим плана |