「Agent Tool」Skill 是什么?

0 前言

本文内容整理自公众号「小林面试笔记」的文章 9. Skill 是什么?,用于记录与总结 AI Agent 工具调用相关的核心面试知识点。

Skill 是什么?」,可以这样作答:

Agent Skill 是把「指令、脚本、模板」一体化打包成可复用能力包的机制,关键在于三件事:Agent 能自动发现它、按需加载它、在需要时调用里面的脚本和资源。它不只是「存 prompt」,而是一份 Agent 能自己翻阅的「操作手册 + 工具箱」。每个 Skill 是一个文件夹,里面最核心的是一份 SKILL.md 指令文件,还可以带上脚本、模板、参考文档这些资源。

它和普通 prompt 最大的区别是:Skill 能被 Agent 自动发现和按需加载,不用你每次手动输入;和 MCP 工具的区别是:MCP 给 Agent 提供外部工具和数据的访问能力,而 Skill 教 Agent 拿到这些工具和数据之后该怎么用

Anthropic 在 2025 年 10 月推出了 Agent Skills,同年 12 月把规范作为开放标准发布出来,允许其他 Agent 平台按照这套格式来兼容 Skills 生态。

如今 Claude Code、Claude API、claude.ai 三个入口都原生支持 Agent Skills——在代码仓库里放一个文件夹、写一份 SKILL.md,Agent 就能自动发现并按需调用;GitHub、Slack 等上游流程,以及社区里其他 Agent 平台的兼容实现,也都在向这套格式靠拢。这种「把反复使用的流程沉淀成 Agent 能自己执行的能力」的做法,正在成为 Agent 工程里的标配。


1 为什么需要 Skill:从「重复贴 prompt」的痛点说起

你一定遇到过这种情况:每次让 AI 帮你做代码审查,都要贴一大段指令,告诉它「检查这几类问题、用这种格式输出、重点关注安全漏洞」。第一次贴还好,第二次、第三次就开始烦了——每次新对话都要从头贴一遍,漏掉某个细节,输出质量就不稳定。

这还只是一个人的情况。如果是团队协作呢?十个人做代码审查,每个人贴的 prompt 都不一样:有的人关注安全,有的人关注性能,审查标准完全没法统一。

重复贴 prompt 的痛点:个人每次新对话从头贴,团队各自标准不一

你可能会想:把 prompt 写到一个共享文档里让大家复制不就行了?但这本质上还是靠人工去维护和执行——版本一多就容易乱,文档更新了、有人还在用旧版的 prompt,质量把控根本做不到。

Skill 要解决的就是这个问题:把反复在用的指令、流程、模板,打包成一个标准化的模块,Agent 自己知道什么时候该用它、怎么用它,不再依赖你手动复制粘贴。


2 Skill 的结构:一个文件夹 + 一份 SKILL.md

一个 Skill 说白了就是一个文件夹,里面最核心的是一份叫 SKILL.md 的文件,再加上一些可选的辅助资源,结构很直观:

1
2
3
4
5
6
7
8
code-review/                  # Skill 文件夹,名字就是这个 Skill 的标识
├── SKILL.md # 核心指令文件(必须有)
├── scripts/ # 可选:可执行的脚本
│ └── check_security.py # 比如一个安全检查脚本
├── references/ # 可选:参考文档
│ └── review_standards.md # 比如团队的审查标准文档
└── assets/ # 可选:模板、资源文件
└── report_template.md # 比如审查报告的输出模板

Skill 文件夹结构:SKILL.md 为核心,scripts/references/assets 为可选资源

SKILL.md 的内容分两部分:顶部是一段 YAML 格式的元数据(frontmatter),声明这个 Skill 的名字和一句话描述;下面是正文,用 Markdown 写具体的指令和步骤。看一个实际的例子:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
---
name: code-review
description: "对代码进行全面审查,检查 bug、安全漏洞和性能问题,输出结构化审查报告"
---
# 代码审查 Skill
## 指令
### 第一步:理解代码上下文
阅读提交的代码,理解它的功能和所属模块,确认修改范围。
### 第二步:逐项检查
按以下维度逐一检查:
1. 功能正确性:逻辑是否有 bug,边界条件是否处理了
2. 安全性:是否有注入、XSS、权限绕过等漏洞
3. 性能:是否有 N+1 查询、不必要的循环、内存泄漏风险
4. 可读性:命名是否清晰,关键逻辑是否有注释
### 第三步:输出报告
使用 assets/report_template.md 的模板格式,输出结构化的审查报告。

