Claude Skills 徹底爆了,從實現原理到 Claude Code、CodeX、OpenCode 實戰,一網打盡!
整理版優先睇
Claude Skills 漸進式披露機制,跨平台 Agent 能力標準,教你由 Claude Code、CodeX 到 OpenCode 實戰搞掂
呢篇文章係由R哥(公眾號「AI技術宅」)撰寫,佢之前已經分享過MCP同Claude Code,而家就深入講Claude Skills呢個概念。Skills係Anthropic推出嘅一個模塊化能力擴展機制,核心係一個標準化目錄結構,包括必備嘅SKILL.md檔案同可選嘅scripts、references、assets。作者想解決嘅問題係點樣有效組織AI提示詞同工具,令模型可以按需加載相關能力,節省token消耗。
文章首先解釋Skills嘅架構同工作原理:透過漸進式披露分三步——發現階段只加載元數據(約100 tokens),激活階段先加載完整指令(少於5k tokens),執行階段按需加載scripts同references。呢種設計確保只有相關內容佔據上下文窗口,提升效率。作者仲詳細介紹咗SKILL.md嘅YAML前置元數據格式,name同description係必須,其他可選。
然後作者實戰示範點樣喺Claude Code、CodeX同OpenCode三款工具中創建同使用Skills。佢用官方skill-creator引導式將自己之前喺GPT上嘅提示詞轉換成一個自媒體助手Skill,成功實現中文標題轉英文URL等功能。因為Agent Skills已經成為開放標準(agentskills.io),創建好嘅Skill可以跨平台使用:CodeX只需複製目錄,OpenCode更自動兼容Claude嘅Skills目錄。最…
- Skills核心係漸進式披露:發現階段只加載元數據(~100 tokens),激活階段先加載完整指令(<5k tokens),執行階段按需加載scripts/references,有效控制上下文成本。
- SKILL.md係每個Skill必備嘅文件,包含YAML前置元數據(name、description必須)同Markdown指令,結構簡單清晰,方便維護同分享。
- 喺Claude Code中,Skills可以透過/skills列出,自動或手動(/skill-name)引用;創建時可以用官方skill-creator引導式生成,支援將GPT提示詞轉換成本地Skill。
- 因為Agent Skills已成開放標準(agentskills.io),創建好嘅Skill可以跨平台使用:複製到CodeX嘅~/.codex/skills即可;OpenCode更自動兼容Claude嘅Skills目錄,唔使額外複製。
- Skills唔同於MCP:MCP提供外部工具調用能力,Skills則教模型按流程執行,兩者可協同;Skills亦比Slash Commands多咗元數據同自動加載機制,模型可自行判斷使用時機。
Agent Skills 開放標準
由 Anthropic 發佈並推動嘅開放標準,定義通用嘅 Agent Skills 格式,支援多平台。
官方 Skills 倉庫
Anthropic 官方維護嘅 Skills,包含基本技能同 skill-creator。
第三方 Skills 倉庫 (ComposioHQ)
社羣收集嘅多類型 Skills,可按需使用。
咩係 Skills:概念與架構
Skills 係由 Anthropic 開發嘅 模塊化能力擴展機制,用嚟擴充 Claude 嘅功能。本質上佢係一個文件夾,包含 SKILL.md(指令同元數據)、scripts(可選執行腳本)、references(可選參考文檔)同 assets(可選模板資源)。
Skills 嘅核心優勢係按需加載:只有當 Claude 認為某個 Skill 同當前任務相關時,佢先會啓用,從而節省大量 Tokens。
而家 Anthropic 已經將 Skills 標準化為 Agent Skills(agentskills.io),一個開放標準,畀唔同 AI 平台共用同一種格式。OpenAI、Google、Cursor 等廠商都已經跟進支援。
漸進式披露:Skills 嘅工作原理
Skills 透過 漸進式披露 管理上下文,分三步加載:發現、激活、執行。
- 1 發現(始終加載):代理只加載 SKILL.md 中嘅元數據(name、description),用以判斷何時使用。
- 2 激活(觸發時加載):當任務匹配描述,代理先將完整 SKILL.md 指令加載入上下文。
- 3 執行(按需加載):按指令操作,必要時加載 references 或執行 scripts。
呢種動態加載方式,令大量 Skills 可以共存,唔會產生多餘嘅上下文成本。
自訂 Skills:SKILL.md 結構同創建方法
每個 Skill 必須有一個 SKILL.md 檔案,係 Markdown 格式,包含 YAML 前置元數據同 Markdown 指令。YAML 部分 name 同 description 係必填,其他如 license、compatibility、metadata 可選。
---
name: pdf-processing
description: 從 PDF 文件中提取文本和表格,填寫表單,合併文檔。
---
# PDF 處理
## 何時使用該技能
當用戶需要處理 PDF 文件時,使用該技能……
## 如何提取文本
1. 使用 pdfplumber 進行文本提取……
## 如何填寫表單
...
創建 Skills 好簡單:喺 ~/.claude/skills 下開個目錄,寫 SKILL.md 就得。或者用官方 skill-creator 引導式生成,可以將現有 GPT 提示詞轉換成 Skill。
實戰教學:Claude Code、CodeX、OpenCode 使用 Skills
Skills 分成 Personal Skills(~/.claude/skills,所有項目可用)、Project Skills(.claude/skills,僅當前項目)、Plugin Skills(隨插件安裝)。安裝官方或第三方 Skills 好簡單:複製目錄到對應位置。
- Claude Code:用 /skills 列出所有 Skills,自動或手動 /skill-name 引用。創建可用 skill-creator 引導。
- CodeX:將 Skills 目錄複製到 ~/.codex/skills,用 $ 選擇 Skills,同自身 / 命令分開。
- OpenCode:自動兼容 Claude 嘅 Skills 目錄(~/.claude/skills),唔使額外複製,支援任意模型切換。
作者示範用 skill-creator 將 GPT 提示詞轉成自媒體助手 Skill,成功將中文標題轉英文 URL,效率比 ChatGPT 更快。
因為 Agent Skills 係開放標準,喺 Claude 創建好嘅 Skill 可以直接喺 CodeX、OpenCode 等工具使用,跨平台無縫遷移。
常見問題與總結:MCP vs Skills vs Slash Commands
好多讀者問:有咗 MCP,點解仲要搞 Skills?MCP 本質係畀 AI 調用外部工具,但每次要用時都要喺上下文夾帶大量資訊,消耗 token。Skills 則教模型點樣跟流程做嘢,兩者可以協同:MCP 提供工具,Skills 提供流程指引。
至於 Slash Commands,佢哋係完全由用戶手動觸發,冇元數據同自動加載能力。而家 Skills 已經將 Slash Commands 合併埋一齊,但自動匹配功能係 Skills 獨有。
總括嚟講,Skills 係一套 Agent 能力組織方式嘅升級,將提示詞、工具、腳本、資源全部收斂到標準化目錄,配合漸進式披露,明顯提升執行效率同控制成本。
大家好,我是R哥。
最近 Claude Skills 又開始爆火了,幾個月前我分享《MCP 不香了,Claude Code 又推出了 Skills!!(保姆級安裝和使用教程分享)》時還是不温不火,現在已經火爆全網了。
經過幾個月的發展,Skills 也有了些許變化,這篇我再結合最新的信息,分享下 Skills 的概念及如何在 Claude Code、CodeX、OpenCode 中創建和如何 Skills。
萬字乾貨,避免錯過,建議收藏慢慢看。
Skills 是什麼?
Skills 最初由 Anthropic 公司開發,專門用來擴展 Claude 功能的模塊化能力。
說白了,Skills 其實就是一個文件夾,這是每個 Skills 的目錄結構:
my-skill/
├── SKILL.md # 必選:指令、元數據
├── scripts/ # 可選: 執行腳本
├── references/ # 可選:參考文檔
└── assets/ # 可選:模板、資源
每個 Skill 包含指令、元數據和資源等,只有當 Claude 認為某個 Skill 和當前任務相關時,它才會啓用,即按需加載,從而提升性能,也能大大節省 Tokens 消耗。
現在 Anthropic 已經把 Skills 做成《Agent Skills》開放標準了:
https://agentskills.io/
這是一個 Skills 開放標準,由 Anthropic 發佈並推動作為開放標準,旨在讓不同 AI 平台都能實現一個通用的 “Agent Skills” 格式。
Anthropic 真是 AI 標準的制定者,前有 MCP 協議,現在又弄出了 Agent Skills 標準。
Agent Skills 現在已經被主流的 AI 開發工具全面支持了,我看 OpenAI、Google、Cursor 等 AI 廠商都已經跟進並支持 Skills 了。
比如,我剛在 Claude 寫完 Skills,直接就可以複製到 CodeX 中使用,100% 兼容。
Skills 的架構
Skills 在代碼執行環境中運行,它具有文件系統訪問、bash 命令和代碼執行功能。
這是 Skills 的架構圖:

