Agent Skills 核心笔记_20260212095535
Agent Skills 是模块化的能力扩展包,通过封装指令、元数据和资源(脚本/模板/文档)来增强 AI Agent 的功能。每个 Skill 采用三层渐进式加载机制:基础元数据始终加载,核心指令在任务匹配时加载,详细资源按需调用。Skill 与 MCP 协议的主要区别在于前者提供完整的任务处理能力,后者仅定义工具调用规范。用户可通过 Claude Code 环境安装 Skill,支持自动/手动
一、Skills 是什么?
1. 官方定义
Agent Skills 是模块化的能力扩展包,用于增强通用 AI Agent 的功能,每个 Skill 封装了「指令、元数据、可选资源(脚本/模板/参考文档)」,Agent 会在场景匹配时自动调用。
官方核心表述:
“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.”
2. 通俗理解
把 Skill 比作「给 Agent 准备的工作交接 SOP 大礼包」:
- 就像给新同事交接工作时准备的「流程说明+工具教程+素材模板+问题预案」,Agent 拿到后就能独立完成特定专业任务。
- 核心价值:无需开发完整 AI 产品,仅通过 Skill 封装,就能让通用 Agent 具备垂直领域的专业能力(如 PDF 处理、品牌设计、个性化写作)。
3. 与 MCP 的核心区别
| 特性 | Skill(技能包) | MCP(开放协议) |
|---|---|---|
| 核心定位 | 教 Agent「完整处理特定任务」 | 定义 Agent「调用外部工具/数据的统一方式」 |
| 包含内容 | 执行流程、工具用法、知识素材、代码脚本 | 仅调用协议,无任务逻辑或执行方法 |
| 核心作用 | 让 Agent 具备稳定可复用的「做事能力」 | 解决 Agent 与外部服务的「通信兼容问题」 |
4. 核心结构(官方规范)
一个 Skill 本质是一个文件夹,必须包含核心文件 SKILL.md(唯一必填项),复杂 Skill 可补充其他目录,典型结构如下:
my-skill/ # 技能文件夹(名称需与 SKILL.md 中 name 一致)
├── SKILL.md # 核心配置文件(元数据+指令)
├── assets/ # 素材资源(模板、图片、Logo 等)
├── scripts/ # 可执行脚本(Python/Shell 等,提升任务确定性)
├── reference/ # 参考文档(术语表、规范手册等)
└── sub-skills/ # 子技能(拆分复杂指令,按需加载)
其中 SKILL.md 必须包含 YAML 前置元数据(必填字段)+ Markdown 正文(指令内容),示例格式:
---
name: pdf-handler # 技能名称(小写字母+连字符,需与文件夹名一致)
description: 处理PDF文件的全套工具,含提取文本/表格、合并/拆分、表单填写,适用于PDF批量处理场景
allowed-tools: Read, CodeExecutor # 可选:预授权工具列表(仅Claude Code支持)
license: MIT # 可选:开源协议
---
# PDF处理技能使用指南
## 核心流程
1. 用Read工具读取PDF文件路径
2. 根据用户需求选择对应功能(提取/合并/拆分)
3. 复杂操作调用scripts目录下的pdf_utils.py脚本
4. 输出处理结果(文件/文本反馈)
二、Skills 运行原理
核心机制:渐进式披露(Progressive Disclosure)
为解决「上下文过长导致模型能力下降」的问题,Skill 内容按「优先级+使用时机」分三层加载,仅必要内容进入 Agent 上下文窗口,兼顾效率与功能。
1. 三层加载逻辑(通俗版)
| 层级 | 加载内容 | 加载时机 | 核心作用 | 示例内容 |
|---|---|---|---|---|
| Level 1 | SKILL.md 中的元数据(name+description) | Agent 启动时(始终加载) | 让 Agent 识别「什么时候该用这个Skill」 | name: pdf-handler; description: PDF文件处理工具 |
| Level 2 | SKILL.md 完整正文(核心指令) | 任务与元数据匹配时 | 教 Agent「具体怎么做」 | PDF 提取文本的步骤、输出格式要求 |
| Level 3 | 子技能/脚本/素材/参考文档 | 执行任务时按需加载 | 补充细节能力,突破上下文限制 | 表单填写脚本、品牌色值参考文档 |
2. 完整运行流程(以「PDF表单填写」为例)
- 预加载阶段:Agent 启动时,仅加载所有 Skill 的 Level 1 元数据(约100 Token/个),不占用过多上下文;
- 触发阶段:用户发送「帮我填写这个PDF表单」,Agent 匹配到
pdf-handler的描述,触发该 Skill; - 加载阶段:Agent 读取
pdf-handler/SKILL.md的完整正文(Level 2),获取表单填写的核心流程; - 深入阶段:正文提示「表单字段提取需调用 scripts/extract_fields.py」,Agent 按需加载该脚本(Level 3);
- 执行阶段:运行脚本提取PDF表单字段,按指令引导用户填写,最终生成填写完成的PDF;
- 收尾阶段:仅保留执行结果到上下文,释放Level 2/3内容,节省Token。
3. 关键优势:确定性+灵活性
- 灵活性:依赖 LLM 推理,能处理非预期场景(如用户上传非标准PDF格式,Agent 自动调用格式转换脚本);
- 确定性:复杂操作通过脚本执行(而非模型生成),结果可重复、无误差(如数据排序、文件格式转换)。
三、如何使用 Skills?(以 Claude Code 为例,官方推荐方案)
Claude Code(简称CC)是 Anthropic 推出的「本地 Agent 运行环境」,支持加载 Skill 并执行文件/脚本操作,适合个人用户本地使用。
1. 前置准备
- 设备要求:支持终端/命令行的电脑(Mac/Windows/Linux均可);
- 模型支持:默认 Claude 模型,可替换为国产模型(GLM 4.7、Kimi K2-thinking 等,需兼容 Agent Skills 标准)。
2. 三步安装 Claude Code
Step 1:安装核心程序
- 打开终端,遵循官方指南执行安装命令(不同系统略有差异):
- Mac/Linux:
curl -fsSL https://code.claude.com/install.sh | sh - Windows:需先安装 WSL(Windows 子系统),再执行上述命令;
- Mac/Linux:
- 验证安装:终端输入
claude --version,显示版本号即成功(如claude-code v1.2.0)。
Step 2:替换模型(可选,非技术用户可跳过)
- 搜索目标模型的「Claude Code 适配教程」(如「Kimi K2-thinking Claude Code 接入」);
- 用 AI 辅助配置:将教程链接发给 ChatGPT/Kimi,发送指令「帮我一步步配置 Claude Code 替换为 Kimi 模型,我是电脑小白」;
- 推荐工具:
cc-switch(模型管理工具,简化切换流程,项目地址:https://github.com/farion1231/cc-switch)。
Step 3:创建独立工作目录(重要!)
- 终端输入
mkdir skill-test && cd skill-test(创建并进入文件夹); - 后续所有操作都在该目录下,避免影响电脑其他文件。
3. 安装并使用 Skill
方式1:自动安装(推荐,适合小白)
- 终端输入
claude启动 CC; - 发送指令:
安装 Skill,项目地址:https://github.com/anthropics/skills/tree/main/skills/pdf-handler(替换为目标 Skill 地址); - CC 会自动下载、解压并安装到指定目录,无需手动操作。
方式2:手动安装(适合自定义 Skill)
- 从官方仓库/第三方市场下载 Skill 文件夹/ZIP包(官方仓库:https://github.com/anthropics/skills);
- 解压后放入以下目录之一:
- 局部目录(仅当前项目可用):
./.claude/skills/ - 全局目录(所有项目可用):
~/.claude/skills/;
- 局部目录(仅当前项目可用):
- 重启 CC(终端按
Ctrl+C终止进程,再输入claude重启)。
4. 调用 Skill 的两种模式
- 显式调用:用户直接指定 Skill,如「用 pdf-handler 提取这个PDF的文本」;
- 隐式调用:Agent 自动匹配,如直接上传PDF并说「提取里面的表格」,CC 会匹配
pdf-handler并执行。
4. Skill 获取渠道
| 渠道类型 | 推荐平台/地址 | 优势 | 不足 |
|---|---|---|---|
| 官方仓库 | https://github.com/anthropics/skills | 安全可靠,格式规范 | 数量有限,侧重基础功能 |
| 第三方市场 | https://skillsmp.com/zh | 数量多,覆盖场景广 | 分类混乱,无评价体系,优质Skill难筛选 |
四、如何制作 Skills?(零代码+进阶教程)
1. 零代码制作(用官方 skill-creator,小白首选)
skill-creator 是 Anthropic 官方提供的「技能生成器」,能通过自然语言交互,自动生成符合规范的 Skill,无需手动写配置。
Step 1:安装 skill-creator
- 启动 Claude Code,发送指令:
/plugin marketplace add anthropics/skills(添加官方插件市场); - 继续发送:
/plugin install example-skills@anthropic-agent-skills(安装 skill-creator 依赖); - 验证安装:发送
/plugin list,显示example-skills即成功; - 重启 CC 生效。
Step 2:交互式生成 Skill
- 明确需求,发送触发指令(示例):
用 skill-creator 创建一个名为「weekly-report-generator」的技能,功能: 1. 读取 assets 目录下的周报模板(template.md); 2. 调用 Read 工具提取 ./data 文件夹中的项目数据; 3. 自动填充模板,生成 Markdown 格式周汇报; 4. 允许使用的工具:Read、Glob; 输出语言要求:正式、量化数据优先。 - 按提示完成交互式配置:
- 确认技能名称、描述、允许工具;
- 补充核心流程(如数据提取规则、模板填充逻辑);
- 选择是否生成示例素材(如模板文件、测试数据)。
- 生成并验证:
- CC 自动生成完整 Skill 目录(含 SKILL.md、assets、scripts);
- 发送指令:
用 skill-creator 验证 weekly-report-generator 技能,检查格式合规性。
Step 3:安装并测试自定义 Skill
- 发送指令:
安装 Skill,路径:./.claude/skills/weekly-report-generator; - 上传测试数据(如项目数据文件、周报模板);
- 发送测试指令:
生成本周工作汇报,验证 Skill 执行效果。
2. 进阶:手动编写/精调 Skill(适合有基础用户)
Step 1:遵循官方规格编写 SKILL.md
核心要求(参考:https://agentskills.io/specification):
- YAML 前置元数据必填
name和description,name需与文件夹名一致(小写+连字符); - Markdown 正文需包含:核心流程、工具使用说明、输出规范、异常处理方案;
- 复杂指令拆分到子技能(如
sub-skills/form-fill.md),在主 SKILL.md 中引用。
Step 2:添加可选资源
- scripts 目录:放入可执行脚本(如 Python 数据处理代码),示例脚本(pdf转word):
# scripts/pdf2word.py from pdf2docx import Converter def convert_pdf_to_word(pdf_path, word_path): cv = Converter(pdf_path) cv.convert(word_path, start=0, end=None) cv.close() return f"转换成功:{word_path}" - assets 目录:放入模板、图片、术语表等(如品牌规范手册、周报模板);
- reference 目录:放入参考资料(如行业标准、计算公式说明)。
Step 3:测试与迭代
- 安装自定义 Skill 后,模拟不同场景测试(如正常数据、异常格式、边缘情况);
- 若执行失败,按以下步骤排查:
- 检查 SKILL.md 元数据格式是否正确;
- 确认
allowed-tools包含所需工具; - 验证脚本是否可在 CC 沙盒中运行(无外部依赖);
- 优化指令:补充异常处理逻辑(如「若文件格式不支持,提示用户转换为PDF」)。
3. 常见问题排查
| 问题现象 | 排查步骤 |
|---|---|
| skill-creator 未触发 | 1. 确认已安装 example-skills 插件;2. 指令中明确「用 skill-creator」;3. 开启文件写入权限 |
| SKILL.md 生成失败 | 1. 需求描述是否清晰;2. 磁盘是否有写入权限;3. 重启 CC 重试 |
| Skill 调用无响应 | 1. 技能名称与元数据 name 一致;2. 任务描述与 description 匹配;3. 所需工具已添加到 allowed-tools |
五、官方补充资源
- 核心规范文档:https://agentskills.io/specification
- 官方 Skill 仓库:https://github.com/anthropics/skills
- Claude Code 官方指南:https://code.claude.com/docs/en/quickstart
更多推荐



所有评论(0)