AI News HubLIVE
站內改寫3 分鐘閱讀

如何在Claude中建立自定義技能:逐步指南

本文詳細介紹瞭如何在Claude中建立自定義技能(Skills),從基礎概念到實際構建一個資料質量稽核技能。覆蓋了技能的工作原理、檔案結構、配置選項,以及在Claude Code和Web/桌面應用中的使用差異。無需程式設計基礎即可建立簡單技能,透過Markdown即可定義任務指令。

來源Analytics Vidhya作者: Janvi Kumari

在人工智慧模型日益強大的今天,如何讓AI工具更高效地服務於特定工作流程成為團隊關注的焦點。Claude作為一款先進的AI助手,能夠審查資料、檢查程式碼、撰寫報告和準備簡報,但團隊經常發現自己在每次對話中重複相同的結構、驗證規則、公司標準和最終檢查指令。這種重複不僅浪費時間,還導致結果不一致。

Claude的自定義技能(Custom Skills)正是為解決這一痛點而設計。它透過打包可重用的指令、工作流、模板、指令碼、示例和參考檔案,讓Claude能夠在匹配任務時自動載入這些資源。本文將全面解析Claude技能的工作原理,探討配置選項,並逐步構建一個實用的CSV資料稽核技能。

什麼是Claude自定義技能?

一個技能本質上是一個目錄,包含讓Claude完成特定任務的指令和可選資源。每個技能至少需要一個SKILL.md檔案,該檔案定義了技能的功能、使用場景以及Claude應遵循的步驟。它還可以定義輸出格式,並指向指令碼、模板、示例或參考檔案。

技能遵循Agent Skills開放標準(agentskills.io),其核心——名稱、描述和純Markdown——可在Claude應用、Claude Code、Claude Agent SDK和Claude開發者平臺之間移植。不同的產品會在此基礎上擴充套件自己的特性,這也是大多數混淆的來源。

技能與自定義命令的合併

如果您之前使用過Claude Code,可能已經在.claude/commands/目錄下存放了一些檔案。現在自定義命令已合併到技能中。.claude/commands/deploy.md和.claude/skills/deploy/SKILL.md都會建立/deploy命令,行為完全相同。現有的命令檔案繼續有效,技能在此基礎上增加了可選功能:支援檔案的目錄、控制呼叫方式的前言後設資料,以及任務相關時的自動載入。如果技能和命令同名,技能優先。

是否需要程式設計?

不需要。一個基本的自定義技能只需要Markdown。例如,以下就是一個完整的技能:

---
name: code-review-python
---

Review Python code for best practices, type hints, and PEP 8 compliance.

當需要分析資料、處理檔案、驗證輸出、生成視覺化、轉換結構化資訊、呼叫命令列工具、執行確定性計算、建立或修改文件,或自動化開發工作流時,程式碼才會派上用場。規則很簡單:純指令工作流不需要程式碼;確定性處理或自動化需要程式碼幫助;外部系統整合通常需要工具、指令碼或MCP。從Markdown開始,僅在指令無法產生可靠執行時才新增程式碼。

Claude技能的工作原理

技能採用漸進式披露機制,而不是將每個技能和每個檔案都載入到上下文視窗中。Claude分階段載入資訊:

  • 階段1:發現:啟動時,Claude僅讀取每個技能的後設資料(名稱和描述),根據描述判斷是否匹配您的請求。
  • 階段2:指令載入:一旦Claude確定技能相關,就載入SKILL.md的Markdown正文。
  • 階段3:支援資源:Claude根據需要讀取指令碼、示例、引用和模板。參考檔案和資料在讀取前不消耗上下文令牌;指令碼透過bash執行,只有輸出消耗上下文。

一個重要後果:技能內容在會話中持續存在。在Claude Code中呼叫技能後,渲染的SKILL.md作為一條訊息進入對話,並在會話剩餘部分保持。因此,應將在整個任務中適用的指導寫為常設指令,而非一次性步驟。SKILL.md中的每一行都是反覆出現的令牌成本,應保持正文簡潔,將細節推送到參考檔案中。

技能剖析

典型的技能目錄結構:

  • SKILL.md(必需):YAML前言 + Markdown指令
  • references/:詳細資訊的參考檔案(編碼標準、業務規則等)
  • examples/:好結果和壞結果的示例
  • templates/:固定輸出結構
  • scripts/:確定性處理指令碼

僅打包檔案是不夠的,需要在SKILL.md中顯式引用它們。建議將SKILL.md控制在500行以內。

前言參考

前言的便攜核心欄位是name(識別符號/顯示名稱)和description(技能功能和使用場景)。在Claude Code中,所有前言欄位都是可選的,只有description推薦填寫。其他欄位如when_to_use(觸發短語)、argument-hint(自動完成提示)、arguments(命名位置引數)、disable-model-invocation(禁止自動載入)、user-invocable(隱藏/選單)、allowed-tools/disallowed-tools(工具許可權)、model(指定模型)、effort(努力水平)、context(子代理上下文)、hooks(生命週期鉤子)、paths(自動啟用的檔案路徑模式)、shell(shell型別)等提供了更精細的控制。

在Claude.ai(Web/桌面應用)中,name和description必須填寫,name最多64字元,description最多200字元。還可選dependencies欄位宣告所需的包。

手把手專案:構建資料質量稽核技能

我們將構建一個分析CSV資料集並檢查行/列計數、缺失值、重複記錄、資料型別、高基數列、常量列、數值摘要及其他異常模式的技能。

前提條件

  • 安裝Claude Code
  • Python 3.9以上
  • Pandas(pip install pandas)
  • 一個專案目錄和用於測試的CSV檔案

步驟1:建立技能目錄

對於專案級技能:

.claude/skills/data-quality-auditor/

對於個人技能(跨所有專案),使用~/.claude/skills/。

步驟2:建立SKILL.md

在.claude/skills/data-quality-auditor/SKILL.md中寫入內容,包含YAML前言和Markdown指令,定義技能名稱、描述、觸發條件,以及具體的稽核步驟。例如,設定allowed-tools允許Claude執行Python指令碼。

步驟3:編寫稽核指令碼

在scripts/目錄下建立Python指令碼(如audit.py),使用Pandas載入CSV並生成各項統計資訊。指令碼應輸出可被Claude解析的結果。

步驟4:使用技能

在Claude Code中,可以透過/命令呼叫技能,或讓Claude根據描述自動載入。對於Web/桌面應用,需要將技能目錄上傳到賬戶設定中。

結論

Claude的自定義技能為團隊提供了標準化工作流、提高一致性和效率的強大工具。從簡單的Markdown指令到包含指令碼和參考檔案的複雜技能,使用者可以根據需求逐步擴充套件。無論是程式碼審查、資料質量檢查還是報告生成,技能都能減少重複勞動,讓AI更智慧地適應團隊需求。