[BUG]
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:
- Open Claude Desktop and have one or more conversations
- Optionally drag a session to the Pinned area
- Fully quit Claude Desktop (verify process exits)
- Reopen Claude Desktop
- 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
- Open Claude Desktop on Windows
- Start one or more conversations (so they appear in Recents)
- Optionally drag one of them to the Pinned area (the "Drag to
pin" target in the sidebar)
- Fully quit Claude Desktop:
- Close the window
- Verify the process exits via Task Manager (no Claude.exe running)
- Reopen Claude Desktop
- 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.leveldbhad 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.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