Terminal UI issues on WSL — page 2
Issues the maintainers labelled both platform:wsl and area:tui.
155 issues · 34 open · 121 resolved (78%) · first seen Feb 27, 2026
Is this getting better or worse?
This class of problem is converging. 63 new reports in the last 90 days vs 90 in the 90 before — -30%. The open backlog peaked at 34 in 2026-07 and sits at 34 today.
Derived by counting each matching issue from its creation date until it closed. First-party
computation over the anthropics/claude-code tracker — the trend is not published
anywhere upstream.
Which builds report this
118 of these reports name the Claude Code build they were running, spanning 74 releases. Heaviest reporters:
- Claude Code v2.1.119
- Claude Code v2.1.241
- Claude Code v2.1.228
- Claude Code v2.1.195
- Claude Code v2.1.173
- Claude Code v2.1.153
- Claude Code v2.1.84
- Claude Code v2.1.83
Report volume, not a defect count: an issue can mention a build without that build having caused the failure. Versions come from the version string in the bug-report template, matched against real published tags.
Do these get fixed?
Median time to close is 29 days across 121 closures. Of the 121 closures with a recorded reason, 36% were closed as completed and 78 as not-planned or duplicate. The most recent completed fix landed in 2026-08.
Workarounds reported by the community
60 of these issues post a workaround someone says worked. The highest-engagement ones:
- v2.1.150: scroll wheel no longer scrolls conversation — sends arrow keys instead
- Please provide workaround
Found in the thread of #65833 · still open - [BUG] Cannot paste auth code into "Paste code here if prompted >" during /login in Dev Container (v2.1.105)
- I have a solution that works for me. WSL workaround when paste is broken during /login If you're on WSL, have no browser, and can't paste the token, install wslu so WSL can open your Windows browser for the OAuth flow: R…
Found in the thread of #47699 · resolved - Voice: Add language configuration for speech-to-text transcription
- Workaround found: setting in settings.json The voice STT language can be configured via the setting in : After adding this manually, /voice correctly shows Dictation language: ru and Russian speech recognition works. Not…
Found in the thread of #33170 · resolved - [BUG] claude login paste not working in code input field (regression in 2.1.105+)
- …e back to 2.1.104 fixes the issue without any other changes Workaround Downgrade to 2.1.104 (binary is still present after auto-update) ln -sf ~/.local/share/claude/versions/2.1.104 ~/.local/bin/claude What Should Happen…
Found in the description of #47799 · resolved - [BUG] v2.1.172 regression: scroll wheel sends arrow keys in WSL2 terminal (Using Ubuntu)
- …y sequences instead of scroll events. TUI shows the hint: . Workaround Roll back to 2.1.170: shell Scroll wheel is sending arrow keys · use PgUp/PgDn to scroll ` Steps to Reproduce roll back into v2.1.170 Claude Model So…
Found in the description of #67300 · resolved
Excerpts are quoted from the linked issue so you can judge relevance before opening it. Threads that only ask for a workaround, or report that there is none, are excluded. These are community suggestions, not official guidance from Anthropic — read the full thread before applying one.
Matching issues 101–155
Ranked by community engagement (reactions weighted over comments).
- [BUG] Regression in v2.1.150: cannot select text outside current screen
- [BUG]
- [BUG] Status bar shows "thinking with xhigh effort" while skill frontmatter sets effort: max
- [FEATURE] display current location + current git branch
- [BUG] Permission prompt explanation feature broken: Ctrl+E does nothing, hint missing (regression in 2.1.143)
- /usage command lost its progress bar — now opens settings dialog instead
- [BUG] Custom theme "custom:<slug>" in settings.json not applied at session startup (v2.1.132) — falls back to auto
- TUI: input box does not right-align for RTL languages (Hebrew/Arabic/Persian/Urdu)
- In the TUI app for /status, "Resets HH..." overwrites bar graph
- Feature request: nudge/interrupt action to check queued user messages during processing
- ESC during tool execution is reported to the assistant as "rejected"
- Allow rebinding or disabling double-escape (rewind) in keybindings.json
- [BUG] Hyperlinks don't show in WindowsTerminal running claude in WSL
- /history command should list past conversations, not clear the current one
- [BUG] weird terminal jumps
- AskUserQuestion options with long descriptions get visually cut off in terminal
- [BUG]
- Korean IME (Hangul) input broken in WSL2 terminal - pre-edit text appears below input field
- [BUG] Vim mode: "o" and "O" insert new lines at end of text instead of at cursor position
- [BUG] Claude code CLI has degraded approval UX compared to android app
- [BUG] Voice mode bug: Unknown skill: voice
- [BUG] option to hide or minimize the built-in “status footer” (multi-line debug/cost panel)
- [BUG] /stats Ctrl+S screenshot copy always fails on WSL2 — platform string is "wsl", the xclip branch added in #54695 only matches "linux"
- [BUG] Major inconsistency with left-arrow agent view
- Custom statusline 24-bit truecolor gradient quantized to flat color bands inside claudecode.nvim pty
- [BUG] @ file autocomplete does not open when editing a prompt recalled from history
- Workspace trust dialog shows a fraction of the pre-approved permissions and offers no way to review them
- [Bug] claude -r freezes keyboard input twice on WSL2: FleetView and session attach require Ctrl-Z recovery
- [BUG] Opening session sidebar wipes API key auth for current session
- [BUG] /model menu shows stale label "Sonnet 4.6" for Sonnet 5 after switching
- [BUG] `claude agents` sub-session renders the prompt input box off-screen on WSL despite a correct terminal size (2.1.179)
- [BUG] /feedback not working most of the time
- [BUG] Subagent dispatch prompt and returned result hidden in main thread — collapsed line cannot be expanded (regression after 2.1.160, still in 2.1.170)
- claude agents: in-session copy uses broken OSC 52 path while overview correctly uses tmux buffer
- OSC 52 copy from Claude TUI doesn't reach clipboard inside tmux (regression in 2.1.146–2.1.153)
- [BUG] /release-notes shows Version 2.1.92 on Claude Code v2.1.118
- [BUG] [Regression v2.1.97] Ctrl+V no longer works as "preview" in /resume session picker
- Bug: fullscreen TUI hover-to-jump-to-previous-prompt affordance stopped working after v2.1.246 (onMouseMove handlers removed in v2.1.251)
- [BUG] Claude Code does not work a large percentage of the time on Windows [WSL 2]
- Mid-turn assistant text (between tool calls) frequently not rendered in terminal (v2.1.246, WSL2)
- [BUG] WSL/WSLg: image paste fails because wl-paste returns BMP into a .png path
- [BUG] /stats heatmap shows every cell one day early in UTC-positive timezones (local-midnight Date keyed via toISOString)
- `claude agents --json` unconditionally restores a startup termios snapshot on exit, reverting another program's raw mode
- Ctrl+G "open in editor" shortcut does nothing in AskUserQuestion "Chat about this" flow
- [Bug] Fullscreen TUI redraw scrolls terminal under GNU screen on WSL2 (regression in 2.1.228)
- [BUG] Claude output not always displaying in CLI
- Voice mode: captures good audio but transcription intermittently returns blank (WSL2/WSLg, v2.1.215)
- [BUG] Forked sessions aren't grouped in the session picker
- [BUG] AskUserQuestion: "No response after 200s — continued without an answer"
- [Bug] Claude Code displays raw API response without formatting in CLI output
- Resume crashes with 'Cannot read properties of null (reading split)'
- Channels: inbound message arriving mid-turn strands in the TUI input line and is never auto-submitted on turn completion
- [BUG] "Paste code here" field pre-fills with stale/unrelated text across multiple login flows (login, setup-token, design-login) — WSL2
- /clear command sends \033[3J (erase scrollback) which breaks Windows Terminal IME input on WSL2
- MCP elicitation controls visible but not interactable in terminal (tmux/WSL)