九號工具站
返回列表

Claude Code Skills 建立完全教學:從零打造你的 AI 自動化指令

手把手教你建立 Claude Code Skills(Slash Commands),涵蓋 SKILL.md 寫法、觸發條件設計、參數處理、測試優化,附完整範例和最佳實踐。

Claude Code Skills Slash Commands 自動化 AI 工具 開發效率 SKILL.md

最後更新:2026-05-26

1. 什麼是 Claude Code Skills?

Skills(也叫 Slash Commands)是 Claude Code 的自訂指令系統。你可以把常用的工作流程封裝成一個指令,之後只需要輸入 /指令名 就能觸發整套流程。例如 /deploy 一鍵部署、/test 自動跑測試、/translate 自動翻譯——這些都是 Skills。

  • 本質:一個 Markdown 檔案(Skill.Md),裡面寫好 Claude 要執行的步驟和規則
  • 觸發方式:在 Claude Code 中輸入 /Skill-Name 或自然語言觸發(如果描述寫得好)
  • 存放位置:.Claude/Skills/{Skill-Name}/Skill.Md
  • 作用範圍:跟著 Git 專案走,團隊成員 Clone 後自動擁有所有 Skills

2. 第一個 Skill:5 分鐘建立 Hello World

讓我們從最簡單的 Skill 開始,建立一個自動產出每日工作摘要的指令。

  • Step 1 — 建立目錄:Mkdir -P .Claude/Skills/Daily-Summary
  • Step 2 — 建立 Skill.Md:在該目錄下建立 Skill.Md 檔案
  • Step 3 — 寫入基本結構:Frontmatter(---)包含 Name 和 Description,下方寫執行指令
  • Step 4 — 測試:在 Claude Code 中輸入 /Daily-Summary,確認 Skill 被正確觸發
  • Step 5 — 迭代:根據實際使用體驗調整指令內容
flowchart LR A[建立目錄] --> B[寫 SKILL.md] B --> C[定義 name & description] C --> D[撰寫執行步驟] D --> E[測試 /skill-name] E --> F{觸發成功?} F -->|是| G[完成] F -->|否| C

3. SKILL.md 的完整結構解析

SKILL.md 由兩個部分組成:frontmatter(元資料)和 body(執行指令)。以下逐一解析。

  • Name(必填):Skill 的識別名稱,用 Kebab-Case。例如 Run-Tests、Check-Seo
  • Description(必填):觸發描述。Claude 根據這段文字判斷是否自動觸發。寫得越精確,誤觸發越少
  • Argument_Hints(選填):參數提示。例如 '<Module> [--Coverage]' 提示使用者可以傳什麼參數
  • Allowed_Tools(選填):限制 Skill 可使用的工具。例如只允許 Read 和 Bash,不允許 Write
  • Body(必填):Skill 的主體——Claude 要執行的完整指令。可以包含步驟、規則、範例、檢查點

小提示

  • description 是最重要的欄位——它決定了 Skill 會不會在正確的時機被觸發
  • body 寫得越具體越好。不要寫「跑測試」,要寫「在 wagtail_multisite/ 目錄下用 pytest 跑測試,USE_SQLITE=true」
block-beta columns 1 block:fm["Frontmatter (---)"] A["name: skill-name"] B["description: 觸發描述"] C["argument_hints: 參數提示"] D["allowed_tools: 工具限制"] end block:bd["Body (Markdown)"] E["## 步驟說明"] F["具體執行指令"] G["錯誤處理規則"] H["輸出格式定義"] end

4. description 怎麼寫?觸發條件設計

description 不只是說明文字,它是 Claude 判斷「什麼時候該觸發這個 Skill」的依據。寫好 description 是設計 Skill 最關鍵的一步。

  • 明確觸發詞:列出使用者可能會說的關鍵字。例如「當使用者提到 Qa、測試、品質檢查、跑測試 時觸發」
  • 排除條件:說明什麼情況不要觸發。例如「Do Not Trigger When: 只是討論測試概念而非實際要跑測試」
  • 情境描述:說明 Skill 的適用場景。例如「適合在提交 Pr 前跑一次確認品質」
  • 範例觸發語句:列出 2-3 個觸發範例,幫助 Claude 更準確地判斷

小提示

  • 如果 Skill 經常誤觸發,加入更多 DO NOT TRIGGER 條件
  • 如果 Skill 不容易被觸發,加入更多觸發關鍵字和範例語句

5. body 怎麼寫?執行指令設計

