VS Code extension session picker returns 0 sessions despite valid transcripts on disk
Summary
The VS Code extension's session picker (/resume and the "Past Conversations" toolbar button) returns an empty list, even though valid session transcripts exist on disk in the expected location.
Environment
- Extension:
anthropic.claude-codev2.1.133 (Windows, x64) - VS Code on Windows 11
- Working directory is on a mapped Windows network drive (a drive letter mapped to a UNC path)
Steps to reproduce
- Open a workspace folder on a mapped network drive in VS Code.
- Open the Claude Code panel.
- Click "Past Conversations" or type
/resumein an active session.
Expected
A list of past sessions for this project.
Actual
Empty picker. No errors shown to the user.
Diagnostic data
- The project's session directory under
~/.claude/projects/<encoded-key>/exists and contains many valid<uuid>.jsonltranscript files (ranging from ~15 KB to several MB), including transcripts written today. - Extension log shows the request firing but presumably resolving to 0 results:
[time] Received message from webview: {"type":"list_sessions_request"}
[time] Received message from webview: {"type":"list_remote_sessions"}
[time] Fetched 0 remote sessions
(No error and no follow-up log line for the local request, so it's not crashing — it just returns empty.)
- Per-session metadata in
~/.claude/sessions/<pid>.jsoncorrectly records the cwd with a lowercase drive letter, and the project-key encoding on disk matches what would be produced from that cwd.
Suspected cause
Path-encoding mismatch when the cwd is on a mapped Windows network drive. Writes are reaching the right project key, but the picker's lookup may be comparing against a different encoded form (e.g. UNC vs drive-letter, or case differences).
Workaround
The transcript files are intact and can be opened directly as JSONL.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