[BUG]: /mcp modal becomes unresponsive to all keys (arrows, Enter, Esc, Ctrl-C) — regression in 2.1.118/2.1.119
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?
After upgrading to Claude Code 2.1.119 (also reproduces on 2.1.118), opening the /mcp slash command
panel results in a fully frozen modal: arrow keys, Enter, and Esc are dropped, and the modal cannot
even be killed with Ctrl-C or Ctrl-\. The keys are reaching the process correctly (verified — see
below), so this appears to be a UI input-handling regression rather than a terminal issue.
Downgrading to 2.1.117 fully fixes it.
Possibly related to #42707 (Ink input hook race in MCP OAuth flow), but more severe — in #42707 keys
are still partially responsive and Ctrl-C still kills the modal. Here, signal handling itself is broken
from inside the modal.
What Should Happen?
/mcp modal should respond to navigation keys and Esc/Ctrl-C should dismiss it, as it does in 2.1.117
and earlier.
Error Messages/Logs
Steps to Reproduce
- Run
claude(v2.1.118 or v2.1.119, native installer on macOS) - Type
/mcp→ modal opens - Press any of: ↑ ↓ ← → Enter Esc — nothing happens
- Press Ctrl-C — also nothing; modal cannot be dismissed
- Only way out: kill the terminal session / SIGKILL from another shell
Claude Model
Not sure / Multiple models
Is this a regression?
Yes, this worked in a previous version
Last Working Version
2.1.117
Claude Code Version
2.1.119 (Claude Code)
Platform
Anthropic API
Operating System
macOS
Terminal/Shell
iTerm2
Additional Information
## Environment
- Claude Code versions tested:
- 2.1.117 — works correctly
- 2.1.118 — broken
- 2.1.119 — broken
- OS: macOS Darwin 25.3.0
- Shell: zsh
- Terminal: iTerm2 (also reproduces in tmux and outside tmux)
- Install method: native installer (
~/.local/share/claude/versions/) - TERM:
xterm-256color
## Terminal verified healthy
Ran cat -v and confirmed all relevant keys produce correct escape codes:
- ↑ →
^[[A - ↓ →
^[[B - Esc →
^[
So keys are reaching the process — this is not a terminfo / Option-as-Esc issue.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