Claude Code でコピペできない原因はフルスクリーン表示だった — 直し方まとめ

目次
Claude Code(CLI)を使っていて、ターミナルでいつものようにドラッグしてもテキストがコピーできない——という事象に遭遇しました。結論から言うと、原因は フルスクリーン(alt-screen)表示で、これは /tui コマンドで切り替わる表示モードです。
Claude Code の公式ドキュメントにもこう明記されています。
When Claude Code captures mouse events, your terminal's native copy-on-select stops working. The selection you make with click-and-drag exists inside Claude Code, not in your terminal's selection buffer. (Claude Code がマウスイベントを捕捉すると、ターミナルのネイティブな copy-on-select が効かなくなる。ドラッグで作った選択は Claude Code の中に存在し、ターミナルの選択バッファには渡らない)
つまり「壊れている」わけではなく、フルスクリーン表示がマウスを握っているせいです。直し方はいくつかあるので、手軽な順にまとめます。
いちばん手軽:/tui default でクラシック表示に戻す
/tui は表示レンダラーを切り替えるコマンドです。
| コマンド | 動作 |
|---|---|
/tui default |
クラシック(main-screen)表示に戻す(ネイティブ選択が復活) |
/tui fullscreen |
フルスクリーン(alt-screen)表示にする |
/tui(引数なし) |
現在どちらが有効かを表示 |
コピペを最優先したいなら /tui default が一番早いです。設定は ~/.claude/settings.json の tui キーに保存され、次回以降も維持されます。
公式によると
tuiの既定はfullscreen(v2.1.89 以降)。なので「デフォルトのままだとコピペできない」に当たりやすい、というのが今回の落とし穴でした。
フルスクリーンのまま選択したい:修飾キー + ドラッグ
フルスクリーン表示の利便性は残したい場合、修飾キーを押しながらドラッグすると、ターミナル側がマウスを処理して Claude Code のキャプチャをバイパスします。ネイティブ選択に書き込まれるので Cmd+C で普通にコピーできます。
修飾キーはターミナルごとに違います。
| ターミナル | 修飾キー |
|---|---|
| macOS Terminal.app | Fn + ドラッグ |
| iTerm2 | Option + ドラッグ |
| VS Code 統合ターミナル | Shift + ドラッグ(macOS で macOptionClickForcesSelection 有効時は Option) |
| その他ほとんどのターミナル | Shift + ドラッグ |
Claude Code は画面上のヒントに、その環境で使う正しいキーを表示してくれます。
Claude Code 内蔵の選択・コピーを使う
フルスクリーン表示では、Claude Code 自身がマウス選択とコピーを提供しています。
- ドラッグで選択 → 離すと自動でクリップボードにコピー(copy-on-select 相当)
- ダブルクリックで単語選択 / トリプルクリックで行選択
- キーボードコピー:
Ctrl+Shift+C - kitty キーボードプロトコル対応(kitty / WezTerm / Ghostty / iTerm2)なら
Cmd+Cも可(選択中はCtrl+Cがキャンセルではなくコピーになる) - 選択の拡張:
Shift+↑/↓、Shift+Home/End
「自動コピーが要らない」場合は /config の Copy on select をオフにできます。
それでも直らないときの他の原因
/tui default にしても選択・コピーが変なときは、ターミナル側の設定が絡んでいることがあります。
- マウスレポーティングが無効(ホイールも効かず PgUp/PgDn だけ動く)→ iTerm2 は Settings → Profiles → Terminal → Enable mouse reporting をオン。
- SSH 越しでクリップボードに書けない(OSC 52 がブロックされている)→ iTerm2 なら
/terminal-setupで必要な設定を自動で有効化。 - tmux 内: 通常の tmux は
set -g mouse onで対応。ただし iTerm2 の tmux 統合モード(tmux -CC)はフルスクリーン表示と非互換なので注意。 - ネイティブ選択を最優先したい:
CLAUDE_CODE_NO_FLICKER=1 CLAUDE_CODE_DISABLE_MOUSE=1 claudeで起動するとマウスキャプチャを完全に切れる(代わりにクリック展開・URLクリック・ホイールスクロールも無効)。ホイールだけ残したいならCLAUDE_CODE_DISABLE_MOUSE_CLICKS=1(v2.1.195 以降)。
対処の優先順(チェックリスト)
| 優先 | 確認 | 対処 |
|---|---|---|
| 1 | フルスクリーン表示か | /tui default で戻す |
| 2 | フルスクリーンのまま選択したい | 修飾キー+ドラッグ(ターミナル別) |
| 3 | 内蔵コピーで足りるか | ドラッグ選択→自動コピー / Ctrl+Shift+C |
| 4 | マウスレポーティング | iTerm2 は Enable mouse reporting |
| 5 | SSH / tmux | /terminal-setup / set -g mouse on(-CC は不可) |
| 6 | ネイティブ選択を優先 | CLAUDE_CODE_DISABLE_MOUSE=1 で起動 |
まとめ
- Claude Code でコピペできない主因は フルスクリーン(alt-screen)表示がマウスを捕捉し、ネイティブ選択が無効になるため
- 一番手軽な解決は
/tui default(クラシック表示に戻す)。既定はfullscreenなので当たりやすい - フルスクリーンのままなら 修飾キー+ドラッグ(Terminal.app=Fn / iTerm2=Option / VS Code=Shift)
- 内蔵の ドラッグ選択→自動コピー /
Ctrl+Shift+Cも使える - 直らないときは マウスレポーティング・OSC 52(SSH)・tmux を疑う
参考ソース
- Claude Code 公式: Fullscreen rendering
- Claude Code 公式: Fullscreen rendering — Keep native text selection
- Claude Code 公式: Fullscreen rendering — Use the mouse
- Claude Code 公式: Terminal configuration