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

CLI

CLI opencode по умолчанию запускает TUI при запуске без каких-либо аргументов.

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

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

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

Окно терминала
codetutor agent [command]

attach

Подключите терминал к уже работающему внутреннему серверу opencode, запущенному с помощью команд serve или web.

Окно терминала
codetutor attach [url]

Это позволяет использовать TUI с удаленным сервером opencode. Например:

Окно терминала
# Start the backend server for web/mobile access
codetutor web --port 4096 --hostname 0.0.0.0
# In another terminal, attach the TUI to the running backend
codetutor attach http://10.20.30.40:4096

Флаги

ФлагКороткийОписание
--dirРабочий каталог для запуска TUI
--continue-cПродолжить последний сеанс
--session-sИдентификатор сеанса для продолжения
--forkСоздать ответвление сеанса при продолжении (используйте с --continue или --session)
--password-pПароль базовой аутентификации (по умолчанию CODETUTOR_SERVER_PASSWORD)
--username-uИмя пользователя базовой аутентификации (по умолчанию CODETUTOR_SERVER_USERNAME или codetutor)

create

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

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

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


list

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

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

auth

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

Окно терминала
codetutor auth [command]

login

opencode использует список провайдеров с Models.dev, поэтому вы можете использовать codetutor auth login для настройки ключей API для любого поставщика, которого вы хотите использовать. Это хранится в ~/.local/share/opencode/auth.json.

Окно терминала
codetutor auth login

Когда opencode запускается, он загружает поставщиков из файла учетных данных. И если в ваших средах определены какие-либо ключи или файл .env в вашем проекте.


list

Перечисляет всех проверенных поставщиков, которые хранятся в файле учетных данных.

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

Или короткая версия.

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

logout

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

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

github

Управляйте агентом GitHub для автоматизации репозитория.

Окно терминала
codetutor github [command]

install

Установите агент GitHub в свой репозиторий.

Окно терминала
codetutor github install

Это настроит необходимый рабочий процесс GitHub Actions и проведет вас через процесс настройки. Подробнее.


run

Запустите агент GitHub. Обычно это используется в действиях GitHub.

Окно терминала
codetutor github run
Флаги
ФлагОписание
--eventИмитирующее событие GitHub для запуска агента
--tokenТокен личного доступа GitHub

mcp

Управляйте серверами протокола контекста модели.

Окно терминала
codetutor mcp [command]

add

Добавьте сервер MCP в свою конфигурацию.

Окно терминала
codetutor mcp add

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


list

Перечислите все настроенные серверы MCP и состояние их подключения.

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

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

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

auth

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

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

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

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

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

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

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

logout

Удалите учетные данные OAuth для сервера MCP.

Окно терминала
codetutor mcp logout [name]

debug

Отладка проблем с подключением OAuth для сервера MCP.

Окно терминала
codetutor mcp debug <name>

models

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

Окно терминала
codetutor models [provider]

Эта команда отображает все модели, доступные у настроенных вами поставщиков, в формате provider/model.

Это полезно для определения точного названия модели, которое будет использоваться в вашем config.

При желании вы можете передать идентификатор поставщика, чтобы фильтровать модели по этому поставщику.

Окно терминала
codetutor models anthropic

Флаги

ФлагОписание
--refreshОбновите кеш моделей на сайте models.dev.
--verboseИспользуйте более подробный вывод модели (включая метаданные, такие как затраты).

Используйте флаг --refresh для обновления списка кэшированных моделей. Это полезно, когда к поставщику добавлены новые модели и вы хотите увидеть их в opencode.

Окно терминала
codetutor models --refresh

run

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

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

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

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

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

Окно терминала
# Start a headless server in one terminal
codetutor serve
# In another terminal, run commands that attach to it
codetutor 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)
--password-pПароль базовой аутентификации (по умолчанию CODETUTOR_SERVER_PASSWORD)
--username-uИмя пользователя базовой аутентификации (по умолчанию CODETUTOR_SERVER_USERNAME или codetutor)
--dirКаталог для выполнения или путь на удалённом сервере при подключении
--variantВариант модели (уровень рассуждений для провайдера)
--thinkingПоказать блоки размышлений
--portПорт локального сервера (по умолчанию случайный порт)

