[BUG] /desktop on a terminal session with Remote Control on leaves two Desktop sidebar rows for one conversation

Status Open
Reported on v2.1.296
Maintainer reply None cached
Activity 1 comment · opened Oct 13, 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?

A session started in the terminal with Remote Control on shows in the Desktop app's Code sidebar as a Remote Control row. After I move that same conversation into Desktop with /desktop, the sidebar lists the one conversation twice:

  • a new local Desktop row, with Remote Control off
  • the old Remote Control row that the terminal session registered

The two rows keep independent titles. Renaming one does not rename the other, so they read as two unrelated sessions. In one case the rows ended up with two completely different names for the same conversation.

What I checked on disk for two affected sessions:

  • There is one transcript per conversation, and it records a single bridge-session id from start to finish. No second Remote Control session was created.
  • Desktop's registry record for the moved session (local_<uuid>, whose cliSessionId equals the transcript id) has no bridgeSessionIds field, and the app reports Remote Control as off for it. So Desktop made a fresh local row and did not adopt the Remote Control session the terminal had already registered.
  • The transcript switches from entrypoint cli to claude-desktop at the hand-off, so it is the same conversation continuing, not a fork.

What Should Happen?

One row per conversation. The Remote Control docs say that resuming a conversation that had Remote Control on in Desktop reattaches it to the existing claude.ai session rather than adding another entry to the session list. Either the Desktop row should adopt the existing Remote Control session, or the old Remote Control row should be merged or archived when the conversation moves.

Error Messages/Logs

None. Nothing is shown at the hand-off.

Steps to Reproduce

  1. Set "remoteControlAtStartup": true in ~/.claude/settings.json.
  2. Start claude in a terminal in any project and send a prompt. The session appears in the Desktop app's Code sidebar as a Remote Control session.
  3. Run /desktop in that terminal session. It opens in Desktop and the CLI exits.
  4. Look at the Desktop sidebar: the conversation is listed twice, once as the local session and once as the Remote Control session.
  5. Rename either row. The other keeps its old title.

Claude Model

Opus

Is this a regression?

I don't know

Last Working Version

_No response_

Claude Code Version

2.1.296 (Claude Code) in the terminal; Claude Desktop 2.31226.1 with bundled claude-code 2.1.295

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Other

Additional Information

macOS 14.4.1, claude.ai subscription login, fish shell.

Workarounds: archive the leftover Remote Control row by hand, or turn remoteControlAtStartup off so terminal sessions never register one.

Possibly related, but not the same report:

  • #99769: the reverse direction, where a Desktop session resumed in the terminal leaves a dead Remote Control row
  • #101326: Desktop and CLI keep separate session lists
  • #91392: one session shown under several independently generated names

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