[BUG] Bug Report - Claude Code 2.1.27 hangs on startup
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 Report - Claude Code 2.1.27 hangs on startup
Version: 2.1.27 (macOS arm64, native binary)
Working version: 2.1.23
Symptoms:
/resumehangs indefinitely with "Scurrying..."/pluginhangs on "Discover"/doctorhangs after showing output (cannot exit)- Simple prompts (
hola) hang with "Scurrying..." - CPU spikes to 99%+ in infinite loop
- Process cannot be interrupted with Ctrl+C
Workaround:
ln -sf ~/.local/share/claude/versions/2.1.23 ~/.local/bin/claude
Environment:
- macOS (Apple Silicon)
- MCP servers: ssh-manager, context7, sqlite
- Clean install after removing ~/.claude (problem persists)
What Should Happen?
What Should Happen?
Claude Code should start normally and respond to user prompts without hanging. Specifically:
/resumeshould load previous session and return to interactive prompt/pluginshould display plugin marketplace without freezing/doctorshould complete diagnostics and return to prompt (not require manual kill)- Basic prompts should receive API response within normal timeout
- User should be able to interrupt operations with Ctrl+C
The behavior in 2.1.23 is the expected behavior - responsive, interruptible, functional.
during write this, with claude code help, open a new terminal and in new terminal crash another time
Error Messages/Logs
## Debug Logs Analysis
The following error appears at startup in version 2.1.27:
Failed to check enabledPlatforms: TypeError: undefined is not an object (evaluating 'aZ.join')
This suggests a regression where the `enabledPlatforms` check expects an array
but receives `undefined`, causing an infinite loop or blocking behavior.
**Log files location:** `~/.claude/debug/*.txt`
**Relevant timestamps:**
- Error occurs within first 100ms of startup
- Multiple debug sessions show the same error with 2.1.27
- Version 2.1.23 logs don't show this error causing hang behavior
**Additional context:**
- Sentry has previously captured "Main webview became unresponsive" errors
- The error occurs before MCP servers fully initialize
Debug Logs
Key Error at Startup
The following error appears immediately at startup in version 2.1.27:
2026-01-31T07:15:46.585Z [DEBUG] Failed to check enabledPlatforms: TypeError: undefined is not an object (evaluating 'aZ.join')
This error occurs before any MCP configuration or plugin loading begins.
Version Comparison in Logs
Version 2.1.27 (hanging):
2026-01-31T07:01:36.684Z [DEBUG] Acquired PID lock for 2.1.27 (PID 16967)
2026-01-31T07:11:34.778Z [DEBUG] Acquired PID lock for 2.1.27 (PID 24170)
2026-01-31T07:12:02.491Z [DEBUG] Acquired PID lock for 2.1.27 (PID 24333)
Version 2.1.23 (working):
2026-01-31T07:15:46.723Z [DEBUG] Acquired PID lock for 2.1.23 (PID 24841)
Startup Sequence Comparison
2.1.27 startup (hangs after this point):
2026-01-31T07:01:36.046Z [DEBUG] [init] configureGlobalMTLS starting
2026-01-31T07:01:36.046Z [DEBUG] [init] configureGlobalMTLS complete
2026-01-31T07:01:36.046Z [DEBUG] [init] configureGlobalAgents starting
2026-01-31T07:01:36.046Z [DEBUG] [init] configureGlobalAgents complete
2026-01-31T07:01:36.055Z [DEBUG] [STARTUP] Loading MCP configs...
2.1.23 startup (completes successfully):
2026-01-31T07:15:46.585Z [DEBUG] Failed to check enabledPlatforms: TypeError: undefined is not an object (evaluating 'aZ.join')
2026-01-31T07:15:46.683Z [DEBUG] [init] configureGlobalMTLS starting
2026-01-31T07:15:46.683Z [DEBUG] [init] configureGlobalMTLS complete
2026-01-31T07:15:46.692Z [DEBUG] [STARTUP] Loading MCP configs...
2026-01-31T07:15:46.697Z [DEBUG] [STARTUP] Running setup()...
2026-01-31T07:15:46.709Z [DEBUG] [STARTUP] setup() completed in 12ms
2026-01-31T07:15:47.890Z [DEBUG] [STARTUP] Commands and agents loaded in 1181ms
2026-01-31T07:15:48.219Z [DEBUG] [STARTUP] showSetupScreens() completed in 329ms
Analysis
The enabledPlatforms error appears in both versions, but:
- In 2.1.23: The error is handled gracefully and startup continues
- In 2.1.27: The error appears to cause a blocking condition or infinite loop
The minified variable name aZ.join suggests code expecting an array receives undefined instead. This likely indicates a regression in error handling between versions.
Log Files Location
~/.claude/debug/*.txt
~/Library/Logs/Claude/main.log
Steps to Reproduce
- Install Claude Code 2.1.27 (native binary, macOS arm64)
- Configure MCP servers in ~/.claude/mcp.json (ssh-manager, linear, playwright)
- Install plugins from marketplace (superpowers, linear, playwright)
- Run
claudein terminal - Observe "Scurrying..." spinner that never completes
- Try any command (/resume, /plugin, /doctor, or simple prompt like "hola")
- All commands hang indefinitely with CPU at 99%+
- Ctrl+C does not interrupt - process must be killed with
kill -9
Alternative reproduction:
- Start claude and immediately run
/doctor - Output appears but command never returns to prompt
- Terminal becomes unresponsive
Claude Model
Opus
Is this a regression?
Yes, this worked in a previous version
Last Working Version
2.1.23
Claude Code Version
2.1.27 (Claude Code)
Platform
Anthropic API
Operating System
macOS
Terminal/Shell
Other
Additional Information
This issue has 9 comments on GitHub. Read the full discussion on GitHub ↗