serve

Запустите автономный сервер opencode для доступа к API. Полный HTTP-интерфейс можно найти в server docs.

Окно терминала
codetutor serve

При этом запускается HTTP-сервер, который обеспечивает доступ API к функциям opencode без интерфейса TUI. Установите CODETUTOR_SERVER_PASSWORD, чтобы включить базовую аутентификацию HTTP (имя пользователя по умолчанию — codetutor).

Флаги

ФлагОписание
--portПорт для прослушивания
--hostnameИмя хоста для прослушивания
--mdnsВключить обнаружение mDNS
--corsДополнительные источники браузера, позволяющие разрешить CORS

session

Управляйте сессиями opencode.

Окно терминала
codetutor session [command]

list

Перечислите все сеансы opencode.

Окно терминала
codetutor session list
Флаги
ФлагКороткийОписание
--max-count-nОграничить N последних сеансов.
--formatФормат вывода: таблица или json (таблица)

stats

Покажите статистику использования токенов и затрат для ваших сеансов opencode.

Окно терминала
codetutor stats

Флаги

ФлагОписание
--daysПоказать статистику за последние N дней (все время)
--toolsКоличество инструментов для отображения (все)
--modelsПоказать разбивку по использованию модели (по умолчанию скрыто). Передайте номер, чтобы показать верхнюю N
--projectФильтровать по проекту (все проекты, пустая строка: текущий проект)

export

Экспортируйте данные сеанса в формате JSON.

Окно терминала
codetutor export [sessionID]

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


import

Импортируйте данные сеанса из файла JSON или URL-адреса общего ресурса opencode.

Окно терминала
codetutor import <file>

Вы можете импортировать из локального файла или URL-адреса общего ресурса opencode.

Окно терминала
codetutor import session.json
codetutor import https://opncd.ai/s/abc123

web

Запустите автономный сервер opencode с веб-интерфейсом.

Окно терминала
codetutor web

При этом запускается HTTP-сервер и открывается веб-браузер для доступа к opencode через веб-интерфейс. Установите CODETUTOR_SERVER_PASSWORD, чтобы включить базовую аутентификацию HTTP (имя пользователя по умолчанию — codetutor).

Флаги

ФлагОписание
--portПорт для прослушивания
--hostnameИмя хоста для прослушивания
--mdnsВключить обнаружение mDNS
--corsДополнительные источники браузера, позволяющие разрешить CORS

acp

Запустите сервер ACP (агент-клиентский протокол).

Окно терминала
codetutor acp

Эта команда запускает сервер ACP, который обменивается данными через stdin/stdout с использованием nd-JSON.

Флаги

ФлагОписание
--cwdРабочий каталог
--portПорт для прослушивания
--hostnameИмя хоста для прослушивания

uninstall

Удалите opencode и удалите все связанные файлы.

Окно терминала
codetutor uninstall

Флаги

ФлагКороткийОписание
--keep-config-cСохраняйте файлы конфигурации
--keep-data-dХраните данные сеанса и снимки
--dry-runПокажите, что было бы удалено без удаления
--force-fПропустить запросы подтверждения

upgrade

Обновляет opencode до последней версии или определенной версии.

Окно терминала
codetutor upgrade [target]

Чтобы обновиться до последней версии.

Окно терминала
codetutor upgrade

Для обновления до определенной версии.

Окно терминала
codetutor 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 можно настроить с помощью переменных среды.