可以這樣理解,Skills 相當於是虛擬機上的目錄,Claude 可以使用計算機上導航文件相同的 bash 命令與它們交互。
Skills 的工作原理
Skills 是通過漸進式披露來高效管理上下文,這張圖演示了 Claude 如何加載和使用 PDF 處理 skill 的方式:

這種動態加載方式,確保只有相關的 Skill 內容佔據上下文窗口。
工作流程
第 1 步:發現 Skills(始終加載)
Claude 在啓動時,代理只會加載每個可用技能的 SKILL.md 中的元數據,比如:名稱和描述,用來判斷它什麼時候可能用得上。
元數據格式如下:
---
name: pdf-processing
description: 從 PDF 文件中提取文本和表格、填充表單、合併文檔。在處理 PDF 文件或用戶提及 PDF、表單或文檔提取時使用。
---
這種輕量級的加載方式,意味着我們可以集成大量的 Skills 而不會產生上下文成本,Claude 只知道每個 Skill 的存在以及何時使用它。
第 2 步:激活 Skills(觸發時加載)
當任務匹配到某個技能的描述時,代理才會把完整的 SKILL.md 指令加載進上下文裏。
參考指令如下:
# PDF 處理
## 快速入門
使用 pdfplumber 從 PDF 中提取文本:
```python
import pdfplumber
with pdfplumber.open("document.pdf") as pdf:
text = pdf.pages[0].extract_text()
```
有關高級表單填充,請參閲 [FORMS.md](FORMS.md)。
SKILL.md 的指令包含 Skills 的運行邏輯,包括它的:工作流、最佳實踐和規範等,其實就是一個提示詞說明書文檔。
第 3 步:執行 Skills(按需加載)
代理會按照 SKILL.md 中的指令來操作,必要時還會加載 references 目錄中引用的文件,或者運行 scripts 目錄下打包好的腳本及代碼。
Skills 通過漸進式披露這種方式,可以讓代理按需調取更多上下文,從而執行得飛快。
漸進式披露成本
漸進式披露確保任何給定時間,只有相關內容佔據上下文窗口,這是它的成本:
| 第 1 步:發現 | ||
| 第 2 步:激活 | ||
| 第 3 步:執行 |
SKILL.md 的文件結構
每一個 Skill 都必須要有一個 SKILL.md 文件,它是一個 Markdown 格式的文件,包含 YAML 前置元數據和 Markdown 指令。
參考格式如下:
---
name: your-skill-name
description: 簡要描述此 Skill 的功能以及何時使用它
license: Apache-2.0
metadata:
author: example-org
version: "1.0"
---
# Skill 名稱
## 指令
[Claude 要遵循的清晰、分步指導]
## 示例
[使用此 Skill 的具體示例]
在 SKILL.md 的頂部,必須加上前置元數據,主要是 name 和 description 這 2 個元數據,其他的都是可選的。
另外,Markdown 中的實際指令,對結構和內容沒有特別限制。
如下面這個示例:
---
name: pdf-processing
description: 從 PDF 文件中提取文本和表格,填寫表單,合併文檔。
---
# PDF 處理
## 何時使用該技能
當用戶需要處理 PDF 文件時,使用該技能……
## 如何提取文本
1. 使用 pdfplumber 進行文本提取……
## 如何填寫表單
...
這種簡單的格式有幾個關鍵優勢:
清晰易懂:不管是技能作者還是使用者,只要看一眼 SKILL.md,就能明白它幹啥的,讓技能的維護和優化變得特別輕鬆。擴展性好:技能的複雜度可以靈活調整,從簡單的文字指令,到可執行代碼、資源文件,再到模板,全都能搞定。 輕鬆遷移:技能就是個文件,編輯、版本管理、分享都特別方便。
相比於固定的 AI 工作流,Skills 的靈活性更好。
Skills 倉庫推薦
在使用 Skills 前,先分享兩個 Skills 倉庫:
https://github.com/anthropics/skills https://github.com/ComposioHQ/awesome-claude-skills ……
第一個是官方的 Skills 倉庫,裏面包含了一些圖片、文檔等基本技能,還有一個 skill-creator 技能,通過它就可以引導式創建一個技能。
第二個是第三方的 Skills 倉庫,裏面也包含也許多類型的技能,根據自己的需要酌情使用。
還有更多一些大廠、第三方收集的 Agent Skills,這篇就不展開了,下一篇會詳細分享一下,關注公眾號「AI技術宅」第一時間分享。
Claude Code 使用 Skills 指南
拿 Claude 自家來說,Claude API、Claude Code、Claude Agent SDK 等都支持 Skills,下面以 Claude Code 為例,來看看要怎麼創建和使用 Skills。
Claude Code 的安裝和高級用法看這兩篇:
Skills 分類
技能的存儲位置決定了誰可以使用它:
| Personal Skills | ~/.claude/skills/ | ||
| Project Skills | .claude/skills/ | ||
| Plugin Skills |
一般是全局、項目 Skills。
安裝 Skills
比如,你想使用官方、第三方的 Skills,只需要把它們倉庫的技能目錄複製到 ~/.claude/skills 目錄下即可:

