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.
/connectcompact
Сжать текущий сеанс. Псевдоним: /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
Переключить видимость блоков мышления/рассуждения в разговоре. Если этот параметр включен, вы можете увидеть процесс рассуждения модели для моделей, поддерживающих расширенное мышление.
/thinkingundo
Отменить последнее сообщение в разговоре. Удаляет самое последнее сообщение пользователя, все последующие ответы и любые изменения файлов.
Внутри это использует Git для управления изменениями файлов. Итак, ваш проект ** должен быть репозиторием Git**.
/undoПривязка клавиш: ctrl+x u
unshare
Отменить общий доступ к текущему сеансу. Подробнее.
/unshareНастройка редактора
Команды /editor и /export используют редактор, указанный в переменной среды EDITOR.
# Example for nano or vimexport EDITOR=nanoexport EDITOR=vim
# For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc.# include --waitexport EDITOR="code --wait"Чтобы сделать его постоянным, добавьте это в свой профиль shell;
~/.bashrc, ~/.zshrc и т. д.
set EDITOR=notepad
# For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc.# include --waitset EDITOR=code --waitЧтобы сделать его постоянным, используйте Свойства системы > Среда Переменные.
$env:EDITOR = "notepad"
# For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc.# include --wait$env:EDITOR = "code --wait"Чтобы сделать его постоянным, добавьте его в свой профиль PowerShell.
Популярные варианты редактора включают в себя:
code— VS Codecursor— Cursorwindsurf- Windsurfnvim- Редактор Neovimvim— редактор Vimnano— Нано-редакторnotepad— Блокнот Windowssubl— Sublime Text
Некоторым редакторам для работы в режиме блокировки необходимы CLI-аргументы. Флаг --wait блокирует процесс редактора до его закрытия.
Настройка
Вы можете настроить поведение TUI через tui.json (или tui.jsonc).
{ "$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.