Claude Code History: Find, Search, and Resume Past Sessions

Claude Code stores session transcripts you can browse and resume. Here is where the history lives, how to resume a past session, and why current decisions and next steps belong in an external record.

Updated 5 min read

Claude Code stores a transcript of each session on your local machine. You can resume a past session by its identifier, which restores the conversation context so you can continue from where you stopped. The transcript is a record of the conversation; it is not the same as a record of what was decided or what still needs doing.

That distinction matters when you need to pick up work after a gap, hand it to a teammate, or continue in a different tool. Tools like fenbs keep decisions, rules, and Where we left off in a shared record outside the session archive, so the useful context survives whether or not the original session is available.

Where does Claude Code store session history?

Claude Code writes session data to a local directory, typically under ~/.claude/projects/. Each project directory contains a series of session files identified by a unique ID. The files are stored in JSONL format and contain the message history for that session.

The exact path and file format are described in Anthropic's Claude Code documentation (opens in a new tab). Treat these files as internal storage rather than a public interface; their format can change between Claude Code releases, so automations built directly against them may break on upgrade.

How do you resume a past session?

Use the /resume command followed by the session identifier to reopen a past session. Claude Code then loads the conversation history from that session file, so the model has context from the earlier work.

Resume a past session
/resume
# Claude Code will show available sessions to choose from

Before resuming, confirm the working files on disk match what you expect. The session transcript records the conversation but does not control what is on disk. If someone else changed a file, or if you committed and the state advanced since the session was saved, the transcript context may refer to a state that no longer exists.

What is the difference between session history and a project record?

Session history is a transcript: every message, tool call, and response exchanged during that session. It is useful for recovering the exact reasoning behind a change, finding a command you ran earlier, or understanding why a decision was made in that conversation.

A project record is the maintained state of the work: the current requirements, the decisions that still apply, and the next step. Those change as the project evolves; a session transcript from two weeks ago is accurate about that session but may be outdated about the work.

Session history vs a maintained project record
Session historyProject record
ContentsAll messages from one conversationCurrent decisions, tasks, rules, next steps
Survives model switchOnly if you export or copy itYes, it lives outside the session
Readable by a teammateOnly if they have the fileYes, with appropriate access
Stays current automaticallyNoWhen you maintain it

How do you search past sessions for useful context?

Session files are stored as JSONL, so you can use standard text tools to search them. If you remember a phrase from an earlier session, search the session files in ~/.claude/projects/<project-id>/ with a text search tool. The file containing the phrase will give you the session ID so you can resume it.

For decisions and rules you found in old sessions, the search is a last resort. Important decisions should be in your project record as they are made, not buried in transcript files. If you find a useful decision while searching history, extract it to fenbs or your CLAUDE.md so it is available without another search.

What are the limits of relying on session history?

Session transcripts are subject to context compaction. When a conversation grows long, Claude Code summarizes earlier portions to stay within the context window. The compacted version preserves meaning but may lose specific details. An important rule mentioned once in a long session may not survive compaction intact.

Sessions are also local to the machine where they were created. If you work across machines or hand work to a teammate, the transcript on your laptop is not available to them. The project record in fenbs is available anywhere with a connection, to any person or assistant with the right access.

How fenbs helps

Keep decisions and next steps out of the session archive

Save the decisions and the next step to fenbs at the end of each session. History in fenbs records every change and who made it, while Where we left off gives the next session a current starting point. A session transcript is useful for understanding the past; the fenbs record is what a fresh session needs to act.

Create a free account

Free for one person · No credit card · Works with Claude, ChatGPT, Cursor and more

How to do this with fenbs

  1. Create a free account and add the project your Claude Code sessions work on.
  2. Connect Claude Code to fenbs from Integrations. Ask it to read the project context at the start of each session.
  3. During the session, record decisions as they are made in fenbs. Do not save them only in the transcript and expect to find them later.
  4. Before stopping, ask Claude Code to save task progress and Where we left off to fenbs. This is the record the next session needs, independent of the transcript.
  5. If you need to recover a decision from a past session, use session history as a reference, then move the decision to fenbs so it is available without another search.

fenbs does not store session transcripts and does not read your ~/.claude/projects/ files. It holds the maintained project record. For understanding how Claude Code saves state mid-task rather than end-of-session, the Claude Code checkpoints guide covers that mechanism.

Questions people ask.

Where does Claude Code store session history?

Typically under ~/.claude/projects/ on your local machine, as JSONL files organized by project and session ID. Check Anthropic's documentation for the exact path, which can vary by platform.

How do I resume a specific past session?

Run /resume in Claude Code. It will show you the available sessions for the current project, and you can select one by its ID or timestamp.

Can a teammate access my Claude Code session history?

Not directly. Session files are local to the machine where they were created. Share decisions and task state through an external record like fenbs instead of expecting teammates to have access to your session files.

Does context compaction destroy session history?

Compaction replaces earlier parts of a long conversation with a summary to keep the session within the context window. Important details mentioned only once can be lost in compaction. Record key decisions in an external record as they occur rather than relying on finding them in a compacted transcript.

More in Agent harness (for developers)

All Agent harness (for developers) articles

Start with one thing.

Free for one person · No credit card · Works with Claude, ChatGPT, Cursor and more

There is nothing to set up first. Write one line and you’ve started.