在 Claude Code 中使用 /skills 指令就可以列出所有的技能。
使用 Skills
使用 Skills 有兩種方法:
1、自動引用
上面說了,如果 Claude 認為你的需求和某個 Skill 相關時,它就會自動加載並使用。
比如我發送:
列出所有skills並創建一個pdf

提示詞中要創建 PDF,所以它自動加載了 PDF 的 Skill,這就是自動按需加載。
2、手動引用
你也可以通過 /xx 來手動引用要使用的 Skill,比如我明確知道官方有一個 canvas-design 技能,那我可以這樣手動引用:
/canvas-design 設計一個 AI 學習路線圖

如果你知道某個經常用的 Skills,這樣手動引用可能會加快 Skills 的加載速度。另外,如果有多個類似的 Skills,手動引用也特別有用,避免用錯。
創建自定義 Skills
創建 Skills 非常簡單,一個 3 步:
在 ~/.claude/skills目錄下創建一個技能目錄;在技能目錄下面創建一個 SKILL.md技能文檔;開始編寫你的 SKILL.md文檔具體操作指令。
當然,你也可以通過官方的一個 skill-creator 技能來引導式創建 Skills,這種方式更快,創建出來的 Skills 也會更懂你的需求。
下面,我來演示下如何通過 skill-creator 技能來創建一個自媒體助手 Skills。

