[BUG] Claude Desktop (Windows MSIX): main webview renderer fails to spawn — render process gone: launch-failed, exitCode 21

Status Open
Reported on v2.1.271
Maintainer reply None cached
Activity 0 comments · opened Sep 17, 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?

On Windows, when Claude Desktop process is stopped (after choosing exit in systray) and started again, it intermittently fails to show its window. The main process boots completely and the AppX container is created successfully, but the main webview renderer process never spawns. The app then sits retrying. No window ever appears, and no crash dump is produced.

This is distinct from #94241 and #93783, where the AppX container itself cannot be created and Claude.exe never runs. Here the container is created, Claude.exe runs, the full boot sequence completes, and only the renderer child process fails to launch.

What Should Happen?

Claude Desktop should open its window.

Error Messages/Logs

From %LOCALAPPDATA%\Claude\logs\main.log, the boot sequence runs to completion and then:

[info] [startup-warm] local-agent-mode island loaded { start_ms: 3096, end_ms: 3172 }
[info] Main webview render process gone: { reason: 'launch-failed', exitCode: 21 }
[info] [EventLogging] Flushing 30 events
[error] Sentry caught: {
  eventId: '94b15875dd6e454c91e3f421b0763902',
  type: 'Unknown',
  value: 'Main webview render process gone',
  stack: undefined
}
[info] Renderer failed to launch; reloading in 1s
[warn] claudeURLHandler: initial mainView load loadURL rejected { code: 'ERR_FAILED' }
reason: 'launch-failed' indicates the renderer process was never created — this precedes any URL load. A diff of a successful launch against a failing one shows byte-identical boot sequences up to this point; the successful run continues into mainView backgroundThrottling disabled and a media permission probe against https://claude.ai, the failing run does not.

Windows event correlation
Microsoft-Windows-AppModel-Runtime/Admin during a failing launch shows the container lifecycle succeeding, then being torn down:

21:53:34  Id 210  Created Desktop AppX container {8D1BD62F-...} for package Claude_2.110.0.0_x64__pzs8sxrjxfjjc
21:53:37  Id 201  Created process 34724 for application Claude_pzs8sxrjxfjjc!Claude  [LaunchProcess]
21:53:37  Id 211  Added process 34724 to Desktop AppX container 8d1bd62f-...
21:53:43  Id 217  Destroyed Desktop AppX container {8D1BD62F-...}
So container creation and main-process launch both succeed. Only the renderer child fails.

Steps to Reproduce

Not deterministic. Quit Claude Desktop and launch it again; it fails on a substantial fraction of attempts, and once it starts failing it keeps failing for several minutes. 21 of 56 launches failed over three days. No user action correlates with it — see the ruled-out list below.

Frequency and history
The app launched cleanly 32 times between 2026-08-21 and 2026-09-14 15:32. The first failure was 2026-09-14 15:36:46, and there have been 21 failures since across two app versions.

Failures cluster: once one occurs, subsequent attempts tend to fail for roughly 7–19 minutes, then a launch succeeds with no intervention. A reboot also clears it, but is not required.

Claude Model

Not sure / Multiple models

Is this a regression?

I don't know

Last Working Version

_No response_

Claude Code Version

2.1.271

Platform

Anthropic API

Operating System

Windows

Terminal/Shell

Windows Terminal

Additional Information

Environment
OS: Windows 11 Enterprise 26200 (x64)
Claude Desktop: 2.110.0 (also reproduced on 1.52386.6)
Install type: MSIX / Microsoft Store — Claude_2.110.0.0_x64__pzs8sxrjxfjjc
Node (per log): 24.20.0
Package status: Get-AppxPackage reports Status: Ok; only one version installed
Filesystem virtualization: Active - app data under %LOCALAPPDATA%\Packages\Claude_pzs8sxrjxfjjc\LocalCache\Roaming\Claude

Observability gap (secondary report)
Despite 21 renderer launch failures, %APPDATA%\Claude\Crashpad\reports is empty and every Sentry event carries stack: undefined with type: 'Unknown'. There is no captured reason for the spawn failure — no GetLastError, no sandbox result code, no Chromium launch diagnostic. Surfacing the underlying Windows error when reason === 'launch-failed' would make this class of bug diagnosable rather than guesswork.

Workaround
Wait several minutes and launch again. Claude Code remains fully usable from the terminal in the meantime (claude --resume <session-id>), which is unaffected.

View original on GitHub ↗