今年10月,Anthropic推出了Claude Skills能力,已集成于Claude网页端、API及Claude Code等产品中。尽管当前互联网对此关注度不高,但深入分析后可以预见,Claude Skills(或称Agent Skills)将很快成为工业级智能体的标配能力。
那么,Claude Skills究竟解决了什么问题?简而言之,它是一种基于文件系统的、可复用的知识包,运行在Claude的沙盒虚拟机环境中。其核心目标是为Agent注入流程化、确定性的内部知识(如标准作业程序SOP),提供一套标准化的解决方案。
一、Claude Skills 是什么?
根据Anthropic官方定义:
Agent Skills are modular capabilities that extend Claude’s functionality. Each Skill packages instructions, metadata, and optional resources (scripts, templates) that Claude uses automatically when relevant.
即,智能体技能(Agent Skills)是一种模块化能力,用于扩展Claude的功能。每个“技能”都封装了指令、元数据和可选资源(如脚本、模板)。当场景匹配时,Claude会自动调用这些技能来完成任务。
Agent Skills由三大要素构成,也对应了从抽象到具体的三个上下文层级:
- 元数据:Skill的名称、描述、标签等信息。
- 指令:Skill执行任务的具体操作指南。
- 资源:Skill附带的辅助文件或可执行代码等。
Anthropic在GitHub上开源了一系列Agent Skills示例。一个Skill本质上就是一个文件夹,支持嵌套子文件夹,形成清晰的层级结构,设计上简洁而高效。
以上三要素具体表现为:
- 元数据:存放在
SKILL.md 文件的YAML头部。
- 指令:
SKILL.md 文件的主体内容。
- 资源:Skill文件夹内的其他文件(例如,一个画布设计Skill可能包含
canvas-font 文件夹来提供可用字体),这些资源可以在指令中被引用。
二、Claude Skills 如何被Agent感知?
Claude Skills遵循一个至关重要的设计原则:渐进式披露。即信息分阶段、按需加载,而非在任务伊始就将所有内容一股脑儿塞入宝贵的上下文窗口。
加载过程分为三个层次,与上述三要素一一对应:
第一层:元数据(始终加载)
每个Skill的 SKILL.md 文件头部都包含YAML格式的元数据,例如名称和描述。
---
name: pdf-processing
description: 提取 PDF 文件中的文本和表格,填写表单,合并文档。当处理 PDF 文件或用户提及 PDF、表单或文档提取时使用。
---
这部分元数据在Claude启动时即被加载,并始终保留在上下文窗口中,仅占用约100个Token。
第二层:核心指令(触发时加载)
当Claude判定某个Skill与当前任务相关时,它会使用Bash工具读取 SKILL.md 文件的主体内容。
# PDF 处理
## 快速入门
使用 `pdfplumber` 提取 PDF 文本:
```python
import pdfplumber
with pdfplumber.open(“document.pdf”) as pdf:
text = pdf.pages[0].extract_text()
如需了解高级表单填写,请参阅 FORMS.md。
只有到了这个阶段,Skill的核心指令和工作流程才会进入上下文窗口,Claude才开始学习如何完成这项具体任务。这通常涉及到使用特定的[Python](https://yunpan.plus/f/26-1)库,例如`pdfplumber`。
**第三层:代码与资源(按需加载)**
一个复杂的Skill可能包含多个文件,构成一个完整的小型知识库。
pdf-skill/
├── SKILL.md (核心指令)
├── FORMS.md (表单填写指南)
├── REFERENCE.md (详细的API参考)
└── scripts/
└── fill_form.py (实用工具脚本)
Claude会根据 `SKILL.md` 中的指引,仅在需要时才去读取 `FORMS.md` 或执行 `fill_form.py` 脚本。执行脚本是最高效的方式,因为脚本代码本身不会进入上下文窗口,只有其运行结果(如“验证通过”或错误信息)会作为反馈返回。
下图清晰地展示了这一渐进式披露的信息加载全过程:


### 三、Claude Skills 与 MCP 的关系
* **Claude Skills**:是一种基于文件系统的、可复用的知识包,运行在沙盒VM中,用于向Agent注入流程化、确定性的内部知识(SOP)。
* **MCP(Model Context Protocol)**:是一种开放的AI工具调用标准,允许外部服务(如Jira、Stripe或内部API)将其能力标准化地暴露给Agent,使Agent无需关心工具注册、发现、调用等底层[工程化](https://yunpan.plus/f/33-1)细节。
两者可以协同工作:**Claude Skills 为Agent提供领域专家知识,MCP 则为Agent提供连接外部世界的工具能力。**
目前,MCP已成为Agent工具领域的事实标准,并且已经出现了如 **Claude Skills Center** 这样的社区,用于分享各种可拔插的专家知识包。
### 四、如何实现 Agent Skills?
开源项目 **[openskills](https://github.com/numman-ali/openskills)** 提供了一个近似Claude官方的实现方案。其思路非常直观:将所有skills的信息写入一个 `AGENTS.md` 文件中,Agent可以通过类似 `Bash("openskills read pdf")` 的命令进行调用。这种方案的优点在于其通用性,能够支持Claude Code之外的其他Agent框架,例如Qwen Code、Codex等,为[后端](https://yunpan.plus/f/28-1)开发者提供了灵活的集成思路。
**总结而言**,Claude Skills通过“渐进式披露”的优雅设计,有效管理了上下文成本,将确定性的领域知识(SOP)模块化、标准化。当它与MCP代表的外部工具标准相结合时,便构成了打造专业、高效、可落地的行业Agent的坚实基座。