Skip to main content

Module agents

Module agents 

Source
Expand description

Agent dashboard — shows which Claude/Codex agents are running in which tmux panes, with cwd, task, and review/intent status.

Data sources are all local: tmux itself + ~/.claude/state/. No daemon. Identity anchor is the tmux pane PID; cwd is for state-marker matching and display, never for identity. See state.rs for the matching logic.

Modules§

attention
Read the cross-tool attention queue at ${XDG_CACHE_HOME:-$HOME/.cache}/claude-attention/queue.jsonl.
classify
Classify Claude/Codex’s UI state from a tmux pane snapshot.
collector
Combine tmux panes + Claude state markers + process tree into a Snapshot. Pure I/O orchestration — all the parsing lives elsewhere.
panes
proc
Process tree walker. Given a tmux pane PID, find the most recently spawned claude or codex descendant so we can read its cwd and report it as the agent’s working directory.
session_meta
Read Claude Code’s own session-state file: ~/.claude/sessions/<PID>.json. The file holds Claude’s view of the UI status — busy (mid-turn), idle (at chat prompt), waiting (selection / permission dialog up) — keyed by the Claude process PID. That makes it a perfect primary signal for the dashboard: no pane scraping, no pattern matching, no session-UUID mapping.
state
Scan ~/.claude/state/ for markers that tell us what’s blocked, what has an active intent, and which repos have a fresh review marker.
ui
Agent dashboard TUI. Renders to stderr so it composes with shell wrappers that capture stdout (matches the picker convention in src/ui/picker.rs).

Structs§

Agent
Flags
PaneLocator
Snapshot

Enums§

AgentKind
Status

Functions§

run