然後,我把我在 GPT 上面的提示詞扔給它:


當然,不一定要提供提示詞,你完全可以把你的需求說出來,讓它一步步幫你構建好這個 Skill。
不一會兒,它就幫我在 ~/.claude/skills 目錄下創建好了 my-zmt-tools 自媒體助手 Skill,它主要包括兩個功能:中文轉英文URL、內容轉小紅書風格,這兩個功能我之前是在 GPT 上面實現的。
使用 /skills 指令來驗證下:

有了,這是它生成的 SKILL.ms 文檔:

還不錯吧?如果不滿意,還可以基於它做二次修改。
現在來看看如何使用它,直接使用 /my-zmt-tool 技能的指令,然後帶上指令參數、具體的內容或者要求就行了:

成功了,中文標題正確轉換成了英文 URL,這個功能我在寫博客時經常要用到,比如《MCP 不香了,Claude Code 又推出了 Skills!!(保姆級安裝和使用教程分享)》這篇文章就對應這個 URL:
https://www.javastack.cn/claude-code-skills-usage/
後面的 claude-code-skills-usage 就是靠定製化 GPT 幫我生成的。
在使用 ChatGPT 時,首先要切換到具體的 GPT,然後再發送指令,使用不是很方便,網絡慢時可能更影響速度,現在有了 Skills 感覺效率要更快了。
所以,有了 Skills,很多 GPT 上面完成的工作,都可以嘗試用 Skills 來完成,Skills 有了更多的可能性。
CodeX 使用 Skills 指南
上面說了,Agent Skills 已經是開放標準了,在 Claude 創建好的 Skills 也可以在其他支持 Agent Skills 的 AI 編程工具中使用,比如 CodeX。
方法很簡單,比如,我把上面創建好的 my-zmt-tolls 目錄直接複製到 ~/.codex/skills 目錄下。
然後同樣使用在 CodeX 中使用 /skills 命令,可以列出所有的 Skills:

