解析新 Claude Skills:模塊化 AI 能力的技術(shù)架構(gòu)設(shè)計(jì)與實(shí)踐 原創(chuàng)
大家好,我是玄姐。
在 AI 工具從 “通用響應(yīng)” 向 “場(chǎng)景化落地” 演進(jìn)的過(guò)程中,Anthropic 推出的 Claude Skills 并非簡(jiǎn)單的功能疊加,而是一套重構(gòu) AI 任務(wù)執(zhí)行邏輯的技術(shù)架構(gòu)方案。它通過(guò)模塊化設(shè)計(jì)解決了傳統(tǒng) AI 處理復(fù)雜任務(wù)時(shí)的 “推理冗余”、“流程不可控”、“跨平臺(tái)復(fù)用難” 三大核心痛點(diǎn),甚至與既有的 MCP 形成了 “功能模塊 + 集成層” 的互補(bǔ)架構(gòu)。今天我們就從技術(shù)架構(gòu)視角,拆解 Skills 的設(shè)計(jì)邏輯、核心能力與實(shí)踐方法。
一、Skills 的技術(shù)架構(gòu)核心:模塊化能力封裝與動(dòng)態(tài)調(diào)度
Claude Skills 的本質(zhì)是 “可復(fù)用、可組合的 AI 任務(wù)執(zhí)行單元”,其架構(gòu)設(shè)計(jì)圍繞 “如何讓 AI 高效、可靠地完成特定領(lǐng)域任務(wù)” 展開(kāi),核心由三部分組成,且各組件間形成了明確的依賴與調(diào)度關(guān)系。

下面以PDF 發(fā)票信息提取與報(bào)銷表格生成實(shí)用 Skill 為例,完整展示其目錄結(jié)構(gòu)、核心文件內(nèi)容及使用流程。該 Skill 能自動(dòng)從 PDF 發(fā)票中提取關(guān)鍵信息(金額、日期、商家等),按企業(yè)標(biāo)準(zhǔn)格式生成 Excel 報(bào)銷表,適配財(cái)務(wù)、行政等高頻辦公場(chǎng)景。
1. 模塊結(jié)構(gòu):標(biāo)準(zhǔn)化的 “能力包” 組成
每個(gè) Skill 是一個(gè)包含 指令 + 腳本 + 資源 的獨(dú)立文件夾:

