tui-agent-dashboard
A beautiful terminal UI dashboard for monitoring AI agent operations, costs, and attribution in real-time—think htop meets agent observability.
What is this?
tui-agent-dashboard brings observability to your AI agent infrastructure with a gorgeous, keyboard-driven terminal interface. It integrates seamlessly with your existing agent-cost-attribution-layer and ai-agent-spend-guardian systems to surface real-time metrics, cost breakdowns, and request attribution without leaving your terminal. Built for developers who prefer TUIs over web dashboards.
Features
- Live Agent Activity Panel – Monitor active agents, request throughput, and execution status in real-time
- Cost Attribution Dashboard – View API costs broken down by agent, model, and time period
- Request Inspector – Search and inspect individual requests with full attribution metadata
- Health & Performance Metrics – Track agent health, latency, and error rates at a glance
- Interactive Navigation – Vim-style keybindings (j/k scroll, tab to switch panels,
/search) - Export Capabilities – Dump data to JSON/CSV or take ASCII screenshots for sharing
- Multiple Themes – Dark and light modes with configurable refresh rates
- Plugin Support – Out-of-the-box integration with LiteLLM, LangChain, and raw OpenAI/Anthropic proxies
- Docker Ready – Run locally with
docker-composeor deploy anywhere
Quick Start
Installation
pip install tui-agent-dashboard
Configuration
Copy .env.example to .env and configure your data sources:
cp .env.example .env
Update with your agent infrastructure endpoints:
AGENT_ATTRIBUTION_API_URL=http://localhost:8000
SPEND_GUARDIAN_API_URL=http://localhost:8001
REFRESH_RATE_MS=1000
Run
tui-agent-dashboard
Or with Docker:
docker-compose up
Usage
Once running, interact with the dashboard using keyboard commands:
| Command | Action |
|---|---|
Tab |
Switch between panels (Activity, Costs, Health, Inspector) |
j / k |
Scroll down / up |
/ |
Open search / filter |
e |
Export current view to JSON/CSV |
s |
Take ASCII screenshot |
q |
Quit |
1-4 |
Jump directly to panel |
Example: Monitor costs by agent
- Launch the dashboard
- Press
Tabuntil you reach the Costs panel - Use
j/kto browse agents sorted by spend - Press
eto export to CSV
Example: Export metrics
Press e from any panel to export real-time data:
# Exported to:
# tui-agent-dashboard-2025-05-04T09-03-42.json
# tui-agent-dashboard-2025-05-04T09-03-42.csv
Tech Stack
- Framework: Textual – Modern Python TUI library with GPU-accelerated rendering
- Backend Integration: FastAPI-compatible REST client
- Data Models: Pydantic for type-safe data validation
- Testing: pytest with comprehensive integration tests
- Containerization: Docker & Docker Compose
- Python: 3.9+
Development
Clone and install in editable mode:
git clone <repo>
cd tui-agent-dashboard
pip install -e ".[dev]"
Run tests:
pytest tests/
See CONTRIBUTING.md for contribution guidelines.
License
MIT
Release files for tui-agent-dashboard 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| tui_agent_dashboard-0.1.0.tar.gz | 14.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| tui_agent_dashboard-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 32.3 kB
Release files / tui_agent_dashboard-0.1.0.tar.gz
| Download URL | tui_agent_dashboard-0.1.0.tar.gz |
|---|---|
| Size | 14.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0b7aa23fab68d0bebbc64528c2178c08b2d5de797ad5a609dfe362fc3ada5c99
|
|
BLAKE2b-256 checksum How to use checksums |
76eab74338b890e4f579652daa8c31e3307ee8d12a3c997b951df21c39152c22
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.25
|
Release files / tui_agent_dashboard-0.1.0-py3-none-any.whl
| Download URL | tui_agent_dashboard-0.1.0-py3-none-any.whl |
|---|---|
| Size | 17.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b2c9d42ad53296e504f1f00acbe5b1292d5b87429d2f91aeafbe9a00e8293b08
|
|
BLAKE2b-256 checksum How to use checksums |
b7c9335e7590cafda8ed7cceb2df85ca2ce0ecf452657c3f3193ad7950da3d46
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.25
|