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

TUI

Использование TUI opencode.

opencode предоставляет интерактивный terminal интерфейс или TUI для работы над вашими проектами с помощью LLM.

Запуск opencode запускает TUI для текущего каталога.

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

Или вы можете запустить его для определенного рабочего каталога.

Окно терминала
opencode /path/to/project

Как только вы окажетесь в TUI, вы можете запросить его с помощью сообщения.

Give me a quick summary of the codebase.

Ссылки на файлы

Вы можете ссылаться на файлы в своих сообщениях, используя @. Это выполняет нечеткий поиск файлов в текущем рабочем каталоге.

How is auth handled in @packages/functions/src/api/index.ts?

Содержимое файла добавляется в беседу автоматически.


Bash-команды

Начните сообщение с !, чтобы запустить shell-команду.

!ls -la

Вывод команды добавляется в диалог как результат работы инструмента.


Команды

При использовании opencode TUI вы можете ввести /, а затем имя команды, чтобы быстро выполнить действия. Например:

/help

Большинство команд также имеют привязку клавиш с использованием ctrl+x в качестве ведущей клавиши, где ctrl+x — это ведущая клавиша по умолчанию. Подробнее .

Вот все доступные слэш-команды:


connect

Добавьте провайдера в opencode. Позволяет выбирать из доступных поставщиков и добавлять их ключи API.

/connect

compact

Сжать текущий сеанс. Псевдоним: /summarize

/compact

Привязка клавиш: ctrl+x c


details

Переключить детали выполнения инструмента.

/details

Привязка клавиш: ctrl+x d


editor

Открыть внешний редактор для составления сообщений. Использует редактор, установленный в переменной среды EDITOR. Подробнее .

/editor

Привязка клавиш: ctrl+x e


exit

Выйдите из opencode. Псевдонимы: /quit, /q

/exit

Привязка клавиш: ctrl+x q


export

Экспортируйте текущий разговор в Markdown и откройте его в редакторе по умолчанию. Использует редактор, установленный в переменной среды EDITOR. Подробнее .

/export

Привязка клавиш: ctrl+x x


help

Показать диалоговое окно помощи.

/help

Привязка клавиш: ctrl+x h


init

Создайте или обновите файл AGENTS.md. Подробнее .

/init

Привязка клавиш: ctrl+x i


models

Перечислите доступные модели.

/models

Привязка клавиш: ctrl+x m


new

Начать новый сеанс. Псевдоним: /clear

/new

Привязка клавиш: ctrl+x n


redo

Повторить ранее отмененное сообщение. Доступно только после использования /undo.

Внутри это использует Git для управления изменениями файлов. Итак, ваш проект ** должен быть репозиторием Git**.

/redo

Привязка клавиш: ctrl+x r


sessions

Составляйте список и переключайтесь между сеансами. Псевдонимы: /resume, /continue

/sessions

Привязка клавиш: ctrl+x l


share

Поделиться текущим сеансом. Подробнее.

/share

Привязка клавиш: ctrl+x s


theme

Список доступных тем.

/theme

Привязка клавиш: ctrl+x t


thinking

Переключить видимость блоков мышления/рассуждения в разговоре. Если этот параметр включен, вы можете увидеть процесс рассуждения модели для моделей, поддерживающих расширенное мышление.

/thinking

undo

Отменить последнее сообщение в разговоре. Удаляет самое последнее сообщение пользователя, все последующие ответы и любые изменения файлов.

Внутри это использует Git для управления изменениями файлов. Итак, ваш проект ** должен быть репозиторием Git**.

/undo

Привязка клавиш: ctrl+x u


unshare

Отменить общий доступ к текущему сеансу. Подробнее.

/unshare

Настройка редактора

Команды /editor и /export используют редактор, указанный в переменной среды EDITOR.

Окно терминала
# Example for nano or vim
export EDITOR=nano
export EDITOR=vim
# For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc.
# include --wait
export EDITOR="code --wait"

Чтобы сделать его постоянным, добавьте это в свой профиль shell; ~/.bashrc, ~/.zshrc и т. д.

Популярные варианты редактора включают в себя:

  • code — VS Code
  • cursor — Cursor
  • windsurf - Windsurf
  • nvim - Редактор Neovim
  • vim — редактор Vim
  • nano — Нано-редактор
  • notepad — Блокнот Windows
  • subl — Sublime Text

Некоторым редакторам для работы в режиме блокировки необходимы CLI-аргументы. Флаг --wait блокирует процесс редактора до его закрытия.


Настройка

Вы можете настроить поведение TUI через tui.json (или tui.jsonc).

tui.json
{
"$schema": "https://opencode.ai/tui.json",
"theme": "opencode",
"keybinds": {
"leader": "ctrl+x"
},
"scroll_speed": 3,
"scroll_acceleration": {
"enabled": true
},
"diff_style": "auto"
}

Это отдельный файл от opencode.json, который настраивает поведение сервера/выполнения.

Параметры

  • theme — Устанавливает тему пользовательского интерфейса. Подробнее.
  • keybinds — Настраивает сочетания клавиш. Подробнее.
  • scroll_acceleration.enabled — включите ускорение прокрутки в стиле macOS для плавной и естественной прокрутки. Если этот параметр включен, скорость прокрутки увеличивается при быстрой прокрутке и остается точной при более медленных движениях. Этот параметр имеет приоритет над scroll_speed и переопределяет его, если он включен.
  • scroll_speed — контролирует скорость прокрутки TUI при использовании команд прокрутки (минимум: 0.001, поддерживает десятичные значения). По умолчанию 3. Примечание. Это игнорируется, если для scroll_acceleration.enabled установлено значение true.
  • diff_style — Управляет отображением различий. "auto" адаптируется к ширине терминала, "stacked" всегда показывает одноколоночный макет.

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


Кастомизация

Вы можете настроить различные аспекты представления TUI, используя палитру команд (ctrl+x h или /help). Эти настройки сохраняются после перезапуска.


Отображение имени пользователя

Включите, будет ли ваше имя пользователя отображаться в сообщениях чата. Доступ к этому через:

  • Палитра команд: поиск «имя пользователя» или «скрыть имя пользователя».
  • Настройка сохраняется автоматически и будет запоминаться во время сеансов TUI.