Claude Code fullscreen mode: flicker, scrolling and copying
If your screen flashes while Claude works, the scroll position jumps to the top, or a very long conversation makes your terminal sluggish, fullscreen rendering is the setting aimed at exactly that. It also changes how you search, scroll and copy, which is why it surprises people. Here is what it does and how to switch it on or off.
What it is
As we read the docs, fullscreen rendering draws Claude Code on the terminal's alternate screen, the way vim or htop do, and only renders the messages you can see. That cuts flicker, keeps memory flat in long conversations and adds mouse support. The input box stays fixed at the bottom. If it does not move while Claude is working, you are in fullscreen. The name has nothing to do with maximizing your window.
The docs call it a research preview, so details can change. It helps most in terminals where drawing speed is the bottleneck, such as the VS Code terminal, tmux and iTerm2.
Switch it on or off
/tui fullscreenrelaunches into fullscreen with your conversation intact and saves the choice./tui defaultgoes back to the classic renderer./tuialone tells you which one is active, and why if a failed start sent you to classic.- For one launch, set
CLAUDE_CODE_NO_FLICKER=1beforeclaude. To force classic whatever your saved setting says, setCLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1.
CLAUDE_CODE_NO_FLICKER=1 claude
Which renderer you start in depends on your setup and may differ between machines, so run /tui to see rather than guessing. Some sessions never switch, for example when launch flags it can't carry over are in use; Claude Code prints Cannot switch renderers in this session and changes nothing.
What changes when you use it
- Searching. Your terminal's Cmd+F and tmux search no longer see the conversation, because it is not in the normal scrollback. Press Ctrl+O for transcript mode, then
/to search,nandNto jump between matches. - Handing it back to your terminal. In transcript mode,
[writes the whole conversation into your terminal's own scrollback, so native search and tmux copy mode work.vopens it in your$VISUALor$EDITOR. - Copying. Click and drag selects inside Claude Code and copies to your clipboard when you release the mouse. You can turn that off with Copy on select in
/config. - Links. Hold Cmd on macOS, or Ctrl elsewhere, and click a URL or file path to open it.
- A quieter view.
/focusshows just your last prompt, a one-line summary of tool calls and the final answer. Run it again to turn it off.
Scrolling
- PgUp and PgDn scroll half a screen. Ctrl+Home jumps to the start and Ctrl+End to the latest message.
- On a MacBook keyboard, hold Fn with the arrow keys to get PgUp, PgDn, Home and End. The docs say the jump-to-bottom chord does not reach Claude Code there by default, so click the
Jump to bottombutton, scroll down, or rebind thescroll:bottomaction (see customizing shortcuts). - Scrolling up pauses auto-follow so new output doesn't drag you down. Turn auto-follow off for good with Auto-scroll in
/config. - Wheel too slow or too fast? Set
CLAUDE_CODE_SCROLL_SPEED(a positive number up to 20, fractions allowed), or run/scroll-speedand adjust it live. - If the wheel does nothing but PgUp works, your terminal may not be forwarding mouse events. In iTerm2 that is the Enable mouse reporting option in the profile.
Keep your terminal's own selection
Mouse capture is the most common complaint, especially over SSH or inside tmux, because tmux copy mode and similar tools can't see a selection made inside Claude Code. Two ways around it:
- One-off: hold a modifier while you drag so your terminal handles the selection. As we read the docs it is Fn in Terminal.app, Option in iTerm2 and Shift in most others. Claude Code shows the right key in its on-screen hint.
- Always:
CLAUDE_CODE_DISABLE_MOUSE=1keeps the flicker-free drawing and flat memory but gives up mouse capture. You lose click-to-position, click-to-expand and wheel scrolling inside Claude Code; PgUp and PgDn still work.CLAUDE_CODE_DISABLE_MOUSE_CLICKS=1keeps the wheel and disables only clicks. When both are set,CLAUDE_CODE_DISABLE_MOUSEwins.
CLAUDE_CODE_NO_FLICKER=1 CLAUDE_CODE_DISABLE_MOUSE=1 claude
tmux
- For wheel scrolling, turn tmux mouse mode on:
set -g mouse onin~/.tmux.conf, then reload. PgUp and PgDn work either way. - Do not use it with iTerm2's
tmux -CCintegration mode. The docs say the wheel does nothing there and double-click can corrupt the terminal. Plain tmux inside iTerm2 is fine. - Older tmux releases lack synchronized output, so you may still see some flicker. Upgrade tmux, or run Claude Code in its own tab outside tmux.
When something looks wrong
- Garbled or half-blank screen: press Ctrl+L to redraw. Your conversation and input stay.
- Stale fragments of old text, mostly in Windows Terminal: some terminals mishandle partial updates. Set
CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT=1so every cell is repainted each frame. In PowerShell:$env:CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT = "1"and thenclaude. - “Fullscreen renderer didn't finish starting last time”: a fullscreen session on this machine crashed early, so Claude Code started the next one in classic. After repeated failures it stays classic until you update or run
/tui fullscreen./tuiconfirms this is the reason. - Still bad: go back with
/tui default, and report it with/feedback, naming your terminal and its version.
All the guides are in the guides index. For the rest of your terminal setup, see the terminal guide, and if it is the whole app that drags, fix a slow or stuck Claude Code. This follows Anthropic's fullscreen rendering documentation as we read it in October 2026. We are not affiliated with Anthropic. We wrote this from the documentation and have not tested every terminal. This is a research preview, so keys, defaults and version limits can change, and where this page and the documentation disagree, the documentation wins.
The free loop-stop skill gives long tasks a limit and a stop rule. If you want a second pair of eyes on your CLAUDE.md and settings, the Tune-Up Kit is a checklist for exactly that.