Claude Code專題:Skills 系統(tǒng)完全指南
Skills 是什么
在 Claude Code 的語境里,Skill 不是一個(gè)內(nèi)置功能,而是一套自定義擴(kuò)展機(jī)制。
它的本質(zhì)是:把針對特定任務(wù)的專業(yè)知識打包成文件,讓 Claude Code 在遇到相應(yīng)場景時(shí)能夠調(diào)用這套知識,而不是每次都重新描述。
這和 CLAUDE.md 不同。CLAUDE.md 是項(xiàng)目級上下文,回答的是"這個(gè)項(xiàng)目是什么";Skill 是任務(wù)級指令,回答的是"這類任務(wù)應(yīng)該怎么做"。
從官方源碼看,Skills 的文件結(jié)構(gòu)非常清晰:
skill-name/ ├── SKILL.md ? ? ? ? ? ? ?← 必須文件,YAML frontmatter + 核心指令 ├── references/ ? ? ? ? ? ← 可選,參考文檔,按需加載 ├── examples/ ? ? ? ? ? ? ← 可選,工作示例 └── scripts/ ? ? ? ? ? ? ← 可選,可執(zhí)行腳本
Claude Code 啟動時(shí)會掃描 skills/ 目錄,把每個(gè)子目錄里的 SKILL.md 的 name 和 description 加載進(jìn)上下文。當(dāng)用戶的描述觸發(fā)了某個(gè) description,Claude 會把對應(yīng)的 SKILL.md 全文讀入,然后按照里面的指令執(zhí)行。
為什么需要 Skills
三個(gè)場景能說清楚:
第一,團(tuán)隊(duì)知識傳承。
你團(tuán)隊(duì)里最好的工程師,他的代碼審查方式、安全掃描邏輯、部署規(guī)范,都是靠多年經(jīng)驗(yàn)積累的。如果只靠口口相傳,每次換人都要重新教。有了 Skill,這些經(jīng)驗(yàn)可以固化成文件,新工程師加上項(xiàng)目 CLAUDE.md,AI 就能用團(tuán)隊(duì)的標(biāo)準(zhǔn)工作。
第二,復(fù)雜任務(wù)的決策框架。
一段 prompt 只能給出一個(gè)答案,一個(gè) Skill 可以給出一個(gè)決策樹。Claude 遇到不同情況,應(yīng)該走哪條分支,輸出什么,都有明確的規(guī)范,而不是每次生成一段看似合理但不一致的內(nèi)容。
第三,反復(fù)重寫的確定性任務(wù)。
有些任務(wù)每次都要重新寫差不多的代碼,比如每次新建組件都要搭腳手架、每次做代碼遷移都要處理同一套模式。把這些任務(wù)的"正確做法"寫成 Skill,Claude 每次都能用最優(yōu)方式執(zhí)行,不會每次都從零推理。
Skills 的真實(shí)結(jié)構(gòu):從官方源碼看設(shè)計(jì)
SKILL.md 的 frontmatter
官方 frontend-design 插件的 Skill 文件是這個(gè)樣子的:
--- name: frontend-design description: Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. --- # Frontend Design Guidance ## Design Thinking Before coding, understand the context and commit to a BOLD aesthetic direction... ## Technical Requirements Implement production-grade code that is...
frontmatter 里只有三個(gè)字段有實(shí)際作用:
字段 | 必須 | 作用 |
|---|---|---|
name | 是 | 唯一標(biāo)識符 |
description | 是 | 觸發(fā)條件描述,決定 Claude 什么時(shí)候調(diào)用這個(gè) Skill |
version | 否 | 版本號 |
其中 description 是整個(gè) Skill 最重要的字段。官方 plugin-dev 插件的方法論明確指出:description 的質(zhì)量直接決定 Skill 能不能被正確觸發(fā)。
官方推薦的 description 寫法是第三人稱 + 具體觸發(fā)短語:
# 正確示范 description:?This?skill?should?be?used?when?the?user?asks?to?"create a hook",?"add a PreToolUse hook",?"validate tool use"... # 錯(cuò)誤示范 description:?Provides?guidance?for?working?with?hooks.? ?# 模糊,沒有觸發(fā)短語 description:?Load?this?skill?when?user?asks...? ? ? ? ?# 第二人稱
正文:不是步驟清單,是決策框架
官方 frontend-design Skill 的正文是這樣一個(gè)結(jié)構(gòu):
## Design Thinking - Purpose: 這個(gè)界面解決什么問題? - Tone: 選擇一個(gè)設(shè)計(jì)方向(極簡、復(fù)古、奢華……) - Constraints: 技術(shù)約束是什么? - Differentiation: 什么讓它令人印象深刻? ## Frontend Aesthetics Guidelines - Typography: 字體選擇 - Color & Theme: 配色體系 - Motion: 動效 - Spatial Composition: 空間布局
這給 Claude 的是一套思考框架,不是一串執(zhí)行步驟。Claude 在這個(gè)框架內(nèi)自主判斷每一步怎么做,而不是機(jī)械地讀指令。
官方 Skill Development 方法論里專門強(qiáng)調(diào)了這一點(diǎn):正文應(yīng)該用祈使句/不定式(verb-first),而不是第二人稱。
# 正確 To create a hook, define the event type. Configure the MCP server with authentication. Validate settings before use. # 錯(cuò)誤 You should create a hook by defining the event type. You need to configure the MCP server.
漸進(jìn)披露:三層加載機(jī)制
這是 Skills 系統(tǒng)最核心的設(shè)計(jì)思想,來自官方 Skill Development 方法論。
Claude Code 對 Skill 的加載分為三個(gè)層級:
層級一:元數(shù)據(jù)(name + description) ? → 始終加載,約 100 詞,占用最少上下文 層級二:SKILL.md 正文 ? → Skill 被觸發(fā)時(shí)加載,目標(biāo) 1500-2000 詞,上限 5000 詞 層級三:references/ + examples/ + scripts/ ? → 按需加載,加載時(shí)機(jī)由 Claude 判斷,無上限
這套機(jī)制解決了一個(gè)核心矛盾:大模型上下文有限,但專業(yè)任務(wù)需要大量細(xì)節(jié)。漸進(jìn)披露讓 Claude 只在真正需要的時(shí)候才加載詳細(xì)內(nèi)容,保持上下文高效運(yùn)轉(zhuǎn)。
具體怎么分工:
- SKILL.md 放什么:核心概念、關(guān)鍵流程、快速參考、常用模式
- references/ 放什么:詳細(xì)文檔、API 參考、模式大全
- scripts/ 放什么:驗(yàn)證工具、測試腳本、自動化腳本(可執(zhí)行,不占上下文)
- examples/ 放什么:完整的可運(yùn)行示例,用戶可直接復(fù)制使用
官方插件體系:14 個(gè)真實(shí)參考案例
anthropics/claude-code 倉庫的 plugins/ 目錄包含了 14 個(gè)官方插件,每個(gè)都是 Skills 的真實(shí)實(shí)現(xiàn)案例。
plugin-dev:系統(tǒng)級的 Skill 創(chuàng)建方法論
plugin-dev 插件的 skill-development 子目錄完整展示了如何創(chuàng)建一個(gè) Skill,六步組織:
Step 1:理解 Skill 的具體使用場景。 從真實(shí)案例出發(fā),找到 3-5 個(gè)這個(gè) Skill 會被用到的具體場景,然后圍繞這些場景設(shè)計(jì)指令。
Step 2:規(guī)劃 Skill 的資源結(jié)構(gòu)。 scripts/ 處理重復(fù)性腳本任務(wù),references/ 處理需要按需查閱的文檔,assets/ 處理模板和輸出文件。
Step 3:創(chuàng)建目錄結(jié)構(gòu)。 標(biāo)準(zhǔn)結(jié)構(gòu)確保 Claude 能夠正確發(fā)現(xiàn)和加載 Skill。
Step 4:編寫 SKILL.md。 核心原則:description 要用第三人稱 + 觸發(fā)短語,正文用祈使句,控制在 1500-2000 詞,詳細(xì)內(nèi)容移到 references/。
Step 5:驗(yàn)證與測試。 用 skill-reviewer agent 做自動檢查,對照驗(yàn)證清單逐項(xiàng)審查。
Step 6:迭代改進(jìn)。 在實(shí)際使用中發(fā)現(xiàn) SKILL.md 哪里不夠精準(zhǔn),哪里容易觸發(fā)但輸出質(zhì)量不穩(wěn)定,持續(xù)優(yōu)化。
hookify:專業(yè)領(lǐng)域的深度 Skill
hookify 插件演示了專業(yè)領(lǐng)域 Skill 的典型寫法,它的 description 包含了 9 個(gè)具體觸發(fā)短語:
description:?This?skill?should?be?used?when?the?user?asks?to?"create a hook",
"add a PreToolUse hook",?"validate tool use",?"implement prompt-based hooks",
"${CLAUDE_PLUGIN_ROOT}",?"block dangerous commands",?or?mentions?hook?events.觸發(fā)短語寫得越具體,Claude 越能準(zhǔn)確判斷什么時(shí)候該調(diào)用這個(gè) Skill。
agent-development:多組件協(xié)同的 Skill
agent-development Skill 展示了 Skill 如何和其他組件(agents、commands)協(xié)同工作,Skill 和 scripts/ 的分工很清楚:
- SKILL.md:什么時(shí)候創(chuàng)建 agent、創(chuàng)建后如何使用
- validate-agent.sh:如何驗(yàn)證 agent 配置是否正確
前者是知識,后者是確定性操作。
寫好 Skill 的 8 條實(shí)踐規(guī)則
規(guī)則 1:description 是整個(gè) Skill 的命門
description 決定觸發(fā)準(zhǔn)確性。要寫觸發(fā)條件,不要寫功能說明。
# 差:功能說明 description: "This skill helps with code reviews." # 好:具體觸發(fā)條件 description: "This skill should be used when the user asks to review a pull request, audit code changes, or analyze commit history for potential issues."
觸發(fā)短語越多、越具體,Claude 越能準(zhǔn)確判斷。
規(guī)則 2:正文給決策框架,不給步驟清單
步驟清單是給機(jī)器執(zhí)行的,決策框架是給 Claude 思考的。Claude 不是復(fù)讀機(jī),它需要知道在什么情況下做什么判斷,而不是一步一步執(zhí)行什么操作。
規(guī)則 3:規(guī)定下限,不限上限
明確告訴 Claude"至少要包含什么",但不限制 Claude 在此基礎(chǔ)上能額外做什么。好的 Skill 讓 Claude 知道最低質(zhì)量標(biāo)準(zhǔn)是什么,剩下的空間留給它發(fā)揮。
規(guī)則 4:一個(gè) Skill 只做一個(gè)領(lǐng)域
不要把代碼審查、安全掃描、風(fēng)格檢查三個(gè)完全不同的事塞進(jìn)一個(gè) Skill。拆開之后每個(gè) Skill 更專注、更穩(wěn)定、出了問題更容易定位。
規(guī)則 5:禁忌要說清楚
很多 Skill 花大量篇幅描述"應(yīng)該做什么",但對"不應(yīng)該做什么"只字不提。在 Skill 末尾加一個(gè)"邊界情況"或"禁忌"小節(jié),告訴 Claude 什么紅線不能踩,往往比正向說明更有效。
規(guī)則 6:SKILL.md 要精簡,詳細(xì)內(nèi)容移至 references/
如果一個(gè) Skill 的正文超過 3000 詞還沒說完,說明內(nèi)容放錯(cuò)了位置。把詳細(xì)的模式文檔、API 參考、遷移指南移到 references/ 目錄,SKILL.md 只保留核心流程和快速參考。
規(guī)則 7:與 CLAUDE.md 劃清職責(zé)邊界
CLAUDE.md 回答"這個(gè)項(xiàng)目是什么",Skill 回答"這類任務(wù)怎么做"。不要把項(xiàng)目規(guī)范復(fù)制進(jìn) Skill——規(guī)范放 CLAUDE.md,Skill 專注于具體任務(wù)執(zhí)行邏輯。
規(guī)則 8:給 Skill 留退出條件
Claude 在 Skill 執(zhí)行過程中可能遇到權(quán)限不足、外部依賴失敗、用戶中斷等情況。Skill 里要明確什么情況下應(yīng)該停止并報(bào)告,而不是讓 Claude 無限制地繼續(xù)嘗試直到輸出一個(gè)糟糕的結(jié)果。
Skill vs Commands:怎么選
Command | Skill | |
|---|---|---|
| 觸發(fā)方式 | 用戶顯式輸入 /command | Claude 判斷 description 觸發(fā) |
| 復(fù)雜度 | 簡單,一次性 prompt | 復(fù)雜,多步驟,多種情況判斷 |
| 狀態(tài)維護(hù) | 無狀態(tài),每次獨(dú)立 | 可以維護(hù)狀態(tài) |
| 加載層級 | 固定一層 | 三層漸進(jìn)披露 |
| 適用場景 | 代碼解釋、快速生成、翻譯 | 團(tuán)隊(duì)標(biāo)準(zhǔn)流程、安全審查、復(fù)雜實(shí)現(xiàn) |
實(shí)戰(zhàn)經(jīng)驗(yàn):先用 Command 原型驗(yàn)證一個(gè)需求,確認(rèn)它高頻且流程穩(wěn)定后,再抽取為 Skill。
官方 14 個(gè)插件一覽
插件 | 核心功能 |
|---|---|
| code-review | 多 Agent 并行 PR 審查,置信度評分過濾 |
| commit-commands | 一鍵 commit/push/PR |
| feature-dev | 7 階段結(jié)構(gòu)化功能開發(fā) |
| frontend-design | 前端設(shè)計(jì)指導(dǎo),生產(chǎn)級 UI |
| ralph-wiggum | 自主迭代循環(huán) |
| security-guidance | 安全提醒 Hook,9 類漏洞監(jiān)控 |
| hookify | 自定義 Hook 創(chuàng)建與管理 |
| pr-review-toolkit | 專業(yè) PR 審查,6 個(gè)專精 Agent |
| plugin-dev | 插件開發(fā)工具包,含 7 個(gè) Skills |
| agent-sdk-dev | Agent SDK 開發(fā)套件 |
| claude-opus-4-5-migration | 模型遷移指南 |
| explanatory-output-style | 教育性輸出風(fēng)格 |
| learning-output-style | 交互式學(xué)習(xí)模式 |
總結(jié)
Skills 系統(tǒng)是 Claude Code 最強(qiáng)大的擴(kuò)展機(jī)制,它的價(jià)值在于把團(tuán)隊(duì)的專業(yè)知識封裝成可自動執(zhí)行的格式,讓 AI 在每個(gè)相關(guān)場景都能用團(tuán)隊(duì)最好的標(biāo)準(zhǔn)工作。
三個(gè)核心要點(diǎn):
觸發(fā)靠 description。 description 寫得好不好,決定了 Skill 能不能被正確調(diào)用。觸發(fā)短語要具體,要第三人稱,要覆蓋真實(shí)的用戶表達(dá)方式。
正文靠決策框架,不是步驟清單。 官方源碼展示的設(shè)計(jì)思想是一致的:給 Claude 思考框架,讓它在這個(gè)框架內(nèi)自主判斷,而不是機(jī)械地執(zhí)行步驟。
漸進(jìn)披露是核心架構(gòu)思想。 三層加載機(jī)制讓 Claude Code 能夠在保持上下文高效的同時(shí),掌握大量的專業(yè)知識。這是 Skills 系統(tǒng)區(qū)別于簡單 prompt 模板的根本所在。
本文參考資料:
- [1] GitHub: anthropics/claude-code - plugin-dev/skills/skill-development(官方 Skill 創(chuàng)建方法論)
- [2] GitHub: anthropics/claude-code - plugins/frontend-design/skills(官方 Skill 真實(shí)實(shí)現(xiàn)案例)
- [3] GitHub: anthropics/claude-code - plugins/plugin-dev/skills(7個(gè)官方 Skills 完整源碼)
- [4] DEV.to: "I Built a Diagnostic CLI for Claude Code Skills" by thestack_ai(8條常見錯(cuò)誤規(guī)則)
到此這篇關(guān)于Claude Code專題:Skills 系統(tǒng)完全指南的文章就介紹到這了,更多相關(guān)Claude Code Skills完全指南內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持腳本之家!
相關(guān)文章

