skills 数组附加,或从挂载到会话的 GitHub 仓库加载。附加的技能分为两种类型。所有技能的工作方式相同:当技能与任务相关时,您的智能体会自动调用它们。
- **OMA 预构建技能:**常见的文档任务,如 PowerPoint、Excel、Word 和 PDF 处理(
pptx、xlsx、docx、pdf)。 - **自定义技能:**您编写并上传到工作区的技能。
托管智能体 API 请求需要
managed-agents-2026-04-01 Beta 请求头,但记忆存储端点除外,它们使用 agent-memory-2026-07-22。SDK 会自动设置正确的 Beta 请求头。请参阅Beta 请求头。创建自定义技能
自定义技能是一个包含SKILL.md 文件及任何支持文件的目录,以 zip 压缩包或单个文件的形式上传到您的工作区。创建技能后会返回 skill_* ID,您在将其附加到智能体时需要引用该 ID。OMA 预构建技能已在每个工作区中可用,无需执行此步骤。如果只使用预构建技能,请跳至将技能附加到智能体。
当您使用 cURL 直接调用技能 API 时,请显式传递 anthropic-beta: skills-2025-10-02 请求头。CLI 和 SDK 会自动发送该请求头。
这些示例省略了可选的 display_title 字段,因此技能的标题将从 SKILL.md 中派生。显式传递的 display_title 在您工作区的自定义技能中必须是唯一的。
将技能附加到智能体
在创建智能体时附加技能。每个会话最多支持 500 个技能,按会话中所有智能体去重后的集合计数(请参阅多智能体编排)。挂载更多技能会增加会话沙箱的启动时间。请仅附加每个智能体完成其任务所需的技能。
skills 数组中的每个条目使用以下字段:
从 GitHub 仓库加载技能
技能也可以存放在您的代码库中。当会话通过github_repository 资源挂载仓库时,会在会话启动时扫描仓库根目录下的 .claude/skills 目录,在那里找到的每个技能都会对智能体可用。无需上传,也无需在智能体的 skills 数组中添加条目。智能体可以看到每个已发现技能的名称、描述及其在沙箱中的路径,并在任务匹配时读取该技能的 SKILL.md,包括该技能附带的任何脚本和资源。技能发现依赖于智能体工具集中的 read 工具,该工具默认启用;禁用了 read 的智能体不会加载仓库技能。
仓库技能发现在云沙箱中运行。自托管沙箱不支持 GitHub 仓库资源。
.claude/skills/<skill-name>/SKILL.md 路径(即一级子目录深度)来查找技能:
.claude/skills/SKILL.md:没有技能目录包裹的SKILL.md.claude/skills/tools/code-review/SKILL.md:嵌套深度超过一级目录skills/code-review/SKILL.md:位于.claude之外的skills目录
.claude/skills 目录(例如在某个包的子目录内)不会在会话启动时被公告;当智能体读取该子树下的文件时,这些技能仍可能被发现。
仓库技能使用与您上传的自定义技能相同的 SKILL.md 格式。有关格式和编写指南,请参阅 智能体技能 和技能编写最佳实践。
要从仓库加载技能,请创建一个挂载该仓库的会话。这与访问 GitHub 中展示的请求相同;mount_path 是可选的,默认为 /workspace/<repo-name>:
authorization_token 必须具有访问该仓库的权限。这与任何仓库挂载所使用的个人访问令牌流程相同;请参阅访问 GitHub。
已发现的技能遵循仓库的检出状态:如果资源设置了 checkout 分支或提交,则使用该分支或提交,否则使用仓库的默认分支。扫描仅在会话启动时运行一次。会话期间推送的提交不会被获取;要加载更新后的技能,请启动新会话。
仓库技能与通过智能体 skills 数组附加的技能协同工作。如果仓库技能与已附加的技能或来自另一个已挂载仓库的技能同名,两者都可用;每个技能都会以其各自的路径进行公告。
后续步骤
云环境设置
为您的会话自定义云沙箱。
通过 API 使用智能体技能
了解如何通过 API 使用智能体技能来扩展智能体能力。
文件 API
一次上传文件,即可在多个 API 请求中引用。
在 API 中开始使用智能体技能
了解如何在 10 分钟内使用智能体技能通过 OMA API 创建文档。