Agent Skills终极指南
Claude 技能的价值仍然被严重低估。
一个精心设计的技能可以提供智能功能,轻松媲美甚至超越完整的人工智能产品。更重要的是:任何人都可以开发自己的技能,无需任何技术背景。
以我的 Article-Copilot 为例。仅凭一项技能,我就构建了一个代理应用程序,它可以处理从材料处理到实际写作的一切事务。
在深入研究了 Anthropic 的官方技术博客并持续进行代理技能实验后,我整理出了我认为目前最全面的技能指南。它涵盖以下内容:
- 对技能概念和原理最易于理解的解释
- 探讨技能的真正价值、技术优势及其对 AI 产品设计的影响
- 关于使用和开发技能的全面教程
- 如何识别技能适用的场景
从概念阐释到工作机制,从实践教程到实际应用,让我带您了解所有内容。
1、什么是技能?从起源到运行原理
2025 年 10 月中旬,Anthropic 正式发布了 Claude 技能。
两个月后,代理技能作为开放标准进一步发布,旨在构建一个全新的 AI 代理开发生态系统。
OpenAI、GitHub、VS Code 和 Cursor 都已效仿。
为了更好地理解这一点,可以将技能 (Skills) 理解为“通用代理的扩展包”:
代理可以加载不同的技能包,从而获得不同的专业知识、工具使用能力,并可靠地完成特定任务。
最常见的问题是:这与 MCP 有何不同?
- MCP 是一种开放标准协议,专注于人工智能如何以统一的方式调用外部工具、数据和服务。它不定义任务逻辑或执行流程。
- 而技能则教会代理如何端到端地处理特定工作。它们将执行方法、工具调用模式和相关知识打包成一个完整的“能力扩展包”,为代理提供稳定、可重用的工作方式。
以下是 Anthropic 官方技能的一些示例:
- PDF:包含用于 PDF 合并、拆分和文本提取的代码脚本。它教会智能体如何处理 PDF 文件、提取文本、创建新的 PDF 文件以及合并或拆分文档。
- 品牌指南:包含品牌设计规范和徽标资源。当智能体设计网站或海报时,它可以参考这些设计资源并自动遵循企业设计标准。
- 技能创建器:将创建技能的方法打包成一个元技能,让 AI 启动技能创建流程,并引导用户创建满足其需求的高质量技能。
技能创建器:教会智能体如何帮助用户创建新的智能体功能
但技能的价值远不止于此。
您可以将其视为一种高度通用的新范式,适用于从垂直领域智能体到 AI 产品开发的一切:您可以利用通用智能体核心,以几乎零难度的方式创建具有通用 AI 智能的垂直领域智能体应用程序。
让我们先来看看技能是如何运作的。
首先,我们应该如何理解技能?
Anthropic 表示:
技能是扩展智能体功能的模块化能力。每个技能都包含 LLM 指令、元数据和可选资源(脚本、模板等),智能体会在需要时自动使用它们。
我有一个更直观的解释:技能就像是为智能体准备的“工作交接包”。
想象一下,你要把一项任务交给一位新同事。如果你无法面对面地指导他,只能依靠文档(而且你想一次性完成所有交接工作,以免日后麻烦),你会准备些什么?
- 任务执行标准操作程序 (SOP) 和必要的背景知识(大致如何完成这项任务)
- 工具使用说明(使用哪些软件,如何操作)
- 所需模板和材料(历史案例、格式标准)
- 可能出现的问题、规范和解决方案(补充详细指南)
技能设计架构本质上是此交接包的数字化版本:
一个相对标准的技能结构示例。在实际案例中,通常只需要 SKILL.md 文件;其他结构是可选的。
在技能中,说明文档提供灵活的指导,代码负责可靠的调用,资源则用于事实查找和参考。
当智能体运行技能时,它:
- 使用 SKILL.md 作为主要指南
- 根据任务情况,决定何时调用代码脚本、参考文档或使用资源
- 通过“计划-执行-观察”的交错反馈循环完成任务目标
当然,技能还可以扩展智能体的工具和 MCP 使用范围。通过文档和脚本,您可以教会智能体连接和使用特定的外部工具和 MCP 服务。
以下是 PPTX 技能文件目录的示例:
整个文件夹是一个完整的功能包,用于支持 AI 创建、编辑和分析 PowerPoint 演示文稿。
核心文件是 SKILL.md,其中包含技能的元数据和任务指南,告诉智能体何时使用此技能以及如何逐步处理任务。
值得注意的是,独立的子技能通常会被拆分成子文档(例如,html2pptx.md 用于教 AI 如何将 html 导出为 pptx),以避免一次性加载过长的技能文档,从而节省上下文窗口空间。
Scripts/ 目录包含各种预先编写的程序脚本,Agent 可以使用这些脚本,例如用于将 html 转换为 pptx 的一键式脚本。这样,Agent 在运行任务时无需临时开发工具,可以直接调用这些脚本,从而节省令牌、避免错误并提高速度。
此外,还有一些参考文档(本项目打包方式并非完全标准,但基于 SKILL.md,Agent 仍然可以理解哪些文档可以被引用),例如 ooxml.md,这是一个 ooxml 格式文件的解析指南。
整个技能以简洁的形式整合了能力指导文档、代码脚本、参考文档和可用资源,有针对性地扩展了 Agent 生成 pptx 文件的能力。
3、技能的真正价值:垂直智能体的未来
我之所以看好技能的价值和未来生态系统的发展,是因为技能与其他人工智能应用开发方法在根本机制层面上存在差异:
人类提供专业知识和工具方法。通用智能体则提供智能、自主理解和主动执行。
简而言之:人类提供指导,而智能体最终基于自身智能执行。
而且,“智能体 + 文件”的格式足够灵活。
这使其相比其前身(工作流和程序编写的人工智能应用)具有三大关键优势:
- 非技术人员可以使用自然语言编写,无需任何代码
- 它们可以突破预设的限制,灵活响应用户输入,并处理各种极端情况
- 多个技能甚至可以自由组合,使应用方法极其灵活
本节内容可能略显深奥,但通过完整的示例,理解起来并不难。虽然这些只是我个人的观点,但它们应该仍然有助于您理解技能的价值和智能体的发展趋势。
3.1 零代码、自然语言、编写真正智能的代理
回顾以往的AI应用开发方法:
- 毋庸置疑,以程序方式编写的AI应用需要理解程序逻辑和技术实现。
- 即使是像Coze、Dify和N8N这样近期流行的工作流平台,仍然需要理解节点配置和条件分支。它本质上仍然是“编程”,只不过界面更加友好。
但技能的创建门槛则完全不同:入门门槛低,智能上限高。
以Anthropic的品牌指南技能为例:
只需一个SKILL.md文件,完全用自然语言编写。
- 元数据:何时使用此技能
- 正文:品牌颜色、字体等的文本描述
但这足以引导代理成为一个遵循Anthropic品牌设计的垂直代理,可用于品牌网站、海报和PPT设计。
当您想要设计一个符合 Anthropic 设计标准的 AI 搜索网站时,该代理会自动运行此技能。
技能有两种加载模式:显式加载和隐式加载。
显式加载由用户查询直接指定;隐式加载则根据任务与 LLM 元数据描述之间的相关性自动匹配。
这是一个由该技能代理一次性开发的网站,其风格与 Claude 的官方网站设计非常接近:
对于更复杂的情况,您可以参考其他官方示例,例如制作 PPT。
这些案例基本验证了:仅使用技能和代理构建的垂直代理所达到的智能效果,可以与类似的 AI 产品相媲美,甚至超越它们。
而且,构建这些垂直代理无需编写任何程序代码。
非技术领域的专家只需撰写一份简明扼要的文档,即可创建自己的专业代理。
请以文档形式清晰地描述您的专业经验和工作流程,代理人可据此执行。
3.2 突破预设限制,灵活应对实际情况
此优势在于……智能体技能常常被忽视。
工作流或传统程序的核心问题在于,它们假定所有情况都可以预先设定。
例如,一个基于用户记忆的AI个性化助手通常需要预定义以下内容:
- 用户导入记忆文件的入口点
- 允许上传的文件格式
- 数据应包含的字段
以及可能出现的特殊情况及其处理方式。
但现实情况往往是这样的:
- 需要指导用户点击“导入”按钮
- 用户只有预期之外的文件格式:预期支持md格式,但他们只有doc格式
- 数据字段不匹配:预期每个文件都有标题,但用户文件没有标题
或者出现预设范围之外的极端情况。
此时,工作流或传统程序就会陷入困境。它们只能沿着预设路径执行,一旦遇到意外情况或需要用户自行解决,就会报错。
但通用的 Agent + Skill 应用的工作方式截然不同:
- 可以在统一的对话框中接收各种用户数据(文本、文件、图像)
- 可以自主调用其他 Skill,或即时编写 doc2md 脚本,自动转换用户格式
- 可以提取并补充每个文件的标题,完成数据导入
- 可以基于 LLM 推理智能解决各种边缘问题
利用 Skill 构建的垂直领域 Agent,以 Skill 的知识和方法为指导,可以巧妙地借用 Agent 内部的 LLM 智能,灵活地处理各种问题。
3.3 多种 Skill 的自由组合
Agent Skill 本质上仍然是上下文工程。Skill 只是将垂直领域知识、脚本调用方法等添加到 Agent 的上下文窗口中。
因此,Skill 在实际应用中非常灵活,甚至可以在单个任务中调用多个 Skill。
例如:
结合品牌指南和 pptx 文件,自动生成符合品牌规范的 pptx 文件
还可以处理更复杂的场景,例如制作产品分析报告:
- 从网页抓取竞争对手数据(网页抓取技能)
- 从 PDF 文件中提取用户反馈(PDF 技能)
- 分析数据并生成图表(数据分析技能)
- 根据品牌标准创建 PPT(品牌指南 + PPTX 技能)
每增加一项技能,功能就会增加一项。N 项技能可以处理远超 N 个应用场景。
4、核心技能运行机制:渐进式披露
本节旨在解释技能运行的核心机制之一:渐进式披露。
这部分内容更偏技术性。如果您只想使用或创建技能,可以直接跳到下一节。
由于技能本质上是上下文工程,因此技能代理也需要关注这个问题。
加载了技能的完整代理架构如下所示:
技能包位于代理文件系统(右侧),默认情况下不会加载到上下文窗口中。
根据不同的上下文加载顺序和优先级,技能分为 3 个级别:
技能内容的 3 个渐进式披露优先级级别
4.1 级别 1(元数据,始终加载)
SKILL.md 文档中的元数据,包括名称和使用说明。长度约为 100 个标记。
代理启动时,会将技能元数据加载到上下文窗口中,并将其包含在系统提示中。
AI 通过理解用户消息和技能元数据之间的匹配情况来判断是否自动使用技能。
---
name: pdf
description: A comprehensive PDF toolkit for extracting text and tables, creating new PDFs, merging/splitting documents, and handling forms. Used when Claude needs to fill PDF forms or programmatically process, generate, or analyze PDF documents at scale.
---默认仅加载元数据 → 这意味着您可以在一个代理上安装多个技能,而不会影响上下文性能。
4.2 级别 2(指令,触发时加载)
SKILL.md 文档的正文内容,即技能的主要指令,通常包含工作流程、最佳实践和指导。
建议令牌数少于 5000 个。
当用户消息与技能元数据描述匹配且需要调用该技能时,代理会使用 bash 读取文档正文。读取时,文档内容会加载到上下文窗口中。
SKILL.md 的结构:分为 YAML 元数据和 MD 主体
4.3 级别3(子技能指令/资源/代码,按需动态加载)
包含子技能文档、代码脚本、参考文档、可用资源等。
一些代理技能规范文档将它们统称为“资源”。相对而言,第三层的结构要求较为宽松。
子技能文档:相对独立、复杂的子技能指令,在第三层单独加载。
随着技能复杂性的增加,可能是由于技能知识上下文过长,或者某些知识仅在特定情况下使用。在某些特定场景下,可能不适合将所有内容都放在一个单独的 SKILL.md 文件中。它可以拆分成独立的指令文档,仅在需要时加载。
脚本代码:被视为“代理的可执行资源”,不被视为工具使用(工具使用是指代理从外部调用的独立服务)。
代理直接调用其计算机(虚拟机)中的脚本。脚本代码本身不会进入上下文窗口;只有脚本运行后的输出才会进入代理的上下文。
参考文档、资产等可用资源当然属于 3 级,仅在需要时动态读取和加载。
3 级资源由于其按需加载的特性,文件在被访问之前不会占用上下文空间,因此没有内容大小限制。可以根据实际业务需求添加素材。
在技能运行过程中,智能体会自动判断哪些技能与任务相关,并根据技能的元数据动态判断和加载完成任务所需的模块:
Level 1: SKILL.md metadata (name + description)
↓
Level 2: SKILL.md full content
↓
Level 3: Specific files in Resources (read on demand)然而,尽管智能体技能支持“渐进式披露”,
但在商业化的智能体产品中,如何在单个或多个技能组合使用时稳定控制上下文长度仍然是一个无法回避的工程难题。
5、技能对 AI 产品设计的影响
我们首先讨论一个问题:
使用技能构建的垂直领域智能体应用是否会因为推理依赖性而出现响应延迟问题?
- 技能是一种非常宽容的智能体设计架构
- 技能可以被设计成包含大量标记的指令文档,用于指导模型思考;或者无需思考即可发出简单的指令,直接指向可运行的脚本代码。
- 由于技能无需进入上下文窗口即可直接调用代码逻辑,因此使用技能无需智能体持续进行推理。智能体也可以扮演类似钩子的角色,本质上与普通程序执行并无二致。
- 所以技能可以像提示一样缓慢,也可以像工作流一样快速。
此外,结合两个极端趋势判断:
- token价格将会下降
- 智能体速度将会提升
从这个角度来看,基于技能的垂直智能体的性能和成本问题也并非无法解决的长期难题。
因此,进一步推断未来原生人工智能产品的开发趋势:
以笔记应用为例,大多数应用的逻辑仍然是:新建笔记 -> 代码 -> 处理。新建笔记直接使用代码逻辑存储,完全照搬原样。
但对于原生AI笔记应用来说,它们可能内置了类似技能的指导功能,包括笔记存储、智能纠错、重复笔记合并等等。其中一些技能可能主要以提示的形式出现(需要用户生成),而另一些则本质上只是代码逻辑(响应迅速)。
当用户编写新笔记时,AI会快速自主判断:可以直接存储吗?需要智能纠错吗?是否存在需要合并的重复历史笔记?
每种情况都由智能体自动匹配相应的技能来处理。
这样,基于技能的智能体产品可以使用同一个多模态输入框来处理各种用户输入,灵活应对突发情况,并为用户提供完全个性化的生成需求。
6、技能完整教程:创建与使用
如果您读到这里,技能对于AI应用开发的价值不言而喻:
巧妙地借用通用智能体的核心,专注于技能设计,您可以低成本地创建具有通用AI智能上限的垂直领域智能体应用。
对于智能体开发者,尤其是非技术团队或业务人员而言,这是一项巨大的开发优势:
- 无需编写任何代码即可创建智能体应用程序。只需“编写文档”,任何人都可以创建能够解决问题的垂直领域智能体。
- 无需过度关注智能体工程的技术细节。凭借通用智能体,技能智能体可以适应技能设计中缺失的代码和功能逻辑,甚至可以在运行时修复错误(尽管会影响性能)。创建演示、MVP 甚至小型智能体应用程序都变得非常容易,从而验证产品价值。
- 此外,您创建的垂直领域智能体还具有通用 AI 智能,能够灵活处理各种极端情况并实现个性化。其智能上限非常高。
那么,我们应该如何开始使用或创建我们的第一个技能呢?
7、教程:如何使用技能?(Claude Code 版本)
如果您已经知道如何使用,可以跳过此部分。
您还可以将这篇可能是互联网上最详细的技能教程分享给正在学习的朋友。
技能的使用方法有很多种。首先,我推荐一个我最常用的本地方法:Claude Code(简称 CC)。
注意:这里只是使用这个工具;不需要 Claude 模型。
顺便一提:Codex、Cursor 和其他工具正在逐步支持 sk。用法不当。如有兴趣,欢迎自行探索。
一个玩笑:
- Claude Code 是 Anthropic 公司发布的一款编码工具 ❌
- Claude Code 是一个通用的智能体框架,连 Anthropic 公司自己都没预料到 ✅
CC 的功能远不止 AI 编码:它可以代表你操作电脑,包括搜索网页、操作浏览器、访问文件、使用底层计算机命令、运行 Python 脚本等等。
这意味着 CC + 技能就相当于一个运行在你电脑上的垂直智能体。通过安装或创建不同的技能,你可以完成以下任务:
- 搜索网络信息,汇总你感兴趣的每日新闻
- 自动查看项目文件夹,输出项目回顾文档
- 以及其他不同的智能体任务
使用方法其实并不复杂,只是需要一些耐心:
7.1 安装和使用技能
在正式使用 Claude Code 之前,我建议在任意目录下创建一个空文件夹,例如“test”,然后在终端中切换到该文件夹目录。
然后在终端输入 claude,即可启动 CC。看到下图表示启动成功。
此步骤将 Claude Code 的后续 AI 行为限制在该目录下,从而减少对本地计算机上其他文件的影响。
❶ 安装技能之前,您需要先获取所需的技能文件包。
例如,官方技能仓库中已包含许多现成的技能。
您可以让 CC 自动为您安装技能,例如在 CC 中发送“安装技能”,技能项目地址为:
❷ 您也可以手动下载技能,解压文件包,并将其放入技能安装目录:
您可以将要安装的技能文件包放入当前项目文件夹的 /.claude/skills/ 目录:(如图所示,正确的项目技能路径配置)
您也可以选择全局目录 ~/.claude/skills/(所有项目都可以共享放置在全局目录中的技能)
❸ 安装完成后,请记得重启 CC 👉 只需退出终端并重新打开,或双击 Ctrl+C 终止 CC 进程)
使用技能时,只需在已安装的 CC 中发送“开始使用”,或者当用户消息与技能元数据描述匹配时,例如:我想创建一个技能,它可以自动检索每日新闻并向我的邮箱发送每日新闻邮件。它会自动调用技能并执行任务。
8、如何找到好的技能?
您可能已经注意到,当面向普通用户(例如您自己日常使用的用户)时,上述方法存在两个问题:
- 使用步骤确实比日常应用更复杂
- 很难找到所需的技能
传统方法是寻找大型第三方技能市场,例如skillsmp。
但很容易发现,大多数现有的公共技能市场缺乏完善的评估和审核系统。所有技能都缺乏合理的分类和排序机制,导致难以找到所需的技能。
您可以看到,仅按星级排序很难找到合适的精选技能。
9、如何创建技能?
好的,回到正题。
如果您已经按照上述步骤学习了技能的安装和使用方法,那么创建您的第一个技能将非常简单。
我们将使用 Anthropic 的官方技能:skill-creator
顾名思义,这是一个用于自动开发技能的技能(我的 AI 伙伴和文章代驾技能也使用了这项技能,极大地提高了技能开发效率)。
❶ 首先,安装 skill-creator。从这里下载。安装过程与上述教程相同。请 CC 协助进行自动安装。
❷ 安装完成后,您可以调用 skill-creator 自动创建所需的技能。
例如,向 CC 发送创建请求:创建一个可以自动将用户置顶的 PDF 文件转换为 Word 文档的新技能。
CC 会自动调用 skill-creator,生成 SKILL.md 和 pdf2word 脚本。
最后提示创建成功。
您还可以尝试:
- “创建能够以我的写作风格撰写文章的技能”
- “创建能够自动整理近期XX领域新闻日报的技能”……
10、如何安装您创建的技能?
以这种方式创建的技能默认采用 xx.skill 格式,这与 zip 或文件夹格式略有不同。这是技能创建者创建的技能压缩格式。
将指定的 .skill 文件地址告知 CC,并让 CC 直接安装该技能。
如果是文件夹或 zip 文件,请按照上述说明手动解压缩并将其放入相应的技能目录。
👉 [进阶] 如果您需要微调技能,或者想要完全手写一个技能?
有关更详细的技能规范设计说明,请参阅这里。
11、何时使用技能?
概念、价值所有教程都已涵盖。但更重要的问题是:
哪些场景值得“用技能解决”或“开发技能”?
这个问题对于优化 AI 工作流程的普通用户和寻求技能代理创业机会的开发者都同样重要。
基于 Anthropic 官方博客的建议和我自身的实践经验,我总结了 3 个明显的时机信号:
11.1 发现自己反复向 AI 解释同一件事
最典型的信号是:为了完成某个任务,你需要在多轮对话中不断地向 AI 解释如何操作。
例如:
“帮我写一份技术文档”
“不行,我们公司的技术文档格式是这样的……”
“还有,代码示例需要遵循这个模板……”
“上次我不是跟你说过吗,章节标题应该是三级标题……”
“帮我分析这些数据”
“首先过滤掉大于XX的异常值”
“不行,你应该用中位数,而不是平均值”
“图表需要遵循我们公司文档的配色方案……”
此时,你应该思考:与其每次都解释,不如将这些规则打包成一个技能,一次创建,永久复用。
11.2 有些任务需要特定的知识、模板或材料才能做好
有时,人工智能的通用能力足够,但它缺乏“特定场景的知识材料”。
典型场景:
- 技术文档编写:需要参考代码标准、术语表,并使用文档模板
- 品牌设计:需要参考品牌手册、颜色规范,并使用徽标资源
- 数据分析:需要参考指标定义、计算公式,并使用报告模板……
这些都是典型的“通用智能体 + 垂直领域知识”场景:人类提供素材,智能体才能理解场景上下文。
将相应的知识素材放入技能包中,例如将模板、规范、案例放入技能的 assets/ 和 reference/ 目录中,或者直接在 SKILL.md 文件中进行描述。
这样,智能体就可以一次性输出满足任务要求的精确结果。
11.3 发现需要多个工作流程才能完成的任务
有些任务比较复杂,通常需要“组合多个工作流程”才能完成。
- 竞品分析报告:获取竞品数据 + 数据分析 + 制作PPT
- 内容制作:收集参考资料 + 学习风格 + 协作撰写大纲 + 正文撰写
我相信您在工作中会遇到很多类似的任务。
将此类任务每个步骤所需的说明文档、可执行脚本、参考资料和可用资源打包成一个或多个技能,也是一种不错的AI解决方案。
让智能体根据任务描述智能调用不同的技能模块,通过交错的“计划-执行-观察”动作,一次性完成原本需要多个工作流程协调的复杂任务。
14、结束语
写到这里,我想回到最初的结论:Claude技能的价值仍然被严重低估了。
技能是智能体的灵魂,就像Steam游戏和创意工坊一样。
借助这种高度可扩展的设计架构,代理开发者可以充分利用通用代理核心,
专注于技能本身的设计,并以低成本创建具有通用人工智能上限的垂直领域代理应用。
对于代理创业者,甚至是非技术领域的专家而言,技能无疑代表着许多新的机遇:
传统的垂直领域代理工具开发至少需要数周时间。
但采用技能方法,您可以在数小时甚至数分钟内开始测试,并且其智能和能力上限也有机会接近通用代理。
但这并不意味着代理技能一定会完全取代传统开发方式。
两种方法各有其适用场景,但技能确实让更多用户和更多场景能够更便捷地使用代理功能:
- 无需为内部小型工具开发完整的产品。只需打包一个技能即可解决问题。
- 无需说服 IT 团队理解您的需求。您可以自行创建工具。
无需等待产品迭代。您可以随时调整技能的行为。
从这个角度来看,技能降低了验证想法的成本。
此外,换个角度思考:将技能代理服务打包成 AI API,是否可以快速地为现有产品添加实用的 AI 功能?
我们仍处于技能生态系统的早期阶段。代理技能开放标准发布还不到一个月。工具正在不断完善,社区也在不断壮大。
但这个方向的有趣之处在于,它最终允许更多的人、组织和行业参与到 AI 应用的创建中来。
原文链接:The Ultimate Guide to Agent Skills: From Zero to Mastery
汇智网翻译整理,转载请标明出处