Интерфейс и команды
TUI, slash-команды, прямая оболочка, очередь задач и горячие клавиши SOBA Agent.
SOBA предоставляет интерактивный консольный интерфейс (TUI) с поддержкой slash-команд, горячих клавиш, прямого доступа к оболочке и управления очередью задач.
1. Запуск TUI
# Интерактивный режим (по умолчанию, когда нет аргументов)
soba
# Явно интерактивный
soba -i
# С темой
soba --theme forest
# С конкретной сессией
soba -s abc123
# Продолжить последнюю сессию в TUI
soba -c
# Селектор сессий
soba -rИнтерфейс TUI
┌──────────────────────────────────────────────────────┐
│ SOBA Agent [-][_][×] Budget: 12K/64K RU │
│──────────────────────────────────────────────────────│
│ ● Active soba-agent │
│──────────────────────────────────────────────────────│
│ You: Fix all TypeScript errors in src/ │
│ │
│ Agent: Analyzing... │
│ ┌────────────────────────────────────────────────┐ │
│ │ 🔧 read: src/utils/parser.ts │ │
│ │ ... │ │
│ └────────────────────────────────────────────────┘ │
│ ┌────────────────────────────────────────────────┐ │
│ │ ✅ edit: Fixed 3 type errors │ │
│ └────────────────────────────────────────────────┘ │
│ Agent: Done. Fixed 3 errors in parser.ts. │
│──────────────────────────────────────────────────────│
│ > _ │
└──────────────────────────────────────────────────────┘2. Горячие клавиши
| Клавиша | Действие | Контекст |
|---|---|---|
Enter | Отправить сообщение | Строка ввода |
Ctrl+C | Прервать текущий ответ агента | Во время ответа |
Ctrl+Z | Приостановить SOBA (SIGTSTP) | Всегда |
Ctrl+L | Очистить экран | Всегда |
Ctrl+D | Выйти из TUI | Пустая строка ввода |
Escape | Очистить ввод / закрыть диалог | Строка ввода / диалог |
Tab | Автодополнение slash-команд | Строка ввода |
↑ / ↓ | История сообщений | Строка ввода |
Page Up / Page Down | Прокрутка истории сообщений TUI | Основная область |
Home | В начало истории | Основная область |
End | В конец истории | Основная область |
3. Slash-команды (полный список)
Все команды начинаются с /. Команды регистронезависимы.
3.1. Управление сессией
| Команда | Действие |
|---|---|
/session | Показать информацию о текущей сессии (ID, количество ходов, бюджет) |
/session rewind <turn-id> | Откатить сессию к указанному ходу (создаётся ветка) |
3.2. Compaction и бюджет
| Команда | Действие |
|---|---|
/compact | Принудительный compaction (создать контекстную капсулу) |
/auto-compact on | Включить автоматический compaction |
/auto-compact off | Выключить автоматический compaction |
/budget | Показать текущий бюджет токенов и контекста |
/capsule | Показать последнюю капсулу |
3.3. Skills
| Команда | Действие |
|---|---|
/skill list | Показать доступные скилы (bundled, user, project) |
/skill new | Создать новый скил |
/skill edit <name> | Редактировать существующий скил |
/skill remove <name> | Удалить скил |
/skill:<name> | Активировать скил (через двоеточие) |
3.4. Настройки интерфейса
| Команда | Действие |
|---|---|
/theme | Показать текущую тему и список доступных |
/theme <name> | Сменить тему (например: /theme forest) |
/lang | Показать текущий язык |
/lang <locale> | Сменить язык (en, ru, zh) |
/config show | Показать текущую конфигурацию |
/permissions [ask|repo|full|clear] | Управление режимом разрешений |
/clear | Очистить экран TUI |
/search | Поиск по истории разговора |
/notifications | История уведомлений |
3.5. Прочее
| Команда | Действие |
|---|---|
/help | Показать справку по всем командам |
/queue | Показать очередь задач |
/queue clear | Очистить очередь задач |
/project-trust status | Статус доверия проекта |
/project-trust approve | Доверить проект |
/project-trust revoke | Отозвать доверие |
/mcp status | Показать состояние настроенных MCP-серверов |
/mcp start <server> | Запустить MCP-сервер и зарегистрировать его tools |
/mcp stop <server> | Остановить MCP-сервер |
/mcp restart <server> | Перезапустить MCP-сервер и синхронизировать tools |
/mcp auth status <server> | Показать remote auth state и next action |
/mcp auth login <server> | Запустить OAuth login для remote MCP server |
/mcp auth logout <server> | Очистить сохранённые OAuth credentials |
/exit, /quit | Выйти из TUI |
4. Прямая оболочка
Синтаксис ! для прямого выполнения команд оболочки минуя AI.
4.1. Базовый синтаксис
# Выполнение одной команды
!ls -la src/
# Повтор последней команды
!!
# Проверка версии Node
!node --version
# Просмотр git-статуса
!git status
# Запуск тестов
!bun test4.2. Особенности
- Агент не видит результат выполнения
!команд. Это способ быстро что-то сделать, не тратя токены на AI. - Если нужно, чтобы агент прочитал результат: отправьте обычный текстовый prompt, и агент
сам вызовет инструмент
bashс нужной командой. - Trust-уровень применяется: опасные команды (
rm -rf,sudo, и т.д.) блокируются при trust-уровнеsafeи требуют подтверждения приnormal. См. Безопасность.
5. Очередь задач
Можно отправлять задачи, пока агент обрабатывает текущую — они выполняются последовательно.
# Агент занят обработкой первого запроса
> Fix all TS errors # → Задача 1 (выполняется)
# Добавляем в очередь (агент ещё работает)
> Add tests for utils # → Очередь, позиция 1
> Update README with new features # → Очередь, позиция 2
# Просмотр очереди
/queue
# Вывод: Очередь (2 задачи)
# 1. Add tests for utils
# 2. Update README with new features
# Очистка очереди
/queue clear6. Управление бюджетом токенов
SOBA в режиме реального времени отслеживает использование токенов и автоматически сжимает контекст, когда это необходимо.
# Просмотр бюджета
/budget
# Вывод:
# Used: 28,450 tokens
# Limit: 64,000 tokens (context window)
# Available: 35,550 tokens
# Messages: 42
# Turns: 8
# Capsules: 2
# Детальная статистика контекста
/budget
/session
# Вывод:
# Effective tokens: 32,100
# Hard limit: 47,616
# Safety reserve: 8,192
# Max output: 8,192
# Reclaimable: 12,100
# Auto-compact: ON7. Прокрутка истории
Вся история сообщений и блоков инструментов прокручивается с помощью:
Page Up/Page Down— постраничная прокруткаHome— в начало истории сессииEnd— в конец (текущее состояние)
Строка ввода остаётся видимой при прокрутке — можно смотреть историю и одновременно писать новое сообщение.
8. Автодополнение
8.1. Slash-команды
Нажатие Tab после / показывает доступные команды:
/ # Tab →
help session compact budget
auto-compact capsule config lang
theme skill project-trust exit
quit clear search notifications
permissions queue8.2. Подкоманды
После команды, поддерживающей подкоманды:
/skill # Tab →
/skill list /skill new /skill edit
/skill eval /skill remove /skill:9. Темы
SOBA поддерживает 10 встроенных цветовых тем и позволяет создавать свои.
# Сменить тему
/theme forest
# Просмотреть текущую
/theme
# Список доступных тем:
# graphite, ember, aurora, synthwave, paper,
# forest, highContrast, clay, operator, inkКаждая тема определяет семантические токены (accent, text, muted, success, error, border и другие) с поддержкой тёмного и светлого режимов. Подробнее в гайде по темам.
10. Многоязычность
SOBA поддерживает английский, русский и китайский языки.
# Смена языка в TUI
/lang ru
# При запуске
soba --lang ru
# В конфиге
{
"lang": "ru"
}Переводы хранятся в locales/. При добавлении нового языка нужно создать соответствующий
JSON-файл и зарегистрировать его в системе i18n.