Sessions
Every agent run is a session. Browse them like YouTube videos.
Sessions
Every time an AI agent starts working, Dashcam creates a session. A session maps to a single Claude Code invocation — from the moment the agent begins to the moment it stops. Sessions are the fundamental unit of work in Dashcam, and the session browser is the first thing you see when you open the dashboard.
The Session Browser
The home page is a YouTube-inspired grid of session cards. Each card is a window into a completed (or still-running) agent session. You scan the grid the same way you scan YouTube — thumbnails catch your eye, titles tell you what happened, and metadata helps you decide which session deserves your attention.
The grid is responsive: one column on small screens, up to four columns on wide displays. Sessions are sorted by recency, with active sessions pinned to the top.
Session Card Anatomy
Every session card surfaces the information you need at a glance:
- Thumbnail — A 16:9 screenshot from the session (the last capture taken). Cards without screenshots show a gradient placeholder. The thumbnail is lazy-loaded for fast initial rendering.
- Duration Badge — Bottom-right of the thumbnail, showing the total session length (e.g.,
4h 23m). White text on a semi-transparent dark background, just like YouTube. - Title — An auto-generated summary of what the agent accomplished (e.g., "Built auth system + user dashboard"). Truncated to two lines.
- Agent Identity — Which agent or tool ran the session: Claude Code, a Loki Mode agent type, an Everything Claude Code agent, etc.
- Event Count — The total number of events captured in the session (messages, tool uses, decisions, errors).
- Time Ago — Relative timestamp: "3 hours ago", "Yesterday", "March 14".
- Status Indicator — A colored dot or icon showing the session's current state.
Hover over a card for 500ms and it expands slightly, showing a mini-timeline preview strip and a carousel of the first few screenshots — like hovering over a Netflix title.
Session States
Every session is in one of four states:
| State | Indicator | Meaning |
|---|---|---|
| Active | Pulsing green dot | Agent is currently running. Events are streaming in real-time. |
| Completed | Checkmark icon | Agent finished normally. Session is ready for review. |
| Error | Red dot | Agent encountered a fatal error. The session may be incomplete. |
| Abandoned | Gray dot | Session started but no events were received for an extended period. The agent may have been killed or crashed. |
Active sessions show a progress-style bar and a live event counter that increments as new events arrive.
Continue Watching
At the top of the session browser, a "Continue Watching" section highlights sessions that deserve your attention:
- Active sessions — currently running agents with live event streams
- Recently completed sessions — sessions that finished in the last few hours and have not been reviewed
- Sessions with errors — anything that ended in a failure state
This section disappears when there is nothing to catch up on.
Filtering and Sorting
The session browser supports filtering by:
- Agent type — Show only Claude Code sessions, only Loki Mode sessions, etc.
- Date range — Today, yesterday, last 7 days, custom range
- Project — Filter by project path (useful when you work on multiple codebases)
- Status — Active, completed, error, abandoned
Sorting options:
- Most recent (default)
- Longest duration
- Most events
- Highest cost
Full-Text Search
The search bar (also accessible with Cmd+K / Ctrl+K) runs full-text search across all session content:
- Agent conversations (user messages, assistant responses)
- File changes and tool invocations
- Decision logs
- Error messages
Results show the matching text in context along with the session card and a direct link to the exact timeline position where the match occurred. Click a result to jump straight to that moment.
Full-text search is powered by SQLite FTS5, which means it runs entirely locally with no external service. Searches across thousands of sessions return in under 50ms.
Clicking Into a Session
Click any session card to enter the session replay view. The session browser fades out and is replaced by:
- The timeline — a canvas-rendered, scrubable horizontal bar spanning the session's duration
- The panel workspace — dockable panels (Chat, Code, Result, Tests, Decisions, Cost) showing state at the playhead position
From here, you can scrub through the entire session, inspect decisions, compare screenshots, and understand everything the agent did — in context and in order.