Skip to main content

鍵盤快捷鍵

鍵盤快捷鍵可能因平台和終端而異。在全螢幕渲染中,在文字記錄檢視器中按 ? 以查看可用的快捷鍵。macOS 使用者:Option/Alt 鍵快捷鍵(Alt+BAlt+FAlt+YAlt+MAlt+P)需要在終端中將 Option 配置為 Meta:
  • iTerm2:設定 → Profiles → Keys → General → 將 Left/Right Option 鍵設定為「Esc+」
  • Apple Terminal:設定 → Profiles → Keyboard → 勾選「Use Option as Meta Key」
  • VS Code:在 VS Code 設定中設定 "terminal.integrated.macOptionIsMeta": true
詳見終端配置

一般控制

文字編輯

主題和顯示

多行輸入

Shift+Enter 在 iTerm2、WezTerm、Ghostty、Kitty、Warp、Apple Terminal 和 Windows Terminal 中無需配置即可使用。對於 VS Code、Cursor、Devin Desktop、Alacritty 和 Zed,執行 /terminal-setup 以安裝繫結。

快速命令

文字記錄檢視器

當文字記錄檢視器開啟時(使用 Ctrl+O 切換),這些快捷鍵可用。在全螢幕渲染中,按 ? 以在檢視器內顯示完整的快捷鍵參考面板。Ctrl+E 可以透過 transcript:toggleShowAll 重新繫結。

語音輸入

命令

在 Claude Code 中輸入 / 以查看所有可用命令,或輸入 / 後跟任何字母以篩選。/ 選單顯示您可以呼叫的所有內容:內建命令、捆綁和使用者撰寫的 skills,以及由 pluginsMCP servers 貢獻的命令。並非所有內建命令對每個使用者都可見,因為某些命令取決於您的平台或計畫。 全螢幕呈現中,/ 命令和 @ 檔案建議清單也會回應滑鼠:懸停會反白顯示一列,點擊會接受它。 詳見命令參考以取得 Claude Code 中包含的命令的完整清單。

Vim 編輯器模式

透過 /config → Editor mode 啟用 vim 風格編輯。

模式切換

重新對應 INSERT 模式快捷鍵序列

vimInsertModeRemaps 設定會將兩個按鍵的 INSERT 模式序列對應到 Escape,因此像 jj 這樣的對應會讓您回到 NORMAL 模式。需要 Claude Code v2.1.208 或更新版本。 以下 ~/.claude/settings.json 範例會開啟 vim 模式並將 jj 對應到 Escape:
每個鍵恰好是按順序輸入的兩個可列印字元,而 "<Esc>" 是唯一支援的目標。具有不同長度或目標的項目會被忽略。 輸入序列的第一個字元會正常插入。在一秒內按下第二個字元會移除該待處理字元並切換到 NORMAL 模式,在您的輸入中不留下任何字元。在一秒視窗之後,或如果按下不同的鍵,兩個字元都會保留為字面文字,因此您仍然可以透過在兩個鍵之間暫停來輸入包含該序列的單字。 Claude Code 只會從您的使用者設定檔案、--settings 旗標和受管設定讀取此設定。專案的 .claude/settings.json.claude/settings.local.json 中的項目會被忽略,因此簽出的儲存庫無法重新對應您的按鍵。
在 vim 正常模式中,如果游標位於輸入的開始或結尾且無法進一步移動,j/k 和箭頭鍵將導航命令歷史。

編輯(NORMAL 模式)

文字物件(NORMAL 模式)

文字物件與運算子(如 dcy)搭配使用:

視覺模式

v 進行字元式選擇或按 V 進行行式選擇。動作會擴展選擇,運算子直接作用於選擇。 不支援使用 Ctrl+V 的區塊式視覺模式。

命令歷史

Claude Code 維護目前會話的命令歷史:
  • 輸入歷史按工作目錄儲存
  • 當您執行 /clear 以開始新會話時,輸入歷史會重設。先前會話的對話會被保留,可以繼續進行。
  • 連續提交相同的提示兩次會記錄一個歷史項目,因此按向上鍵會跳到先前的不同提示
  • 使用向上/向下箭頭導航(請參閱上面的快捷鍵)
  • 歷史擴展(!)預設停用

使用 Ctrl+R 進行反向搜尋

