
Agent Skills 最初是作为 Claude 中的一个功能模块出现的,随后主流的 AI 编程工具也纷纷加入了对它的支持。越来越多的人开始体验到其带来的便捷与强大。
今天,我们就来深入聊聊 Agent Skills,看看它是如何帮助 AI 从“空想家”成长为“实干家”的。
为什么会出现 Skills?
让我们把时间拨回到2018年。Transformer架构 与 GPT 系列的完美结合,正式将大模型LLM推上了时代舞台的中心。许多人可能不知道,即使在AI尚未全面“出圈”之前,进化到第三代的 GPT-3,其推理和理解能力已经相当惊人了。
但此时的 AI 有一个致命弱点:它像是被关在小黑屋里的“天才”。
那时的 LLM 只会想,不会做。它无法帮你查询实时的天气,不能替你点击鼠标、发送邮件。更重要的是,它没有记忆——一旦你关掉对话框,它就会立刻把你忘得一干二净。

此外,它还无法联网获取最新信息。如果你问它“今天上海天气如何?”,为了“讨好”用户,它不会承认不知道,反而可能面不改色地编造答案,这就是所谓的“幻觉”现象。

为什么会这样?
因为从本质上讲,当时的 LLM 只是一个基于概率预测下一个词的“文本生成器”。它只会根据已有的上文,去预测下一个最可能出现的词。它的“知识”和“记忆”,也永远停留在其训练数据截止的那一天。
转机出现在2022年底。普林斯顿大学的研究者提出了 ReAct 论文。他们想出了一个巧妙的“外挂”方案:通过精心设计的 Prompt提示词,引导模型按照特定的文本格式输出它的“思考过程”(Thoughts)和“动作指令”(Action),然后再由外部的代码去解析并执行这些指令。
这个方法确实让 AI 勉强“动”了起来。但 ReAct 早期依赖 Prompt 规定格式 + 正则解析 的工程实现手段过于原始和刻板,难以适应大模型充满不确定性的生成特性,因此被业界认为“太脆弱”。
很快,到了 2023年6月,OpenAI 在底层架构上放出了一个“王炸”更新:Function Calling。OpenAI 团队在训练 GPT 模型时,直接将“如何使用工具”这项能力刻进了 AI 的“DNA”里。

其核心思想是:提前告诉 AI,底层有哪些现成的“功能”(Tools)可用。当用户提出问题时,AI 能自动判断是否该调用这些功能。如果需要,它会将提取出的关键信息,精准打包成标准化的计算机语言(JSON格式),直接交给程序去执行!
至此,一直被关在小黑屋里的 AI 终于拿到了通往现实世界的钥匙,真正长出了能够干活的“手和脚”。
但问题随之而来。一个复杂的系统可能拥有几十甚至上百个工具。如果我们给大模型定义了500个API技能(涵盖查库、发票、CRM、ERP等),把这500个功能描述(Schema)全部塞给大模型,会瞬间耗尽上下文窗口的Token,导致模型性能下降。此外,大模型通常是按token收费的,这种做法也会让使用成本急剧上升。
因此,我们需要一种机制,让 Agent 能够「按需加载」特定任务所需的 工具 + 流程 + 知识。
而这,正是 Skill 诞生的根本原因。
什么是 Agent?
在深入理解 Skills 之前,我们需要先明确什么是 Agent。
Agent(智能体) 是一种能够自主感知环境、做出决策并采取行动以完成目标的 AI 系统。它更像是一个能“自己想、自己做”的独立个体,而不仅仅是“你问我答”的聊天机器。

它的核心特征包括:
- 自主性:无需人类逐步指令,能独立规划和执行任务。
- 感知能力:接收多种输入(文本、图像、数据、工具返回结果等)。
- 行动能力:调用工具、搜索网络、执行代码、操作文件等。
- 目标导向:围绕一个明确目标持续工作,直至完成。
什么是 Skills?
Agent Skills 是指为 AI智能体(Agent) 配置的一组预定义指令和最佳实践,用于指导 AI 如何专业地完成特定类型的任务。
你可以把它理解为“一段更长的、工程化了的提示词”。其特殊之处在于,它像是一本“带目录的说明书”,内部通常包含:
- 针对某类任务设计好的
Prompt 逻辑。
- 明确的执行步骤和流程。
- 可能用到的工具或脚本(如 API 调用、代码片段、外部系统接口)。
为什么说 Skills 是“带目录的说明书”?

