有关完整的 API 参考(包括请求/响应架构和所有参数),请参阅:
- Skill 管理 API 参考 - Skills 的 CRUD 操作
- Skill 版本 API 参考 - 版本管理
快速链接
概述
有关 Agent Skills 的架构和实际应用的深入探讨,请阅读我们的工程博客:为真实世界的代理配备 Agent Skills。
container 结构。
使用 Skills
无论来源如何,Skills 在 Messages API 中的集成方式都是相同的。您在container 参数中指定 Skills,包括 skill_id、type 和可选的 version,它们在代码执行环境中执行。
您可以从两个来源使用 Skills:
| 方面 | Anthropic Skills | 自定义 Skills |
|---|---|---|
| Type 值 | anthropic | custom |
| Skill ID | 短名称:pptx、xlsx、docx、pdf | 生成的:skill_01AbCdEfGhIjKlMnOpQrStUv |
| 版本格式 | 基于日期:20251013 或 latest | 纪元时间戳:1759178010641129 或 latest |
| 管理 | 由 Anthropic 预构建和维护 | 通过 Skills API 上传和管理 |
| 可用性 | 对所有用户可用 | 仅限您的工作区 |
source 参数进行过滤)。集成形状和执行环境是相同的——唯一的区别是 Skills 的来源和管理方式。
前置条件
要使用 Skills,您需要:- Anthropic API 密钥,来自 Console
- Beta 头部:
code-execution-2025-08-25- 启用代码执行(Skills 需要)skills-2025-10-02- 启用 Skills APIfiles-api-2025-04-14- 用于上传/下载文件到/从容器
- 代码执行工具在您的请求中启用
在 Messages 中使用 Skills
Container 参数
Skills 使用 Messages API 中的container 参数指定。每个请求最多可以包含 8 个 Skills。
结构对于 Anthropic 和自定义 Skills 都是相同的——指定必需的 type 和 skill_id,并可选择包含 version 以固定到特定版本:
下载生成的文件
当 Skills 创建文档(Excel、PowerPoint、PDF、Word)时,它们在响应中返回file_id 属性。您必须使用 Files API 来下载这些文件。
工作原理:
- Skills 在代码执行期间创建文件
- 响应包括每个创建的文件的
file_id - 使用 Files API 下载实际文件内容
- 在本地保存或根据需要处理
有关 Files API 的完整详情,请参阅 Files API 文档。
多轮对话
通过指定容器 ID 在多个消息中重用相同的容器:长时间运行的操作
Skills 可能执行需要多轮的操作。处理pause_turn 停止原因:
响应可能包括
pause_turn 停止原因,这表示 API 暂停了长时间运行的 Skill 操作。您可以在后续请求中按原样提供响应以让 Claude 继续其轮次,或者修改内容以中断对话并提供额外指导。使用多个 Skills
在单个请求中组合多个 Skills 来处理复杂工作流:管理自定义 Skills
创建 Skill
上传您的自定义 Skill 以在您的工作区中使用。您可以使用目录路径或单个文件对象进行上传。- 必须在顶级包含 SKILL.md 文件
- 所有文件必须在其路径中指定公共根目录
- 总上传大小必须在 8MB 以下
- YAML frontmatter 要求:
name:最多 64 个字符,仅小写字母/数字/连字符,无 XML 标签,无保留字(“anthropic”、“claude”)description:最多 1024 个字符,非空,无 XML 标签
列出 Skills
检索您的工作区可用的所有 Skills,包括 Anthropic 预构建 Skills 和您的自定义 Skills。使用source 参数按 Skill 类型进行过滤:
检索 Skill
获取特定 Skill 的详情:删除 Skill
要删除 Skill,您必须首先删除其所有版本:版本控制
Skills 支持版本控制以安全地管理更新: Anthropic 管理的 Skills:- 版本使用日期格式:
20251013 - 进行更新时发布新版本
- 指定确切版本以获得稳定性
- 自动生成的纪元时间戳:
1759178010641129 - 使用
"latest"始终获取最新版本 - 更新 Skill 文件时创建新版本
Skills 如何加载
当您在容器中指定 Skills 时:- 元数据发现:Claude 在系统提示中看到每个 Skill 的元数据(名称、描述)
- 文件加载:Skill 文件被复制到容器中的
/skills/{directory}/ - 自动使用:Claude 在与您的请求相关时自动加载和使用 Skills
- 组合:多个 Skills 为复杂工作流组合在一起
用例
组织 Skills
品牌与通信- 将公司特定的格式(颜色、字体、布局)应用于文档
- 生成遵循组织模板的通信
- 确保所有输出中的一致品牌指南
- 使用公司特定格式(OKR、决策日志)构建笔记
- 生成遵循团队约定的任务
- 创建标准化的会议记录和状态更新
- 创建公司标准报告、提案和分析
- 执行公司特定的分析程序
- 生成遵循组织模板的财务模型
个人 Skills
内容创建- 自定义文档模板
- 专业格式和样式
- 特定领域的内容生成
- 自定义数据处理管道
- 专业可视化模板
- 行业特定的分析方法
- 代码生成模板
- 测试框架
- 部署工作流
示例:财务建模
组合 Excel 和自定义 DCF 分析 Skills:限制和约束
请求限制
- 每个请求的最大 Skills 数:8
- 最大 Skill 上传大小:8MB(所有文件合计)
- YAML frontmatter 要求:
name:最多 64 个字符,仅小写字母/数字/连字符,无 XML 标签,无保留字description:最多 1024 个字符,非空,无 XML 标签
环境约束
Skills 在代码执行容器中运行,具有以下限制:- 无网络访问 - 无法进行外部 API 调用
- 无运行时包安装 - 仅可用预安装的包
- 隔离环境 - 每个请求获得一个新容器
最佳实践
何时使用多个 Skills
当任务涉及多种文档类型或域时组合 Skills: 良好用例:- 数据分析(Excel)+ 演示文稿创建(PowerPoint)
- 报告生成(Word)+ 导出为 PDF
- 自定义域逻辑 + 文档生成
- 包含未使用的 Skills(影响性能)