動態上下文注入:Contexts 的使用
學完你能做什麼
學會動態上下文注入後,你可以:
- 根據當前工作模式切換 AI 的行為策略(開發、審查、研究)
- 讓 Claude 在不同場景下遵循不同的優先順序和工具偏好
- 避免在同一會話中混淆工作目標,提升專注度
- 最佳化不同階段的工作效率(快速實現 vs 深度審查)
你現在的困境
你在開發過程中遇到過這些問題嗎?
- 想快速開發時,Claude 總是過度分析、給出過多建議,拖慢進度
- 程式碼審查時,Claude 急於改程式碼,而不是仔細閱讀和發現問題
- 研究新問題時,Claude 沒讀明白就要動手寫,導致方向錯誤
- 同一個會話裡,一會兒在開發,一會兒在審查,Claude 的行為模式混亂
這些問題的根源在於:Claude 沒有明確的「工作模式」訊號,它不知道當前應該優先做什麼。
什麼時候用這一招
- 開發階段:讓 AI 優先實現功能,後討論細節
- 程式碼審查:讓 AI 先充分理解,再提出改進建議
- 技術研究:讓 AI 先探索學習,再給出結論
- 工作模式切換時:明確告訴 AI 現在的目標是什麼
核心思路
動態上下文注入的核心是讓 AI 在不同工作模式下有不同的行為策略。
三種工作模式
Everything Claude Code 提供三種預定義的上下文:
| 模式 | 檔案 | 關注點 | 優先順序 | 適用場景 |
|---|---|---|---|---|
| dev | contexts/dev.md | 實現功能、快速迭代 | 先跑起來,再完善 | 日常開發、新功能實現 |
| review | contexts/review.md | 程式碼品質、安全性、可維護性 | 先發現問題,再建議修復 | Code Review、PR 審查 |
| research | contexts/research.md | 理解問題、探索方案 | 先理解,再動手 | 技術調研、Bug 分析、架構設計 |
為什麼需要動態上下文?
上下文 vs 系統提示
系統提示是 Claude Code 啟動時載入的固定指令(如 agents/、rules/ 目錄中的內容),它定義了 AI 的基礎行為。
上下文是你根據當前工作模式動態注入的臨時指令,它覆蓋或補充系統提示,讓 AI 在特定場景下改變行為。
系統提示是「全域預設」,上下文是「場景覆蓋」。
工作模式對比
同一個任務,在不同模式下 AI 的表現差異:
### 任務:修復一個導致登入失敗的 Bug
#### dev 模式(快速修復)
- 快速定位問題
- 直接修改程式碼
- 執行測試驗證
- 先跑起來,再最佳化
### review 模式(深度分析)
- 充分閱讀相關程式碼
- 檢查邊界條件和錯誤處理
- 評估修復方案的影響
- 先發現問題,再建議修復
### research 模式(徹底調查)
- 探索所有可能的原因
- 分析日誌和錯誤資訊
- 驗證假設
- 先理解根因,再給出方案🎒 開始前的準備
跟我做:使用動態上下文
第 1 步:理解三種上下文的工作方式
先了解每種上下文的定義:
dev.md - 開發模式
目標:快速實現功能,先跑起來再完善
優先順序:
- Get it working(讓它工作)
- Get it right(讓它正確)
- Get it clean(讓它整潔)
行為策略:
- Write code first, explain after(先寫程式碼,後解釋)
- Prefer working solutions over perfect solutions(偏好可用方案勝過完美方案)
- Run tests after changes(改動後執行測試)
- Keep commits atomic(保持提交原子性)
工具偏好:Edit、Write(程式碼修改)、Bash(執行測試/建置)、Grep/Glob(查找程式碼)
review.md - 審查模式
目標:發現程式碼品質問題、安全漏洞和可維護性問題
優先順序:Critical(關鍵) > High(高) > Medium(中) > Low(低)
行為策略:
- Read thoroughly before commenting(先充分閱讀,再評論)
- Prioritize issues by severity(按嚴重程度排序問題)
- Suggest fixes, don't just point out problems(建議修復方案,而不只是指出問題)
- Check for security vulnerabilities(檢查安全漏洞)
審查清單:
- [ ] Logic errors(邏輯錯誤)
- [ ] Edge cases(邊界條件)
- [ ] Error handling(錯誤處理)
- [ ] Security(injection, auth, secrets)(安全問題)
- [ ] Performance(效能)
- [ ] Readability(可讀性)
- [ ] Test coverage(測試覆蓋率)
輸出格式:按檔案分組,嚴重程度優先
research.md - 研究模式
目標:深入理解問題,探索可能的解決方案
研究流程:
- Understand the question(理解問題)
- Explore relevant code/docs(探索相關程式碼/文件)
- Form hypothesis(提出假設)
- Verify with evidence(用證據驗證)
- Summarize findings(總結發現)
行為策略:
- Read widely before concluding(先廣泛閱讀,再下結論)
- Ask clarifying questions(提出澄清問題)
- Document findings as you go(邊探索邊記錄)
- Don't write code until understanding is clear(理解清楚前不寫程式碼)
工具偏好:Read(理解程式碼)、Grep/Glob(查找模式)、WebSearch/WebFetch(外部文件)、Task with Explore agent(程式碼庫問題)
輸出格式:先發現,後建議
第 2 步:選擇並應用上下文
根據當前工作場景,選擇合適的上下文。
場景 1:實現新功能
適用上下文:dev.md
應用方式:
@contexts/dev.md
請幫我實現使用者認證功能:
1. 支援電子郵件密碼登入
2. 產生 JWT token
3. 實現中介軟體保護路由Claude 會怎樣表現:
- 快速實現核心功能
- 不過度設計
- 實現後執行測試驗證
- 保持提交原子性(每個提交完成一個小功能)
你應該看到:
- 快速獲得可執行的程式碼
- 測試通過
- 功能可用,可能不夠優雅
場景 2:審查同事的 PR
適用上下文:review.md
應用方式:
@contexts/review.md
請審查這個 PR:https://github.com/your-repo/pull/123
重點檢查:
- 安全性(SQL 注入、XSS、認證)
- 錯誤處理
- 效能問題Claude 會怎樣表現:
- 先充分閱讀所有相關程式碼
- 按嚴重程度排序問題
- 為每個問題提供修復建議
- 不直接改程式碼,只提建議
你應該看到:
- 結構化的審查報告(按檔案、按嚴重程度)
- 每個問題都有具體位置和修復建議
- Critical 級別問題優先標註
場景 3:調研一個新技術的整合方案
適用上下文:research.md
應用方式:
@contexts/research.md
我想在專案中整合 ClickHouse 作為分析資料庫,請幫我調研:
1. ClickHouse 的優勢和劣勢
2. 與我們現有的 PostgreSQL 架構如何配合
3. 遷移策略和風險
4. 效能基準測試結果
不要寫程式碼,先調研清楚方案。Claude 會怎樣表現:
- 先搜尋 ClickHouse 官方文件和最佳實踐
- 閱讀相關的遷移案例
- 分析與現有架構的相容性
- 邊探索邊記錄發現
- 最後給出綜合建議
你應該看到:
- 詳細的技術對比分析
- 風險評估和遷移建議
- 沒有程式碼,只有方案和結論
第 3 步:在同一會話中切換上下文
你可以在同一會話中動態切換上下文,適應不同的工作階段。
示例:開發 + 審查工作流程
#### 第 1 步:實現功能(dev 模式)
@contexts/dev.md
請實現使用者登入功能,支援電子郵件密碼認證。
...
#### Claude 快速實現功能
#### 第 2 步:自我審查(review 模式)
@contexts/review.md
請審查剛才實現的登入功能程式碼:
...
#### Claude 切換到審查模式,深入分析程式碼品質
#### 按嚴重程度列出問題和改進建議
#### 第 3 步:根據審查結果改進(dev 模式)
@contexts/dev.md
根據上面的審查意見,修復 Critical 和 High 級別的問題。
...
#### Claude 快速修復問題
#### 第 4 步:再次審查(review 模式)
@contexts/review.md
再次審查修復後的程式碼。
...
#### Claude 驗證問題是否解決你應該看到:
- 不同階段有明確的工作重點
- 開發階段快速迭代
- 審查階段深度分析
- 避免在同一模式下的行為衝突
第 4 步:建立自訂上下文(可選)
如果預定義的三種模式不能滿足你的需求,可以建立自訂上下文。
上下文檔案格式:
#### My Custom Context
Mode: [模式名稱]
Focus: [關注點]
## Behavior
- 行為規則 1
- 行為規則 2
## Priorities
1. 優先順序 1
2. 優先順序 2
## Tools to favor
- 推薦使用的工具示例:debug.md - 除錯模式
#### Debug Context
Mode: Debugging and troubleshooting
Focus: Root cause analysis and fix
## Behavior
- Start by gathering evidence (logs, error messages, stack traces)
- Form hypothesis before proposing fixes
- Test fixes systematically (control variables)
- Document findings for future reference
## Debug Process
1. Reproduce the issue consistently
2. Gather diagnostic information
3. Narrow down potential causes
4. Test hypotheses
5. Verify the fix works
## Tools to favor
- Read for code inspection
- Bash for running tests and checking logs
- Grep for searching error patterns使用自訂上下文:
@contexts/debug.md
我在生產環境遇到這個問題:
[錯誤訊息]
[相關日誌]
請幫我除錯。檢查點 ✅
完成以上步驟後,你應該:
- [ ] 理解三種預定義上下文的工作方式和適用場景
- [ ] 能夠根據工作場景選擇合適的上下文
- [ ] 會在會話中動態切換上下文
- [ ] 知道如何建立自訂上下文
- [ ] 體驗到不同上下文下 AI 行為的明顯差異
踩坑提醒
❌ 錯誤 1:不切換上下文,期望 AI 自動適應
問題:同一會話中,一會兒開發一會兒審查,卻不告訴 AI 當前目標。
表現:Claude 行為混亂,有時候過度分析,有時候又匆忙改程式碼。
正確做法:
- 明確切換上下文:
@contexts/dev.md或@contexts/review.md - 在每個階段開始時宣告當前目標
- 用
## 第 X 步:[目標]明確階段
❌ 錯誤 2:用 research 模式做快速開發
問題:需要在 30 分鐘內快速實現一個功能,卻用了 @contexts/research.md。
表現:Claude 花大量時間調研、討論、分析,遲遲不動手寫程式碼。
正確做法:
- 快速開發用
dev模式 - 深度調研用
research模式 - 根據時間壓力和任務複雜度選擇模式
❌ 錯誤 3:用 dev 模式審查關鍵程式碼
問題:審查涉及安全、金錢、隱私的關鍵程式碼,卻用了 @contexts/dev.md。
表現:Claude 快速掃一遍,可能漏掉嚴重的安全漏洞。
正確做法:
- 關鍵程式碼審查必須用
review模式 - 普通 PR 審查用
review模式 - 只在自我快速迭代時用
dev模式
本課小結
動態上下文注入透過明確當前工作模式,讓 AI 在不同場景下最佳化行為策略:
三種預定義模式:
- dev:快速實現,先跑起來再完善
- review:深度審查,發現問題並建議修復
- research:充分調研,理解後再下結論
使用要點:
- 根據工作階段切換上下文
- 用
@contexts/xxx.md明確載入上下文 - 同一會話可以多次切換
- 可以建立自訂上下文滿足特定需求
核心價值:避免 AI 行為混亂,提升不同階段的專注度和效率。
下一課預告
下一課我們學習 設定檔詳解:settings.json 完整參考。
你會學到:
- settings.json 的完整設定選項
- 如何自訂 Hooks 設定
- MCP 伺服器的啟用和停用策略
- 專案級和全域級設定的優先順序
附錄:原始碼參考
點擊展開查看原始碼位置
更新時間:2026-01-25
| 功能 | 檔案路徑 | 行號 |
|---|---|---|
| dev 上下文定義 | contexts/dev.md | 1-21 |
| review 上下文定義 | contexts/review.md | 1-23 |
| research 上下文定義 | contexts/research.md | 1-27 |
關鍵上下文檔案:
dev.md:開發模式上下文,優先快速實現功能review.md:審查模式上下文,優先發現程式碼品質問題research.md:研究模式上下文,優先深入理解問題