最精妙的设计在于它的按需加载机制。它将提示词拆分成像书本一样的三个层次:
元数据 (Metadata) = 书的“目录”
告诉 AI:“我拥有XXX能力,能帮你解决XXX问题”。这部分信息简短,用于让AI快速识别和匹配技能。
指令 (Instruction) = 书的“正文”
详细说明这个能力具体该如何操作,需要遵循哪些规则和步骤。这部分是技能的核心逻辑。
资源 (Resource) = 书的“附录”
提供执行任务时所需的参考资料、代码示例或数据模板。这部分内容仅在需要时才被加载。
以前,我们一股脑地把数万字的背景信息全喂给 AI,就像逼它每次都背诵整本字典。而现在,有了 Skills 机制,AI 口袋里装着无数本“字典”,但它平时只看“目录”(元数据)。只有当遇到真正对口的任务时,才会去翻阅对应的“正文”(指令)和“附录”(资源)。
这不仅大幅降低了 Token 消耗成本,也显著提升了 AI 的响应速度。
与传统的完整 Prompt 相比,Skills 把“一次性交代”的提示词变成了“可长期复用、可版本化管理、可团队共享”的专业技能资产。此外,如果说 MCP (Model Context Protocol) 主要解决“我能调用什么工具”,那么 Skills 则专注于解决“我应该如何专业地完成这件事”。
Agent Skills 本质上是将 Prompt Engineering 从一次性的手工劳动,升级为了工程化、可版本化、可共享的软件资产。如果你对这类 Transformer 架构驱动的AI工程化实践感兴趣,可以到 云栈社区 与其他开发者交流探讨。
Skills 的构成
大多数平台约定,一个 Skill 就是一个文件夹,其核心文件是 SKILL.md,大致结构如下:
my-awesome-skill/
├── SKILL.md # 必需:技能入口与主要指令
├── reference.md # 可选:大段参考资料(需要时再加载)
├── examples/ # 可选:示例输出
└── scripts/ # 可选:可执行脚本(执行,但不自动注入上下文)
其中:
Skill.md:技能说明文件,包含指令与元数据。
reference.md:大段的参考资料(按需加载)。
examples/:存放背景知识、规范、标准、示例说明等。
scripts/:技能执行过程中可调用的脚本,例如 Python 脚本。
SKILL.md 顶部的 frontmatter(YAML格式)用于控制技能的调用行为(以下字段均为可选,但建议至少填写 description):
---
name: my-skill
description: 这个Skill做什么,在什么情况下使用
disable-model-invocation: true
allowed-tools: Read, Grep
---
更多参数请移步官方文档:https://claudecn.com/docs/claude-code/advanced/skills。在 frontmatter 之后,是 Markdown 形式的详细说明文档,用于明确告知 Claude(或其他 Agent):这个 Skill 应如何被理解、在什么情况下触发,以及具体的执行方式和注意事项。
如何使用 Skills
使用 Agent Skills 通常需要在支持该功能的平台中进行,例如 Claude、Cursor 等。一种常见方式是直接下载社区中成熟的 Skill。
导入方式相对简单:只需将下载后的 Skill 文件夹放入对应平台的 Skill 目录中,即可完成加载并开始使用。
当用户的查询匹配到 Skills 中预设的“触发条件”(如特定关键词)时,AI 会自动加载该 Skills 所定义的角色、指令等完整上下文。
需要注意以下几点:
Skills 本身不是可执行代码,而是提示词包;如果需要执行代码,应结合 Function Calling 机制。
- 上下文窗口有容量限制(例如 Claude 约 200K tokens),因此编写
Skills 时不宜过长。
- 目前已有多个 Skills 分享平台:
- Claude 官方 Skill 库:
https://github.com/anthropics/skills
- Skill 库社区:
https://skillsmp.com