Skills 與其他 Claude Code 功能的比較
Skills 與其他 Claude Code 功能的比較 · 3 min
Claude Code 提供多種自訂選項,選錯選項可能導致不必要的複雜性。本影片將說明何時該使用 skills,而非 CLAUDE.md、subagents、hooks 和 MCP 伺服器。您將學到每個選項之間的關鍵差異, 以及它們在典型開發設定中如何相輔相成。
重點整理
- CLAUDE.md 會載入每一次對話,最適合用於始終生效的專案標準。Skills 則按需載入,最適合用於特定任務的專業知識
- Subagents 在隔離的執行環境中運作——適合用於委派工作。Skills 則是為您目前的對話增添知識
- Hooks 是事件驅動的(在檔案儲存、工具呼叫時觸發)。Skills 則是請求驅動的(根據您的提問而啟動)
- MCP 伺服器 提供外部工具與整合——與 skills 完全屬於不同類別
- 每項功能各司其職——將它們結合使用,而非強行將所有事情都塞進單一方法中
Claude Code 提供多種自訂選項:Skills、CLAUDE.md、subagents、hooks 和 MCP 伺服器。它們解決的是不同的問題,了解何時該使用哪一項,能避免您建置錯誤的東西。讓我們逐一拆解說明。
CLAUDE.md 與 Skills 的比較
CLAUDE.md 會一直載入每一次對話。如果您希望 Claude 在您的專案中使用 TypeScript 嚴格模式,就把它寫進您的 CLAUDE.md 檔案中。
Skills 則是按需載入。當 Claude 將某個請求與某個 skill 匹配時,該 skill 的指示就會加入對話中。您的 PR 審查檢查清單在您撰寫新程式碼時不需要出現在上下文中——它只在您要求審查時才會啟動。

在以下情況使用 CLAUDE.md:
- 始終適用的專案層級標準
- 像「絕不修改資料庫結構描述」這類限制
- 框架偏好與程式碼風格
在以下情況使用 Skills:
- 特定任務的專業知識
- 僅在某些時候才相關的知識
- 會讓每次對話都變得雜亂的詳細程序
Skills 與 Subagents 的比較
Skills 會為您目前的對話增添知識。當某個 skill 啟動時,其指示會加入現有的上下文中。
Subagents 則在獨立的上下文中運作。它們接收一項任務,獨立進行處理,然後回傳結果。它們與主對話是隔離的。
在以下情況使用 Subagents:
- 您想將任務委派給獨立的執行環境
- 您需要與主對話不同的工具存取權限
- 您希望委派的工作與主要上下文之間保持隔離
在以下情況使用 Skills:
- 您想為目前的任務增強 Claude 的知識
- 該專業知識適用於整個對話過程
Skills 與 Hooks 的比較
Hooks 會在事件發生時觸發。某個 hook 可能會在 Claude 每次儲存檔案時執行 linter,或在特定工具呼叫前進行驗證。它們是事件驅動的。
Skills 則是請求驅動的。它們根據您的提問而啟動。
在以下情況使用 Hooks:
- 應在每次檔案儲存時執行的操作
- 特定工具呼叫前的驗證
- Claude 動作所產生的自動化副作用
在以下情況使用 Skills:
- 能影響 Claude 如何處理請求的知識
- 會影響 Claude 推理方式的準則
整合運用
一個典型的設定可能包含:
- CLAUDE.md ——始終生效的專案標準
- Skills ——按需載入的特定任務專業知識
- Hooks ——由事件觸發的自動化操作
- Subagents ——用於委派工作的隔離執行環境
- MCP 伺服器 ——外部工具與整合
每一項都各司其職。當其他選項更合適時,不要強行把所有事情都塞進 skills 中——而且您可以同時使用多項功能。Skills 提供自動化的特定任務專業知識,CLAUDE.md 用於始終生效的指示,subagents 在隔離的上下文中運作,hooks 在事件發生時觸發,而 MCP 則提供外部工具。
當您擁有應在主題相關時由 Claude 自動套用的知識時,請使用 skills,並將其與其他功能結合,以實現全面的自訂。
課程反思
- 檢視您目前的 CLAUDE.md 檔案。其中是否有任何內容更適合作為 skill(僅在相關時才載入)?
- 思考您團隊的開發工作流程。哪一種 Claude Code 功能組合(skills、hooks、subagents、MCP)最能解決您最常遇到的痛點?
接下來
在下一堂課中,您將學習如何與您的團隊和組織分享 skills——從將它們提交至儲存庫、透過外掛程式散布,到透過受管理設定進行企業級部署。