Terminal UI
The 4-mode terminal dashboard with keyboard-driven navigation.
Terminal UI
Brainstorm's TUI is built with Ink (React for the terminal) and provides four distinct modes, each optimized for a different workflow. Switch between modes instantly with keyboard shortcuts.
Modes
Chat Mode (Default)
The primary interaction mode. Features a scrollable message history with role-based styling, streaming responses with markdown rendering, and inline tool call displays.
- User messages appear in blue
- Assistant responses in green
- Errors in red
- Tool calls show a spinner while running, then a checkmark or X on completion
Dashboard Mode
A real-time overview of your session with four panels:
- Session Stats: Messages sent, tokens used, total cost, session duration
- Routing Log: Recent model selections with task type and rationale
- Tool Health: Status of all tool categories (filesystem, shell, git, web)
- BR Intelligence: Leaderboard rankings, cost waste analysis, and audit summary from BrainstormRouter
Models Mode
An interactive model browser showing all available models across your configured providers. Select any model to see a detail panel with:
- Capability gauges (reasoning, coding, creativity, speed)
- Pricing per million tokens (input/output)
- Context window size
- Provider status and latency
Config Mode
Displays the active merged configuration, vault status, memory counts, and a quick reference for commands and shortcuts.
Keyboard Shortcuts
| Key | Action |
|-----|--------|
| Esc | Toggle mode selector |
| 1 | Switch to Chat mode |
| 2 | Switch to Dashboard mode |
| 3 | Switch to Models mode |
| 4 | Switch to Config mode |
| ? | Show keyboard shortcut overlay |
| Ctrl+C | Exit Brainstorm |
| Ctrl+L | Clear the chat display |
| Up/Down | Scroll through message history |
| Tab | Cycle through autocomplete suggestions |
| / | Open slash command autocomplete |
ModeBar
The ModeBar sits at the top of every mode and shows persistent status information:
- Active Role: Current persona (architect, sr-developer, etc.)
- Active Model: The model handling the current conversation
- Session Cost: Running cost total for this session
- Guardian Status: Whether the permission guardian is active or bypassed
Slash Commands in Chat
Type / to open the autocomplete dropdown. Commands include model switching, role changes, strategy selection, memory operations, and more. See the full list with /help.
Streaming Display
During model responses, the TUI shows:
- A spinner with the current phase label (thinking, writing, tool calling)
- Markdown content rendered inline with a block cursor indicator
- Tool calls expanded with argument summaries and execution status
All rendering uses React.memo for performance, keeping the UI responsive even during long streaming responses.