Windows desktop app self-updates and restarts over a running session — nine forced restarts in nine days, no opt-out
Summary
The Claude desktop app on Windows updates itself by stopping its own service, swapping its MSIX package, and restarting. Any work running in the app at that moment ends. There is no prompt, no deferral, and no setting to postpone it.
It has happened nine times in nine days on one machine, including three times during working hours and once at 03:17 local, which ended roughly seven hours of unattended overnight work.
Impact
- 2026-09-05, 03:17 local. A long-running unattended session was in progress. The app updated itself and restarted. Seven hours of work that would have run overnight did not happen. Nothing was recoverable, because the loss was elapsed time rather than saved state.
- Three of the nine updates landed mid-day — 2026-09-03 08:34, 2026-09-03 12:41, 2026-09-04 11:55 — so this is not confined to idle hours.
Environment
| | |
|---|---|
| OS | Windows 11 Home, 10.0.26200 |
| App | Claude 1.46388.3.0, x64 |
| Package family | Claude_pzs8sxrjxfjjc |
| Install location | C:\Program Files\WindowsApps\Claude_<version>_x64__pzs8sxrjxfjjc |
| SignatureKind | Developer — sideloaded MSIX from anthropic.com, not a Microsoft Store install |
| Locale | UTC+09:30; all timestamps below are local |
Every version registered on this machine
From Microsoft-Windows-AppXDeploymentServer/Operational, event ID 400 ("Deployment Register operation … finished successfully"), earliest registration per version. The log's own retention starts 2026-08-27, so this is a floor, not a total.
| Version | First registered (local) |
|---|---|
| 1.37937.3.0 | 2026-08-27 11:36:10 |
| 1.40609.0.0 | 2026-08-29 03:25:57 |
| 1.40609.1.0 | 2026-09-02 04:42:03 |
| 1.44121.1.0 | 2026-09-02 23:43:22 |
| 1.44121.2.0 | 2026-09-03 08:34:03 |
| 1.44121.4.0 | 2026-09-03 12:41:27 |
| 1.46388.1.0 | 2026-09-04 11:55:50 |
| 1.46388.2.0 | 2026-09-04 17:26:13 |
| 1.46388.3.0 | 2026-09-05 03:07:22 |
Nine versions across nine days. Two on 2026-09-03 and two on 2026-09-04.
The exact sequence, 2026-09-05
From the Windows Application log and AppXDeploymentServer/Operational, same machine, same minute:
03:07:22 AppX Claude_1.46388.3.0 registered
03:17:53 App log CoworkVMService: "Claude VM Service stopped."
03:17:53 App log CoworkVMService: warning, failed to disarm SCM recovery actions for this stop
03:17:54 AppX event 2562
03:17:54 AppX event 472 — moving package folder Claude_1.46388.2.0_x64__... to WindowsApps\Deleted\...
03:17:54 AppX event 400 — Deployment Register on Claude_1.46388.3.0 finished successfully
03:17:54 AppX event 613 — overall time 1109 ms (active 1109 ms)
03:17:54 AppX event 617 — status updated for the package
03:17:54 App log CoworkVMService: "Claude VM Service starting."
03:17:54 App log CoworkVMService: warning, failed to configure SCM recovery actions
There is no crash. %APPDATA%\Claude\Crashpad\reports holds no report for this time and the Application log carries no fault entry. The app stopped its own service, replaced its own package, and started again — an orchestrated self-update, not a failure.
The visible symptom is a dialog reading:
C:\Program Files\WindowsApps\Claude_1.46388.3.0_... Another program is currently using this file.
The "another program" is Claude itself, holding files from the version being replaced. The message misattributes the cause and gives the user nothing to act on. It has appeared at least twice, including once without a restart, so the condition can also be hit and survived.
What was ruled out
- Not the Microsoft Store.
SignatureKindisDeveloper, so the package was sideloaded from anthropic.com. Store update settings do not apply and turning them off changes nothing. - Not Windows AppInstaller polling.
Get-ScheduledTaskfinds no task matching*AppInstaller*or*Claude*. Nothing on the OS side is scheduled to check. - Not another application. At the time of the 03:17 restart the machine was running only a browser and Claude.
- Not a user-side setting.
%APPDATA%\Claude\config.jsoncontains updater state —updaterLastSeenVersion,updaterBannerStagedAt,version_first_launch— but no updater setting. There is no key to disable, defer, or channel-pin updates.
updaterBannerStagedAt reads {"version":"Claude 1.46388.3","stagedAt":1788543442357}, i.e. the update was staged at 03:07 local and applied ten minutes later at 03:17. The presence of a "banner staged" field suggests the intended behaviour is to offer the update, not to apply it unattended.
Expected behaviour
- An update should never interrupt an in-flight session. Stage it and apply it on the next clean start — which is what a staged banner implies is already the intent.
- If it must interrupt, it should ask, and "later" should be honoured.
- There should be a setting to defer or disable automatic updates. There is none in the app config, and no OS-side equivalent, because the package is sideloaded rather than Store-managed.
- The file-in-use dialog should not blame "another program" when the program holding the file is Claude.
Steps to reproduce
- Windows 11, Claude desktop installed from anthropic.com (sideloaded MSIX).
- Start long-running work in the app and leave it unattended.
- Wait for a release. On this machine the median wait is about a day.
- The app stops its service, swaps its package, restarts, and the work is gone.
Reproducing the evidence
Get-WinEvent -LogName "Microsoft-Windows-AppXDeploymentServer/Operational" -MaxEvents 6000 |
Where-Object { $_.Message -like "*Claude_*" } |
Select-Object TimeCreated, Id, LevelDisplayName, Message | Sort-Object TimeCreated
Get-WinEvent -FilterHashtable @{LogName='Application'; ProviderName='CoworkVMService'} -MaxEvents 400 |
Select-Object TimeCreated, Message | Sort-Object TimeCreated
The ask
Give Windows users a way to defer an update, and never apply one over a running session.
Showing cached comments. Read the full discussion on GitHub ↗
3 Comments
I will +1 this. It is very disrupting.
+1 on Windows 11, with logs. Same behaviour, and I can add the mechanism and a second-order consequence the thread does not cover yet.
Environment: Windows 11 Pro 25H2 (build 26200.9445), Claude Desktop MSIX, bundled Claude Code CLI 2.1.271.
Today the app downloaded 2.110.0.0 at 13:55 and restarted itself at 14:06 with no prompt, taking a major version jump from 1.52386.6.0. My logs show 17 of these silent relaunches across the retained files, the earliest on 2026-08-21, so it has been happening for at least the last 25 days on this machine.
The relaunch is deliberately designed to be unnoticeable. The app's own log names the mechanism: it saves navigation history and window z-order, relaunches, then restores both, so the window looks untouched afterwards.
The consequence that matters most for Code-tab users: the restart respawns every open Code session with
--resume, and that is the exact trigger for the connector schema-stripping bug in #91589. Twenty seconds after the relaunch my log shows four sessions respawned:So a single unrequested restart can also silently break claude.ai connector tool schemas in every open session, which is only visible later as -32602 argument-type errors. I worked around #91589 by converting 16 claude.ai connectors to local user-scope MCP servers, but a user who has not done that loses connector functionality without being told why.
There is also no user-facing control. The app's config carries only
updaterLastSeenVersionandupdaterBannerStagedAt, and the only documentation I can find is one sentence in the Desktop docs ("On macOS and Windows the app auto-updates on launch"). Nothing documents that the app will close and reopen itself over an active session, and nothing offers a defer or a channel pin.What I would ask for, in priority order: (1) never relaunch while a session is active without an explicit user action, even if that means holding the staged update until the next manual launch; (2) a visible "update ready, relaunch now or later" control, which is what the app used to do on this machine before around August; (3) a documented setting to defer updates or pin a channel for people who need a stable window during work.
+1, very disturbing, especially since 9 out of 10 times Claude cannot come back without me hunting down and killing zombies or having to restart