用法其實和 Claude Code 差不多,不太一樣的是,Claude Code 的自身命令、斜槓命令和 Skills 都是通過 / 來選擇,非常混亂,而在 CodeX 中,Skills 可以使用單獨的 $ 來選擇 Skills,它是和自身的 / 命令分開的。
所以,在 CodeX 中可以自動調用 Skills,也可以手動指定要引用的 Skill:

Skill 都正常執行了,很方便吧?
從 /skills 列表命令也可以看到,CodeX 還提供了一個 skill-creator 命令用於創建和維護 Skills,還有一個 skill-installer 命令用於從其他倉庫源安裝 Skills。
其他支持 Skills 的 AI 編程工具,都是同一樣的手法。
OpenCode 使用 Skills 指南
如果你有多模型的使用習慣,比如:國外、國內、本地模型混用,封閉的 Claude Code、CodeX 就無法滿足需求了,這裏我們就得使用最近火爆全網的 OpenCode,號稱開源版的 Claude Code,它支持任意模型隨時切換。
現在越來越多的人都在使用 OpenCode,包括我自己。
怎麼安裝和使用參考我分享的使用教程:
OpenCode 會自動搜索以下位置的 Skills:
項目配置: .opencode/skills/<name>/SKILL.md全局配置: ~/.config/opencode/skills/<name>/SKILL.md兼容項目 Claude: .claude/skills/<name>/SKILL.md兼容全局 Claude: ~/.claude/skills/<name>/SKILL.md
也就是說,OpenCode 不需要像 CodeX 那樣複製 Skills,它支持自動搜索 Claude 的 Skills,這就比 CodeX 要方便太多了,不用複製冗餘文件,這太舒服了。
目前,OpenCode 官方還沒有類似 的 /skills 命令來列出所有的 Skills,不過可以通過問它列出所有的 Skills:

使用方法也是一樣的,可以自動或者手動引用 Skills:

