Claude Code sidebar in desktop app stuck in infinite render loop (CCSessionList)
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:
- 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
- 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-desktopas a web view - The
vm_bundles/claudevm.bundle/directory remains empty (never populates) - The CLI (
claudecommand) works perfectly, confirming this is a desktop-specific issue
## Steps to Reproduce
- Open Claude Desktop app (v1.1.5749)
- Click on the Code sidebar (or have
sidebarMode: "code"in config) - 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:
- Fix the React hydration mismatch (Error #418) on the claude-code-desktop page
- 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
- 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)
- Click on the Code sidebar (or have "sidebarMode": "code" in claude_desktop_config.json)
- Sidebar shows "fail to load session" and remains permanently unresponsive
- To see the underlying errors, launch with: ELECTRON_ENABLE_LOGGING=1 /Applications/Claude.app/Contents/MacOS/Claude
- 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_
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