claude-code - 💡(How to fix) Fix Claude Desktop app crashes on launch: V8 OOM / JavaScript heap out of memory [1 comments, 2 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
anthropics/claude-code#48261Fetched 2026-04-16 07:04:52
View on GitHub
Comments
1
Participants
2
Timeline
3
Reactions
0
Author
Timeline (top)
commented ×1cross-referenced ×1labeled ×1

Claude Desktop crashes every time it's opened, within ~12 seconds of launch. The app window briefly appears and renders (dom-ready fires), then the process dies.

Error Message

[3438:0x11c006d0000] 11512 ms: Mark-Compact (reduce) 3813.1 (3818.2) -> 3813.0 (3818.0) MB, pooled: 0.0 MB, 19.36 / 0.00 ms (average mu = 0.484, current mu = 0.019) last resort; GC in old space requested [3438:0x11c006d0000] 11529 ms: Mark-Compact (reduce) 3813.0 (3818.0) -> 3813.0 (3817.0) MB, pooled: 0.0 MB, 17.36 / 0.00 ms (average mu = 0.324, current mu = 0.001) last resort; GC in old space requested

[3438:0414/225250.697977:ERROR:electron/shell/common/node_bindings.cc:185] OOM error in V8: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory

Root Cause

Running the app from terminal reveals a V8 heap out of memory error. The JavaScript heap grows to 3.8 GB in ~11 seconds and then V8 fails to allocate:

[3438:0x11c006d0000]    11512 ms: Mark-Compact (reduce) 3813.1 (3818.2) -> 3813.0 (3818.0) MB, pooled: 0.0 MB, 19.36 / 0.00 ms (average mu = 0.484, current mu = 0.019) last resort; GC in old space requested
[3438:0x11c006d0000]    11529 ms: Mark-Compact (reduce) 3813.0 (3818.0) -> 3813.0 (3817.0) MB, pooled: 0.0 MB, 17.36 / 0.00 ms (average mu = 0.324, current mu = 0.001) last resort; GC in old space requested

[3438:0414/225250.697977:ERROR:electron/shell/common/node_bindings.cc:185] OOM error in V8: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory

Code Example

[3438:0x11c006d0000]    11512 ms: Mark-Compact (reduce) 3813.1 (3818.2) -> 3813.0 (3818.0) MB, pooled: 0.0 MB, 19.36 / 0.00 ms (average mu = 0.484, current mu = 0.019) last resort; GC in old space requested
[3438:0x11c006d0000]    11529 ms: Mark-Compact (reduce) 3813.0 (3818.0) -> 3813.0 (3817.0) MB, pooled: 0.0 MB, 17.36 / 0.00 ms (average mu = 0.324, current mu = 0.001) last resort; GC in old space requested

[3438:0414/225250.697977:ERROR:electron/shell/common/node_bindings.cc:185] OOM error in V8: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory

---

MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 change listeners added to [jin]. MaxListeners is 10.

Error occurred in handler for '$eipc_message$_..._claude.buddy_$_BuddyBleTransport_$_reportState': Error: No handler registered for '..._BuddyBleTransport_$_reportState'

---

/Applications/Claude.app/Contents/MacOS/Claude 2>&1
RAW_BUFFERClick to expand / collapse

Environment

  • App version: Claude Desktop 1.2581.0
  • OS: macOS 26.3.1 (Build 25D771280a), Darwin 25.3.0
  • Hardware: Apple M5, 24 GB RAM (80% free at time of crash)
  • Architecture: arm64

Description

Claude Desktop crashes every time it's opened, within ~12 seconds of launch. The app window briefly appears and renders (dom-ready fires), then the process dies.

Root Cause

Running the app from terminal reveals a V8 heap out of memory error. The JavaScript heap grows to 3.8 GB in ~11 seconds and then V8 fails to allocate:

[3438:0x11c006d0000]    11512 ms: Mark-Compact (reduce) 3813.1 (3818.2) -> 3813.0 (3818.0) MB, pooled: 0.0 MB, 19.36 / 0.00 ms (average mu = 0.484, current mu = 0.019) last resort; GC in old space requested
[3438:0x11c006d0000]    11529 ms: Mark-Compact (reduce) 3813.0 (3818.0) -> 3813.0 (3817.0) MB, pooled: 0.0 MB, 17.36 / 0.00 ms (average mu = 0.324, current mu = 0.001) last resort; GC in old space requested

[3438:0414/225250.697977:ERROR:electron/shell/common/node_bindings.cc:185] OOM error in V8: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory

Additional errors on startup

MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 change listeners added to [jin]. MaxListeners is 10.

Error occurred in handler for '$eipc_message$_..._claude.buddy_$_BuddyBleTransport_$_reportState': Error: No handler registered for '..._BuddyBleTransport_$_reportState'

Steps to reproduce

  1. Open Claude Desktop app (v1.2581.0)
  2. App window appears briefly
  3. App closes/crashes within ~12 seconds

Running from terminal confirms the OOM:

/Applications/Claude.app/Contents/MacOS/Claude 2>&1

What was tried

  • Cleared all caches (Cache/, Code Cache/, GPUCache/, DawnGraphiteCache/, DawnWebGPUCache/, Crashpad/) — did not fix
  • Cleared vm_bundles/ (was 12 GB of accumulated old bundles) — did not fix
  • Verified system memory is not the issue (80% free, 24 GB total)
  • App code signature is valid

MCP config

The user has n8n-mcp and supabase MCP servers configured. These launch on app startup but the OOM happens regardless.

extent analysis

TL;DR

The most likely fix is to address the memory leak causing the V8 heap out of memory error, potentially by resolving the MaxListenersExceededWarning and ensuring proper event listener removal.

Guidance

  • Investigate and resolve the MaxListenersExceededWarning: Possible EventEmitter memory leak detected error, as it may be contributing to the memory leak.
  • Verify that all event listeners are properly removed when no longer needed to prevent memory leaks.
  • Review the code for any potential memory-intensive operations or allocations that could be causing the V8 heap to grow to 3.8 GB in a short amount of time.
  • Consider adding logging or monitoring to track memory usage and identify potential bottlenecks.

Example

No specific code snippet can be provided without more context, but ensuring proper removal of event listeners might look like:

// Assuming 'jin' is an EventEmitter
jin.removeListener('change', listenerFunction);

Notes

The provided information suggests a memory leak, but without access to the codebase, it's difficult to pinpoint the exact cause. Resolving the MaxListenersExceededWarning and ensuring proper event listener management may help mitigate the issue.

Recommendation

Apply a workaround by investigating and addressing the memory leak, starting with the MaxListenersExceededWarning. This approach is chosen because the root cause of the memory leak is not immediately clear, and addressing the warning may help resolve the issue or provide more insight into the problem.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING