Skip to main content

Sessions

The Sessions tab is the daily-use surface — a live list of every claude session ccmon is watching, with a detail pane on the right.

Layout​

  • Left sidebar — every active session, oldest at the bottom. Each row shows the project / repo, the git branch, the working directory, and the session age.
  • Header badges — counts of stuck sessions and pending approvals at a glance.
  • Filter input at the top of the sidebar — filters by project, branch, or cwd.
  • Footer — total session count, stuck count, pending-approval count, and a live-update indicator that pulses when the daemon pushes a new event.
  • Right pane — the selected session's metadata (project, cwd, branch, started time, last activity), the recent timeline of tool events, and the current state pill.

Session states​

Every session is in exactly one state, shown as a state pill:

StateMeaning
WorkingThe agent is actively running tools.
AwaitingThe agent is paused on a permission request. The Approvals tab will have a pending entry.
StuckThe agent has been idle past CCMON_STUCK_THRESHOLD_S (opt-in; see Environment).
EndedThe session has finished — by Stop, by user interrupt, or by exit.

Selecting a session​

Clicking a row selects it and updates the detail pane. The timeline shows the most recent events in chat-style order — PreToolUse, PostToolUse, Notification, Stop, etc. — with tool name, input preview, and timing.

The detail pane updates live as the daemon pushes new events over its WebSocket interface. There's no polling — events appear as fast as the hooks fire.

What you can do from here​

  • Open the session's transcript in the History tab.
  • Jump to its pending approval if there is one (the row's pending-approval indicator is clickable).
  • Refresh the long summary — invokes claude -p to summarize the session (cached for 30 s; capped at 2 concurrent calls so you don't hit your rate limits).
tip

Long Sonnet thinking can look stuck. The stuck state is opt-in — set CCMON_STUCK_THRESHOLD_S=90 to enable it with a 90-second threshold.