Skip to content

Sessions

Every Claude Code conversation has a unique session ID that persists across restarts. Claude Yard uses these IDs to track what each session is doing, show your full history, and let you resume any conversation with a click.

Claude Yard detects session state in real-time by reading terminal escape sequences — no polling required.

IdleRunningWaitingDoneError
StatusIndicatorMeaning
IdleSolid dotClaude is at the prompt, waiting for input
RunningAnimated spinnerClaude is working on a task
WaitingSolid dot (different color)Claude needs confirmation before continuing
DoneDim dotSession exited cleanly
ErrorX markSession exited with an error

The right sidebar shows every Claude session on your machine — not just ones opened in Claude Yard. It reads session data from ~/.claude/projects/ and merges it with the live state of open terminals.

What you can do from the sidebar:

  • Click a closed session to resume it in a new tab (claude --resume)
  • Click an open session to jump to its tab
  • See status at a glance — dots show what each session is doing
  • Spot unread activity — badges appear on sessions that produced output while you were in another tab

The sidebar refreshes from disk every 10 seconds, so sessions started from the regular CLI show up automatically.

Sessions are grouped by the working directory they were started in.

~/projects/appauth refactortest fixesadd login~/projects/apirate limitingfix CORS

Sessions survive app restarts. Close Claude Yard, reopen it, and the sidebar still has your full history. Terminal tabs themselves don’t persist (the underlying processes exit when the app closes), but resuming a session picks up the full conversation history.