[BUG] Web tab lists local CLI-only conversations; opening them always fails with "No conversation found with session ID" and leaves a new empty teleport stub each time
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?
Conversations that exist only locally are listed in the "Web" tab of the
conversation list, and clicking one always fails.
The conversations were started from a local terminal (entrypoint "cli", launched
by the Android Studio "Claude Code [Beta]" plugin). They never ran in the cloud.
Yet they appear in the Web tab with their real titles.
Clicking one:
- fails with "No conversation found with session ID: <uuid>"
- creates a new one-line stub file in ~/.claude/projects/<project>/<uuid>.jsonl
- uses a DIFFERENT local uuid on every attempt, always pointing at the SAME
remoteSessionId, always with messageCount 0
Because the uuid changes each time, the error is unrecoverable from the user
side: deleting the offending file does nothing, the next click just creates
another one. I deleted 4 stubs and 4 more appeared within the hour.
The stubs also show up in the /resume list, where they cannot be opened either.
The real conversation is intact on disk and opens normally via /resume.
What Should Happen?
Either of these would be correct:
A. Local-only conversations should not be listed in the "Web" tab at all.
They never ran in the cloud, so the tab should only show conversations that
actually exist server-side.
B. Or, if they are listed, clicking one should open it — falling back to the
local .jsonl file, which is present and intact.
In both cases, a failed open should not:
- write a stub file on every attempt (they accumulate silently and are never
cleaned up),
- allocate a NEW uuid each time, which makes the error unrecoverable — the user
can never identify or delete "the" broken session,
- leave those stubs visible in the /resume list, where they cannot be opened
either.
A clear message such as "This conversation only exists locally, open it with
/resume" would already be a large improvement over "No conversation found with
session ID: <uuid>".
Error Messages/Logs
UI error:
Error: Claude Code returned an error result: No conversation found with
session ID: 75ab19ce-16ab-4e52-9026-c94af46aec66
Stub file created by each failed attempt
(~/.claude/projects/<project>/<uuid>.jsonl, 97 bytes, single line):
{"type":"teleported-from","remoteSessionId":"session_01EeYAhFfmWYhiZqrj34Dx4a","messageCount":0}
Four consecutive attempts today, four different local uuids, same target:
11:11 2e48a0b3-0037-400e-8c7e-3f65602e9500 -> session_01EeYAhFfmWYhiZqrj34Dx4a
11:12 4c13a0ac-3288-4f9a-bf9c-80cb19537d3c -> session_01EeYAhFfmWYhiZqrj34Dx4a
11:37 9f81b686-1cf1-4769-8c15-bd796fbf9934 -> session_01EeYAhFfmWYhiZqrj34Dx4a
11:45 80823054-e930-4c7b-ab1d-e9260f62f160 -> session_01EeYAhFfmWYhiZqrj34Dx4a
Earlier stubs pointed at other remote sessions
(session_013TkEyocQjmQeGPyHFsTdCM, session_01NnamXFRbLaZQbAbQ93xjzi,
session_01EeYAhFfmWYhiZqrj34Dx4a, session_01Fhp8BTEUQPmgrNLLTLPsXD).
Nothing relevant in the Android Studio idea.log: no "teleport" and no
"No conversation found" entries at all.
Possibly related, an older file in another project with a different shape:
{"type":"bridge-session","sessionId":"…","bridgeSessionId":"cse_…","lastSequenceNum":0}
Steps to Reproduce
- Start a conversation from a local terminal (entrypoint "cli") in a plain
local project. In my case the terminal is the one opened by the Android
Studio "Claude Code [Beta]" plugin 0.1.14-beta. The project is NOT a git
repository and has no GitHub remote.
- Open the conversation list and switch to the "Web" tab.
- The locally-started conversation is listed there, with its real title.
- Click it.
Claude Model
Opus
Is this a regression?
I don't know
Last Working Version
_No response_
Claude Code Version
2.1.232
Platform
Anthropic API
Operating System
Windows
Terminal/Shell
PowerShell
Additional Information
_No response_
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