教學
使用 Claude Code 在開發工作流程中的實用範例和模式。
本指南提供使用 Claude Code 進行常見工作流程的逐步教學。每個教學包括清晰的指示、範例命令和最佳實踐,幫助您充分利用 Claude Code。
目錄
- 繼續先前的對話
- 理解新的程式碼庫
- 高效修復錯誤
- 重構程式碼
- 處理測試
- 建立拉取請求
- 處理文件
- 處理圖像
- 使用延伸思考
- 設置專案記憶
- 設置模型上下文協議 (MCP)
- 將 Claude 用作類 Unix 工具
- 建立自訂斜線命令
- 使用 Git 工作樹運行並行 Claude Code 會話
繼續先前的對話
無縫繼續您的工作
何時使用: 您已經使用 Claude Code 處理某項任務,需要在稍後的會話中繼續之前的工作。
Claude Code 提供兩種繼續先前對話的選項:
--continue
自動繼續最近的對話--resume
顯示對話選擇器
繼續最近的對話
這會立即繼續您最近的對話,無需任何提示。
在非互動模式下繼續
將 --print
與 --continue
一起使用,以非互動模式繼續最近的對話,非常適合腳本或自動化。
顯示對話選擇器
這會顯示一個互動式對話選擇器,顯示:
- 對話開始時間
- 初始提示或對話摘要
- 訊息數量
使用方向鍵導航並按 Enter 選擇對話。
工作原理:
- 對話儲存:所有對話都會自動在本地保存,包含完整的訊息歷史
- 訊息反序列化:繼續時,整個訊息歷史會被還原以維持上下文
- 工具狀態:先前對話中的工具使用和結果會被保留
- 上下文還原:對話會在保留所有先前上下文的情況下繼續
提示:
- 對話歷史儲存在您的機器本地
- 使用
--continue
快速訪問您最近的對話 - 當您需要選擇特定的過去對話時,使用
--resume
- 繼續時,您將看到整個對話歷史,然後再繼續
- 繼續的對話會使用與原始對話相同的模型和配置開始
範例:
理解新的程式碼庫
快速了解程式碼庫概況
何時使用: 您剛加入一個新專案,需要快速了解其結構。
導航到專案根目錄
啟動 Claude Code
請求高層次概述
深入了解特定組件
提示:
- 從廣泛的問題開始,然後縮小到特定領域
- 詢問專案中使用的編碼慣例和模式
- 請求專案特定術語的詞彙表
查找相關程式碼
何時使用: 您需要找到與特定功能或特性相關的程式碼。
請 Claude 查找相關文件
了解組件如何互動
了解執行流程
提示:
- 明確說明您要尋找的內容
- 使用專案中的領域語言
高效修復錯誤
診斷錯誤訊息
何時使用: 您遇到了錯誤訊息,需要找出並修復其來源。
與 Claude 分享錯誤
請求修復建議
應用修復
提示:
- 告訴 Claude 重現問題和獲取堆疊追蹤的命令
- 提及重現錯誤的步驟
- 讓 Claude 知道錯誤是間歇性的還是一致的
重構程式碼
現代化舊程式碼
何時使用: 您需要更新舊程式碼以使用現代模式和實踐。
識別需要重構的舊程式碼
獲取重構建議
安全地應用更改
驗證重構
提示:
- 請 Claude 解釋現代方法的好處
- 在需要時請求保持向後兼容性
- 以小的、可測試的增量進行重構
處理測試
增加測試覆蓋率
何時使用: 您需要為未覆蓋的程式碼添加測試。
識別未測試的程式碼
生成測試框架
添加有意義的測試案例
運行並驗證測試
提示:
- 請求覆蓋邊緣案例和錯誤條件的測試
- 在適當時請求單元測試和集成測試
- 讓 Claude 解釋測試策略
建立拉取請求
生成全面的 PR
何時使用: 您需要為您的更改創建一個文檔完善的拉取請求。
總結您的更改
使用 Claude 生成 PR
審查和完善
添加測試詳情
提示:
- 直接請 Claude 為您創建 PR
- 在提交前審查 Claude 生成的 PR
- 請 Claude 突出潛在風險或考慮事項
處理文件
生成程式碼文件
何時使用: 您需要為您的程式碼添加或更新文件。
識別未文檔化的程式碼
生成文件
審查和增強
驗證文件
提示:
- 指定您想要的文件風格(JSDoc、docstrings 等)
- 在文件中請求示例
- 為公共 API、接口和複雜邏輯請求文件
處理圖像
分析圖像和截圖
何時使用: 您需要處理程式碼庫中的圖像或獲取 Claude 幫助分析圖像內容。
將圖像添加到對話中
您可以使用以下任何方法:
- 將圖像拖放到 Claude Code 窗口中
- 複製圖像並使用 cmd+v(在 Mac 上)將其粘貼到 CLI 中
- 提供圖像路徑 claude “分析這個圖像:/path/to/your/image.png”
請 Claude 分析圖像
使用圖像作為上下文
從視覺內容獲取程式碼建議
提示:
- 當文字描述不清晰或繁瑣時使用圖像
- 包括錯誤、UI 設計或圖表的截圖以提供更好的上下文
- 您可以在一個對話中處理多個圖像
- 圖像分析適用於圖表、截圖、模型等
使用延伸思考
利用 Claude 的延伸思考處理複雜任務
何時使用: 當處理複雜的架構決策、具有挑戰性的錯誤或規劃需要深度推理的多步驟實現時。
提供上下文並請 Claude 思考
Claude 將從您的程式碼庫收集相關信息,並使用延伸思考,這將在界面中可見。
通過後續提示完善思考
獲取延伸思考最大價值的提示:
延伸思考對以下複雜任務最有價值:
- 規劃複雜的架構變更
- 調試複雜問題
- 為新功能創建實現計劃
- 理解複雜的程式碼庫
- 評估不同方法之間的權衡
您提示思考的方式會導致不同程度的思考深度:
- “think”(思考)觸發基本的延伸思考
- 強化短語如 “think more”(多思考)、“think a lot”(大量思考)、“think harder”(更努力思考)或 “think longer”(更長時間思考)觸發更深入的思考
有關更多延伸思考提示技巧,請參閱延伸思考提示。
Claude 將在回應上方以斜體灰色文字顯示其思考過程。
設置專案記憶
創建有效的 CLAUDE.md 文件
何時使用: 您想設置一個 CLAUDE.md 文件來存儲重要的專案信息、慣例和常用命令。
為您的程式碼庫引導 CLAUDE.md
提示:
- 包括常用命令(構建、測試、lint)以避免重複搜索
- 記錄程式碼風格偏好和命名慣例
- 添加特定於您專案的重要架構模式
- CLAUDE.md 記憶可用於與團隊共享的指示和您的個人偏好。有關更多詳情,請參閱管理 Claude 的記憶。
設置模型上下文協議 (MCP)
模型上下文協議 (MCP) 是一個開放協議,使 LLM 能夠訪問外部工具和數據源。有關更多詳情,請參閱 MCP 文檔。
使用第三方 MCP 服務器風險自負。確保您信任 MCP 服務器,並特別小心使用與互聯網通信的 MCP 服務器,因為這些可能使您面臨提示注入風險。
配置 MCP 服務器
何時使用: 您想通過使用模型上下文協議連接到專門工具和外部服務器來增強 Claude 的能力。
添加 MCP Stdio 服務器
添加 MCP SSE 服務器
管理您的 MCP 服務器
提示:
- 使用
-s
或--scope
標誌指定配置存儲位置:local
(默認):僅在當前專案中對您可用(在舊版本中稱為project
)project
:通過.mcp.json
文件與專案中的所有人共享user
:對您在所有專案中可用(在舊版本中稱為global
)
- 使用
-e
或--env
標誌設置環境變量(例如,-e KEY=value
) - 使用 MCP_TIMEOUT 環境變量配置 MCP 服務器啟動超時(例如,
MCP_TIMEOUT=10000 claude
設置 10 秒超時) - 使用 Claude Code 中的
/mcp
命令隨時檢查 MCP 服務器狀態 - MCP 遵循客戶端-服務器架構,其中 Claude Code(客戶端)可以連接到多個專門服務器
理解 MCP 服務器範圍
何時使用: 您想了解不同的 MCP 範圍如何工作以及如何與團隊共享服務器。
本地範圍的 MCP 服務器
默認範圍(local
)將 MCP 服務器配置存儲在您的專案特定用戶設置中。這些服務器僅在您在當前專案工作時對您可用。
專案範圍的 MCP 服務器(.mcp.json)
專案範圍的服務器存儲在專案根目錄的 .mcp.json
文件中。此文件應該被檢入版本控制以與您的團隊共享服務器。
這會創建或更新一個 .mcp.json
文件,結構如下:
用戶範圍的 MCP 服務器
用戶範圍的服務器在您機器上的所有專案中對您可用,並且對您是私有的。
提示:
- 本地範圍的服務器優先於同名的專案範圍和用戶範圍服務器
- 專案範圍的服務器(在
.mcp.json
中)優先於同名的用戶範圍服務器 - 在使用
.mcp.json
中的專案範圍服務器之前,Claude Code 會提示您出於安全考慮批准它們 .mcp.json
文件旨在被檢入版本控制以與您的團隊共享 MCP 服務器- 專案範圍的服務器使得確保團隊中的每個人都能訪問相同的 MCP 工具變得容易
- 如果您需要重置對哪些專案範圍服務器啟用或禁用的選擇,請使用
claude mcp reset-project-choices
命令
連接到 Postgres MCP 服務器
何時使用: 您想給 Claude 只讀訪問 PostgreSQL 數據庫的權限,用於查詢和架構檢查。
添加 Postgres MCP 服務器
使用 Claude 查詢您的數據庫
提示:
- Postgres MCP 服務器為安全起見提供只讀訪問
- Claude 可以幫助您探索數據庫結構並運行分析查詢
- 您可以使用這個來快速了解不熟悉專案中的數據庫架構
- 確保您的連接字符串使用具有最低所需權限的適當憑證
從 JSON 配置添加 MCP 服務器
何時使用: 您有一個單一 MCP 服務器的 JSON 配置,想要將其添加到 Claude Code。
從 JSON 添加 MCP 服務器
驗證服務器已添加
提示:
- 確保 JSON 在您的 shell 中正確轉義
- JSON 必須符合 MCP 服務器配置架構
- 您可以使用
-s global
將服務器添加到您的全局配置而不是專案特定配置
從 Claude Desktop 導入 MCP 服務器
何時使用: 您已經在 Claude Desktop 中配置了 MCP 服務器,並希望在 Claude Code 中使用相同的服務器,而無需手動重新配置它們。
從 Claude Desktop 導入服務器
選擇要導入的服務器
運行命令後,您將看到一個互動式對話框,允許您選擇要導入的服務器。
驗證服務器已導入
提示:
- 此功能僅適用於 macOS 和 Windows Subsystem for Linux (WSL)
- 它從這些平台上的標準位置讀取 Claude Desktop 配置文件
- 使用
-s global
標誌將服務器添加到您的全局配置 - 導入的服務器將與 Claude Desktop 中的名稱相同
- 如果已存在同名的服務器,它們將獲得數字後綴(例如,
server_1
)
將 Claude Code 用作 MCP 服務器
何時使用: 您希望將 Claude Code 本身用作 MCP 服務器,使其他應用程序可以連接,提供它們 Claude 的工具和功能。
將 Claude 啟動為 MCP 服務器
從另一個應用程序連接
您可以從任何 MCP 客戶端連接到 Claude Code MCP 服務器,例如 Claude Desktop。如果您使用的是 Claude Desktop,可以使用以下配置添加 Claude Code MCP 服務器:
提示:
- 服務器提供對 Claude 的工具的訪問,如 View、Edit、LS 等
- 在 Claude Desktop 中,嘗試讓 Claude 讀取目錄中的文件、進行編輯等
- 請注意,此 MCP 服務器只是將 Claude Code 的工具暴露給您的 MCP 客戶端,因此您自己的客戶端負責為個別工具調用實現用戶確認
將 Claude 用作類 Unix 工具
將 Claude 添加到您的驗證過程
何時使用: 您想將 Claude Code 用作 linter 或程式碼審查者。
步驟:
將 Claude 添加到您的構建腳本
管道輸入,管道輸出
何時使用: 您想將數據管道輸入到 Claude,並以結構化格式獲取數據。
通過 Claude 管道數據
控制輸出格式
何時使用: 您需要特定格式的 Claude 輸出,特別是當將 Claude Code 集成到腳本或其他工具中時。
使用文本格式(默認)
這只輸出 Claude 的純文本回應(默認行為)。
使用 JSON 格式
這輸出一個包含元數據(包括成本和持續時間)的 JSON 消息數組。
使用流式 JSON 格式
這在 Claude 處理請求時實時輸出一系列 JSON 對象。每條消息都是一個有效的 JSON 對象,但如果連接起來,整個輸出不是有效的 JSON。
提示:
- 當您只需要 Claude 的回應時,使用
--output-format text
進行簡單集成 - 當您需要完整的對話日誌時,使用
--output-format json
- 當您需要每個對話回合的實時輸出時,使用
--output-format stream-json
建立自訂斜線命令
Claude Code 支持您可以創建的自定義斜線命令,以快速執行特定提示或任務。
創建專案特定命令
何時使用: 您想為您的專案創建可重用的斜線命令,所有團隊成員都可以使用。
在您的專案中創建命令目錄
為每個命令創建 Markdown 文件
在 Claude Code 中使用您的自定義命令
提示:
- 命令名稱來源於文件名(例如,
optimize.md
變成/project:optimize
) - 您可以在子目錄中組織命令(例如,
.claude/commands/frontend/component.md
變成/project:frontend:component
) - 專案命令對克隆存儲庫的每個人都可用
- Markdown 文件內容成為調用命令時發送給 Claude 的提示
使用 $ARGUMENTS 添加命令參數
何時使用: 您想創建可以接受用戶額外輸入的靈活斜線命令。
創建帶有 $ARGUMENTS 佔位符的命令文件
使用帶有問題編號的命令
這將在提示中將 $ARGUMENTS 替換為 “123”。
提示:
- $ARGUMENTS 佔位符會被命令後面的任何文本替換
- 您可以在命令模板中的任何位置放置 $ARGUMENTS
- 其他有用的應用:為特定函數生成測試案例,為組件創建文檔,審查特定文件中的程式碼,或將內容翻譯成指定語言
創建個人斜線命令
何時使用: 您想創建在所有專案中都可用的個人斜線命令。
在您的主文件夾中創建命令目錄
為每個命令創建 Markdown 文件
使用您的個人自定義命令
提示:
- 個人命令以
/user:
為前綴,而不是/project:
- 個人命令只對您可用,不與您的團隊共享
- 個人命令在您的所有專案中都可用
- 您可以將這些用於不同程式碼庫之間的一致工作流程
使用 Git 工作樹運行並行 Claude Code 會話
使用工作樹實現隔離的編碼環境
何時使用: 您需要同時處理多個任務,並在 Claude Code 實例之間完全隔離程式碼。
了解 Git 工作樹
Git 工作樹允許您從同一存儲庫將多個分支檢出到單獨的目錄中。每個工作樹都有自己的工作目錄,文件隔離,同時共享相同的 Git 歷史。在官方 Git 工作樹文檔中了解更多。
創建新的工作樹
這會創建一個新目錄,其中包含您存儲庫的單獨工作副本。
在每個工作樹中運行 Claude Code
在另一個終端中:
管理您的工作樹
提示:
- 每個工作樹都有自己獨立的文件狀態,非常適合並行 Claude Code 會話
- 在一個工作樹中所做的更改不會影響其他工作樹,防止 Claude 實例相互干擾
- 所有工作樹共享相同的 Git 歷史和遠程連接
- 對於長時間運行的任務,您可以讓 Claude 在一個工作樹中工作,同時在另一個工作樹中繼續開發
- 使用描述性目錄名稱,以便輕鬆識別每個工作樹的任務
- 記得根據您專案的設置在每個新工作樹中初始化您的開發環境。根據您的技術棧,這可能包括:
- JavaScript 專案:運行依賴安裝(
npm install
、yarn
) - Python 專案:設置虛擬環境或使用包管理器安裝
- 其他語言:遵循您專案的標準設置過程
- JavaScript 專案:運行依賴安裝(
下一步
Claude Code 參考實現
克隆我們的開發容器參考實現。