Claude Code Buddy 解析:一個(gè)非核心功能,如何體現(xiàn)產(chǎn)品的細(xì)節(jié)完成度
文章詳細(xì)分析了ClaudeCode產(chǎn)品中的Buddy組件,其是一個(gè)輕量級的陪伴式角色系統(tǒng),不干擾主工作流,能夠穩(wěn)定生成角色身份,具備輕量的終端渲染與動畫表現(xiàn),并通過合理的生成機(jī)制和2026-04-14
Claude Code安裝與使用指南:以MiniMax M2.5為例的完整實(shí)踐
本文詳細(xì)介紹了在Windows環(huán)境下安裝和配置ClaudeCode的過程,并以MiniMaxM2.5為例,講解了如何通過兼容接口使用ClaudeCode,文章分為安裝流程、配置方法、命令行與VSCode使用2026-04-13
claude code無法連接到Anthropic服務(wù)解決辦法
有時(shí)候我們的setting.json配置文件 和 環(huán)境變量 都設(shè)置好了之后, 我們打開claude code依然提示錯(cuò)誤,這篇文章主要介紹了claude code無法連接到Anthropic服務(wù)的相關(guān)資料,需2026-04-13
Claude Code 是 Anthropic 官方推出的命令行工具,讓開發(fā)者能在終端中與 Claude 進(jìn)行交互,本文就來詳細(xì)的介紹一下Claude Code CLI命令使用,感興趣的可以了解一下2026-04-13
本文主要介紹了ClaudeCode的安裝、配置及使用方法,包括環(huán)境要求、安裝步驟、API配置、核心使用方式和常用命令等,強(qiáng)調(diào)了配置第三方API中轉(zhuǎn)服務(wù)的重要性,感興趣的可以了解一2026-04-13
Win11下從零部署Claude Code的保姆級教程(2026年最新)
這篇文章主要為大家詳細(xì)介紹了2025年AI編程工具ClaudeCode的完整配置流程,重點(diǎn)解決兩大了核心問題:本地環(huán)境部署和VSCode插件集成,文中的示例代碼講解詳細(xì),大家可以參考一2026-04-12
這篇文章主要為大家詳細(xì)介紹了2026年Claude Code中常用命令與具體操作,包括文件操作命令,Bash 命令執(zhí)行,Git 操作,AWS CLI 操作等,文中的示例代碼講解詳細(xì),有需要的小2026-04-10
在國內(nèi)穩(wěn)定用Claude Code的三種姿勢小結(jié)
本文介紹了三種在國內(nèi)穩(wěn)定使用ClaudeCode的方法:包括使用API中轉(zhuǎn)、替換國產(chǎn)大模型和本地部署三種方案,,分析了每種方案的優(yōu)缺點(diǎn),并提供了詳細(xì)配置指南,幫助開發(fā)者根據(jù)需2026-04-10
Claude Code配置智譜GLM-4.7 模型完整操作文檔
本文檔詳細(xì)說明如何在 Claude Code中配置 GLM-4.7 模型,實(shí)現(xiàn)基于該模型的代碼生成、修復(fù)、分析等功能,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參2026-04-10
2026最新Claude Code的安裝并連接VScode的保姆級教程(使用CC Switch或ollama連接)
本文詳細(xì)介紹了使用ClaudeCode和CCSwitch在本地部署Claude,并連接深Seek、智譜AI、Ollama等模型的過程,最后說明了在VScode中使用Claude的方法,本文結(jié)合圖文、示例代碼給大2026-04-10











