Agent Skill到底是什么?
Agent Skill 可以先理解成:给 AI Agent 写的一份可复用工作手册。
它不是一次性提示词,而是一套可以长期复用的任务说明、规则约束、参考资料和可执行资源。Anthropic 官方把它定义为一种“模块化能力封装”:每个 Skill 都可以打包元数据、指令,以及可选的资源文件,比如脚本、模板、参考资料等;Claude 会在合适的时候自动调用它。
如果用企业里的比喻来讲:
-
Prompt 像你临时口头交代一句话
-
Skill 像你给新同事的一份岗位 SOP
-
MCP 像把这个同事接入 ERP、CRM、数据库、工单系统
-
Subagent 像你再给他配几个分工明确的专业助手
所以,Skill 的核心价值,不是“让模型多知道一点”,而是:
把重复方法论、固定流程、组织知识和执行入口,封装成一个 AI 可以反复调用的标准化能力。
一个完整的 Skill,除了主说明文件 SKILL.md,还可以带上参考资料、脚本、模板、资源文件。Anthropic 官方明确说明:Skill 是以文件夹形式组织的能力包,通常至少包含 SKILL.md,并可以扩展为脚本、参考文档、模板等资源。
my-agent-skill/ # Agent Skill 的根目录(技能包名称)
├── SKILL.md # 核心配置与指令文件(包含元数据、Prompt、执行工作流等)
├── references/ # 参考资料目录(资源层:供大模型 RAG 读取的外部知识)
│ ├── finance-policy.md # 业务知识:财务政策说明
│ ├── meeting-template.md # 结构模板:会议纪要标准格式
│ └── product-guide.md # 业务知识:产品使用指南
├── scripts/ # 执行脚本目录(资源层:供大模型调用的外部工具/代码)
│ ├── upload.py # 工具脚本:处理文件上传逻辑
│ ├── summarize.py # 工具脚本:执行特定的数据总结与清洗
│ └── validate.sh # 工具脚本:数据格式校验与测试
└── assets/ # 静态资源与测试用例(用于技能的调试与演示)
├── example-input.txt # 示例:标准的用户输入/请求格式
└── example-output.md # 示例:期望模型生成的标准输出结果
Skill 解决的,不是模型“不会说”,而是模型“不会稳定地按你的方式做”。
Agent Skill的基本用法
在 Claude Code 文档中,Skill 的基本形式是一个目录,核心文件是 SKILL.md。Claude 会在相关请求中自动使用 Skill,也可以通过命令直接调用。
一个典型的SKILL.md,通常包含两个部分:
-
元数据,也就是frontmatter / metadata。它的作用不是直接约束回答细节,而是告诉模型:
- 这个Skill叫什么
- 它适合处理什么样的任务
-
正文指令
这部分才是真正告诉模型“怎么做” 的规则。补充例如:输出格式、风格要求、错误处理、禁止事项…
Agent Skill的高级用法
Reference
这个 Skill 在特定条件下,才会去读取的参考材料。
在 SKILL.md 里先写清楚触发条件,真正需要的时候,再去读取具体的 Reference 文件,这就是“按需中的按需”。
Reference 的动作是“读”。
也就是说,Reference 文件内容会被读取,进入模型的上下文,成为回答依据的一部分。因此它会消耗 Token。官方也强调 Skill 可以携带模板、资源等内容供 Claude 使用。所以,Reference 更适合放:
- 规则类文本
- 标准类文档
- 模板类资料
- 需要模型理解后再组织表达的内容
Script
Script 就是 Skill 目录中的可执行脚本。 例如:upload.py
Script的动作是“跑”。
Script 的核心不是把代码读进上下文,而是执行它,并利用执行结果继续完成任务。
- 长代码逻辑不一定要全部暴露给模型
- 模型只需要知道什么时候调用、如何调用、结果是什么
- 真正复杂的处理逻辑交给程序本身完成
渐进式披露:为什么AgentSkill很省上下文呢
渐进式披露:不是一上来把所有东西都给模型,而是按层级、按相关性、按需要逐步揭示。
graph TD
%% 第一层:元数据层
A[用户请求] --> B[模型先查看 Skill 元数据]
B --> C{是否相关?}
C -- 否 --> D[不加载该 Skill]
%% 第二层:指令层
C -- 是 --> E[读取 SKILL.md 正文]
E --> F{是否需要参考资料?}
%% 第三层:资源层
F -- 是 --> G[读取 Reference]
F -- 否 --> H{是否需要执行脚本?}
G --> H
H -- 是 --> I[执行 Script]
H -- 否 --> J[生成结果]
I --> J
Agent Skill VS MCP
-
MCP 负责把 Claude 接到外部数据和系统上
MCP 的重点在于:让模型能访问外部世界。
所以MCP擅长:取数据、查系统、调服务、操作工具
-
Skill 负责教 Claude 拿到这些数据之后该怎么做
Skill 的重点在于:让模型知道“怎样把事情做对”。
Skill擅长:固化格式、固化流程、固化规范
总结
Agent Skill 的本质,不是“更高级的提示词”,而是:
面向 Agent 的能力封装。
它至少做了三件事:
-
把重复方法论固化下来
-
把组织知识按需提供给模型
-
把轻量执行能力接进任务流程里
它真正厉害的地方,在于那套渐进式披露机制:
- 先看元数据
- 再读指令
- 最后按需读 Reference、跑 Script
这使得它既能复用知识,又不会把上下文一股脑塞爆。
而它和 MCP 的关系,也可以用一句话概括:
- MCP 负责连接世界
- Skill 负责教会 Agent 如何行动
在真正的企业场景里,这两者不是竞争关系,而是协作关系。Anthropic 官方也强调,Skill 可以将通用 Agent 专门化,而 MCP 负责连接外部数据与工具;两者结合,才更接近可落地的企业级 Agent。
如果你今天只记住一句话,我希望是这一句:
Prompt 是一次性交代,
Skill 是可复用 SOP,
MCP 是系统连接层。
当你这样去理解它们,很多 Agent 设计问题,都会一下子变清楚。