你会发现,这和普通 prompt 的区别很明显:普通 prompt 只是一段文字,用完就没了;而 Skill 是一个完整的文件夹,里面的指令、脚本、模板可以持续维护、版本管理,团队里所有人用的都是同一份。


3 渐进式加载:Skill 最聪明的设计

Skill 最让人眼前一亮的,不是「能打包」这件事本身,而是它的加载方式

你可能会想:既然 Skill 能打包那么多东西,Agent 启动时是不是要把所有 Skill 全部读进来?来算一笔账:假设你有 20 个 Skill,每个的指令加参考文档平均 2000 token,全部加载就是 4 万 token 打底。现在常见的模型上下文窗口是 20 万 token,光 Skill 就吃掉五分之一,剩下的要分给系统提示、对话历史、用户文件——留给模型真正思考的空间就紧张了。更糟的是,这 20 个 Skill 里大部分在当次任务里根本用不上,加载了也是白加载。

所以 Skill 用了一套叫「渐进式加载」(Progressive Disclosure)的三层机制:

渐进式加载三层机制:只看简历 → 按需加载指令 → 需要时再取资源

  • 第一层是「只看简历」。Agent 启动时只加载每个 Skill 的 namedescription 两个字段,每个大约只占 30 到 50 个 token。就像面前摆了 20 份简历,每份只看名字和一句话介绍,几秒钟扫完,心里有数「我手上有哪些能力可以用」;
  • 第二层是「翻开详细资料」。用户提了任务,Agent 判断「这个任务跟 code-review 相关」,才把它的 SKILL.md 正文完整加载进来,读取详细指令。不相关的 Skill 始终不会被加载,不浪费一个 token;
  • 第三层是「需要时再取」。执行过程中,如果指令里提到「使用 assets/report_template.md 的模板」,Agent 才在那个时刻去读取模板文件。参考文档、脚本这些辅助资源同理,用到时才加载。

入职手册类比:先扫目录,报销时再翻报销流程那章

这个设计用一个类比就很好理解:Skill 就像公司给新员工准备的入职手册。你入职第一天不会把整本手册从头看完,而是先扫一眼目录,知道里面有「报销流程」「请假制度」「代码规范」这些章节就行了;等真的要报销了,再翻开「报销流程」那一章仔细看。既不会信息过载,又确保需要的时候找得到。

为什么这个设计这么重要?因为 context window 是 Agent 最宝贵的资源。如果把所有 Skill 的全部内容一股脑塞进去,真正有用的用户任务信息反而会被淹没,Agent 的注意力被分散,输出质量反而下降。渐进式加载的本质就是「让 Agent 只在需要的时候获取需要的知识」——这和人类的工作方式其实是一样的。


4 厘清关系:Skill / Tool / Prompt / Slash Command

Skill 经常和几个概念混淆,但它们处于完全不同的层次。最重要的区分是 Tool(含 MCP 工具)和 Skill 的区别

Tool / Skill / Prompt 三者关系:Tool 提供能力,Skill 提供知识与流程,Prompt 是一次性指令

你可以把 Tool(包括 MCP 工具)想象成公司给员工配的电脑、软件和数据库访问权限。有了 Tool,Agent 就能「做事」——查数据库、调 API、读写文件。但光有工具不够:你给新人配了电脑和全部系统权限,他也不知道该按什么流程做代码审查,不知道先查什么、后查什么、用什么格式输出报告。

Skill 就是那份「操作手册」和「SOP 流程」:教 Agent 拿到工具之后,该按什么步骤、什么标准、什么格式完成一个具体的工作流。所以 Tool 和 Skill 是互补关系——Tool 提供能力,Skill 提供知识和流程。

那 Prompt 呢?Prompt 就像你口头跟员工说的一句指令:「帮我看看这段代码有没有问题」。这句话说完就没了,下次还得再说一遍。Prompt 是一次性的、临时的,Skill 是持久化的、可复用的

还有一个容易搞混的是 Slash Command(斜杠命令):

Skill vs Slash Command:一个自动发现,一个手动触发

Slash Command 也是把指令保存下来复用,但它必须由你手动触发——比如输入 /code-review 才能调用。而 Skill 可以被 Agent 自动发现和调用:Agent 看到任务后自己判断「这个任务需要用 code-review Skill」,然后主动加载、执行,不需要你告诉它该用哪个。这个「自动发现」的能力,就是 Skill 比 Slash Command 更进一步的地方。


5 从 Anthropic 走向开放标准