- SKILL.md定義技能用途(比如:“PDF 表單處理”)、執(zhí)行邏輯(比如:“提取表格→填充數(shù)據(jù)→生成報(bào)告”)和依賴項(xiàng)(比如:Python 庫(kù)、品牌規(guī)范文檔)
---
# YAML元數(shù)據(jù)(供Claude識(shí)別技能屬性)
skill_id: invoice-processor-v1.0
name: 發(fā)票信息提取與報(bào)銷表生成
description: 從PDF發(fā)票中提取金額、日期、商家等關(guān)鍵信息,自動(dòng)填充到企業(yè)標(biāo)準(zhǔn)報(bào)銷Excel模板
author: 企業(yè)IT部
dependencies:
- python: 3.10+
- libraries: [pdfplumber, openpyxl, regex] # 依賴的Python庫(kù)
trigger_keywords: [發(fā)票處理, 報(bào)銷表生成, PDF發(fā)票提取] # 觸發(fā)關(guān)鍵詞
input: 單個(gè)或多個(gè)PDF發(fā)票文件路徑(如./invoices/)
output: 填充完成的Excel報(bào)銷表(路徑:./output/reimbursement.xlsx)
---
# 執(zhí)行邏輯說(shuō)明(供Claude理解任務(wù)步驟)
1. **讀取輸入**:獲取用戶提供的PDF發(fā)票文件路徑,校驗(yàn)文件格式是否為PDF。
2. **信息提取**:
- 用pdfplumber解析PDF文本內(nèi)容;
- 用正則表達(dá)式匹配關(guān)鍵信息(如金額:`¥\d+\.\d{2}`,日期:`\d{4}-\d{2}-\d{2}`);
- 處理模糊匹配(如“商家名稱”可能對(duì)應(yīng)“收款方”“銷售方”等字段)。
3. **填充模板**:
- 加載assets目錄下的reimbursement_template.xlsx;
- 將提取的信息按表頭對(duì)應(yīng)關(guān)系填入(如“發(fā)票日期”→A列,“金額”→C列);
- 自動(dòng)計(jì)算“總金額”(若多發(fā)票)。
4. **輸出結(jié)果**:保存Excel文件到指定路徑,并返回“處理完成”提示。- scripts/存放可執(zhí)行代碼(比如:Python 腳本實(shí)現(xiàn) Excel 數(shù)據(jù)清洗、JavaScript 腳本自動(dòng)化 PPT 排版),替代傳統(tǒng)大模型臨時(shí)生成代碼的不確定性。
import pdfplumber
import re
from openpyxl import load_workbook
import os
from pathlib import Path
def extract_invoice_info(pdf_path):
"""從單張PDF發(fā)票提取信息"""
info = {}
with pdfplumber.open(pdf_path) as pdf:
page = pdf.pages[0] # 假設(shè)發(fā)票內(nèi)容在第一頁(yè)
text = page.extract_text()
# 提取金額(匹配¥開(kāi)頭的數(shù)字,保留兩位小數(shù))
amount_match = re.search(r'¥(\d+\.\d{2})', text)
if amount_match:
info['amount'] = float(amount_match.group(1))
# 提取日期(匹配YYYY-MM-DD格式)
date_match = re.search(r'(\d{4}-\d{2}-\d{2})', text)
if date_match:
info['date'] = date_match.group(1)
# 提取商家名稱(匹配“收款方”“銷售方”后的名稱)
seller_match = re.search(r'(收款方|銷售方):?(.+?)\n', text)
if seller_match:
info['seller'] = seller_match.group(2).strip()
return info
def generate_reimbursement_sheet(pdf_dir, output_path):
"""批量處理PDF發(fā)票,生成報(bào)銷表"""
# 加載模板
template_path = Path(__file__).parent.parent / "assets" / "reimbursement_template.xlsx"
wb = load_workbook(template_path)
ws = wb.active
# 從第二行開(kāi)始填充(第一行為表頭)
row = 2
total_amount = 0
# 遍歷目錄下所有PDF文件
for pdf_file in os.listdir(pdf_dir):
if pdf_file.endswith('.pdf'):
pdf_path = os.path.join(pdf_dir, pdf_file)
info = extract_invoice_info(pdf_path)
# 填充表格(按模板表頭順序:日期→A列,商家→B列,金額→C列)
ws[f'A{row}'] = info.get('date', '未知')
ws[f'B{row}'] = info.get('seller', '未知')
ws[f'C{row}'] = info.get('amount', 0)
total_amount += info.get('amount', 0)
row += 1
# 填寫總金額(假設(shè)模板中D10為“總計(jì)”)
ws['D10'] = total_amount
# 保存結(jié)果
os.makedirs(os.path.dirname(output_path), exist_ok=True)
wb.save(output_path)
return f"報(bào)銷表已生成:{output_path},總金額:¥{total_amount:.2f}"
# 供Claude調(diào)用的入口函數(shù)
def run(pdf_dir, output_path):
return generate_reimbursement_sheet(pdf_dir, output_path)- assets/存儲(chǔ)模板文件(比如:PPT 模板、Excel 表頭)和靜態(tài)資源(比如:品牌 Logo、色值表),確保輸出結(jié)果的格式一致性。

