了解新的程式碼庫
快速取得程式碼庫概覽
假設您剛加入一個新專案,需要快速了解其結構。尋找相關程式碼
假設您需要找到與特定功能相關的程式碼。有效地修復錯誤
假設您遇到了錯誤訊息,需要找到並修復其來源。重構程式碼
假設您需要更新舊程式碼以使用現代模式和實踐。使用專門的 subagents
假設您想使用專門的 AI subagents 來更有效地處理特定任務。使用 Plan Mode 進行安全的程式碼分析
Plan Mode 指示 Claude 通過使用唯讀操作分析程式碼庫來建立計畫,非常適合探索程式碼庫、規劃複雜變更或安全地檢查程式碼。在 Plan Mode 中,Claude 使用AskUserQuestion 在提出計畫之前收集需求並澄清您的目標。
何時使用 Plan Mode
- 多步驟實現:當您的功能需要編輯許多檔案時
- 程式碼探索:當您想在進行任何變更之前徹底研究程式碼庫時
- 互動式開發:當您想與 Claude 迭代方向時
如何使用 Plan Mode
在會話期間開啟 Plan Mode 您可以在會話期間使用 Shift+Tab 循環切換權限模式。 如果您處於 Normal Mode,Shift+Tab 首先切換到 Auto-Accept Mode,在終端底部顯示⏵⏵ accept edits on。隨後的 Shift+Tab 將切換到 Plan Mode,顯示 ⏸ plan mode on。
在 Plan Mode 中啟動新會話
要在 Plan Mode 中啟動新會話,請使用 --permission-mode plan 標誌:
-p 直接在 Plan Mode 中執行查詢(即在「無頭模式」中):
範例:規劃複雜的重構
--name 或 /rename 設定了名稱,接受計畫不會覆蓋它。
將 Plan Mode 設定為預設值
使用測試
假設您需要為未涵蓋的程式碼新增測試。 Claude 可以產生遵循您專案現有模式和慣例的測試。要求測試時,請明確說明您想驗證的行為。Claude 會檢查您現有的測試檔案,以符合已在使用的風格、框架和斷言模式。 為了獲得全面的涵蓋範圍,要求 Claude 識別您可能遺漏的邊界情況。Claude 可以分析您的程式碼路徑,並建議測試錯誤條件、邊界值和容易忽視的意外輸入。建立提取請求
您可以直接要求 Claude 建立提取請求(「為我的變更建立 pr」),或逐步引導 Claude 完成: 當您使用gh pr create 建立 PR 時,會話會自動連結到該 PR。您稍後可以使用 claude --from-pr <number> 繼續。
處理文件
假設您需要為程式碼新增或更新文件。使用影像
假設您需要在程式碼庫中使用影像,並希望 Claude 幫助分析影像內容。將影像新增到對話中
您可以使用以下任何方法:
- 將影像拖放到 Claude Code 視窗中
- 複製影像並使用 ctrl+v 將其貼到 CLI 中(不要使用 cmd+v)
- 向 Claude 提供影像路徑。例如,「分析此影像:/path/to/your/image.png」
參考檔案和目錄
使用 @ 快速包含檔案或目錄,無需等待 Claude 讀取它們。參考 MCP 資源
使用擴展思考(Thinking Mode)
擴展思考預設啟用,為 Claude 提供空間在回應前逐步推理複雜問題。此推理在詳細模式中可見,您可以使用Ctrl+O 切換。
此外,Opus 4.6 和 Sonnet 4.6 支援自適應推理:不是固定的思考令牌預算,而是模型根據您的努力級別設定動態分配思考。擴展思考和自適應推理一起工作,讓您控制 Claude 在回應前的推理深度。
擴展思考對於複雜的架構決策、具有挑戰性的錯誤、多步驟實現規劃和評估不同方法之間的權衡特別有價值。
「think」、「think hard」和「think more」等短語被解釋為常規提示指令,不分配思考令牌。
配置 Thinking Mode
思考預設啟用,但您可以調整或禁用它。| 範圍 | 如何配置 | 詳細資訊 |
|---|---|---|
| 努力級別 | 執行 /effort、在 /model 中調整,或設定 CLAUDE_CODE_EFFORT_LEVEL | 控制 Opus 4.6 和 Sonnet 4.6 的思考深度。請參閱調整努力級別 |
ultrathink 關鍵字 | 在提示中的任何地方包含「ultrathink」 | 在 Opus 4.6 和 Sonnet 4.6 上為該輪設定努力為高。對於需要深度推理的一次性任務很有用,無需永久更改您的努力設定 |
| 切換快捷鍵 | 按 Option+T(macOS)或 Alt+T(Windows/Linux) | 切換當前會話的思考開/關(所有模型)。可能需要終端配置來啟用 Option 鍵快捷鍵 |
| 全域預設值 | 使用 /config 切換 Thinking Mode | 在所有專案中設定預設值(所有模型)。 儲存為 ~/.claude/settings.json 中的 alwaysThinkingEnabled |
| 限制令牌預算 | 設定 MAX_THINKING_TOKENS 環境變數 | 將思考預算限制為特定數量的令牌。在 Opus 4.6 和 Sonnet 4.6 上,只有設定為 0 時才適用,除非禁用自適應推理。範例:export MAX_THINKING_TOKENS=10000 |
Ctrl+O 切換詳細模式,並查看顯示為灰色斜體文字的內部推理。
擴展思考如何運作
擴展思考控制 Claude 在回應前執行多少內部推理。更多思考提供更多空間來探索解決方案、分析邊界情況和自我糾正錯誤。 使用 Opus 4.6 和 Sonnet 4.6,思考使用自適應推理:模型根據您選擇的努力級別動態分配思考令牌。這是調整速度和推理深度之間權衡的推薦方式。 使用較舊的模型,思考使用固定令牌預算,從您的輸出分配中提取。預算因模型而異;有關詳細資訊,請參閱MAX_THINKING_TOKENS。您可以使用該環境變數限制預算,或通過 /config 或 Option+T/Alt+T 切換完全禁用思考。
在 Opus 4.6 和 Sonnet 4.6 上,自適應推理控制思考深度,所以 MAX_THINKING_TOKENS 只在設定為 0 以禁用思考時適用,或當 CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING=1 將這些模型恢復為固定預算時適用。請參閱環境變數。
繼續之前的對話
啟動 Claude Code 時,您可以繼續之前的會話:claude --continue繼續當前目錄中最近的對話claude --resume開啟對話選擇器或按名稱繼續claude --from-pr 123繼續連結到特定提取請求的會話
/resume 切換到不同的對話。
會話按專案目錄儲存。/resume 選擇器顯示來自同一 git 儲存庫的會話,包括 worktrees。由 claude -p 或 SDK 調用建立的會話不會出現在選擇器中,但您仍然可以通過將其會話 ID 直接傳遞給 claude --resume <session-id> 來繼續。
命名您的會話
給會話起描述性名稱以便稍後找到它們。這是在處理多個任務或功能時的最佳實踐。使用會話選擇器
/resume 命令(或 claude --resume 不帶引數)開啟具有以下功能的互動式會話選擇器:
選擇器中的快捷鍵:
| 快捷鍵 | 動作 |
|---|---|
↑ / ↓ | 在會話之間導航 |
→ / ← | 展開或摺疊分組的會話 |
Enter | 選擇並繼續突出顯示的會話 |
P | 預覽會話內容 |
R | 重新命名突出顯示的會話 |
/ | 搜尋以篩選會話 |
A | 在當前目錄和所有專案之間切換 |
B | 篩選為來自您當前 git 分支的會話 |
Esc | 退出選擇器或搜尋模式 |
- 會話名稱或初始提示
- 自上次活動以來經過的時間
- 訊息計數
- Git 分支(如果適用)
/branch、/rewind 或 --fork-session 建立)在其根會話下分組,使找到相關對話更容易。
使用 Git worktrees 執行平行 Claude Code 會話
同時處理多個任務時,您需要每個 Claude 會話都有自己的程式碼庫副本,以便變更不會衝突。Git worktrees 通過建立單獨的工作目錄來解決此問題,每個目錄都有自己的檔案和分支,同時共享相同的儲存庫歷史記錄和遠端連接。這意味著您可以讓 Claude 在一個 worktree 中處理功能,同時在另一個 worktree 中修復錯誤,而不會相互干擾。 使用--worktree(-w)標誌建立隔離的 worktree 並在其中啟動 Claude。您傳遞的值成為 worktree 目錄名稱和分支名稱:
<repo>/.claude/worktrees/<name> 並從預設遠端分支分支。worktree 分支命名為 worktree-<name>。
預設遠端分支不可通過 Claude Code 標誌或設定配置。origin/HEAD 是儲存在您本地 .git 目錄中的參考,Git 在您複製時設定一次。如果儲存庫的預設分支稍後在 GitHub 或 GitLab 上變更,您的本地 origin/HEAD 會繼續指向舊的,worktrees 將從那裡分支。要重新同步您的本地參考與遠端目前認為的預設值:
.git 目錄。遠端伺服器上沒有任何變更。如果您想 worktrees 基於特定分支而不是遠端的預設值,請使用 git remote set-head origin your-branch-name 明確設定它。
為了完全控制 worktrees 的建立方式,包括為每次調用選擇不同的基礎,配置 WorktreeCreate hook。該 hook 完全取代 Claude Code 的預設 git worktree 邏輯,所以您可以從任何您需要的 ref 中取得和分支。
您也可以在會話期間要求 Claude「在 worktree 中工作」或「啟動 worktree」,它會自動建立一個。
Subagent worktrees
Subagents 也可以使用 worktree 隔離來並行工作而不會衝突。要求 Claude「為您的代理使用 worktrees」或在自訂 subagent 中配置它,方法是在代理的 frontmatter 中新增isolation: worktree。每個 subagent 都獲得自己的 worktree,在 subagent 完成而沒有變更時自動清理。
Worktree 清理
當您退出 worktree 會話時,Claude 根據您是否進行了變更來處理清理:- 無變更:worktree 及其分支會自動移除
- 存在變更或提交:Claude 提示您保留或移除 worktree。保留會保留目錄和分支,以便您稍後返回。移除會刪除 worktree 目錄及其分支,丟棄所有未提交的變更和提交
複製 gitignored 檔案到 worktrees
Git worktrees 是新鮮的簽出,所以它們不包含來自主儲存庫的未追蹤檔案,如.env 或 .env.local。要在 Claude 建立 worktree 時自動複製這些檔案,請在專案根目錄新增 .worktreeinclude 檔案。
該檔案使用 .gitignore 語法列出要複製的檔案。只有符合模式且也被 gitignored 的檔案才會被複製,所以追蹤的檔案永遠不會被複製。
.worktreeinclude
--worktree 建立的 worktrees、subagent worktrees 和桌面應用中的平行會話。
手動管理 worktrees
為了更好地控制 worktree 位置和分支配置,直接使用 Git 建立 worktrees。當您需要簽出特定現有分支或將 worktree 放在儲存庫外時,這很有用。非 git 版本控制
Worktree 隔離預設使用 git。對於其他版本控制系統(如 SVN、Perforce 或 Mercurial),配置 WorktreeCreate 和 WorktreeRemove hooks 以提供自訂 worktree 建立和清理邏輯。配置後,當您使用--worktree 時,這些 hooks 會取代預設 git 行為,所以.worktreeinclude 不會被處理。改為在您的 hook 指令碼中複製任何本地配置檔案。
對於具有共享任務和訊息的平行會話的自動協調,請參閱代理團隊。
在 Claude 需要您注意時獲得通知
當您啟動長時間執行的任務並切換到另一個視窗時,您可以設定桌面通知,以便在 Claude 完成或需要您的輸入時知道。這使用Notification hook 事件,每當 Claude 等待權限、閒置並準備好新提示或完成身份驗證時觸發。
將 hook 新增到您的設定
開啟 如果您的設定檔已有
~/.claude/settings.json 並新增一個 Notification hook,該 hook 呼叫您平台的原生通知命令:- macOS
- Linux
- Windows
hooks 鍵,請將 Notification 項目合併到其中,而不是覆蓋。您也可以通過在 CLI 中描述您想要的內容來要求 Claude 為您編寫 hook。可選地縮小匹配器範圍
預設情況下,hook 在所有通知類型上觸發。要僅針對特定事件觸發,請將
matcher 欄位設定為以下值之一:| 匹配器 | 觸發時機 |
|---|---|
permission_prompt | Claude 需要您批准工具使用 |
idle_prompt | Claude 完成並等待您的下一個提示 |
auth_success | 身份驗證完成 |
elicitation_dialog | Claude 在問您一個問題 |
將 Claude 用作 unix 風格的實用程式
將 Claude 新增到您的驗證過程
假設您想將 Claude Code 用作 linter 或程式碼審查者。 將 Claude 新增到您的建置指令碼:管道進入、管道輸出
假設您想將資料管道輸入 Claude,並以結構化格式取回資料。 通過 Claude 管道資料:控制輸出格式
假設您需要 Claude 的輸出採用特定格式,特別是在將 Claude Code 整合到指令碼或其他工具時。在排程上執行 Claude
假設您想讓 Claude 自動定期處理任務,例如每天早上檢查開放 PR、每週審計依賴項或在夜間檢查 CI 失敗。 根據您想讓任務執行的位置選擇排程選項:| 選項 | 執行位置 | 最適合 |
|---|---|---|
| 雲端排程任務 | Anthropic 管理的基礎設施 | 應該在您的電腦關閉時執行的任務。在 claude.ai/code 配置。 |
| 桌面排程任務 | 您的機器,通過桌面應用 | 需要直接存取本地檔案、工具或未提交變更的任務。 |
| GitHub Actions | 您的 CI 管道 | 與儲存庫事件(如開啟的 PR)或應與工作流程配置一起存在的 cron 排程相關的任務。 |
/loop | 當前 CLI 會話 | 會話開啟時的快速輪詢。退出時任務被取消。 |
詢問 Claude 其功能
Claude 內建存取其文件,可以回答有關其自身功能和限制的問題。範例問題
Claude 根據文件提供對這些問題的答案。如需可執行的範例和實踐演示,請執行
/powerup 以取得具有動畫演示的互動式課程,或參閱上面的特定工作流程部分。後續步驟
最佳實踐
從 Claude Code 中獲得最大收益的模式
Claude Code 如何運作
了解代理迴圈和背景資訊管理
擴展 Claude Code
新增 skills、hooks、MCP、subagents 和外掛
參考實現
複製開發容器參考實現