[Bug] Arrow keys hang UI during history rollback and /mcp picker navigation
Bug Description
Title: v2.1.118 hangs on ↑/↓ during ESC-history rollback or /mcp picker — session must be killed and restarted
## Severity
Session-loss bug — pressing ↑ or ↓ in certain UI modes hangs Claude Code completely. Only recovery is killing the process, which
loses any in-progress conversation context.
## Environment
- OS: macOS 26.4.1 (build 25E253)
- Terminal: VS Code integrated terminal v1.107.0
- Shell: zsh
- Claude Code: v2.1.118
- CLAUDE_CODE_NO_FLICKER: unset (default renderer)
- [If tested in native terminal: also hangs in iTerm2/Terminal.app — Claude Code core / Only hangs in VS Code terminal — VS
Code-specific]
## Repro (100% reliable)
- Start
claudein VS Code's integrated terminal - Press Esc to enter history rollback mode
- Press ↑ or ↓
- Process hangs — UI stops responding, no input registers
## Also reproduces with
/mcpserver picker — pressing ↑/↓ to navigate options causes the same hang
## Expected
↑/↓ navigates between options.
## Actual
Process becomes completely unresponsive. No keystroke registers. Must exit from another shell or kill the PID. In-progress
conversation context is lost.
## Workaround
Avoid pressing ↑/↓ in any picker UI. No alternative key tested yet (Ctrl+P/Ctrl+N untested due to fear of triggering same hang).
## Last known good version
v[PREV_VER if recallable, otherwise leave blank — they can bisect]
## Additional context
- Default renderer (CLAUDE_CODE_NO_FLICKER unset) — already ruled out the experimental renderer as the cause
- Reproducible 100% of the time, not intermittent
Environment Info
- Platform: darwin
- Terminal: vscode
- Version: 2.1.118
- Feedback ID: 027a16c5-5777-43a6-8afb-287e56ab29a8
Errors
[{"error":"Error: Tool mcp__claude_ai_Supabase__list_projects not found\n at m57 (/$bunfs/root/src/entrypoints/cli.js:3093:31285)\n at qJ (/$bunfs/root/src/entrypoints/cli.js:478:21013)\n at $A (/$bunfs/root/src/entrypoints/cli.js:478:39566)\n at Wd (/$bunfs/root/src/entrypoints/cli.js:478:50271)\n at WRH (/$bunfs/root/src/entrypoints/cli.js:478:86947)\n at nFH (/$bunfs/root/src/entrypoints/cli.js:478:85908)\n at lFH (/$bunfs/root/src/entrypoints/cli.js:478:85729)\n at Rp (/$bunfs/root/src/entrypoints/cli.js:478:82083)\n at rH (/$bunfs/root/src/entrypoints/cli.js:478:6371)\n at lF6 (/$bunfs/root/src/entrypoints/cli.js:471:6902)","timestamp":"2026-05-01T13:24:50.494Z"},{"error":"Error: Tool mcp__claude_ai_Supabase__execute_sql not found\n at m57 (/$bunfs/root/src/entrypoints/cli.js:3093:31285)\n at qJ (/$bunfs/root/src/entrypoints/cli.js:478:21013)\n at $A (/$bunfs/root/src/entrypoints/cli.js:478:39566)\n at Wd (/$bunfs/root/src/entrypoints/cli.js:478:50271)\n at WRH (/$bunfs/root/src/entrypoints/cli.js:478:86947)\n at nFH (/$bunfs/root/src/entrypoints/cli.js:478:85908)\n at lFH (/$bunfs/root/src/entrypoints/cli.js:478:85729)\n at Rp (/$bunfs/root/src/entrypoints/cli.js:478:82083)\n at rH (/$bunfs/root/src/entrypoints/cli.js:478:6371)\n at lF6 (/$bunfs/root/src/entrypoints/cli.js:471:6902)","timestamp":"2026-05-01T13:24:50.494Z"},{"error":"Error: Tool mcp__claude_ai_Supabase__execute_sql not found\n at m57 (/$bunfs/root/src/entrypoints/cli.js:3093:31285)\n at qJ (/$bunfs/root/src/entrypoints/cli.js:478:21013)\n at $A (/$bunfs/root/src/entrypoints/cli.js:478:39566)\n at Wd (/$bunfs/root/src/entrypoints/cli.js:478:50271)\n at WRH (/$bunfs/root/src/entrypoints/cli.js:478:86947)\n at nFH (/$bunfs/root/src/entrypoints/cli.js:478:85908)\n at lFH (/$bunfs/root/src/entrypoints/cli.js:478:85729)\n at Rp (/$bunfs/root/src/entrypoints/cli.js:478:82083)\n at rH (/$bunfs/root/src/entrypoints/cli.js:478:6371)\n at lF6 (/$bunfs/root/src/entrypoints/cli.js:471:6902)","timestamp":"2026-05-01T13:24:50.494Z"},{"error":"Error: Tool mcp__claude_ai_Supabase__execute_sql not found\n at m57 (/$bunfs/root/src/entrypoints/cli.js:3093:31285)\n at qJ (/$bunfs/root/src/entrypoints/cli.js:478:21013)\n at $A (/$bunfs/root/src/entrypoints/cli.js:478:39566)\n at Wd (/$bunfs/root/src/entrypoints/cli.js:478:50271)\n at WRH (/$bunfs/root/src/entrypoints/cli.js:478:86947)\n at nFH (/$bunfs/root/src/entrypoints/cli.js:478:85908)\n at lFH (/$bunfs/root/src/entrypoints/cli.js:478:85729)\n at Rp (/$bunfs/root/src/entrypoints/cli.js:478:82083)\n at rH (/$bunfs/root/src/entrypoints/cli.js:478:6371)\n at lF6 (/$bunfs/root/src/entrypoints/cli.js:471:6902)","timestamp":"2026-05-01T13:24:50.494Z"},{"err…
Note: Content was truncated.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