System-wide macOS freeze (Dock/launchd crash-loop) + new white-screen crash with Cowork's local VM on low-core Macs

Status Open
Maintainer reply None cached
Activity 1 comment · opened Aug 14, 2026

Summary

On a resource-constrained Mac (2 physical cores / 4 logical threads, 16GB RAM), running Claude Desktop with Cowork's local VM (Apple Virtualization Framework) triggers a system-wide macOS freeze: menu bar, Dock, Cmd+Tab and Mission Control all stop responding, sometimes for hours, recoverable only by force-quitting Claude or rebooting. In the most severe episode, the freeze escalated to launchd refusing to spawn any new process (including the Dock itself), which in turn made the Terminal unresponsive — losing shell access entirely.

More recently (after an Aug 13 auto-update to 1.30096.1), a second, milder symptom appeared: the Claude Desktop window itself goes fully white/blank for several seconds, and has crashed outright at least once.

Environment

  • MacBook Air, macOS Sonoma 14.8.8 (23J620)
  • CPU: 2 physical cores / 4 logical threads (hw.physicalcpu=2, hw.ncpu=4)
  • RAM: 16GB
  • Claude Desktop version: 1.30096.1 (auto-updated 2026-08-13)

Timeline / trigger correlation

  • 2026-08-04: macOS updated to Sonoma 14.8.8. The system-wide freeze started occurring "with frequency" roughly a week after this update — the timing lines up closely.
  • 2026-08-13: Claude Desktop auto-updated to 1.30096.1. Within a day, a new/different symptom appeared: the app window goes blank white for several seconds, and crashed once.

We can't prove causation from either update alone, but both are the two most recent system-level changes on this machine and both line up temporally with a change in symptom frequency/character.

Root cause found for the system-wide freeze (confirmed via diagnostics)

  1. uptime during/after an episode showed load average of 11–38 on a 2-core machine — 5-19x oversubscription.
  2. ~/Library/Logs/DiagnosticReports/Dock-*.ips crash reports show bug_type: 309 (launchd watchdog timeout) with successive crashes: 22 in launchctl print gui/<uid>/com.apple.Dock.agent — the Dock wasn't crashing on its own, it was being killed by launchd's watchdog for failing to respond in time, repeatedly, because the CPU was saturated.
  3. Eventually launchd stopped relaunching Dock at all: open -a Dock failed with

``
Error Domain=RBSRequestErrorDomain Code=5 "Launch failed."
...NSPOSIXErrorDomain Code=162 "Unknown error: 162" ... Launchd job spawn failed
``
which then made the Terminal itself unresponsive (same launchd spawn-refusal mechanism).

  1. Top CPU consumers during an episode: Claude Helper (Renderer) (~52%), Claude Helper (~34%), WindowServer (~30%), plus other concurrently running apps — on a 2-core machine this is enough to starve system-critical processes.
  2. Cowork's local Linux VM (Virtualization.framework process, confirmed present in ps) adds further scheduling contention. This matches a long-standing, still-open Apple Developer Forums thread (developer.apple.com/forums/thread/685573, open since Monterey) describing the same Dock/Mission Control freeze symptom specifically correlated with any local VM being active (VirtualBox in that thread's case), not just Claude/Cowork.

Ruled out:

  • Disk space: 114GB free, not a factor.
  • Process table exhaustion: 609 processes total vs kern.maxproc=4176 — not exhausted.
  • RAM: no swap pressure, memory pressure green throughout.
  • Scheduled-tasks catch-up bug (previously suspected, see anthropics/claude-code #32125/#32167/#32213): checked scheduled-tasks.json directly — it's empty (scheduledTasks: []), not the cause here.

Secondary factor: vm_bundles growth

~/Library/Application Support/Claude/vm_bundles grew to ~23GB at one point (matches anthropics/claude-code #32207, #32263), currently sitting around 7.5GB after manual cleanup. Not the root cause of the freeze by itself, but adds disk I/O pressure on an already CPU-starved system and is worth capping/cleaning proactively.

New symptom (since 2026-08-13 update): white screen / crash

Since updating to 1.30096.1, the Claude Desktop window intermittently goes completely white/blank for several seconds, and closed unexpectedly at least once. Observed alongside this: MTLCompilerService (Metal shader compiler) consuming ~48% CPU concurrently with Claude Helper (Renderer) at ~68% CPU — consistent with repeated GPU shader recompilation stalling the renderer's paint, a known Electron/Chromium failure mode under CPU/GPU starvation. No crash report was generated in ~/Library/Logs/DiagnosticReports/ for this (Crashpad completed/pending folders are empty), so this may currently only be visible as a renderer hang rather than a full process crash — but the user did observe one full close.

Steps to reproduce

  1. Use a Mac with 2 physical cores / 4 threads and 16GB RAM.
  2. Open Claude Desktop with Cowork active (local VM running).
  3. Run other CPU-active apps concurrently (in our case: Autodesk Fusion 360, Logitech Options+).
  4. Load average climbs past ~10 on the 2-core machine; Dock/Mission Control/Cmd+Tab stop responding; can persist for hours.

Impact

  • Full desktop environment freeze, not scoped to the Claude Desktop window.
  • At least one occurrence where launchd stopped spawning processes system-wide, requiring a hard reboot.
  • New: intermittent white-screen/crash in the Claude Desktop window itself since the 1.30096.1 update.

Workaround in use

Installed a local LaunchAgent watchdog (not a fix, just mitigation) that:

  • Caps vm_bundles at 10GB (measuring real disk usage via du, not logical file size, since VM disk images are sparse and inflate st_size sums).
  • Kills sustained-duplicate Claude Helper/Claude Helper (Renderer) processes (2+ minutes of duplication, oldest instance only).
  • On Dock disappearing for 2+ minutes, runs launchctl kickstart -k gui/<uid>/com.apple.Dock.agent (needed instead of open -a Dock, which fails once launchd throttles the job after repeated crashes).

Ask

  • Is Cowork's local VM expected to be this CPU-hungry on low-core-count Macs? Is there a lower-resource-usage mode, or a documented minimum core count?
  • Any known interaction between Cowork's VM and macOS Dock/Mission Control scheduling, similar to the Apple Forums VM/Mission Control thread linked above?
  • Any known renderer/GPU regression in 1.30096.1 that could explain the new white-screen symptom?

Happy to provide more diagnostics (Crashpad dumps once one is captured, log show excerpts, sentry queue) if useful.

View original on GitHub ↗

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