Agent Skill从使用到原理
Agent Skill技术解析 Agent Skill是由Anthropic公司通过Claude Skills在2025年确立的标准化AI技能架构协议。其发展经历了从"函数调用"到"工具"再到"技能"的概念演进,最终形成包含SKILL.md说明文档、执行脚本和参考资源的模块化结构。 核心架构采用三层渐进式加载机制:元数据层(名称+描述)始
一、什么是Agent Skill
“Agent Skill”作为一种通用术语由来已久,但作为一种标准化的架构协议,确实是由 Anthropic(Claude 的母公司)在 2025 年底通过“Claude Skills”正式定义并推向开源标准的。
我们可以从“概念演进”和“标准确立”两个阶段来看:
1. 广义的起源:从“工具”到“技能”
在 Claude 提出 Agent Skills 之前,AI 圈对类似能力的称呼经历了几次演变:
- Function Calling (函数调用): 最早由 OpenAI 在 2023 年大规模推广。此时它被视为模型调用外部代码的一种“动作”。
- Tools (工具): 随着 LangChain 等框架的流行,人们开始把 API 封装称为 Tool。
- Skills (技能): 在更早的机器人学(Robotics)和早期智能助理(如 Alexa Skills)中,“Skill”一直指代一项特定的、可重复的任务能力。
2. 狭义的起源:Claude Skills 的里程碑
Anthropic 在 2025 年 10 月 16 日正式发布了 “Agent Skills” 特别功能,并赋予了它现代化的技术内涵。
为什么 Claude 的定义成了“正统”?
之前的“工具”通常只是一个简单的 JSON 描述,而 Claude 定义的 Skill 是一套模块化的结构。一个标准的 Agent Skill 通常包含:
SKILL.md: 核心指令,告诉 Agent 什么时候用、怎么用。- 代码/脚本: 实际执行任务的 Python 或 Bash 脚本。
- 参考资源: 执行任务所需的静态数据或模板。
3. 从私有功能到行业标准
Claude 的贡献不仅仅是发布了一个功能,而是推动了标准化:
- 2025 年 12 月 18 日,Anthropic 将其 Agent Skills 规范开源。
- 随后,业界成立了
agentskills.io组织,试图将这种“文件夹式”的技能封装变成一种跨平台的标准。这意味着你在 Claude 上写的技能,理论上可以无缝迁移到其他兼容该协议的 Agent(如 Qwen 或开源的自主智能体)上。
文本所指的Agent Skill,是来源于Anthropic
二、Agent Skill详解
Agent Skill 其实是一个SKILL.md的说明文档,它的作用是:教大模型如何处理数据;
Agent Skill例子(SKILL.md):
---
name: architect-pro-master
description: 全栈架构设计核心技能。
---
# 角色定义
你是一名资深首席架构师。你的决策逻辑由以下模块支撑:
# 模块加载协议
- **规范检索**:在涉及命名、安全、状态码时,必须引用 `REFERENCE.md`。
- **流程执行**:当用户启动特定任务(如初始化项目、重构)时,必须执行 `SCRIPT.md` 中的对应脚本。
# 核心指令
- **[A1] 方案设计**:遵循 `REFERENCE.md` 中的“架构分层规范”。
- **[A2] 代码实现**:遵循 `REFERENCE.md` 中的“编码风格指南”。
# 动态引用机制
- 如果当前上下文涉及 **API 设计**,自动包含 `REFERENCE.md > section: API_STANDARDS`。
- 如果当前用户输入以 `/` 开头,自动匹配 `SCRIPT.md` 中的指令。
组成:
元数据(Metadata):由名称(name)+描述(description)组成;
指令(Instruction):详细描述,模型需要遵循的规则;
运行流程

注意:一开始的时候,claude code会把所有skill的元数据,给到大模型;
三、Agent Skill高级部分
Agent Skill的设计其实是一个精密的渐进式披露结构;这个结构一共分为三层,每一层的加载机制都不太一样;
3.1、渐进式披露
元数据层:包含名称+描述,始终加载;
指令层:SKILL.md中出名称和描述之外的内容,按需加载;
资源层:Reference+Script,按需中的按需加载;
3.2、Reference
Reference是读取的,会加载关联xxx.md中的文档内容,会消耗额外的Token;
# 架构与编码规范 (Reference)
## [REF-01] 架构分层规范
- **Controller 层**:负责参数校验,严禁包含业务逻辑。
- **Service 层**:处理核心业务,必须保证幂等性。
- **Infrastructure 层**:封装数据库、缓存及第三方 API 访问。
## [REF-02] 安全规范
- 严禁在日志中记录用户的手机号、密码、Token。
- 所有 SQL 查询必须使用参数化查询,杜绝 SQL 注入。
## [REF-03] 命名与格式
- 类名:`PascalCase`
- 变量名/函数名:`camelCase`
- 数据库字段:`snake_case`
3.3、Script
Script是执行的,不会加载xxx.py(这里只是举例,也有可能是其他类型的文件)中的内容,不需要消耗额外Token
# 任务执行脚本 (Scripts)
## [/new-feature] 新功能设计脚本
1. **分析阶段**:调用 `REFERENCE.md` 检查领域模型是否符合分层标准。
2. **输出模板**:
- 接口定义 (TypeScript)
- 数据库变更 (SQL)
- 影响范围评估清单
3. **确认**:等待用户确认后再生成实现代码。
## [/code-review] 代码审查脚本
1. **检查点**:
- 检查是否违反 `REFERENCE.md > [REF-03]` 的命名规范。
- 检查是否存在 `REFERENCE.md > [REF-02]` 中的安全隐患。
2. **输出格式**:以表格形式列出:`位置 | 违规项 | 修改建议 | 风险等级`。
四、MCP与Agent Skill的区别
MCP
功能:给大模型提供数据;
举例:查询昨天的销售记录、读取订单的物流信息;
本质:程序;
Agent Skill
功能:教大模型如何处理数据;
举例:会议总结必须要有议题、汇报文档必须包含数据;
本质:文档;
通常情况下是二者结合使用;
更多推荐




所有评论(0)