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

Интерфейс в терминале

Начиная с версии 0.36.0 команды tuna http, tuna tcp, tuna ssh, tuna postgres, tuna redis и tuna kubernetes показывают полноэкранный интерфейс (TUI) вместо текстового лога. Он включается сам, если вывод идёт в терминал.

Что на экране​

В шапке всегда видны:

  • аккаунт;
  • адрес туннеля (Forwarding) и локальный адрес, куда он ведёт;
  • адрес инспектора;
  • статус подключения: online или reconnecting;
  • сообщения от сервера.

Основная часть экрана зависит от типа туннеля:

ТуннельЧто показывает
HTTPЛенту запросов (новые сверху) и метрики: всего запросов, rpm, p50, p90, число ответов 4xx и 5xx. По Enter открываются детали запроса: заголовки и отформатированное тело JSON
Postgres, RedisСлева список сессий: ● — активна, ○ — закрыта, • — есть непросмотренные события. Справа события выбранной сессии с подсветкой: запросы, число строк в ответе, ошибки
SSHdИнструкцию для подключения и ленту сессий, в том числе отказы в доступе. Enter на активной сессии открывает её просмотр в реальном времени, на завершённой — воспроизведение записи
KubernetesВ шапке сервисный аккаунт, namespace, ограничения и срок действия доступа, ниже — лента запросов гостя
TCPЛог туннеля

Горячие клавиши​

Общие для всех туннелей:

КлавишаДействие
Ctrl+CОстановить туннель и выйти. Другого способа выйти нет, q только возвращает назад. На экране QR-кода и при просмотре SSH-сессии Ctrl+C только закрывает их
cСкопировать адрес туннеля
iОткрыть инспектор в браузере
lПоказать или скрыть лог (кроме TCP, где лог — основной экран)
QПоказать QR-код адреса туннеля, Enter или Ctrl+C возвращают назад, туннель продолжает работать
↑ ↓Выбрать запись
g / GПерейти к новым / старым записям
Esc, qНазад из деталей и лога

g или ↑ на первой записи включают режим слежения: выделение само переходит на новые записи по мере их появления.

HTTP:

КлавишаДействие
EnterДетали запроса
rПовторить запрос
/Фильтр по методу, пути или статусу, Esc сбрасывает фильтр
oОткрыть адрес туннеля в браузере

Postgres и Redis:

КлавишаДействие
TabПереключиться между списком сессий и событиями
yСкопировать запрос

SSHd:

КлавишаДействие
EnterСмотреть активную сессию или воспроизвести запись завершённой. Ctrl+C закрывает только просмотр, туннель продолжает работать

Флаг --qr при включённом интерфейсе один раз показывает экран с QR-кодом после подключения, Enter или Ctrl+C возвращают к основному экрану.

При --inspect=false запросы и сессии не записываются, поэтому лента HTTP, Postgres и Redis остаётся пустой.

Отключение​

Чтобы вернуть текстовый лог, запустите туннель с одним из флагов:

tuna http 8080 --log=stdout
tuna http 8080 --log=stderr
tuna http 8080 --log-format=json

Или задайте переменную окружения TUNA_TUI=0.

С --log=/path/to/file.log интерфейс остаётся, а лог параллельно пишется в файл.

Интерфейс не включается сам, если:

  • вывод перенаправлен в файл или пайп, туннель запущен как сервис или через systemd;
  • задана переменная CI или NONINTERACTIVE;
  • TERM=dumb;
  • tuna запущена ИИ-агентом (заданы AI_AGENT, CLAUDECODE или CURSOR_AGENT). В этом случае интерфейс можно включить через TUNA_TUI=1.

Команда tuna start работает с текстовым выводом, как раньше.