TUI Workbench — Terminal Agent Dashboard
VulpineOS ships a terminal-based workbench built with Bubbletea and Lipgloss . It provides a 3-column agent-centric interface for managing the browser kernel, spawning agents, and monitoring conversations in real-time.
Layout
┌─────────────┬──────────────────────┬──────────────┐
│ System Info │ │ Agent Detail │
│ ─────────── │ │ ──────────── │
│ Kernel: ● ON│ Conversation │ Name: Scout │
│ Mem: ██░ 45%│ │ Status: Active│
│ Risk: Low │ Agent: Show me the │ Tokens: 12.4k │
│ Pool: 3/20 │ latest HN posts │ Proxy: US-1 │
│ │ │ │
│ Agents │ VulpineOS: Found │ Contexts │
│ ─────────── │ 15 stories on the │ ──────────── │
│ ● Scout │ front page... │ ctx-a8f2 │
│ ◌ Crawler │ │ hn.com │
│ ✓ Archiver │ [input area] │ │
│ ⏸ Monitor │ │ │
└─────────────┴──────────────────────┴──────────────┘Left Column
- System Info — kernel status, memory usage, detection risk gauge, context pool utilization, page count
- Agent List — all agents with status icons:
●active,◌idle,✓completed,⏸paused,✗failed
Center Column
- Conversation — full-height scrollable chat display. Messages are color-coded by role (user, assistant, tool/system). The rail-styled input box stays active for chat unless a menu or settings panel is open.
Right Column
- Agent Detail — name, status, token usage, task description, fingerprint profile, assigned proxy
- Context List — active browser contexts for the selected agent with URLs
Agent Lifecycle
CREATE ──→ ACTIVE ──→ PAUSED ──→ ACTIVE ──→ COMPLETED
or FAILEDAgents are persistent — their conversations are stored in the SQLite vault and survive restarts. Each agent gets a deterministic fingerprint generated from a seed, so resuming an agent maintains the same browser identity.
Workbench Controls
The main workbench is command-first instead of shortcut-first:
| Control | Action |
|---|---|
Chat text + Enter | Send a message to the selected agent |
/ | Open the command palette |
↑ / ↓ | Move through command options |
Enter in the palette | Select a command |
Esc | Close the palette, cancel a menu, or clear text selection |
| Mouse click on an agent row | Switch to that agent |
| Mouse wheel over chat | Scroll the conversation |
| Mouse wheel over agent list | Scroll/select agents |
Cmd+C on macOS | Copy selected chat text |
Ctrl+C | Emergency quit confirmation |
Use slash commands for workbench actions such as /new, /agents, /view,
/hide, /log, /trace, /copy, /settings, /config, and /quit.
Direct action shortcuts such as n, q, o, v, t, x, and j/k are
intentionally removed from the main workbench.
Settings Panel
Press Shift+S to open the 3-tab settings panel:
- General — AI provider, model, API key
- Proxies — import proxy URLs, test latency, resolve geo, delete
- Skills — toggle global and agent skills on/off
The settings panel remains keyboard-driven and shows its own shortcuts inside the panel.
Theme
The TUI uses a violet/cyan/green/amber/red palette defined in internal/tui/shared/styles.go, matching the VulpineOS brand.
See also
- Web Panel — browser-based dashboard for agent management
- Getting Started — install and launch your first agent
- Remote Access — deploy VulpineOS on a VPS with WebSocket