這種結(jié)構(gòu)的優(yōu)勢(shì)在于:開(kāi)發(fā)者無(wú)需從零構(gòu)建任務(wù)邏輯,只需基于標(biāo)準(zhǔn)化目錄擴(kuò)展,即可實(shí)現(xiàn)技能的二次開(kāi)發(fā)與共享。
2. 調(diào)度機(jī)制:按需動(dòng)態(tài)加載,降低資源消耗
Claude 并非預(yù)先加載所有 Skills,而是采用 “任務(wù)觸發(fā) - 技能匹配 - 動(dòng)態(tài)加載”的調(diào)度流程,這是其 “高效性” 的技術(shù)核心:
- 任務(wù)識(shí)別Claude 通過(guò)解析用戶請(qǐng)求(比如: “提取 PDF 表格”),匹配 SKILL.md 中的元數(shù)據(jù)標(biāo)簽(比如:“pdf-processing”“table-extraction”);
- 依賴檢查自動(dòng)校驗(yàn)當(dāng)前環(huán)境是否滿足 Skill 的依賴項(xiàng)(比如:所需腳本語(yǔ)言、外部庫(kù));
- 按需加載僅加載該任務(wù)所需的腳本與資源,執(zhí)行完成后釋放資源,避免 “全量加載” 導(dǎo)致的內(nèi)存占用與 token 消耗。
這種調(diào)度邏輯直接解決了傳統(tǒng) AI 的 “推理冗余” 問(wèn)題,無(wú)需反復(fù)生成、調(diào)試代碼,只需調(diào)用預(yù)封裝的執(zhí)行單元,任務(wù)響應(yīng)速度與 token 利用率大幅提升。
二、Skills 的核心技術(shù)優(yōu)勢(shì):從架構(gòu)設(shè)計(jì)看價(jià)值
Skills 的四大核心特點(diǎn),本質(zhì)是其技術(shù)架構(gòu)在 “解耦”、“協(xié)同”、“適配”、“效率” 四個(gè)維度的落地體現(xiàn),也是它區(qū)別于傳統(tǒng) AI 任務(wù)處理方式的關(guān)鍵。
1. 領(lǐng)域解耦:專業(yè)化任務(wù)的 “職責(zé)邊界清晰化”
傳統(tǒng) AI 處理 “品牌規(guī)范 + 數(shù)據(jù)分析 + PPT 生成” 的復(fù)合任務(wù)時(shí),需在單輪推理中兼顧 “風(fēng)格對(duì)齊”“數(shù)據(jù)計(jì)算”“格式排版”,易出現(xiàn)邏輯混亂。而 Skills 通過(guò) “領(lǐng)域解耦” 架構(gòu):
- 每個(gè) Skill 聚焦單一領(lǐng)域(比如:“brand-style-skill” 負(fù)責(zé)風(fēng)格規(guī)范,“data-analysis-skill” 負(fù)責(zé)數(shù)據(jù)處理);
- 任務(wù)執(zhí)行時(shí),各 Skill 僅負(fù)責(zé)自身職責(zé)范圍內(nèi)的邏輯,避免跨領(lǐng)域干擾,錯(cuò)誤率下降超 35%(官方數(shù)據(jù))。
2. 模塊協(xié)同:可組合的 “技能積木” 機(jī)制
Skills 支持多模塊堆疊使用,其架構(gòu)設(shè)計(jì)中內(nèi)置了 “協(xié)同調(diào)度邏輯”:
- 當(dāng)用戶提出復(fù)合任務(wù)(比如:“按品牌規(guī)范生成帶數(shù)據(jù)分析的 PPT”),Claude 會(huì)自動(dòng)識(shí)別需調(diào)用的 Skill 組合(品牌規(guī)范 + 數(shù)據(jù)分析 + xlsx+pptx);
- 通過(guò) “技能間參數(shù)傳遞” 機(jī)制,將前一個(gè) Skill 的輸出(比如:數(shù)據(jù)分析后的 Excel 表格)作為后一個(gè) Skill 的輸入(PPT 生成的數(shù)據(jù)源),實(shí)現(xiàn)端到端自動(dòng)化。
這種協(xié)同能力讓 AI 任務(wù)從 “單步響應(yīng)” 升級(jí)為 “流程化執(zhí)行”,尤其適合企業(yè)復(fù)雜工作流。
3. 跨平臺(tái)適配:一次封裝,多端復(fù)用
Skills 的 “可移植性” 并非簡(jiǎn)單的代碼復(fù)制,而是架構(gòu)層面的 “運(yùn)行時(shí)適配設(shè)計(jì)”:
- 技能包中的腳本與資源不綁定特定平臺(tái)(Claude 應(yīng)用、Claude Code、API),而是通過(guò) Anthropic 統(tǒng)一的 “運(yùn)行時(shí)接口” 與各平臺(tái)交互;
- 例如在 Claude Code 中封裝的 “Excel 處理 Skill”,無(wú)需修改代碼,即可通過(guò) API 調(diào)用在企業(yè)自建系統(tǒng)中使用,大幅降低跨平臺(tái)開(kāi)發(fā)成本。
4. Token 效率優(yōu)化:預(yù)封裝邏輯減少推理消耗
傳統(tǒng)方式處理復(fù)雜任務(wù)時(shí),“生成腳本→調(diào)試→修正→再運(yùn)行” 的多輪交互會(huì)消耗大量 token,而 Skills 的架構(gòu)從兩方面優(yōu)化:
- 推理步驟減少預(yù)封裝腳本替代 “臨時(shí)生成代碼”,Claude 無(wú)需反復(fù)思考代碼邏輯,中間環(huán)節(jié) token 消耗減少;
- 輸出精準(zhǔn)度提升腳本固化的執(zhí)行邏輯避免 “冗余解釋性文字”,Sonnet 3.7 在工具調(diào)用場(chǎng)景下可節(jié)省 14%-70% 的輸出 token(官方數(shù)據(jù))。
三、Skills 與 MCP:互補(bǔ)而非替代的架構(gòu)層級(jí)
很多人會(huì)疑惑:已有 MCP(外部系統(tǒng)集成能力),為何還需要 Skills?從技術(shù)架構(gòu)視角看,二者處于不同層級(jí),前者是 “外部集成層”,后者是 “內(nèi)部功能模塊層”,形成了 “功能落地 + 系統(tǒng)聯(lián)動(dòng)” 的完整方案。
1. 架構(gòu)定位差異:功能模塊 vs 集成通道
維度 | Claude Skills | MCP(外部系統(tǒng)集成) |
技術(shù)定位 | 內(nèi)部功能模塊,聚焦 “任務(wù)執(zhí)行” | 外部集成層,聚焦 “系統(tǒng)聯(lián)動(dòng)” |
核心能力 | 封裝特定任務(wù)邏輯(比如:文檔處理、數(shù)據(jù)分析) | 連接外部系統(tǒng)(比如: ERP、網(wǎng)盤、自定義 API) |
依賴關(guān)系 | 可獨(dú)立運(yùn)行,也可被 MCP 調(diào)用 | 依賴外部系統(tǒng)接口,需配合任務(wù)邏輯使用 |
2. 協(xié)同架構(gòu):從 “任務(wù)執(zhí)行” 到 “端到端自動(dòng)化”
二者的協(xié)作邏輯可分為三層,形成完整的業(yè)務(wù)落地鏈路:
- 用戶層提出業(yè)務(wù)需求(比如:“處理網(wǎng)盤內(nèi) 20 個(gè) PDF,提取數(shù)據(jù)并同步到 ERP”);
- Skills 層負(fù)責(zé) “PDF 數(shù)據(jù)提取”“數(shù)據(jù)格式轉(zhuǎn)換” 的任務(wù)執(zhí)行,輸出標(biāo)準(zhǔn)化數(shù)據(jù);
- MCP 層負(fù)責(zé) “從網(wǎng)盤拉取 PDF 文件”“將處理后的數(shù)據(jù)推送到 ERP” 的外部聯(lián)動(dòng),打通 “數(shù)據(jù)輸入 - 任務(wù)處理 - 結(jié)果輸出” 的全流程。
舉個(gè)具體例子:
- 僅用 Skills:需手動(dòng)上傳 20 個(gè) PDF,逐個(gè)處理后下載結(jié)果,再手動(dòng)上傳到 ERP;
- Skills+MCP:MCP 自動(dòng)拉取網(wǎng)盤文件→調(diào)用 Skills 處理→自動(dòng)推送結(jié)果到 ERP,實(shí)現(xiàn) “零人工干預(yù)”。
四、Skills 的開(kāi)發(fā)與使用實(shí)踐:技術(shù)視角的落地指南
Anthropic 已在 GitHub 開(kāi)源 12 個(gè)核心 Skills(涵蓋文檔處理、創(chuàng)意設(shè)計(jì)、編程開(kāi)發(fā)三大領(lǐng)域),開(kāi)發(fā)者可基于現(xiàn)有架構(gòu)快速集成或二次開(kāi)發(fā),核心流程分為 “集成插件市場(chǎng)”、“調(diào)用技能”、“二次開(kāi)發(fā)” 三步。
1. 快速集成:接入官方 Skills 插件市場(chǎng)
在 Claude Code 中,通過(guò)一條命令即可將開(kāi)源 Skills 倉(cāng)庫(kù)注冊(cè)為插件市場(chǎng),本質(zhì)是建立 “倉(cāng)庫(kù)索引 - 技能元數(shù)據(jù) - 運(yùn)行時(shí)” 的映射關(guān)系:
# 注冊(cè)Anthropic官方Skills倉(cāng)庫(kù)為插件市場(chǎng)
/plugin marketplace add anthropics/skills注冊(cè)完成后,Claude 會(huì)自動(dòng)解析倉(cāng)庫(kù)中的 Skill 元數(shù)據(jù)(SKILL.md 中的 YAML 信息),用戶只需通過(guò) “技能名稱” 或 “命名空間” 調(diào)用,例如:
# 調(diào)用pdf技能提取文件表單字段
use the pdf skill to extract the form fields from path/to/some-file.pdf
# 調(diào)用ms-office-suite命名空間下的xlsx技能處理表格
use ms-office-suite:xlsx to analyze data in path/to/data.xlsx2. 二次開(kāi)發(fā):基于標(biāo)準(zhǔn)化架構(gòu)擴(kuò)展技能
開(kāi)發(fā)者可基于 Skills 的目錄結(jié)構(gòu),自定義業(yè)務(wù)場(chǎng)景所需的技能,核心步驟如下:
- 創(chuàng)建目錄新建?
?custom-skill/ ??目錄,遵循 “SKILL.md+scripts+assets” 的結(jié)構(gòu); - 定義元數(shù)據(jù)在 SKILL.md 中通過(guò) YAML 指定技能 ID(比如:“erp-data-validation”)、依賴項(xiàng)(如 “Python 3.10+requests 庫(kù)”)、適用場(chǎng)景;
- 編寫執(zhí)行邏輯在?
?scripts/ ??中編寫腳本(比如:Python 腳本實(shí)現(xiàn) ERP 數(shù)據(jù)校驗(yàn)規(guī)則); - 上傳與注冊(cè)將自定義 Skill 上傳到 GitHub 倉(cāng)庫(kù),通過(guò)?
?/plugin marketplace add [你的倉(cāng)庫(kù)地址]??注冊(cè)到 Claude,即可調(diào)用。
這種開(kāi)發(fā)模式的優(yōu)勢(shì)在于:無(wú)需關(guān)注 Claude 的底層運(yùn)行時(shí),只需聚焦業(yè)務(wù)邏輯,大幅降低 AI 場(chǎng)景化開(kāi)發(fā)門檻。
五、架構(gòu)價(jià)值與未來(lái)展望
Claude Skills 的推出,本質(zhì)是 Anthropic 對(duì) “AI 任務(wù)執(zhí)行架構(gòu)” 的一次重構(gòu):它將 AI 的 “動(dòng)態(tài)推理” 轉(zhuǎn)化為 “模塊化組合”,讓復(fù)雜任務(wù)從 “不可控的多輪交互” 變成 “標(biāo)準(zhǔn)化的流程執(zhí)行”。
對(duì)技術(shù)團(tuán)隊(duì)而言,這種架構(gòu)帶來(lái)兩大核心價(jià)值:
- 開(kāi)發(fā)效率提升可復(fù)用模塊減少 80% 以上的重復(fù)編碼工作,尤其適合企業(yè)內(nèi)部的標(biāo)準(zhǔn)化任務(wù)(比如:月度報(bào)表生成、客戶反饋分析);
- 運(yùn)維成本降低技能的 “版本化管理”(通過(guò) GitHub 倉(cāng)庫(kù))與 “動(dòng)態(tài)加載”,讓功能更新無(wú)需重啟系統(tǒng),運(yùn)維更靈活。
未來(lái),隨著開(kāi)發(fā)者生態(tài)的完善,Skills 可能會(huì)形成 “垂直領(lǐng)域技能市場(chǎng)”(比如:金融數(shù)據(jù)處理 Skill、醫(yī)療文檔分析 Skill),而 MCP 則作為 “集成中樞”,連接更多外部系統(tǒng),最終實(shí)現(xiàn) “AI 能力模塊化、業(yè)務(wù)流程自動(dòng)化、系統(tǒng)集成標(biāo)準(zhǔn)化” 的落地目標(biāo)。
好了,這就是我今天想分享的內(nèi)容。
本文轉(zhuǎn)載自??玄姐聊AGI?? 作者:玄姐

















