Claude Codeの/focusビューで応答だけに集中する
/focusは最後のプロンプト・ツール呼び出しの1行要約・最終応答だけを表示するCLIコマンドです。効かないときの切り分けと、viewMode・Remote Control・VS Code拡張との関係をv2.1.285の確認つきで扱います。
/focus はCLIの表示を「最後のプロンプト」「ツール呼び出しの1行要約」「最終応答」の3つに絞るコマンドです。ツール実行の詳細ログが画面を埋める状況を避けたいときに使います。ただし、使えない環境があり、設定や別ツールとの優先関係も複数あります。名前のよく似たVS Code拡張の機能は別物です。
/focusを実行すると何が残り、何が畳まれるか
表示に残るのは、直近のプロンプト、diffstat付きのツール呼び出し1行要約、最終応答です。1行要約にはそのターンで起動したサブエージェントの数が含まれ、完了したバックグラウンドタスクの通知も1つの件数にまとまります。
/focusもう一度実行すると解除できます。選択はセッションをまたいで保持され、次回起動時にも復元されます。
たとえばテスト失敗の調査で、ログの読み込み、grep、ファイル編集、テスト再実行が続いたとします。通常表示ではツール呼び出しごとに、実行したコマンドと出力の行数のような短い要約が1つずつ並びます。verbose 設定を有効にすると、その入出力が全文で流れます。フォーカス表示はこれをまとめ、画面には依頼と結論だけが残ります。畳まれた詳細は消えるわけではなく、Ctrl+O のトランスクリプトビューでツール使用の詳細を確認できます。
v2.1.285の claude --help で、表示の詳しさ(ビューモード)に関わるフラグは --verbose(説明は Override verbose mode setting from config)だけでした。フォーカス表示を起動時に指定するフラグは見当たりません。
起動時の既定は、後の「viewModeで起動時の表示を固定する」で扱う viewMode 設定で決めます。
/focusが効かないとき、どこから疑うか
症状ごとに原因が違います。上から順に当たると切り分けられます。
/focusが思いどおりにならないときの確認順
- 1
フルスクリーンレンダリングになっているか
/focusはフルスクリーンレンダリング(ターミナルの代替スクリーンバッファを使う描画モード)でのみ動きます。/tuiを引数なしで実行すると、いまのレンダラーが表示されます。クラシックレンダラーなら/tui fullscreenで切り替えます。会話の内容を保ったまま再起動します。 - 2
viewMode が設定されていないか
viewModeを設定していると、/focusで切り替えても次回起動時は設定値が優先されます。ユーザー・プロジェクト・ローカルのどの設定ファイルにも書けるので、複数の場所を確認します。 - 3
--verbose で起動していないか
--verboseは、そのセッションに限りviewModeよりも優先されます。エイリアスやスクリプト経由で付いていることがあります。 - 4
操作している面はCLIか、VS Code拡張か
VS Code拡張のFocus viewは保存先が別で、CLIの
/focusは反映されません。
古いバージョンで「Unknown command」と出たときは、コマンド自体が無いのではなくレンダラーの問題である可能性を先に疑えます。
クラシックレンダラーで起動する条件
手順1でクラシックレンダラーだったとき、自分で切り替えた覚えがなくても不思議ではありません。起動時のレンダラーは、環境変数・保存済みの tui 設定・使い始めた時期・実行環境から、次の順に当てはまった最初の行で決まります。
CLAUDE_CODE_NO_FLICKER=0またはCLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1を設定していると、クラシックで起動します。CLAUDE_CODE_NO_FLICKER=1とCLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1を両方設定した場合も、クラシックです- iTerm2の
tmux -CC連携モードや、Windows上のClaude CodeにSSHで接続している場合は、CLAUDE_CODE_NO_FLICKER=1を付けない限りクラシックです - スクリーンリーダーモードのセッションは、常にクラシックです。この状態で
/tui fullscreenを実行しても切り替わらず、説明が出るだけで保存済みの設定も変わりません - フルスクリーンの起動に1回失敗すると、次のセッションはクラシックで起動し、その次で再試行されます
- 2回失敗すると、次の更新か
/tui fullscreenまではクラシックが続きます tui設定を保存していない場合は、次の2つで分かれます- フィーチャーフラグを取得するセッションで、使い始めたのが2026年5月6日以降ならフルスクリーンです。それより前から使っている場合は、ここまでのどれにも当たらなければクラシックです
- Amazon Bedrock、Google CloudのAgent Platform、Microsoft Foundry、テレメトリーをオフにしたセッションはフラグを取得しません。後述の切り替えダイアログが出なくなっていればクラシック、このマシンでの初回起動がv2.1.239以降ならフルスクリーンです
- クラシックで起動し
tui設定を保存していないと、起動時にフルスクリーンへの切り替えを勧めるダイアログが出ることがあります。承諾すると/tui fullscreenと同じく再起動し、起動が成功した時点で設定が保存されます。Not nowを選ぶか、ダイアログが3回表示されると、このマシンでは以後出ません - agent viewや
claude attachで開いたバックグラウンドセッションは例外で、上の条件にかかわらず常にフルスクリーンです
/tui を引数なしで実行すると、失敗が理由でクラシックになっている場合は Current renderer の行にそう出ます。CLAUDE_CODE_NO_FLICKER を設定したまま /tui fullscreen を実行した場合は、/tui が再起動するプロセスからこの変数を消します。そのため、書き込まれた tui 設定が効きます。CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1 は保存済みの設定に関係なくクラシックを強制します。こちらは外してから起動し直します。
Ctrl+Oとの関係はどう変わってきたか
フォーカス表示は、切り替えるキーがバージョンをまたいで変わっています。
フォーカス表示の変遷
- v2.1.97フォーカス表示を追加
NO_FLICKERモードに限り、Ctrl+Oがフォーカス表示のトグルを兼ねる形で登場。 - v2.1.110/focusを新設
Ctrl+Oから切り離され、独立したコマンドに。同じバージョンで/tuiコマンドも入った。 - v2.1.121レンダラー無効時の案内
フルスクリーンでないセッションの
/focusが、「Unknown command」ではなく有効化の方法を案内するように。 - v2.1.221VS Code拡張にFocus view
拡張機能側の切り替えが入る。
- v2.1.281Remote Controlから/focus [on|off]
Remote Controlのクライアントから操作できる最初のバージョン。
現行のドキュメントで Ctrl+O は、ツール使用の詳細を含むトランスクリプトビューを開くキーとして書かれています。フォーカス表示はこのキーとは切り離され、/focus だけが担当します。
viewModeで起動時の表示を固定する
/focus の選択より強い指定が、設定ファイルの viewMode です。値は "default"(通常)・"verbose"(詳細)・"focus"(フォーカス)のいずれかです。
{
"viewMode": "focus"
}未設定なら、verbose 設定と直近の /focus の選択が効きます。viewMode を設定すると、この両方より優先されます。--verbose フラグはさらにその上で、そのセッションに限って効きます。
置き場所は、チームで揃えたいならプロジェクトの設定、自分の好みならユーザー設定です。特定のプロジェクトだけ通常表示に戻したいなら、そのプロジェクトのローカル設定で上書きします。ファイルを開かずに変えたいときは、セッション内で /config に key=value の形で渡す方法もあります。
Remote Controlからは保存せずに切り替えられる
Remote Controlのクライアントからは、/focus [on|off] の形で明示的にオン・オフを指定できます。この操作は接続中のセッションだけに効き、保存済みの選択は書き換えません。スマートフォンなどから一時的に見やすくしても、PC側の既定は変わらない仕様です。
VS Code拡張のFocus viewは保存先も隠し方も別
VS Code拡張のFocus viewでも、Claudeの最新のTo-Doリストと、質問中の対象を示すテキストは表示されたままです。どちらもClaude Code v2.1.225以降が必要です。サブエージェントを走らせると、起動したツール呼び出しのグループの下に最新の動きを示す進行行が出ます。こちらはv2.1.269以降が必要です。
CLIの/focusとVS Code拡張のFocus view
CLIの/focus
ツール呼び出しを1行要約(diffstat・サブエージェント数)に集約します。前提はフルスクリーンレンダリングで、/focus で切り替え、viewMode で上書きできます。
VS Code拡張のFocus view
ツール呼び出し・結果・thinkingを展開可能な行に収めます。前提はClaude Code v2.1.221以降です。
切り替えはSettings画面・Ctrl+Option+F(Windows・Linuxは Ctrl+Alt+F)・コマンドパレットの「Claude Code: Toggle Focus view」からできます。
VS Code側の変更は開いている全セッションに適用され、拡張機能の設定として保存されます。CLIと拡張を併用するなら、それぞれ個別に切り替える必要があります。
サブエージェントを多用するときの効き方
/focus の要約行がサブエージェントの起動数を数える点は、並行起動の多い運用で差になります。フォーカス表示では個々のサブエージェントの動きが畳まれ、「何体起動したか」だけが1行に残ります。並列サブエージェントの設計はClaude Code Sub-agents完全ガイドで扱っています。
フルスクリーンレンダリングの仕組みと制約はClaude CodeのTUI(フルスクリーン)とはにあります。/tui と /focus がコマンドとして分かれたv2.1.110の変更はClaude Code v2.1.110で確認できます。
まとめ
起動のたびにフォーカス表示で揃えたいなら viewMode、その場限りで切り替えたいなら /focus かRemote Controlの /focus [on|off] と、目的で手段が分かれます。チームで既定を揃える場合は、各自の /focus ではなくプロジェクト設定の viewMode が手段になります。