TUI Monitoring Dashboard
Real-time terminal dashboard for watching your agents and news feed at a glance
TUI Monitoring Dashboard#
The TUI is a terminal-based monitoring dashboard for ID Agents. It gives you a live, at-a-glance view of your entire fleet: agent status, team filters, and a streaming news feed with color-coded events and age-faded cooldown indicators.
The dashboard is built on ink and React, and runs flicker-free on iTerm2.
Launching the TUI#
From the id-agents repo:
# Development (runs from source via tsx)
npm run tui:dev
# Production (runs the compiled bundle)
npm run tui
The dashboard connects to the manager daemon on port 4100 by default and begins polling for agents, teams, and news.
Pages#
The TUI is a three-page stack. Use ←/→ to navigate between pages.
| Page | Purpose |
|---|---|
| Agents list | One row per agent, with a compact status strip showing one colored glyph for every agent in the fleet |
| News list | Chronological stream of news items across the team, color-coded by event type |
| News detail | Full content of a single news item, including the underlying payload |
Keybindings#
| Key | Action |
|---|---|
← | Go to previous page (news detail → news list → agents) |
→ | Go to next page (agents → news list → news detail) |
↑ / ↓ | Move the selected row, or scroll within a page |
Tab | Cycle forward through team filters |
Shift+Tab | Cycle backward through team filters |
q | Quit the dashboard |
Status Strip#
At the top of the agents page is a compact status strip. Each agent in the fleet is rendered as a single colored glyph, so the whole team fits on one row regardless of size. The glyph color reflects the agent's current status (online, idle, offline, error), letting you spot a downed or stuck agent without scrolling.
News Feed Colors#
News items are color-coded by event type so the stream is readable at a glance.
| Event type | Meaning |
|---|---|
query.received | Incoming message to an agent |
outbound.reply | Agent's response going out |
task.created / task.claimed / task.done | Task lifecycle transitions |
heartbeat / schedule | Scheduler-driven activity |
Each news item also carries an age-colored cooldown indicator that fades over 15 minutes:
- Bright green -- very recent (just now)
- Green -- recent (within a few minutes)
- Yellow -- cooling off
- Gray -- old (past the 15 minute window)
This gives you a quick visual read on which items are hot and which are historical noise.
Team Filter#
Press Tab / Shift+Tab to cycle through the team filter at the top of the screen. The dashboard will filter agents and news to the selected team. Useful when you have multiple teams running at once and only want to watch one.
Layout#
Both the agents and news pages use fixed-height padded layouts. Combined with a stdout transform that rewrites ink's erase-and-redraw escape sequences to cursor-home overwrites, this eliminates flicker on iTerm2 even at high refresh rates.
When to Use the TUI#
The TUI is a read-only observer. Use it to:
- Watch a fresh deploy settle and confirm every agent is online
- Tail the news feed while a long-running task is in flight
- Spot which agents are hot and which are idle during a fan-out workload
- Triage a failing agent quickly by scanning the status strip
For managing agents (deploy, ask, delete, etc.), use the interactive CLI attached to the manager daemon or the Remote API.
Related#
- CLI Reference -- deploy and message agents
- REST-AP Protocol -- the underlying endpoints the TUI polls