Agent Skills

Agent Skills 是扩展 Claude 等产品功能的模块化能力。每个 Skill 打包了指令、元数据和可选资源(脚本、模板),Claude 会在相关时自动使用它们。

为什么使用 Skills

Skills 是可重用的、基于文件系统的资源,为 Claude 提供特定领域的专业知识:工作流程、上下文和最佳实践,将通用型智能体转变为专家。与 prompt(用于一次性任务的对话级指令)不同,Skills 按需加载,消除了在多个对话中重复提供相同指导的需要。

主要优势

  • 专业化:为特定领域任务定制能力
  • 减少重复:创建一次,自动使用
  • 组合能力:组合 Skills 构建复杂工作流程

Skills 的工作原理

Skills 利用 Claude 的虚拟机环境来提供仅靠提示词无法实现的能力。Claude 在具有文件系统访问权限的虚拟机中运行,允许 Skills 以目录形式存在,包含指令、可执行代码和参考材料,其组织方式就像您为新团队成员创建的入职指南。

这种基于文件系统的架构实现了渐进式披露:Claude 根据需要分阶段加载信息,而不是预先消耗上下文。

三种 Skill 内容类型,三个加载级别

Skills 可以包含三种类型的内容,每种在不同时间加载:

级别 1:元数据(始终加载)

内容类型:指令。Skill 的 YAML 前置信息提供发现信息:

---
name: pdf-processing
description: Extract text and tables from PDF files, fill forms, merge documents. Use when working with PDF files or when the user mentions PDFs, forms, or document extraction.
---

Claude 在启动时加载此元数据并将其包含在系统提示中。这种轻量级方法意味着您可以安装许多 Skills 而不会产生上下文开销;Claude 只知道每个 Skill 的存在及其使用时机。

级别 2:指令(触发时加载)

内容类型:指令。SKILL.md 的主体包含程序性知识:工作流程、最佳实践和指导:

# PDF Processing

## Quick start

Use pdfplumber to extract text from PDFs:

```python
import pdfplumber

with pdfplumber.open("document.pdf") as pdf:
    text = pdf.pages[0].extract_text()
```

For advanced form filling, see [FORMS.md](FORMS.md).

当您的请求与某个 Skill 的描述匹配时,Claude 通过 bash 从文件系统读取 SKILL.md。只有在此时,这些内容才会进入上下文窗口。

级别 3:资源和代码(按需加载)

内容类型:指令、代码和资源。Skills 可以捆绑额外的材料:

pdf/
├── SKILL.md              # 主要说明(触发时加载)
├── FORMS.md              # 表单填充指南(根据需要加载)
├── reference.md          # API 参考(根据需要加载)
├── examples.md           # 使用示例(根据需要加载)
└── scripts/
    ├── analyze_form.py   # 实用脚本(执行,不加载)
    ├── fill_form.py      # 表单填充脚本
    └── validate.py       # 验证脚本

指令:额外的 markdown 文件(FORMS.md、REFERENCE.md),包含专门的指导和工作流程

代码:可执行脚本(fill_form.py、validate.py),Claude 通过 bash 运行;脚本提供确定性操作而不消耗上下文

资源:参考材料,如数据库模式、API 文档、模板或示例

---
name: pdf-processing
description: 从 PDF 文件中提取文本和表格、填充表单、合并文档。在处理 PDF 文件或用户提及 PDF、表单或文档提取时使用。
---

# PDF 处理

## 快速开始

使用 pdfplumber 提取文本:
```python
import pdfplumber
with pdfplumber.open("file.pdf") as pdf:
    text = pdf.pages[0].extract_text()
```

## 高级功能

**表单填充**:参阅 [FORMS.md](FORMS.md) 获取完整指南
**API 参考**:参阅 [REFERENCE.md](REFERENCE.md) 获取所有方法
**示例**:参阅 [EXAMPLES.md](EXAMPLES.md) 获取常见模式