Agent Skills 最早是 Anthropic 在 2025 年 10 月推出的,一开始只在 Claude 自家生态里用,覆盖 Claude Code、Claude API、claude.ai 三个入口。推出两个月后,Anthropic 做了一个很聪明的决定:在 2025 年 12 月把 Agent Skills 的规范作为开放标准发布出来,任何想做 Agent 平台的团队都可以按这个规范实现自己的 Skills 支持。

Agent Skills 发展:2025 年 10 月推出,12 月发布为开放标准

为什么敢开放?核心原因是 Skills 的设计足够简单:一个 Skill 就是一个文件夹加一份 Markdown 文件,不需要安装特殊的运行时、不需要学新的编程语言,任何支持文件系统的 Agent 平台理论上都能实现这套格式。这种「零门槛」的设计,让它有希望成为跨平台的通用约定。

开放成标准有什么好处?好处是你写一份 Skill,未来有机会在不同 Agent 平台之间复用,而不是被某一家产品绑死。这就像 USB 接口:买一根 USB-C 数据线,手机能用、电脑也能用,不用每个设备买一根专用线。Anthropic 想做的就是让 Agent Skills 朝这个方向发展——虽然现在主要还是 Claude 生态在用,但社区已有项目开始探索在其他 Agent 平台上兼容这个格式,后续能走多远还要看行业的采纳情况。


6 面试总结

回答这道题,最常见的误区就是把 Skill 等同于「保存好的 prompt」。先避开几个雷:

误区 正解
Skill 就是「保存 prompt」、复制粘贴升级版 Skill 是包含指令、脚本、模板的可复用能力模块,Agent 能自动发现、按需加载、需要时调用
Skill 和 MCP 工具是一回事 Tool/MCP 提供外部工具和数据访问能力,Skill 提供用这些工具完成任务的知识和流程,两者互补
Skill 就是 Slash Command Slash Command 要手动触发,Skill 能被 Agent 自动发现并主动加载执行
Skill 越多越好、全量加载 有渐进式加载:默认只读 name/description,相关时才读全文,不浪费 context

再按这张框架组织答案:

框架 要点
本质 「指令 + 脚本 + 模板」打包成可复用能力模块;一个文件夹 + 一份 SKILL.md(frontmatter 声明 name/description + Markdown 正文指令),可选 scripts/references/assets
渐进式加载 三层机制:只看简历(name/description,30-50 token)→ 按需加载(任务相关才读 SKILL.md)→ 需要时再取(用到才读模板/脚本);入职手册类比,本质是守护 context window
概念区分 Tool/MCP 提供能力,Skill 提供知识与流程,互补;Prompt 一次性临时指令;Slash Command 手动触发 vs Skill 自动发现
开放标准 Anthropic 2025 年 10 月推出 Agent Skills,12 月开源为开放标准;零门槛设计(文件夹 + Markdown),USB 类比,目标跨平台复用

追问预案

  • 「Skill 和普通 prompt 的区别?」——普通 prompt 是一段用完即弃的文字;Skill 是完整的模块(指令 + 脚本 + 模板),可持续维护、版本管理、团队共享,且能被 Agent 自动发现和按需加载。
  • 「Skill 全部加载会不会撑爆 context?」——不会。渐进式加载三层机制把每个 Skill 的常态开销压到 30-50 token(只有 name 和 description),只有任务相关时才加载 SKILL.md 全文、用到时才取模板和脚本(加载机制的类比:入职手册先扫目录、用的时候再翻对应章节)。
  • 「Skill 和 MCP 是什么关系?」——互补。MCP 给 Agent 外部工具与数据的访问能力(电脑和数据库权限),Skill 教 Agent 拿到能力后按什么流程、什么标准完成任务(操作手册/SOP)。
  • 「为什么 Agent Skills 能成为开放标准?」——零门槛:一个文件夹加一份 Markdown,不需要运行时和编程语言,任何支持文件系统的 Agent 平台都能实现,因此有跨平台复用的潜力(USB 类比)。
  • 「Slash Command 和 Skill 怎么区分?」——Slash Command 保存指令但必须手动输入触发;Skill 的核心是自动发现,Agent 自己判断任务匹配哪个 Skill 并主动加载执行。

参考

本文图片均来源于公众号「小林面试笔记」,版权归原作者所有。


「Agent Tool」Skill 是什么?
https://marisamagic.github.io/2026/08/19/20260819_AgentSkill是什么/
作者
MarisaMagic
发布于
2026年8月19日
许可协议