[BUG] Code tab crashes the app (V8 OOM) when a ~/.claude/projects session .jsonl is very large (macOS 26.5)

Resolved 💬 2 comments Opened Jun 11, 2026 by CamilleVedy Closed Jun 22, 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?

Environment

  • Claude Desktop: 1.11847.5
  • macOS: 26.5 (build 25F71), MacBook Air, Apple Silicon (arm64), 16 GB RAM
  • Claude Code CLI: 2.1.165 (works fine)

Summary

Opening the Code tab fully quits the app after ~5–13s. Chat and Cowork work.
Root cause: the Code tab loads a Claude Code session transcript into memory, and a single
2.4 GB .jsonl in ~/.claude/projects/<project>/ pushes the renderer past V8's heap
limit → OOM → the whole app dies.

Steps to reproduce

  1. Have a large session file, e.g. ~/.claude/projects/<project>/<uuid>.jsonl ≈ 2.4 GB.
  2. Launch the desktop app, open the </> Code tab.
  3. App quits after a few seconds. No .ips crash report is generated.

Actual behavior (from launching the binary in Terminal)

What Should Happen?

The ~2.65 GB ceiling is hit regardless of --js-flags="--max-old-space-size=8192/12288",
so the OOM is in the Code renderer process, not the main process.

What I ruled out

  • Local VM: after moving vm_bundles aside, it still crashes and no rootfs.img is

recreated → crash happens before any VM init.

  • Disk space: 307 GB free.
  • Reinstall / fresh config: crash persists, because ~/.claude/projects is never reset

by those operations. This is why the bug looked "unkillable".

Workaround (confirmed)

Quit the app, move the oversized .jsonl out of ~/.claude/projects/..., relaunch → Code
tab opens normally.

Suggested fix

Load Code history lazily / paginated, or add a size guard, so the Code tab never maps an
entire session transcript into memory and can't be killed by a large local .jsonl.

Error Messages/Logs

Steps to Reproduce

  1. Have a large Claude Code session file, e.g. ~/.claude/projects/<project>/<uuid>.jsonl around 2.4 GB (check with: du -sh ~/.claude/projects/* | sort -rh).
  2. Launch the Claude Desktop app.
  3. Click the </> Code tab.
  4. The entire app quits after ~5–13 seconds. No .ips crash report is generated.
  5. Quit the app, move that large .jsonl out of ~/.claude/projects, relaunch, open the Code tab → it now works. This confirms the large session file is the trigger.

Claude Model

None

Is this a regression?

Yes, this worked in a previous version

Last Working Version

_No response_

Claude Code Version

Claude Desktop 1.11847.5 · macOS 26.5 (25F71) · MacBook Air, Apple Silicon (arm64), 16 GB RAM · Claude Code CLI 2.1.165

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Terminal.app (macOS)

Additional Information

_No response_

View original on GitHub ↗

This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