Claude 仅在被引用时才访问这些文件。文件系统模型意味着每种内容类型都有不同的优势:指令用于灵活指导,代码用于可靠性,资源用于事实查询。

级别加载时机Token 开销内容
级别 1:元数据始终(启动时)每个 Skill 约 100 tokensYAML 前置信息中的 name 和 description
级别 2:指令Skill 被触发时5k tokens 以内SKILL.md 主体,包含指令和指导
级别 3+:资源按需实际上无限制通过 bash 执行的捆绑文件,无需将内容加载到上下文中

Claude 如何访问 Skill 内容:

当 Skill 被触发时,Claude 使用 bash 从文件系统读取 SKILL.md,将其指令带入上下文窗口。如果这些指令引用了其他文件(如 FORMS.md 或数据库模式),Claude 也会使用额外的 bash 命令读取这些文件。当指令提到可执行脚本时,Claude 通过 bash 运行它们并仅接收输出(脚本代码本身永远不会进入上下文)。

示例:加载 PDF 处理 skill

以下是 Claude 加载和使用 PDF 处理 skill 的过程:

  1. 启动:系统提示包含:PDF Processing - Extract text and tables from PDF files, fill forms, merge documents
  2. 用户请求:”提取这个 PDF 中的文本并总结”
  3. Claude 调用bash: read pdf-skill/SKILL.md → 指令加载到上下文中
  4. Claude 判断:不需要表单填写,因此不读取 FORMS.md
  5. Claude 执行:使用 SKILL.md 中的指令完成任务

对于具有多个领域的技能,按领域组织内容以避免加载无关的上下文。当用户询问销售指标时,Claude 只需要读取与销售相关的架构,而不是财务或营销数据。这保持令牌使用低且上下文集中。

bigquery-skill/
├── SKILL.md (概述和导航)
└── reference/
    ├── finance.md (收入、计费指标)
    ├── sales.md (机会、管道)
    ├── product.md (API 使用、功能)
    └── marketing.md (活动、归因)
# BigQuery 数据分析

## 可用数据集

**财务**:收入、ARR、计费 → 参阅 [reference/finance.md](reference/finance.md)
**销售**:机会、管道、账户 → 参阅 [reference/sales.md](reference/sales.md)
**产品**:API 使用、功能、采用 → 参阅 [reference/product.md](reference/product.md)
**营销**:活动、归因、电子邮件 → 参阅 [reference/marketing.md](reference/marketing.md)

## 快速搜索

使用 grep 查找特定指标:

```bash
grep -i "revenue" reference/finance.md
grep -i "pipeline" reference/sales.md
grep -i "api usage" reference/product.md
```

安全注意事项

强烈建议仅使用来自可信来源的 Skills:您自己创建的或从 Anthropic 获取的。Skills 通过指令和代码为 Claude 提供新能力,虽然这使它们功能强大,但也意味着恶意 Skill 可以指导 Claude 以不符合 Skill 声明目的的方式调用工具或执行代码。

关键安全注意事项

  • 彻底审查:检查 Skill 中捆绑的所有文件:SKILL.md、脚本、图片和其他资源。注意异常模式,如意外的网络调用、文件访问模式或与 Skill 声明目的不符的操作
  • 外部来源有风险:从外部 URL 获取数据的 Skills 具有特殊风险,因为获取的内容可能包含恶意指令。即使是可信的 Skills,如果其外部依赖随时间变化,也可能被攻击
  • 工具滥用:恶意 Skills 可以以有害方式调用工具(文件操作、bash 命令、代码执行)
  • 数据暴露:具有敏感数据访问权限的 Skills 可能被设计为向外部系统泄露信息
  • 像安装软件一样对待:仅使用来自可信来源的 Skills。在将 Skills 集成到具有敏感数据或关键操作访问权限的生产系统时要特别小心

最后

Skills 已从“技术概念”走向“生产力基础设施”。无论你是开发者、产品经理还是内容创作者,掌握 TOP 技能并将其融入工作流,将成为 2026 年的核心竞争力