Bug Description
Severe keystroke input lag when using Claude Code CLI on Windows. Every keypress has a visible delay before appearing on screen, making the CLI nearly unusable.
Environment
- Claude Code version: 2.1.87 (latest)
- OS: Windows 11 Pro 10.0.26200
- Terminal: Windows Terminal 1.23.20211.0, also native cmd.exe and PowerShell consoles
- Node.js: v24.14.0
- Shell: PowerShell 7+ and cmd.exe
- Hardware: 65GB RAM, Intel CPU, power plan set to Ultimate Performance
Reproduction Steps
- Open any Windows terminal (Windows Terminal, native cmd.exe, native PowerShell)
- Run
claude
- Type anything — keystrokes echo with significant delay
Key Diagnostic Findings
- No lag in WSL — same Claude CLI version runs perfectly in WSL2 (Ubuntu 20.04)
- No lag in bare Node.js on Windows — a raw
process.stdin test script in Node.js on the same Windows terminal has zero input lag
- Affects all Windows terminals — Windows Terminal, native cmd.exe, native PowerShell console host
- Persists across reboots
- Started around March 30, 2026
What Was Ruled Out
- Windows Defender real-time protection (exclusions added for claude binary, .claude dir, claude and node.exe processes — no change)
- Minifilter drivers (all standard Windows filters, no third-party)
- Dell services/drivers (disabled and uninstalled — no change)
- Claude desktop app CoworkVMService (stopped — no change)
- System resources (51GB RAM free, disk I/O idle, CPU fine)
- DLL injection (only standard Windows system DLLs in claude.exe process)
- Power plan (Ultimate Performance)
- Keyboard/HID drivers (all standard)
- Windows/driver updates (no relevant recent updates)
Conclusion
Since bare Node.js stdin has no lag on the same system but Claude CLI does, the issue appears to be in Claude CLI's own input handling or TUI rendering layer, specifically on Windows (ConPTY path). The Linux PTY path used in WSL is unaffected.
Bug Description
Severe keystroke input lag when using Claude Code CLI on Windows. Every keypress has a visible delay before appearing on screen, making the CLI nearly unusable.
Environment
Reproduction Steps
claudeKey Diagnostic Findings
process.stdintest script in Node.js on the same Windows terminal has zero input lagWhat Was Ruled Out
Conclusion
Since bare Node.js stdin has no lag on the same system but Claude CLI does, the issue appears to be in Claude CLI's own input handling or TUI rendering layer, specifically on Windows (ConPTY path). The Linux PTY path used in WSL is unaffected.