Overview
Terminal UI Overview
Athena Flow renders a live terminal UI while Claude Code is running. It is the primary observability surface for your agent sessions — showing you every event, every tool call, every permission decision, and every result in real time.
The UI is keyboard-driven, session-aware, and designed to be readable at a glance.
Layout
The terminal is divided into three areas:
┌──────────────────────────────────────────────────────────────────────┐
│ ATHENA v0.1.2 | ⠙ working claude-sonnet | tools:7 | ████░ | ● │ ← Header
├──────────────────────────────────────────────────────────────────────┤
│ │
│ Live Event Feed │
│ │
│ 09:41:02 tool.pre claude Read src/Header.tsx │
│ 09:41:03 tool.post claude Read 2.1kb │
│ 09:41:05 perm.req athena Write src/Header.tsx → ... │
│ ... │
│ │
├──────────────────────────────────────────────────────────────────────┤
│ input> │ ← Input bar
└──────────────────────────────────────────────────────────────────────┘
The Header
The header is a single line split into left and right sections:
Left: ATHENA v<version> | <spinner> <state-label>
Right: <model-name> | tools:<count> | <context-bar> | <server-status>
| Element | Description |
|---|---|
| Version | The installed @athenaflow/cli version |
| State label | Current Claude state: idle, working, waiting for input, or error |
| Spinner | Animated when state is working |
| Model name | The model being used, formatted from the session |
| Tool count | Total tool calls in the current session |
| Context bar | Visual indicator of context window usage (green → amber → red as it fills) |
| Server status | Dot showing whether the UDS server is running (green = running, red = stopped) |
The Event Feed
The event feed is the heart of the UI. Every hook event from Claude Code appears here as a row. See Live Event Feed for a full breakdown of columns and event types.
The Input Bar
The input bar at the bottom accepts:
- Prompts — text sent directly to Claude Code as a user message
- Slash commands —
/help,/stats,/sessions, plugin skills, etc. - Command mode — prefix with
:(e.g.,:todo,:run,:tail) - Search mode — prefix with
/to filter the event feed
Claude States
The header state label reflects the current Claude Code session state:
| State | Meaning |
|---|---|
idle | No active Claude session |
working | Claude is running and processing |
waiting for input | A permission prompt or question is awaiting response |
error | The session ended with an error |
Optional: Todo Panel
Press Ctrl+T to toggle a todo panel alongside the feed. The panel tracks tasks extracted from the session and supports priority levels (P0, P1, P2). Navigate it with arrow keys when focused; press Tab to cycle focus between feed, input, and todo.