factsClaude Codeinteractive-mode

stable4 日前 · 2026-08-09

Interactive mode

概要

Claude Code の対話セッションにおけるキーボードショートカット、入力モード、対話機能のリファレンス。

仕様

一般操作

ショートカット説明
Ctrl+C実行中の操作を中断する。何も実行中でなければ 1 回目でプロンプト入力をクリアし、2 回目で Claude Code を終了する
Ctrl+X Ctrl+Kこのセッションのバックグラウンド subagent をすべて停止する。3 秒以内に 2 回押して確定する
Ctrl+Dセッションを終了する。1 回目で確認ヒントを表示し、800ms 以内の 2 回目で終了する。プロンプトにテキストがある場合はカーソル後の文字を削除する
Ctrl+G または Ctrl+X Ctrl+E既定のテキストエディタで開く。Ctrl+X Ctrl+E は readline ネイティブのバインディング。/configShow last response in external editor を有効にすると、Claude の直前の返信が # コメントとしてプロンプトの上に付き、保存時に除去される
Ctrl+L画面を再描画する。入力と会話履歴は保つ。fullscreen rendering では 1 回押すと再描画に加えて「もう一度押すと /clear」のヒントを出し、2 秒以内に 2 回押すと /clear を実行する
Ctrl+Otranscript viewer をトグルする。ツールの使用と実行の詳細、各アシスタントメッセージのタイムスタンプと使用モデルを表示する。既定で "Called slack 3 times" のように 1 行に畳まれる MCP 呼び出しも展開する
Ctrl+Rコマンド履歴を逆方向検索する
Ctrl+V、iTerm2 では Cmd+V、Windows / WSL では Alt+Vクリップボードから画像を貼り付ける。カーソル位置に [Image #N] チップを挿入する。WSL では Ctrl+VAlt+V の両方がバインドされている
Ctrl+B実行中のタスクをバックグラウンド化する(Bash コマンドと agent)。tmux ユーザーは 2 回押す
Ctrl+TClaude のタスクチェックリストをトグルする。バックグラウンドタスクの表示ではない(そちらは /tasks
Ctrl+Sプロンプトを stash / 復元する。入力があれば stash してクリアし、空のプロンプトで再度押すと stash したテキスト・カーソル位置・貼り付け内容を復元する
Ctrl+ZClaude Code をサスペンドする(Unix のみ)。fg で再開する
Left/Rightpermission dialog やメニューのタブを切り替える
Up/Down または Ctrl+P / Ctrl+N入力が複数表示行にわたる場合はまずプロンプト内でカーソルを移動する。先頭行または最終行にいる状態でもう一度押すとコマンド履歴を移動する。v2.1.169 以降、折り返した 1 行入力も複数行と同じ挙動
EscClaude を中断する、またはダイアログを閉じる。ターン途中で応答やツール呼び出しを止め、そこまでの作業は保つ。permission prompt などのダイアログが開いている場合は Claude を中断せずダイアログを閉じる
Esc + Esc入力があれば下書きをクリアして履歴に保存する(Up で呼び戻せる)。入力が空なら rewind メニューを開く
Shift+Tab(Node / Bun ランタイムが VT input mode を有効にしない Windows では Alt+Mpermission mode を循環する。default(モードインジケータでは Manual と表示)、acceptEditsplan、および有効にしているモード(autobypassPermissions など)
Option+P(macOS)/ Alt+P(Windows・Linux)プロンプトをクリアせずにモデルを切り替える
Option+T / Alt+Textended thinking をトグルする。Fable 5 では効果が無い(常に extended thinking を使う)。macOS では Option を Meta に設定しなくても動く
Option+O / Alt+Ofast mode をトグルする

macOS で Option / Alt キーのショートカット(Alt+BAlt+FAlt+YAlt+P)を使うにはターミナルで Option を Meta に設定する必要がある。

  • iTerm2: Settings → Profiles → Keys → General → Left/Right Option key を "Esc+" に
  • Apple Terminal: Settings → Profiles → Keyboard → "Use Option as Meta Key" をチェック
  • VS Code: "terminal.integrated.macOptionIsMeta": true

テキスト編集

ショートカット説明
Ctrl+A現在行の先頭へ移動(複数行入力では論理行の先頭)
Ctrl+E現在行の末尾へ移動(複数行入力では論理行の末尾)
Ctrl+K行末まで削除。削除テキストは貼り付け用に保存される
Ctrl+Uカーソルから行頭まで削除。macOS の iTerm2 / Terminal.app では Cmd+Backspace がこれに割り当てられている
Ctrl+W前の単語を削除。macOS では Option+Delete、Windows では Ctrl+Backspace も同じ
Ctrl+YCtrl+K / Ctrl+U / Ctrl+W で削除したテキストを貼り付ける
Alt+YCtrl+Y の後)貼り付け履歴を循環する
Alt+B単語 1 つ分カーソルを戻す
Alt+F単語 1 つ分カーソルを進める
Ctrl+_ または Ctrl+Shift+-直前の入力編集を取り消す

Ctrl+T/theme ピッカー内でのみ、コードブロックのシンタックスハイライトをトグルする。

複数行入力

方法ショートカット備考
Quick escape\ + Enterすべてのターミナルで動く
Option keyOption+EntermacOS で Option as Meta を有効にした後
Shift+EnterShift+EnteriTerm2 / WezTerm / Ghostty / Kitty / Warp / Apple Terminal / Windows Terminal でネイティブに動く
Control sequenceCtrl+J設定なしでどのターミナルでも動く
Paste mode直接貼り付けコードブロックやログ向け

VS Code / Cursor / Devin Desktop / Alacritty / Zed では /terminal-setup を実行してバインディングを入れる。

入力先頭のクイックコマンド

入力説明
先頭の /コマンドまたは skill
先頭の !shell mode。コマンドを直接実行し、その出力をセッションに追加し、Claude に応答させる
@ファイルパスの補完
:emoji shortcode。:name: を完全入力すると絵文字を挿入、2 文字以上で候補を表示。v2.1.217 以降
空入力での ?ショートカットヘルプパネルをトグルする。入力にテキストがある状態で ? を打つと文字が挿入される

transcript viewer(Ctrl+O

ショートカット説明
?キーボードショートカットのヘルプパネルをトグルする(fullscreen rendering が必要)
{ / }前後のユーザープロンプトへジャンプする(fullscreen rendering が必要)
Ctrl+Eすべての内容の表示をトグルする(classic renderer のみ)。transcript:toggleShowAll でリバインド可
[会話全体をターミナルのネイティブ scrollback に書き出す(fullscreen rendering が必要)
v会話を一時ファイルに書き出し $VISUAL または $EDITOR で開く(fullscreen rendering が必要)
q, Ctrl+C, Esctranscript view を抜ける。3 つとも transcript:exit でリバインド可
  • どのレンダラーが有効かは引数なしの /tui で確認する

音声入力

  • Space の長押しまたはタップで voice dictation(有効化が必要)。長押しで録音、/voice tap でタップ切り替えにできる。キーはリバインド可能

コマンド一覧

  • / を入力すると利用可能なコマンドがすべて表示される。文字を続けると絞り込める
  • / メニューには組み込みコマンド、同梱およびユーザー作成の skill、plugin と MCP サーバーが提供するコマンドが並ぶ
  • 一部の組み込みコマンドはプラットフォームやプランに依存するため全ユーザーには見えない
  • fullscreen rendering では / コマンドと @ ファイル候補のリストがマウスに反応する

vim editor mode

/config → Editor mode で有効にする。

モード切り替え(Esc で NORMAL、i / I / a / A / o / O で INSERT、v / V で VISUAL)。

NORMAL モードの移動: h/j/k/lSpaceweb0$^ggGf{char}F{char}t{char}T{char};,/Ctrl+R と同じ逆方向履歴検索)。

  • NORMAL モードでカーソルが入力の先頭・末尾にあってそれ以上動けない場合、j/k/ はコマンド履歴を移動する
  • 空のプロンプトでの は NORMAL / INSERT の両方で agent view を開く。v2.1.219 より前は NORMAL モードでは何も起きなかった

NORMAL モードの編集: xddDdw/de/dbccCcw/ce/cbs(v2.1.211 以降)、S(v2.1.211 以降)、yy/Yyw/ye/ybpP>><<Ju.

text object(d / c / y と組み合わせる): iw/awiW/aWi"/a"i'/a'i(/a(i[/a[i{/a{

VISUAL モード: d/xyc/spr{char}~/u/U>/<Jo、text object、v/VCtrl+V の block-wise visual mode は非対応。

vimInsertModeRemaps

  • INSERT モードの 2 キー列を Escape にマップする。v2.1.208 以降
  • 各キーは連続して打つちょうど 2 文字の印字可能文字。ターゲットは "<Esc>" のみ。長さやターゲットが異なるエントリは無視される
  • 1 文字目は通常どおり挿入される。1 秒以内に 2 文字目を押すと保留中の文字を取り除いて NORMAL モードへ切り替え、どちらの文字も入力に残らない。1 秒を過ぎるか別のキーが続くと両方がリテラルとして残る
  • user settings ファイル、--settings フラグ、managed settings からのみ読まれる。プロジェクトの .claude/settings.json / .claude/settings.local.json のエントリは無視される

コマンド履歴

  • 入力履歴は作業ディレクトリごとに保存される
  • /clear は新しいセッションを開始する。呼び戻しでは新しいセッションのプロンプトが先に、以前のセッションのプロンプトがその後に並ぶ
  • 同じプロンプトを 2 回続けて送信すると履歴エントリは 1 つ
  • 貼り付けを含むプロンプトを呼び戻して再送すると、貼り付け内容全体が再送される
  • ! による history expansion は既定で無効

Ctrl+R の逆方向検索

  • fullscreen rendering では検索ダイアログが開く。入力で絞り込み、Up / Down で移動、Ctrl+S でスコープ(このセッション / このプロジェクト / 全プロジェクト)を循環、Enter または Tab でプロンプト入力へ、Esc でキャンセル
  • classic renderer のインライン検索: Ctrl+R で開始、テキストを入力(一致部分がハイライトされる)、Ctrl+R を再度押すと古い一致へ移動、Tab / Esc で採用して編集継続、Enter で採用して即実行、Ctrl+C で元の入力に戻す、空の検索で Backspace でキャンセル
  • インライン検索は常に全プロジェクトのプロンプトを対象にし、新しい順に走査して重複は最新のものにまとめる
  • fullscreen のダイアログは選択スコープ内の最新のユニークなプロンプト 100 件を表示する

バックグラウンド Bash コマンド

  • バックグラウンド実行するとコマンドは非同期に走り、即座にバックグラウンドタスク ID が返る
  • 実行方法: Claude にバックグラウンド実行を指示する、または Ctrl+B で通常の Bash ツール呼び出しをバックグラウンドへ移す(tmux では 2 回)
  • 出力はファイルに書かれ、Claude は Read ツールで取得できる
  • バックグラウンドタスクは追跡と出力取得のための一意な ID を持つ
  • Claude Code 終了時に自動でクリーンアップされる。セッションをバックグラウンド化した場合はバックグラウンドセッションへ引き継がれ、実行が続く
  • 出力が 5GB を超えると自動終了し、理由を stderr に記す
  • macOS と Linux では、OS がメモリ逼迫を通知し、セッションが 30 分以上アイドルで、ターンも subagent も動いていない場合に、実行中のバックグラウンドタスクを終了する。CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP1 にすると無効化できる(v2.1.193 以降)。subagent が所有するバックグラウンドコマンドは代わりに 60 分後に終了し、CLAUDE_SUBAGENT_BG_SHELL_MAX_MS でミリ秒指定できる。v2.1.218 より前はどちらの制限も Ctrl+B でバックグラウンド化したコマンドには適用されなかった
  • バックグラウンドタスク機能全体を無効にするには CLAUDE_CODE_DISABLE_BACKGROUND_TASKS1 に設定する

shell mode(! プレフィックス)

  • コマンドとその出力を会話コンテキストに追加する
  • リアルタイムの進捗と出力を表示する
  • 長時間実行には同じ Ctrl+B のバックグラウンド化が使える
  • Claude による解釈・承認を必要としない
  • 履歴ベースの補完に対応。部分入力後 Tab で同一プロジェクトの過去の ! コマンドから補完する
  • v2.1.193 以降、全プラットフォームでライブのファイルパス補完に対応。./src/~/ のようにスラッシュを含むトークンを入力すると候補が出て Tab で確定する。Windows でもスラッシュを使う(トリガーは / であり \ ではない)
  • 空プロンプトで Escape / Backspace / Ctrl+U により抜ける
  • 空プロンプトに ! で始まるテキストを貼り付けると自動的に shell mode に入る
  • v2.1.186 以降、出力がトランスクリプトに入ると Claude が自動で応答する。応答のコストは通常のプロンプト送信と同じ。応答なしで出力だけをコンテキストに追加する以前の挙動に戻すには settings.jsonrespondToBashCommandsfalse にする

prompt suggestions

  • セッションを開いた直後、プロンプト入力にグレーの例が表示される。プロジェクトの git 履歴から選ばれる
  • Claude の応答後も会話履歴に基づいて候補が出る
  • Tab または Right arrow で候補を入力欄に入れ、Enter で送信する。入力を始めると消える
  • 候補生成は親会話の prompt cache を再利用するバックグラウンドリクエストとして走る。キャッシュがコールドのときは生成をスキップする
  • 会話の最初のターン後と plan mode では自動的にスキップされる
  • print モードでは既定で無効。-p "<prompt>" --output-format stream-json --verbose とともに --prompt-suggestions を渡すと各ターン後に prompt_suggestion メッセージを出力する
  • 無効化: /configPrompt suggestions をオフ、settings の promptSuggestionEnabledfalse、環境変数 CLAUDE_CODE_ENABLE_PROMPT_SUGGESTIONfalse(設定より優先される)

emoji shortcodes

  • :heart: のように完全な shortcode を入力すると、閉じる : を打った時点で絵文字に置換される
  • : に続けて名前を 2 文字以上入力すると候補ポップアップが開き、Tab または Enter で挿入する
  • shortcode は入力の先頭かスペースの直後で始まる必要がある。単語や URL の中の : では候補は開かない
  • 無効化は settings.jsonemojiCompletionEnabledfalse。候補ポップアップとインライン置換の両方が無効になる
  • v2.1.217 以降

/btw(side questions)

  • 会話履歴に追加せず現在の作業について質問する。質問と回答は破棄可能なオーバーレイに表示され、会話履歴には入らない
  • 現在の会話全体を参照できる
  • Claude が処理中でも実行でき、メインのターンを中断しない
  • ツールアクセスは無い。コンテキストにある情報だけで答える
  • オーバーレイ内での追加ターンは無い。続けるには f で独自セッションに fork する
  • 親会話の prompt cache を再利用する
  • 同一セッションの過去の side question は現在の回答の上に薄く一覧表示される
  • 質問なしで /btw を実行すると直近のやり取りでオーバーレイが再度開く。Left で過去の回答へ戻る。v2.1.212 より前は使用法メッセージを表示していた
キー動作
Space, Enter, Escape回答を閉じてプロンプトへ戻る
Up / Down回答をスクロールする
Left / Rightセッション内の過去の /btw 回答の間を移動する。v2.1.187 以降
c回答を raw Markdown としてクリップボードにコピーする
f新しいセッションに fork する。fork は親会話とこの質問・回答を実トランスクリプトのターンとして継承する。元のセッションは /resume に残る。ローカルセッションのみ
x現在の回答の上に表示される過去の /btw 一覧をクリアする

task list

  • Claude が複数ステップの作業を計画するために作った to-do チェックリスト。バックグラウンドタスクの表示とは別(そちらは /tasks
  • Ctrl+T で表示をトグルする。一度に最大 5 件表示する。チェックリスト項目が無いときはトグルしても見た目は変わらない
  • 全件表示やクリアは Claude に直接依頼する
  • タスクは context compaction をまたいで保持される
  • セッション間で共有するには CLAUDE_CODE_TASK_LIST_ID を設定して ~/.claude/tasks/ 内の名前付きディレクトリを使う(例: CLAUDE_CODE_TASK_LIST_ID=my-project claude

session recap

  • 直近の完了ターンから 3 分以上経過し、ターミナルが非フォーカスのときにバックグラウンドで生成される 1 行の要約
  • セッションが 3 ターン以上ある場合にのみ表示され、2 回続けては表示されない
  • /recap でオンデマンド生成する。自動 recap を切るには /configSession recap を無効にする
  • すべてのプラン・プロバイダで既定で有効。非対話モードでは常にスキップされる

PR review status

  • open な pull request のあるブランチで作業していると、フッターに "PR #446" のようなクリック可能な PR リンクが表示される
  • 下線の色がレビュー状態を示す: 緑 = approved、黄 = pending review、赤 = changes requested、灰 = draft
  • pull request がマージまたはクローズされるとバッジは消える
  • Cmd+click(macOS)/ Ctrl+click(Windows・Linux)でブラウザで開く
  • 状態は 60 秒ごと、およびセッション内で gh prgit push を実行した直後に更新される
  • ターミナルのハイパーリンク対応を検出できない場合でもハイパーリンクとして描画する。FORCE_HYPERLINK=0 でプレーンテキストになる。v2.1.217 より前は検出成功時のみハイパーリンクだった
  • PR status には gh CLI のインストールと認証(gh auth login)が必要

設定

{
  "editorMode": "vim",
  "vimInsertModeRemaps": { "jj": "<Esc>" }
}
! npm test
! git status
! ls -la
export CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION=false

制約・注意点

  • キーボードショートカットはプラットフォームとターミナルによって異なりうる
  • 組織全体で prompt suggestions を切る場合、managed settings で promptSuggestionEnabledfalse にしたうえで、managed の env キーで CLAUDE_CODE_ENABLE_PROMPT_SUGGESTIONfalse にする(ユーザーが自分の環境変数で再有効化できないようにするため)

関連

  • facts/claude-code/cli-reference.md
  • facts/claude-code/commands.md
  • facts/claude-code/settings.md
  • facts/claude-code/checkpointing.md
  • facts/claude-code/skills.md
  • facts/claude-code/sub-agents.md
  • facts/claude-code/permission-modes.md
  • facts/claude-code/env-vars.md