ПеременнаяТипОписание
CODETUTOR_AUTO_SHAREлогическое значениеАвтоматически делиться сеансами
CODETUTOR_GIT_BASH_PATHстрокаПуть к исполняемому файлу Git Bash в Windows
CODETUTOR_CONFIGстрокаПуть к файлу конфигурации
CODETUTOR_TUI_CONFIGстрокаПуть к файлу конфигурации TUI
CODETUTOR_CONFIG_DIRстрокаПуть к каталогу конфигурации
CODETUTOR_CONFIG_CONTENTстрокаВстроенное содержимое конфигурации json
CODETUTOR_DISABLE_AUTOUPDATEлогическое значениеОтключить автоматическую проверку обновлений
CODETUTOR_DISABLE_PRUNEлогическое значениеОтключить удаление старых данных
CODETUTOR_DISABLE_TERMINAL_TITLEлогическое значениеОтключить автоматическое обновление заголовка терминала
CODETUTOR_PERMISSIONстрокаВстроенная конфигурация разрешений json
CODETUTOR_DISABLE_DEFAULT_PLUGINSлогическое значениеОтключить плагины по умолчанию
CODETUTOR_DISABLE_LSP_DOWNLOADлогическое значениеОтключить автоматическую загрузку LSP-сервера
CODETUTOR_ENABLE_EXPERIMENTAL_MODELSлогическое значениеВключить экспериментальные модели
CODETUTOR_DISABLE_AUTOCOMPACTлогическое значениеОтключить автоматическое сжатие контекста
CODETUTOR_DISABLE_CLAUDE_CODEлогическое значениеОтключить чтение из .claude (подсказка + навыки)
CODETUTOR_DISABLE_CLAUDE_CODE_PROMPTлогическое значениеОтключить чтение ~/.claude/CLAUDE.md
CODETUTOR_DISABLE_CLAUDE_CODE_SKILLSлогическое значениеОтключить загрузку .claude/skills
CODETUTOR_DISABLE_MODELS_FETCHлогическое значениеОтключить получение моделей из удаленных источников
CODETUTOR_FAKE_VCSстрокаПоддельный поставщик VCS для целей тестирования
CODETUTOR_CLIENTстрокаИдентификатор клиента (по умолчанию cli)
CODETUTOR_ENABLE_EXAлогическое значениеВключить инструменты веб-поиска Exa
CODETUTOR_SERVER_PASSWORDстрокаВключить базовую аутентификацию для serve/web
CODETUTOR_SERVER_USERNAMEстрокаПереопределить имя пользователя базовой аутентификации (по умолчанию codetutor)
CODETUTOR_MODELS_URLстрокаПользовательский URL-адрес для получения конфигурации модели

Экспериментальные функции

Эти переменные среды позволяют использовать экспериментальные функции, которые могут быть изменены или удалены.

ПеременнаяТипОписание
CODETUTOR_EXPERIMENTALлогическое значениеВключить экспериментальные функции под общим флагом
CODETUTOR_EXPERIMENTAL_ICON_DISCOVERYлогическое значениеВключить обнаружение значков
CODETUTOR_EXPERIMENTAL_DISABLE_COPY_ON_SELECTлогическое значениеОтключить копирование при выборе в TUI
CODETUTOR_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MSчислоТаймаут по умолчанию для команд bash в мс
CODETUTOR_EXPERIMENTAL_OUTPUT_TOKEN_MAXчислоМаксимальное количество токенов вывода для ответов LLM
CODETUTOR_EXPERIMENTAL_FILEWATCHERлогическое значениеВключить просмотр файлов для всего каталога
CODETUTOR_EXPERIMENTAL_OXFMTлогическое значениеВключить форматтер oxfmt
CODETUTOR_EXPERIMENTAL_LSP_TOOLлогическое значениеВключить экспериментальный инструмент LSP
CODETUTOR_EXPERIMENTAL_DISABLE_FILEWATCHERлогическое значениеОтключить просмотрщик файлов
CODETUTOR_EXPERIMENTAL_EXAлогическое значениеВключить экспериментальные функции Exa
CODETUTOR_EXPERIMENTAL_LSP_TYлогическое значениеВключить TY LSP для файлов python
CODETUTOR_EXPERIMENTAL_PLAN_MODEлогическое значениеВключить режим плана
CODETUTOR_EXPERIMENTAL_BACKGROUND_SUBAGENTSлогическое значениеВключить фоновые задачи субагентов
CODETUTOR_EXPERIMENTAL_EVENT_SYSTEMлогическое значениеВключить экспериментальную систему событий
CODETUTOR_EXPERIMENTAL_NATIVE_LLMлогическое значениеВключить нативный путь запросов LLM
CODETUTOR_EXPERIMENTAL_PARALLELлогическое значениеВключить параллельное выполнение веб-поиска
CODETUTOR_EXPERIMENTAL_SCOUTлогическое значениеВключить субагент Scout
CODETUTOR_EXPERIMENTAL_WORKSPACESлогическое значениеВключить поддержку рабочих областей