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

TUI — агент в терминале

Запустите ZubrCode из папки проекта, напишите задачу и нажмите Enter.

Окно терминала
cd ~/code/my-project
zubrcode
Объясни, как устроена аутентификация в этом проекте

Новую строку дают Shift+Enter, Ctrl+Enter, Alt+Enter или Ctrl+J. Пока агент работает, Enter направляет текущий ход; Ctrl+X, затем Enter — поставить запрос в очередь на потом.

Другой каталог можно указать сразу: zubrcode ~/code/my-project.

Наберите @, чтобы найти файл, и выберите его — он приложится к запросу. Продолжайте печатать после @, чтобы сузить поиск. К пути можно добавить строку или диапазон строк.

Проверь @src/auth.ts на ошибки обработки исключений
Объясни @src/auth.ts#20-45

Наберите ! в начале пустого запроса, чтобы войти в режим оболочки. Введите команду и нажмите Enter; Esc выходит из режима, ничего не выполняя.

!git status

Команды выполняются в рабочей папке сессии, их вывод остаётся в сессии.

Наберите /, чтобы увидеть слеш-команды, — продолжайте печатать, чтобы отфильтровать список, и нажмите Enter. Ctrl+P открывает палитру со всеми действиями текущего экрана.

/models

/btw <вопрос> отвечает по контексту сессии текущей моделью, не добавляя ответ в переписку: на следующие запросы он не влияет. Пока команда работает, внизу поля ввода горит индикатор /btw; ответ открывается в диалоге, C копирует его.

/btw почему упал тест из второго шага?

Ctrl+X, затем M — выбрать модель (или /models); F2 переключает недавние модели, Shift+F2 — в обратную сторону. Ctrl+X, затем A — выбрать агента (или /agents); Shift+Tab переключает агентов, Ctrl+T — вариант модели (глубина размышлений). По умолчанию модель — zubriq/zubr-coder (Модели).

Ctrl+X, затем N — новая сессия; Ctrl+X, затем L или /sessions — вернуться к существующей. Ctrl+O показывает недавние сессии и проекты вместе.

Вкладки включены по умолчанию: Ctrl+Tab и Ctrl+Shift+Tab переключают их, Ctrl+X, затем W — закрывает текущую, Ctrl+Shift+T — открывает последнюю закрытую. Ctrl+X и цифра — вкладка по номеру.

Ctrl+X, затем U (или /undo) отменяет последнее сообщение пользователя и работу после него; отменённый запрос возвращается в поле ввода, чтобы вы его поправили. Ctrl+X, затем R (или /redo) возвращает отменённое. Новый запрос вместо /redo фиксирует откат и продолжает с этого места. Подробнее — Снимки и откат.

Задайте VISUAL или EDITOR, и Ctrl+X, затем E (или /editor) откроет текущий запрос во внешнем редакторе. Сохраните файл и выйдите — текст вернётся в поле ввода.

Окно терминала
export EDITOR="nvim"
zubrcode
Команда Что делает
/init описать проект в AGENTS.md, чтобы агенту было проще
/review ревью текущих изменений
/new новая сессия
/sessions другая сессия
/clear очистить сессию
/rename переименовать сессию
/fork копия сессии с этого места
/undo отменить последнее сообщение и его правки
/redo вернуть отменённое
/compact сжать историю сессии, чтобы освободить контекст
/copy скопировать последний ответ
/export сохранить сессию в файл
/timeline перейти к сообщению
/btw вопрос в сторону, не сбивая основную задачу
/open открыть сессию или проект
/cd сменить рабочую папку
/worktrees рабочие копии (git worktree)
/models выбрать модель
/variants глубина размышлений модели
/agents выбрать режим (агента)
/skills установленные навыки
/mcps MCP-серверы
/plugins плагины
/connect подключить аккаунт ZuBrIQ или другой сервис
/diff просмотр изменений
/editor написать запрос во внешнем редакторе
/terminal новый терминал
/settings настройки
/themes тема оформления
/status состояние: модель, сервисы, MCP
/stats статистика использования
/highlights что нового в версии
/update обновить ZubrCode
/pair открыть сессию в браузере или на другом устройстве
/restart перезапустить фоновую службу
/reload перечитать конфигурацию
/debug отладочная информация
/help справка по-русски: главные клавиши и все команды
/exit выйти

<leader> — это Ctrl+X по умолчанию: «Ctrl+X N» означает «Ctrl+X, потом N». Ctrl+P показывает все команды с их буквами.

Клавиши Действие
Ctrl+P все команды и действия, с поиском
Shift+Tab режим: Build правит код, Plan только обсуждает план и файлы не трогает
/ в начале поля ввода — список команд с подсказками
Ctrl+X, затем буква быстрые команды, их буквы — справа в списке Ctrl+P
Ctrl+X N новая сессия
Ctrl+X L другая сессия
Ctrl+X M сменить модель
Esc прервать текущий ход
Ctrl+C, Ctrl+D выйти
F2 / Shift+F2 следующая / предыдущая недавняя модель
Ctrl+X A список агентов
Ctrl+T варианты модели
Ctrl+O недавние сессии и проекты
Ctrl+X B боковая панель
Ctrl+X T панель терминала
Ctrl+X C сжать сессию
Ctrl+X U / Ctrl+X R отменить / вернуть
Ctrl+X G таймлайн сессии
Ctrl+X E внешний редактор
Ctrl+X X выгрузить сессию в редактор
Ctrl+X Y скопировать сообщение
Ctrl+X I просмотр вложенных изображений
Ctrl+X S состояние
Ctrl+R переименовать сессию
Ctrl+D удалить сессию
Ctrl+B увести блокирующие инструменты в фон
Ctrl+X 1…Ctrl+X 0 сессия или вкладка по номеру
Ctrl+Tab / Ctrl+Shift+Tab следующая / предыдущая вкладка
Ctrl+Shift+T вернуть последнюю закрытую вкладку
Ctrl+X W закрыть вкладку
Shift+Enter, Ctrl+Enter, Alt+Enter, Ctrl+J новая строка в поле ввода
Ctrl+X Enter поставить запрос в очередь
Ctrl+X Q управление очередью запросов
PageUp / PageDown прокрутка сессии на страницу
Ctrl+G / End первое / последнее сообщение
Ctrl+Alt+K панель подсказок сочетаний (which-key)

Просмотрщик диффов (/diff; клавишу можно назначить действию diff.open):

Клавиши Действие
D охват: всё, закоммиченное, незакоммиченное, последний ход
N / P следующий / предыдущий файл
M пометить файл просмотренным (и свернуть его патч)
V раздельный / объединённый вид
B дерево файлов
S один патч на файл
] / [ следующий / предыдущий фрагмент
J / K вниз / вверх
? остальные клавиши просмотрщика

В диалогах работают стрелки, Enter — выбрать, Esc — закрыть; Пробел в списке MCP-серверов включает и выключает сервер.

Сочетания меняются в глобальном cli.json (~/.config/zubrcode/cli.json):

~/.config/zubrcode/cli.json
{
"keybinds": {
"leader": "ctrl+space",
"command.palette.show": "ctrl+k",
"app.exit": ["ctrl+c", "ctrl+d"],
"app.debug": false
},
"leader": {
"timeout": 1500
}
}

Одна клавиша — строка, альтернативы — через запятую, выключить — "none" или false. В других привязках <leader> обозначает клавишу-лидер; её сочетания должны укладываться в leader.timeout миллисекунд. Неизвестные имена действий отвергаются. Полный список действий — в Ctrl+P.