Keyboard input not working in v2.1.30 (Windows)
Resolved 💬 22 comments Opened Feb 3, 2026 by FlashBack1234 Closed Mar 29, 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?
Version: 2.1.30
OS: Windows
Terminals tested: Git CMD, PowerShell (multiple versions)
Issue: Keyboard input not accepted in Claude Code window.
Workaround: Downgrade to 2.1.28 resolves the issue.
What Should Happen?
It shall work fine with any version
Error Messages/Logs
Steps to Reproduce
- Install/upgrade to 2.1.30
- Launch claude
- Attempt to type - input not registered
Claude Model
Opus
Is this a regression?
Yes, this worked in a previous version
Last Working Version
2.1.28
Claude Code Version
2.1.30
Platform
Anthropic API
Operating System
Windows
Terminal/Shell
PowerShell
Additional Information
_No response_
22 Comments
Found 3 possible duplicate issues:
This issue will be automatically closed as a duplicate in 3 days.
🤖 Generated with Claude Code
Same for me.
Last working version 2.1.29.
I'm able to recreate in Windows Terminal and Tabby but seems to work with WezTerm. I then narrowed it down to SessionStart hooks. Removed the SessionStart hooks and it works.
I had same issue but my hook was very simple, no errors just a message..
~~That fixed it~~
Spoke too soon
Still crashes / hangs when trying to resume.
Same for me with v2.1.31
Cross-reference: Detailed root cause analysis in #22934
I filed #22934 with a detailed investigation of this same freeze bug, specifically triggered by the superpowers plugin's SessionStart hook on Windows. The analysis there may be useful for maintainers:
Key findings from #22934:
.jsonlsession files in~/.claude/projects/(370MB+) exacerbate the hang (related: #22041)echohook can trigger the freeze — this is a Claude Code core issue, not plugin-specificWorkaround (no downgrade needed):
~/.claude/settings.jsonfind ~/.claude/projects -name "*.jsonl" -size +10M -deleteSuggested fix direction (from #22934):
Related issues for context:
| Issue | Description | Status |
|-------|-------------|--------|
| #21468 | SessionStart hook script never executes on Windows | OPEN |
| #22337 | Path handling strips backslashes in hook paths | OPEN |
| #21878 | Hook scripts fail on Windows (backslash paths) | OPEN |
| #22041 | Large session files cause CPU hang | CLOSED |
| #9758 |
.shhooks open in editor instead of executing on Windows | OPEN |Confirmed this also affects the beads plugin (not just superpowers). Any plugin with SessionStart hooks triggers the freeze.
Workaround: Disable all plugins that have SessionStart hooks in
~/.claude/settings.json:Keyboard input works after restart with these disabled. The underlying issue appears to be that SessionStart hooks are broken in 2.1.30 on Windows regardless of what the hook does.
Hit enter when you first open claude and it unlocks the keyboard. For some reason it's frozen on startup but pressing enter fixes it. Same thing happens to me.
Hope this info helps for me I had:
14 - "hooks": {
15 - "SessionStart": [
16 - {
17 - "hooks": [
18 - {
19 - "type": "command",
20 - "command": "node \"C:/Users/afinz/.claude/hooks/gsd-check-update.js\""
21 - }
22 - ]
23 - }
24 - ]
25 - }
Running node \"C:/Users/afinz/.claude/hooks/gsd-check-update.js\" causes an exception.
node:internal/modules/cjs/loader:1386
throw err;
^
Error: Cannot find module 'C:\C:\Users\afinz\.claude\hooks\gsd-check-update.js'
at Function._resolveFilename (node:internal/modules/cjs/loader:1383:15)
at defaultResolveImpl (node:internal/modules/cjs/loader:1025:19)
at resolveForCJSWithHooks (node:internal/modules/cjs/loader:1030:22)
at Function._load (node:internal/modules/cjs/loader:1192:37)
at TracingChannel.traceSync (node:diagnostics_channel:328:14)
at wrapModuleLoad (node:internal/modules/cjs/loader:237:24)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:171:5)
at node:internal/main/run_main_module:36:49 {
code: 'MODULE_NOT_FOUND',
requireStack
So I assume this is the issue of the hanging.
This absolutely works! Thank you!
I faced the same issue- keyboard input wasn't recognized. Then I typed "Shift+Insert" and it bypassed the issue.
Hello,
For plugins hook issue on windows,
you can apply this temporary fix locally by updating the command in
hooks.jsonto convert the path usingcygpathfor each affected plugin's hooks. it solve the issue temporary by providing the right path format to Git Bash. in wait for an official fix to be released.It works fine on windows with git bash (tested with superpowers and ralph-loop plugins) :
Hitting enter will bypass any configured SessionStart hooks. That's not a fix.
Do you have a SessionStart hook configured?
I started experiencing the same thing. I have a SessionStart hook that runs a command which renders output to the terminal. I ran claude in --debug mode, and saw there was an error parsing the json output of the command.
Removing the hook configuration fixed claude. So, I started debugging the command (it's my cli tool that is configured to be called).
I wasn't getting anywhere. So I ran a test. I configured my hook to fire an echo command.
"SessionStart": [ { "matcher": "startup", "hooks": [ { "type": "command", "command": "echo {}" } ] } ]
I fired claude up again and it still froze.
In conclude the same as the others, this isn't a bug with my cli (or beads). Its a bug with Claude Code and most definitely a bug with the SessionStart hook protocol.
...
...
I found I had GSD hook for update, not significant, removed it and now works fine. Workaround, but works
Fixed as of 2.1.36
For me the issue is still the same with 2.1.37. The presence of any simple SessionStart hook blocks keyboard access.
Yup. I can confirm. That its reintroduced from 2.1.36 to 2.1.37.
I literally just had one Claude 2.1.36 instance open and it worked fine. Closed the session. Fired up Claude again. It had updated. Frozen.
Ditto 2.1.37. Pasting anything unblocks it (most of the time). Fixed for me at 2.1.39.
Windows 下 /skills 命令的方向键无法选择,其他按键也无反应,Claude Code v2.1.7, Windows
Title: [Windows] /skills command - Arrow keys and keyboard navigation not working in selection menu
Description:
When running /skills command on Windows, the interactive selection menu displays correctly but arrow keys (↑↓) and other keyboard inputs have no response. Cannot select skills from the list.
Environment:
Steps to Reproduce:
Expected Behavior:
Arrow keys should navigate through the skill list, allowing selection with Enter
Actual Behavior:
No keyboard input is registered in the selection menu. Only way to use skills is by typing full skill name directly (e.g., /prd-doc-writer)
Screenshots:
[Screenshot of the non-responsive selection menu]
Workaround:
Type skill name directly instead of using selection menu:
Same for me today on MacOs. Very annoying. Enter sends a predictive command I don't want to do.
Closing for now — inactive for too long. Please open a new issue if this is still relevant.
This issue has been automatically locked since it was closed and has not had any activity for 7 days. If you're experiencing a similar issue, please file a new issue and reference this one if it's relevant.