Ctrl+R 以互動方式搜尋您的命令歷史:
  1. 開始搜尋:按 Ctrl+R 啟動反向歷史搜尋
  2. 輸入查詢:輸入文字以在先前的命令中搜尋。搜尋詞在匹配結果中醒目提示
  3. 導航匹配項:再次按 Ctrl+R 以循環瀏覽較舊的匹配項
  4. 變更範圍:搜尋預設為所有專案的提示。按 Ctrl+S 以在此會話、此專案和所有專案之間循環範圍
  5. 接受匹配項
    • TabEsc 以接受目前匹配項並繼續編輯
    • Enter 以接受並立即執行命令
  6. 取消搜尋
    • Ctrl+C 以取消並恢復您的原始輸入
    • 在空搜尋上按 Backspace 以取消
搜尋會載入所選範圍中最近的 100 個唯一提示,重複項目會摺疊至最新出現。匹配的提示會顯示醒目提示的搜尋詞,因此您可以找到並重複使用先前的輸入。 接受匹配項或取消搜尋會立即生效,即使 Claude Code 仍在載入歷史時也是如此。在 v2.1.202 之前,在該載入期間接受或取消可能會報告內部錯誤。

背景 Bash 命令

Claude Code 支援在背景執行 Bash 命令,允許您在長時間執行的程序執行時繼續工作。

背景執行的工作原理

當 Claude Code 在背景執行命令時,它會非同步執行命令並立即傳回背景工作 ID。Claude Code 可以在命令在背景繼續執行時回應新提示。 若要在背景執行命令,您可以:
  • 提示 Claude Code 在背景執行命令
  • Ctrl+B 將常規 Bash 工具呼叫移到背景。Tmux 使用者必須按 Ctrl+B 兩次,因為 tmux 的前綴鍵。
主要功能:
  • 輸出被寫入檔案,Claude 可以使用 Read 工具檢索它
  • 背景工作有唯一的 ID 用於追蹤和輸出檢索
  • 背景工作在 Claude Code 退出時會自動清理。將工作階段背景執行而不是退出會將它們交給背景工作階段,它們會繼續執行。請參閱背景執行執行中的工作階段
  • 如果輸出超過 5GB,背景工作會自動終止,stderr 中會有說明原因的備註
  • 自 v2.1.193 起,在 macOS 和 Linux 上,當作業系統發出記憶體壓力信號時,執行中的背景工作會被終止,前提是工作階段已閒置至少 30 分鐘,沒有任何轉換或子代理執行。將 CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP 設定為 1 以關閉此功能
若要停用所有背景工作功能,請將 CLAUDE_CODE_DISABLE_BACKGROUND_TASKS 環境變數設定為 1。詳見環境變數 常見的背景執行命令:
  • 建置工具(webpack、vite、make)
  • 套件管理器(npm、yarn、pnpm)
  • 測試執行器(jest、pytest)
  • 開發伺服器
  • 長時間執行的程序(docker、terraform)

使用 ! 前綴的 Shell 模式

透過在輸入前加上 ! 直接執行 shell 命令,無需透過 Claude:
Shell 模式:
  • 將命令及其輸出新增到對話上下文
  • 顯示即時進度和輸出
  • 支援相同的 Ctrl+B 背景執行,用於長時間執行的命令
  • 不需要 Claude 解釋或批准命令
  • 支援基於歷史的自動完成:輸入部分命令並按 Tab 以從目前專案中的先前 ! 命令完成
  • 自 v2.1.193 起在所有平台上支援即時檔案路徑自動完成:輸入包含正斜線的權杖,例如 ./src/~/,以查看符合的檔案和目錄的下拉清單,然後按 Tab 以接受。在 Windows 上也使用正斜線;下拉清單由 / 觸發,而不是 \
  • 在空提示上使用 EscapeBackspaceCtrl+U 退出
  • 將以 ! 開頭的貼上文字貼到空提示中會自動進入 shell 模式,符合輸入的 ! 行為
自 v2.1.186 起,Claude 會在命令輸出進入文字記錄後自動回應,因此您可以執行 ! npm test 並獲得失敗的說明,無需第二個提示。回應成本與傳送一般提示相同。若要恢復先前的行為,其中輸出被新增到上下文而不進行回應,請在 settings.json 中將 respondToBashCommands 設定為 false。在 v2.1.186 之前,shell 模式始終將輸出新增到上下文而不進行回應。 這對於快速 shell 操作同時維護對話上下文很有用。

提示建議

