Summary
Two dead sessions remain listed in the desktop app's Remote Control panel indefinitely. They cannot be dismissed: hovering a row only offers "End session" for active sessions, and these ghosts have no active session behind them.
Environment
- Claude Desktop
1.18286.0 (Electron 42.5.1)
- macOS (Darwin 25.5.0)
Symptom
- The Remote Control panel shows two rows:
workspace — <project>, each stuck at 0 of 32.
- Both point at the same workspace/host and appear to be orphaned remote-session records left over after the underlying sessions ended.
What I tried
- Full quit (
killall Claude) + relaunch — the entries come back.
- Deleted the matching local
claude-code-sessions/*.json records, then relaunched — no effect.
- Verified the entries are not stored in any local store:
Local Storage leveldb, IndexedDB, config.json, claude_desktop_config.json. The list appears to be re-fetched from the server on each launch, which is why local deletion / cache clearing does nothing.
- Hovering a row offers "End session" only when a session is active; for these ghosts there is no delete / remove / disconnect control.
Expected
A way to remove or dismiss an orphaned remote session whose backing process no longer exists — e.g. a per-row remove control, or automatic server-side expiry of dead sessions.
Summary
Two dead sessions remain listed in the desktop app's Remote Control panel indefinitely. They cannot be dismissed: hovering a row only offers "End session" for active sessions, and these ghosts have no active session behind them.
Environment
1.18286.0(Electron 42.5.1)Symptom
workspace — <project>, each stuck at0 of 32.What I tried
killall Claude) + relaunch — the entries come back.claude-code-sessions/*.jsonrecords, then relaunched — no effect.Local Storageleveldb,IndexedDB,config.json,claude_desktop_config.json. The list appears to be re-fetched from the server on each launch, which is why local deletion / cache clearing does nothing.Expected
A way to remove or dismiss an orphaned remote session whose backing process no longer exists — e.g. a per-row remove control, or automatic server-side expiry of dead sessions.