[BUG]

Resolved 💬 3 comments Opened Apr 29, 2026 by wifjf Closed May 31, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

After restarting Claude Desktop on Windows, the sidebar's "Recents"
list shows empty, even though session transcripts still exist on
disk at ~/.claude/projects/<project>/*.jsonl.

Even worse: pinning a session via "Drag to pin" does NOT survive
restart either — both Recents and Pinned lose their entries on
every Desktop restart.

Steps to reproduce:

  1. Open Claude Desktop and have one or more conversations
  2. Optionally drag a session to the Pinned area
  3. Fully quit Claude Desktop (verify process exits)
  4. Reopen Claude Desktop
  5. Observe: Recents is empty, Pinned is empty

What Should Happen?

After restart, the sidebar should reload Recents from the on-disk
session transcripts (the Agent SDK docs document listing recent
sessions ordered by lastModified). Pinned items should persist
across restarts.

Error Messages/Logs

No error messages — this is a silent UI state loss. There are no 
errors in the console, no crashes, and the underlying storage 
files (leveldb, .jsonl transcripts) remain intact on disk. The 
sidebar simply renders empty Recents and Pinned lists on startup.

Steps to Reproduce

  1. Open Claude Desktop on Windows
  2. Start one or more conversations (so they appear in Recents)
  3. Optionally drag one of them to the Pinned area (the "Drag to

pin" target in the sidebar)

  1. Fully quit Claude Desktop:
  • Close the window
  • Verify the process exits via Task Manager (no Claude.exe running)
  1. Reopen Claude Desktop
  2. Observe the sidebar:
  • Recents section is empty
  • Pinned section is empty (even if a session was pinned in step 3)
  • Yet the .jsonl transcripts still exist at

%USERPROFILE%\.claude\projects\<project>\

  • Yet %APPDATA%\Claude\Local Storage\leveldb\ has persisted

.ldb files from before the restart

Claude Model

None

Is this a regression?

No, this never worked

Last Working Version

_No response_

Claude Code Version

2.1.121

Platform

Anthropic API

Operating System

Windows

Terminal/Shell

Terminal.app (macOS)

Additional Information

Diagnostic findings:

  • Session transcripts ARE persisted on disk:

~/.claude/projects/C--Users-FF/*.jsonl (9 files, intact)

  • Local Storage leveldb IS persisted across restarts:

%APPDATA%\Claude\Local Storage\leveldb\ contains .ldb files
spanning multiple sessions with valid timestamps

  • IndexedDB at https_claude.ai_0.indexeddb.leveldb had its

CURRENT/MANIFEST reset mid-session, suggesting the IndexedDB
origin/db gets recreated on some trigger

  • ~/.claude/sessions/ only contains <pid>.json for the current

process — pid-keyed metadata files appear to be cleaned on
shutdown, which would break any UI that depends on them rather
than scanning the .jsonl transcripts

The Agent SDK reference docs (TypeScript/Python "Example" pages)
document listing the 10 most recent sessions ordered by
lastModified — the data source is supported, but the Desktop
sidebar UI doesn't appear to use it on startup.

So: data persists at the storage layer, but the Desktop UI fails
to read it back on restart. This is a UI read-path bug, not a
storage problem.

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