Claude Code sidebar in desktop app stuck in infinite render loop (CCSessionList)

Resolved 💬 4 comments Opened Mar 10, 2026 by vimalch95-lang Closed Apr 9, 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?

## Bug Description

The Claude Code sidebar in the Claude Desktop app is completely unresponsive.
It shows "fail to load session" and never loads.

## Root Cause (from debugging)

Launching the app with ELECTRON_ENABLE_LOGGING=1 reveals two errors:

  1. React hydration mismatch (Error #418):

Uncaught Error: Minified React error #418;
visit https://react.dev/errors/418?args[]=text&args[]=
source: https://assets-proxy.anthropic.com/claude-ai/v1/_next/static/chunks/87c73c54-6e6a0bed4271723d.js

  1. Infinite render loop in CCSessionList:

[LOCAL_SESSION] [RenderLoopDetector] Rapid re-rendering in CCSessionList:
20 renders in 1000ms
source: https://assets-proxy.anthropic.com/claude-ai/v1/_next/static/chunks/86864-3dc0f9d5dca8c7eb.js

The CCSessionList component enters an infinite re-render loop (~20 renders/sec),
making the Code sidebar permanently unresponsive.

## What I've tried (none of these fixed it)

  • Cleared all app caches (IndexedDB, Local Storage, Session Storage)
  • Removed all MCP servers from config
  • Full wipe of ~/Library/Application Support/Claude/
  • Reinstalled the app (fresh download from claude.com/download)
  • Disabled session persistence (launchPreviewPersistSession: false)
  • Cleared launchPreviewPersistedWorkspaces
  • Disconnected VPN (ExpressVPN was causing SSL errors, but issue persists without it)

## Environment

  • macOS: 26.2 (Build 25C5037j)
  • Chip: Apple Silicon (arm64)
  • Claude Desktop: v1.1.5749
  • Claude Code CLI: v2.1.72 (works fine in terminal)

## Additional context

  • The main Claude chat works fine — only the Code sidebar is affected
  • The sidebar loads https://claude.ai/claude-code-desktop as a web view
  • The vm_bundles/claudevm.bundle/ directory remains empty (never populates)
  • The CLI (claude command) works perfectly, confirming this is a desktop-specific issue

## Steps to Reproduce

  1. Open Claude Desktop app (v1.1.5749)
  2. Click on the Code sidebar (or have sidebarMode: "code" in config)
  3. Sidebar shows "fail to load session" and remains unresponsive

## Expected Behavior

The Code sidebar should load and allow starting a new Claude Code session.

What Should Happen?

The CCSessionList component should handle hydration mismatches gracefully instead of entering an infinite render loop. Specifically:

  1. Fix the React hydration mismatch (Error #418) on the claude-code-desktop page
  2. Add a render loop circuit breaker in CCSessionList — if it detects rapid re-rendering, it should stop and show a "Start new session" fallback instead of freezing
  3. If a session fails to load, show a clear error with a retry/new session button rather than becoming permanently unresponsive

Error Messages/Logs

Steps to Reproduce

⏺ 1. Open Claude Desktop app (v1.1.5749) on macOS 26.2 (arm64)

  1. Click on the Code sidebar (or have "sidebarMode": "code" in claude_desktop_config.json)
  2. Sidebar shows "fail to load session" and remains permanently unresponsive
  3. To see the underlying errors, launch with: ELECTRON_ENABLE_LOGGING=1 /Applications/Claude.app/Contents/MacOS/Claude
  4. Console shows React Error #418 and CCSessionList render loop (20 renders/1000ms)

Claude Model

None

Is this a regression?

Yes, this worked in a previous version

Last Working Version

_No response_

Claude Code Version

2.1.72

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Terminal.app (macOS)

Additional Information

_No response_

View original on GitHub ↗

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