當您首次開啟會話時,提示輸入中會出現灰色的範例命令以幫助您開始。Claude Code 從您的專案的 git 歷史中選擇此項,因此它反映您最近一直在處理的檔案。 Claude 回應後,建議會根據您的對話歷史繼續出現,例如多部分請求的後續步驟或工作流程的自然延續。
  • TabRight arrow 以將建議放入提示輸入中,然後按 Enter 以提交
  • 開始輸入以關閉它
建議作為背景請求執行,該請求重複使用父對話的提示快取,因此額外成本最少。當快取冷時,Claude Code 會跳過建議生成以避免不必要的成本。 在對話的第一輪之後以及在 Plan Mode 中,建議會自動跳過。在列印模式中,預設情況下它們是關閉的。傳遞 --prompt-suggestions 搭配 --output-format stream-json --verbose 以在每一輪之後改為發出 prompt_suggestion 訊息。 若要完全停用提示建議,請設定環境變數或在 /config 中切換設定:

使用 /btw 的側面問題

使用 /btw 詢問有關您目前工作的快速問題,而不將其新增到對話歷史。當您想要快速答案但不想雜亂主要上下文或使 Claude 偏離長時間執行的工作時,這很有用。
側面問題可以完全看到目前對話,因此您可以詢問 Claude 已經讀過的程式碼、它之前做出的決定或會話中的任何其他內容。問題和答案是短暫的:它們出現在可關閉的覆蓋層中,永遠不會進入對話歷史。
  • Claude 工作時可用:即使 Claude 正在處理回應時,您也可以執行 /btw。側面問題獨立執行,不會中斷主要輪次。
  • 無工具存取:側面問題僅從已在上下文中的內容回答。Claude 在回答側面問題時無法讀取檔案、執行命令或搜尋。
  • 單一回應:覆蓋層中沒有後續輪次。若要繼續執行緒,請使用 f 將其分支到自己的會話中。
  • 低成本:側面問題重複使用父對話的提示快取,因此額外成本最少。
答案出現後,覆蓋層接受這些按鍵。來自同一會話的較早側面問題會顯示為目前答案上方的淡色列表;它們保持在對話歷史之外,但在覆蓋層中保持可見,直到您清除它們。 /btwsubagent 的反面:它看到您的完整對話但沒有工具,而 subagent 有完整工具但以空上下文開始。使用 /btw 詢問 Claude 從此會話已知的內容;使用 subagent 去發現新的東西。

工作清單

工作清單是 Claude 的待辦事項檢查清單:Claude 建立的項目用於規劃多步驟工作,並有指示器顯示待處理、進行中或完成的內容。它與背景工作檢視分開。若要查看執行中的 shell 和子代理,請改用 /tasks
  • Ctrl+T 以切換工作清單檢視。顯示一次最多五個工作。當 Claude 尚未建立任何檢查清單項目時,切換沒有可見效果,因為沒有任何內容可顯示
  • 若要查看所有工作或清除它們,直接詢問 Claude:「show me all tasks」或「clear all tasks」
  • 工作在上下文壓縮中持續存在,幫助 Claude 在較大的專案上保持組織
  • 若要在會話之間共享工作清單,請設定 CLAUDE_CODE_TASK_LIST_ID 以使用 ~/.claude/tasks/ 中的命名目錄:CLAUDE_CODE_TASK_LIST_ID=my-project claude

會話摘要

當您在離開終端後返回時,Claude Code 會顯示到目前為止會話中發生的情況的單行摘要。摘要在背景中生成,一旦自上次完成的輪次以來至少已過三分鐘且終端未聚焦,就會準備好。摘要僅在會話至少有三個輪次後出現,且永遠不會連續出現兩次。 執行 /recap 以按需生成摘要。若要關閉自動摘要,請開啟 /config 並停用會話摘要 會話摘要在每個計畫和提供者上預設開啟。摘要在非互動模式中始終被跳過。

PR 審查狀態

在處理具有開啟拉取請求的分支時,Claude Code 在頁尾顯示可點擊的 PR 連結(例如「PR #446」)。連結有一個彩色底線,指示審查狀態:
  • 綠色:已批准
  • 黃色:待審查
  • 紅色:要求變更
  • 灰色:草稿
拉取請求合併或關閉後,徽章會消失。Cmd+click(macOS)或 Ctrl+click(Windows/Linux)連結以在瀏覽器中開啟拉取請求。狀態每 60 秒自動更新,並在工作階段中執行 gh prgit push 命令後立即更新。
PR 狀態需要安裝並驗證 gh CLI(gh auth login)。

另請參閱