Terminal UI issues on WSL — page 2
Issues the maintainers labelled both platform:wsl and area:tui.
181 issues · 45 open · 136 resolved (75%) · first seen Feb 27, 2026
Is this getting better or worse?
This class of problem is converging. 47 new reports in the last 90 days vs 81 in the 90 before — -42%. The open backlog peaked at 45 in 2026-10 and sits at 45 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
141 of these reports name the Claude Code build they were running, spanning 90 releases. Heaviest reporters:
- Claude Code v2.1.241
- Claude Code v2.1.119
- Claude Code v2.1.278
- Claude Code v2.1.259
- Claude Code v2.1.228
- Claude Code v2.1.195
- Claude Code v2.1.173
- Claude Code v2.1.153
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 30 days across 136 closures. Of the 136 closures with a recorded reason, 32% were closed as completed and 93 as not-planned or duplicate. The most recent completed fix landed in 2026-08.
Workarounds reported by the community
76 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 - [FEATURE] Allow /rename and /color to be set programmatically at session start
- Workaround: per-directory accent color via theme variants (works today) I stumbled on a way to auto-color sessions per project without any CLI flags or hooks. It uses + custom themes. How it works: The key in a custom th…
Found in the thread of #58588 · still open - [BUG] Regression in 2.1.269: dictation-tool paste (clipboard + simulated Ctrl+V) not inserted in VS Code integrated terminal (WSL2) — 2.1.268 works
- …to per-keystroke interpretation), 81472 (copy/paste meta). Workaround Pin 2.1.268 ( + ), or run Claude Code in Windows Terminal instead of the VS Code integrated terminal.
Found in the description of #93782 · still open
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–181
Ranked by community engagement (reactions weighted over comments).
- [BUG] Ctrl+V image paste silently fails on WSL+WSLg (BI_BITFIELDS BMP decode)
- /login OAuth flow: unable to paste code in WSL2 terminal
- Terminal scrollback lost mid-session on WSL2 + Windows Terminal (alternate screen buffer)
- Status bar shows default effort level, not per-turn ultrathink override
- [BUG] Terminal viewport jumps to top on every re-render in WSL2 + Tabby terminal (Windows 11)
- voiceEnabled: true in settings doesn't initialize voice recording on startup
- app:toggleTodos keybinding only works with Teammates feature, not with regular background agents
- WSL: text copied from Claude Code does not paste into an RDP session
- [BUG] Large pasted user messages are silently truncated mid-content with no warning
- `claude agents --json` unconditionally restores a startup termios snapshot on exit, reverting another program's raw mode
- [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
- [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] /usage heatmap misplaces usage by one weekday row; contradicts "Most active day" stat
- [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
- claude agents: OSC 52 clipboard emission broken in tmux (regression in 2.1.146–2.1.153)
- [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)
- [Feature Request] Make URLs in CLI output clickable for images and resources
- [BUG] UI colors quantized to 256 inside WSL under Windows Terminal (WT_SESSION not treated as truecolor)
- [BUG] /stats heatmap shows every cell one day early in UTC-positive timezones (local-midnight Date keyed via toISOString)
- [BUG] /stats Ctrl+S screenshot copy always fails on WSL2 — platform string is "wsl", the xclip branch added in #54695 only matches "linux"
- 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)
- 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
- Teammate colors: allow changing after start, per-teammate /color, and a more legible blue
- [Bug] Ctrl+G external editor prefill omits assistant text from multi-message turns and truncates to 50 lines
- Ctrl+Z wedges the TUI when the process group is orphaned: raw mode is surrendered for a stop the kernel then discards
- On WSL with interop disabled, fullscreen copy depends on the terminal's OSC 52 support and ignores the working WSLg clipboard
- [BUG] AskUserQuestion still auto-continues after 200s with askUserQuestionTimeout "never": CLAUDE_AFK_TIMEOUT_MS=200000 appears in process env (follow-up to #78125)
- [BUG] Ctrl+O file viewer uses alternate screen buffer — content not scrollable in terminal scrollback
- [Bug] Feedback UI overlay missing dismissal keybinding and UI path instructions
- Background subagent completion messages scroll the transcript, making the assistant's last reply unreadable
- [BUG] Mouse drag-select copy silently fails on WSL2 in the VS Code integrated terminal: highlight shows, no clipboard write, no notice (2.1.273; Windows native works)
- [BUG] Shifted keys lost in WezTerm since 2.1.247: Kitty "report alternate keys" flag is requested but the shifted-key field is never parsed
- [BUG] Image-paste separator space survives Shift+Enter and lands at the start of the next line
- Last-sent message no longer stays pinned/visible at top in fullscreen TUI (VS Code integrated terminal)
- `claude agents`: list selection snaps back to the just-exited session ~3 s after returning with `←`, discarding arrow-key navigation (regression in 2.1.257)
- Keyboard scroll bindings are routed through the mouse-wheel acceleration state
- [BUG] Sending a message force scroll downs when viewing older text (far) above
- [BUG] Pasting many-line text crashes Claude Code + exponential line growth on repeated copy-pasting of multiple lines
- [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)