Add keyboard-only copy mode (no mouse required to start a selection)
Summary
The TUI has selection:extendUp, selection:extendDown, selection:extendLineStart, selection:extendLineEnd, selection:copy, and selection:clear actions, but no way to begin a selection from the keyboard. The only entry point is a mouse drag. This means pure-keyboard users (and anyone in a mouse-hostile environment like SSH without forwarding) cannot select or copy text from the transcript at all.
Request
Add a selection:start action (or equivalent) that enters a copy mode from the keyboard, placing a cursor in the transcript at the current scroll position so the existing extend* and copy actions can take it from there.
Something like tmux's copy-mode (Prefix + [) or vim's visual mode (v). The exact binding is your call, but the key point is a keyboard-triggered transition from "scrolling" to "selecting."
This would also help address the tmux scrollback problem raised in #60185, #67552, and #67289. If the TUI has its own native copy mode, users no longer need to fall back to tmux's scrollback buffer to extract text, which sidesteps the alternate-screen conflict entirely.
Related issues
- #66797 requested exactly this for the Desktop Chat app but was closed as wrong repo. The ask applies identically to the Code TUI.
- #60185, #67552, #67289 are tmux users who lost scrollback copy-mode when the TUI moved to an alternate screen. A native copy mode would make those workarounds unnecessary.
- #61021, #62462, #69704 report mouse-based copy broken on several platforms, making the mouse-only entry point doubly painful.
The infrastructure is clearly there (the extend/copy/clear actions exist and work once a selection is mouse-initiated). This is just the missing first step.
Environment
- macOS, Alacritty (no tmux), latest Claude Code
- Reproduced:
Fn+↑scrolls the transcript, but cursor stays in the prompt.Shift+arrowsdo nothing. Mouse drag does create a selection thatShift+arrowscan then extend, confirming the issue is purely about initiation.