body 是 Skill 的核心,決定了 Claude 實際會做什麼。好的 body 要像一份詳細的 SOP。

  • 明確的步驟順序:用 Step 1、Step 2 或 ## 標題分段,Claude 會按順序執行
  • 具體的指令:不要寫「跑測試」,要寫「Cd Wagtail_Multisite && Use_Sqlite=True Python -M Pytest Tests/ -V」
  • 錯誤處理:說明失敗時怎麼辦。例如「如果測試失敗,列出失敗的測試名稱和錯誤訊息,不要自動修復」
  • 檢查點:每個步驟完成後要確認什麼。例如「確認所有 Json 驗證通過後才進入翻譯步驟」
  • 輸出格式:定義最終產出的格式,例如「用表格列出結果」「產出 Markdown 報告」
  • 參數處理:用 Arguments 佔位符接收使用者傳入的參數

6. 實戰:建立一個 QA 測試 Skill

以下是一個完整的 QA 測試 Skill 範例,你可以直接複製修改。

  • 名稱:Qa-Check
  • 用途:根據最近的程式碼變更,自動跑針對性測試 + Smoke Test
  • 觸發條件:使用者提到 Qa、測試、品質檢查、跑測試
  • 執行流程:1. 用 Git Diff 找出最近修改的檔案 → 2. 根據修改範圍決定跑哪些測試模組 → 3. 執行 Pytest → 4. 產出測試報告
  • 參數支援:/Qa-Check Calculator 只跑計算工具的測試
  • 錯誤處理:測試失敗時列出詳細資訊,不自動修復
flowchart TD A[/qa-check module/] --> B[git diff 找修改檔案] B --> C{判斷影響模組} C -->|calculator| D[pytest calculator/tests/] C -->|quiz| E[pytest quiz/tests/] C -->|全部| F[pytest 全部測試] D --> G[產出測試報告] E --> G F --> G G --> H{通過?} H -->|是| I[✅ 顯示成功摘要] H -->|否| J[❌ 列出失敗詳情]

7. 進階技巧:讓 Skill 更強大

掌握基礎後,以下進階技巧能讓你的 Skill 更實用。

  • 多步驟管道(Pipeline):一個 Skill 串聯多個步驟。例如 /Content-Pipeline 依序執行建立、翻譯、Seo 檢查
  • 條件分支:根據參數或環境決定執行路徑。例如 --Dry-Run 只顯示計畫不實際執行
  • 記憶與狀態:Skill 可以讀寫特定目錄下的檔案來保存狀態。例如發文記錄、上次執行結果
  • 跨 Skill 引用:一個 Skill 的 Body 中可以引用其他 Skill 的邏輯,建立組合式工作流
  • Allowed_Tools 限制:安全性要求高的 Skill,限制只能使用特定工具,避免誤操作
  • 腳本整合:Skill 中呼叫專案的自動化腳本(如 ./Scripts/Run_Tests.Sh),而非直接寫長指令

8. 常見錯誤與除錯

建立 Skill 時最常遇到的問題和解決方法。

  • Skill 沒被觸發:Description 的關鍵字不夠明確。加入更多觸發詞和範例語句
  • Skill 誤觸發:Description 太寬泛。加入 Do Not Trigger 排除條件
  • 執行結果不如預期:Body 的指令不夠具體。把「跑測試」改成完整的指令路徑和參數
  • Skill 執行到一半停下:Body 中缺少錯誤處理。加入「如果 X 失敗,則執行 Y」的邏輯
  • 團隊成員看不到 Skill:確認 .Claude/Skills/ 目錄已加入 Git 並推送
  • Skill 太長太複雜:拆成多個小 Skill,或用腳本封裝複雜邏輯,Skill 只負責呼叫腳本

9. 團隊 Skill 管理最佳實踐

當團隊有越來越多 Skill 時,需要好的管理策略。

  • 命名規範:用統一的命名風格。建議 動詞-名詞 格式,如 Run-Tests、Check-Seo、Add-Article
  • 文件化:在 Claude.Md 中維護 Skill 清單和使用說明,新成員可以快速上手
  • 版本控制:Skill 跟程式碼一起用 Git 管理,Pr Review 時也 Review Skill 的變更
  • 定期清理:刪除不再使用的 Skill,避免累積無用指令造成混淆
  • 共用 Vs 個人:團隊共用的 Skill 放在專案的 .Claude/Skills/,個人的放在 ~/.Claude/Skills/
  • 效能監測:用 /Skill-Creator 測試和優化 Skill 的觸發準確度和執行效率

重點整理

  • 1 Skills 是 Claude Code 的自訂指令系統,用 /指令名 就能觸發預設好的複雜工作流程
  • 2 每個 Skill 只需要一個 SKILL.md 檔案,定義名稱、觸發描述和執行指令
  • 3 好的 Skill 能把 30 分鐘的重複工作壓縮到一句指令,是團隊效率的倍增器
  • 4 本教學從零開始,帶你完成第一個 Skill 的建立、測試和優化
ℹ️

一般聲明

本站提供之資訊僅供參考,不保證其完整性與正確性。使用者應自行判斷資訊之適用性。

意見反饋