OpenCode 桌面版的使用也是一樣的。
常見問題
經過以上 Skills 的工作原理和使用指南,下面的問題就不是問題了。
1、有了 MCP,為什麼又搞出 Skills?
之前分享了一篇 MCP 的介紹及使用:
MCP 本質上是為 AI 大模型提供調用外部工具的能力,MCP Server 就是這個能力的具體實現——你可以通過它,把你已有的 API、腳本、服務包裝成 AI 能理解和調用的 MCP 工具。
使用 MCP 的限制:
如果只靠 MCP,你雖然可以調用很多工具/數據,但模型每次必須在提示或上下文裏夾帶大量相關信息,這會消耗大量 token、降低效率。 在很多場景下,問題不是調用 API,而是按公司標準/流程來做事,MCP 可以訪問數據或工具,但不會自動知道這個流程的外在規則是什麼。
而 Skills 正好解決了這些問題,所以,MCP 是 AI 連接外部的工具,而 Skills 教模型如何使用工具。
MCP + Skills 可以協同工作,在很多複雜系統中,兩者往往組合使用,模型先通過 MCP 訪問工具/數據,再通過 Skills 引導流程執行。
但有一點,在執行代碼方面:
Skills 雖然也支持代碼執行,但受限於本地的環境,比如執行 Python 腳本,要是本地沒有安裝 Python 環境,或者版本不兼容,都會影響 Skills 執行效率。
MCP 因為是執行固定的代碼,所以 MCP 在執行代碼方面要更穩定。
2、Skills 和 Slash Commands 有什麼區別?
Skills 是由模型驅動的,Claude 會根據你的任務和 Skill 的描述自動匹配並使用這些 Skills,完全不需要你介入,當然也可以通過 /skill-name 來主動觸發。
Slash Commands(斜槓命令)則是完全由用戶觸發的,你需要主動輸入 /command 才能觸發。
但是,從最新的 Skills 來看,Slash Commands 也被合併在用戶 Skills 中了:


合併歸合併,困為 Slash Commands 和 Skills 兩者都可以通過 / 手動觸發,Slash Commands 並不能自動觸發,因為它沒有像 Skills 那樣定義元數據。
Skills 相比 Slash Commands 只是多了幾個可選功能,它支持文件的目錄、控制 Claude 是否調用 Skills 前置元數據,以及 Claude 在相關時自動加載它們的能力。
總結
Skills 這一套機制,表面看只是多了一個 SKILL.md 文件,實際上背後是一整套 Agent 能力組織方式的升級。
Skills 把提示詞、工具、腳本、資源全部收斂到一個標準化目錄裏,再通過「漸進式披露」的方式按需加載,這一點對上下文成本和執行效率的提升非常明顯。
從使用體驗來看,Skills 最大的價值有三個:可複用、低心智成本、易遷移。
不管是個人常用能力,還是項目級、團隊級的能力,都可以沉澱成 Skills,一次寫好,反覆使用。而且它不綁死某一家平台,已經被做成開放標準,Claude、Google、OpenAI、Cursor 都能用,這一點非常重要。
比如拿我自己來說,以前要頻繁切 GPT,現在一個 Skill 就能搞定。
所以,可以預見的未來,Agent Skills 的體系和生態會更加完善,大家可以早點把自己的常用能力沉澱下來,後面只會越用越爽。
未完待續,R哥持續分享更多 AI 編程經驗,包括更加複雜的 Skills 使用,公眾號第一時間推送,關注「AI技術宅」公眾號和我一起學 AI。
版權聲明: 本文系公眾號 "AI技術宅" 原創,轉載、引用本文內容請註明出處,抄襲、洗稿一律投訴侵權,後果自負,並保留追究其法律責任的權利。
< END >
推薦閲讀:
Google 推出 AI 編程工具:Antigravity!!
Gemini CLI 免費用戶也能使用 Gemini 3 了!
免費領 Gemini 3 Pro 會員 1 年(親測可用!)
免費白嫖 Gemini 3 Pro 的 3 種方式,太香了!
Claude Code 又推出了 Skills,保姆級教程!
更多 ↓↓↓ 關注公眾號 ✔ 標星⭐ 哦