Desktop app: Remote Control auto-enables while "Enable remote control by default" reads off; only an explicit remoteControlAtStartup: false stops it

Status Open
Reported on v2.1.237
Maintainer reply None cached
Activity 0 comments · opened Aug 25, 2026

Environment

  • Claude Desktop 1.34493.1, bundled Claude Code 2.1.237 (CLAUDE_CODE_ENTRYPOINT=claude-desktop)
  • macOS (Darwin 25.5.0)
  • Session started with --setting-sources=user,project,local; signed in via claude.ai OAuth (no API key, no ANTHROPIC_BASE_URL)

Expected behavior

With Settings > Claude Code > "Enable remote control by default" off, a session started from the desktop app should not connect to Remote Control until explicitly invoked.

Actual behavior

The session was connected. Clicking the laptop icon in the session header opened the Remote Control panel showing the toggle on, with a live https://claude.ai/code/... session URL — i.e. the local session was exposed for remote steering without opting in.

Root cause as far as local state shows

remoteControlAtStartup was absent from the user settings file (grep -i remotecontrol ~/.claude/settings.json → exit 1, no match), while the app's toggle displayed off. The app appears to render the toggle without ever persisting a value, so the session falls back to the default and auto-connects. The UI reads as a state it isn't writing.

Workaround that works

Writing "remoteControlAtStartup": false into the user settings file by hand stops the auto-connect. Note the contrast with #89146, where remoteControl=default did not suppress it — an explicit false may be winning where default doesn't.

Steps to reproduce

  1. Desktop app, Settings > Claude Code, confirm "Enable remote control by default" is off.
  2. grep -i remotecontrol ~/.claude/settings.json → no match.
  3. Open a new session in a project directory.
  4. Click the laptop icon in the session header → Remote Control toggle is on with a claude.ai session URL.

Request

The desktop toggle should persist remoteControlAtStartup when set to off, and an off state (whether written or merely displayed) should suppress auto-connect. Possibly the same underlying cause as #89146 on a different host.

Related: #89146 (same shape, VS Code extension), #84502 / #85086 (opposite direction — RC failing to register).

View original on GitHub ↗