anthropics / anthropics/claude-code
Stealth update relaunches the desktop app on idle, severing Remote Control sessions
- Dominant language
- Python
- Stars
- 145k
- Forks
- 23.1k
- PR merge metrics
- PR metrics pending
Description
## Summary
The Claude desktop app's automatic "stealth update" relaunches itself after an idle timeout — which is exactly when a user relying on Remote Control (following/driving sessions from claude.ai/code on their phone) is away from the machine. Each relaunch closes the remote-tools device and every Remote Control bridge, and the remote sessions stay dead until sessions are re-engaged on the desktop. Users should not have to switch update channels or disable auto-updates to keep remote access alive.
## Environment
- Claude desktop app (macOS, Code tab), app version 1.46388.3
- macOS (Darwin 25.5.0), Apple Silicon Mac mini
- Machine is always awake (sleep disabled); network confirmed stable — the drops correlate only with the updater
## Observed behavior
`~/Library/Logs/Claude/main.log` shows the pattern 1–2x per day for a week:
```
[stealth-update] Triggering stealth update after idle timeout
[stealth-relaunch] otherAppFullScreen=false
[remote-tools-device] close
```
On 2026-09-04 this fired at 10:47 and again at 14:51. After the 14:51 relaunch, no Remote Control bridge reconnected until sessions were re-engaged locally around 16:08 — roughly 75 minutes with remote access dead while the user was away and depending on it.
## Why this hurts
The trigger condition ("idle timeout") is inverted for Remote Control users: local idleness is precisely when remote usage is highest. The docs describe Remote Control surviving network drops and laptop sleep, but not an involuntary app relaunch, and there is no documented way to defer the relaunch or re-arm sessions afterward.
## Requests
1. Defer the stealth relaunch while any Remote Control bridge is connected (treat an active remote session as "not idle"), or
2. Automatically re-arm Remote Control for previously enabled sessions after the update relaunch, and
3. Document the behavior and give users a supported way to defer/schedule the relaunch.
## Workaround tried
Set `"autoUpdatesChannel": "stable"` in `~/.claude/settings.json` to reduce relaunch frequency — but it is not documented whether the desktop updater honors this key, and it trades away timely updates, which shouldn't be necessary.
---
🤖 Filed via [Claude Code](https://claude.com/claude-code) on the user's behalf
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reviewing ~/Library/Logs/Claude/main.log around the documented stealth-update and remote-tools-device events, then check ~/.claude/settings.json and the Remote Control behavior described in the issue. Reproduce an idle-timeout relaunch on the stated macOS environment and verify that an active session remains usable or is automatically re-armed afterward; document any supported deferral behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- macos
- Domain
- desktop
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 32/100