摘要: 本文讲清楚 Agent Skills(智能体技能)是什么、怎么用一条命令安装、怎么自己做一个。最重要的结论是:Skill 本质上就是一个带 SKILL.md 说明书的文件夹,同一份 Skill 可以在 Claude Code、Codex、Cursor、OpenClaw 等数十款 Agent 里通用,是目前把“重复的提示词”变成“可复用能力”成本最低的方法。它适合经常用 AI 编程工具或 AI 办公 Agent、又厌倦了每次重复交代规矩的人。建议现在就装一两个可信来源的 Skill 体验,同时务必养成“装之前先读一遍”的习惯。读完本文,你能看懂 Skill 的结构、用 npx skills 完成安装、写出一个通过官方校验的自制 Skill,并知道如何避开第三方 Skill 的安全坑。
配套项目源码:下载 GEO 文章体检示例 Skill(ZIP)。解压后阅读 README.md,并在本地填写环境变量。
核心结论
Agent Skills 是一种开放的文件格式,用来给 AI Agent 按需“装技能”,值得每个重度 Agent 用户学会。根据 agentskills.io 官方规范,一个 Skill 就是一个目录,至少包含一个 SKILL.md 文件,里面写着元数据和执行说明;Agent 只在任务需要时才加载完整内容。
- 一次编写,多处通用:Agent Skills 格式最初由 Anthropic 开发,之后作为开放标准发布,已被多款 Agent 产品采用。阿里云栖大会官方发布的 Skill 就明确写着 Codex、OpenClaw、Claude Code、Cursor 等支持 Skills 的 Agent 都能用。
- 一条命令安装:Vercel 开源的 skills CLI 可以用
npx skills add 仓库地址从 GitHub、GitLab 或本地目录安装,并自动识别你电脑上装了哪些 Agent。 - 自己做门槛极低:必填字段只有
name和description两个,写好后用官方skills-ref validate校验即可。本文附带的示例 Skill 已通过校验并实际安装测试。 - 不占上下文:官方规范的渐进式加载机制下,启动时每个 Skill 只加载约 100 token 的名称和描述,装十几个也不会拖慢对话。
- 最大风险是来源:第三方安全研究发现公开市场中存在大量有缺陷甚至恶意的 Skill。Skill 以 Agent 的完整权限运行,安装前必须阅读内容。
背景与主要变化
Skill 出现之前,想让 AI 按你的规矩办事,只有两个办法:每次对话都重新粘贴一大段提示词,或者把所有规矩塞进一个“永远加载”的系统提示里。前者费时间,后者费上下文——你只是想让它改个错别字,它却要先读完你的整套代码规范。
Agent Skills 把这个问题拆开了:规矩按任务分装成独立的技能包,平时只露出一行简介,用到时才完整展开。 多家第三方技术媒体报道,该格式由 Anthropic 于 2025 年底以开放标准形式发布,规范托管在 agentskills.io(发布日期来自第三方报道,本文未在官方页面核验具体日期)。官方 GitHub 仓库说明,这个格式已被越来越多的 Agent 产品采用,并欢迎整个生态贡献。
国内的一个标志性信号出现在本月:2026 云栖大会期间,阿里技术官方账号发布了“云栖大会 Skill”,用户在自己常用的 Agent 里执行一条安装命令,就能用自然语言查论坛、订阅议程。这说明 Skill 已经从开发者圈子走向普通用户场景。
下表对比了几种“教 AI 做事”的方式,帮你理解 Skill 的定位:
| 方式 | 加载时机 | 能否带脚本和模板 | 能否跨 Agent 复用 | 适合放什么 |
|---|---|---|---|---|
| 每次粘贴提示词 | 手动 | 不能 | 能(靠复制) | 一次性需求 |
| 常驻文件(AGENTS.md、CLAUDE.md 等) | 每次会话都加载 | 有限 | 部分 | 项目通用规则、构建命令 |
| Agent Skills | 任务匹配时才加载 | 能(scripts、references、assets) | 能(开放标准) | 可复用的专项流程 |
| MCP 服务器 | 连接后可调用 | 以工具接口形式提供 | 能(开放协议) | 访问外部系统和数据 |
一句话区分 Skill 和 MCP:多篇第三方教程的概括是,MCP 让 Agent 能访问外部工具和数据,Skill 教 Agent 怎么用这些工具和数据。两者是互补关系,不是替代关系。
核心功能拆解
理解 Skill 只需要抓住两件事:目录结构决定一个 Skill 里能放什么,渐进式加载决定它为什么不占上下文。

目录结构:一个必需文件 + 三个可选目录
官方规范给出的标准结构如下:
skill-name/
├── SKILL.md # 必需:元数据 + 执行说明
├── scripts/ # 可选:可执行代码(Python、Bash、JavaScript 等)
├── references/ # 可选:按需读取的参考文档
└── assets/ # 可选:模板、图片、数据文件
SKILL.md 由两部分组成:开头是 YAML 格式的元数据(frontmatter),后面是 Markdown 格式的执行说明。官方对正文格式没有限制,推荐写分步说明、输入输出示例和常见边界情况。
元数据字段:只有两个必填
根据官方规范,frontmatter 字段约束如下(官方已确认):
| 字段 | 是否必填 | 约束 |
|---|---|---|
name |
必填 | 1–64 字符,只能用小写字母、数字和连字符;不能以连字符开头或结尾;不能有连续连字符;必须与所在目录名一致 |
description |
必填 | 1–1024 字符,要同时写清“做什么”和“什么时候用” |
license |
可选 | 许可证名称或附带的许可文件 |
compatibility |
可选 | 最多 500 字符,说明环境要求(如需要联网、需要某个系统包) |
metadata |
可选 | 任意字符串键值对,如作者、版本号 |
allowed-tools |
可选(实验性) | 预先批准可用的工具列表,各 Agent 支持程度不同 |
这里最容易踩的坑是 name:中文、大写字母、下划线都不允许,而且目录名必须和它完全一致。我们实测时故意把目录改名为 Bad_Skill,官方校验工具直接报错“目录名必须与 skill 名称一致”。
渐进式加载:为什么装很多也不卡
官方规范把加载分成三层:
- 元数据层(约 100 token):启动时加载所有 Skill 的
name和description,Agent 靠它判断哪个 Skill 和当前任务相关。 - 说明层(建议少于 5000 token):判定相关后,加载完整的
SKILL.md正文。 - 资源层(按需):执行过程中真正用到时,才读取
scripts/、references/、assets/里的文件。
官方因此建议主 SKILL.md 控制在 500 行以内,详细资料拆到单独文件,并且引用层级只保留一层。这也解释了为什么 description 是整个 Skill 里最重要的一句话:它写得不清楚,Agent 就不知道什么时候该调用你的技能。
适用人群与使用场景
Skill 最适合“同一类事情做过三次以上,每次都要重复交代规矩”的人。判断标准很简单:如果你发现自己在不同对话里反复粘贴同一段提示词,这段提示词就该变成一个 Skill。
以下是几类典型人群的用法(实施建议,非官方数据):
- 程序员:把团队的代码审查清单、提交信息规范、发版流程做成 Skill,放进项目目录随代码一起提交,新同事的 Agent 自动继承。可以在站内搜索 Claude Code 教程 了解主流编程 Agent 的用法。
- 自媒体和内容创作者:把公众号排版规则、标题公式、口播稿结构、平台敏感词自查做成 Skill,每次写稿直接调用,风格保持一致。
- 运营和办公人员:把周报格式、会议纪要模板、数据分析口径做成 Skill,在支持 Skills 的办公 Agent 中复用。
- 站长和 SEO 从业者:把 GEO 检查规则做成 Skill,写完文章让 Agent 先自检一遍再发布——本文的示例 Skill 就是这个场景,站内也有 GEO 优化相关内容 可以配合阅读。
- 团队负责人:把团队知识沉淀成一个 Skill 仓库,比写在飞书文档里更容易被 Agent 真正执行。
不太适合的情况:只是偶尔问 AI 几个问题的轻度用户,没必要折腾 Skill;需要实时调用外部系统(如查数据库、调企业接口)的需求,应该优先考虑 MCP 或官方连接器,Skill 只负责“怎么做”的知识部分。
安装、配置或使用步骤
下面分两部分:先用 skills CLI 安装现成的 Skill,再从零做一个自己的 Skill。所有命令都在本文写作时的模拟环境中实际运行过(Node.js v22、skills CLI 1.7.0)。
用一条命令安装现成 Skill
- 准备 Node.js 环境。skills CLI 通过
npx运行,不需要全局安装,但电脑上要有 Node.js。命令行输入node -v能看到版本号即可。 - 先列出仓库里有哪些 Skill,不急着装。加
--list参数只查看不安装,这是检查来源的第一步:
npx skills add vercel-labs/agent-skills --list
- 安装指定的 Skill 到指定的 Agent。官方 README 说明,CLI 会自动检测你安装了哪些编程 Agent;也可以用
-a指定目标,用--skill指定具体技能:
# 只把某一个 Skill 装到 Claude Code 当前项目
npx skills add vercel-labs/agent-skills --skill frontend-design -a claude-code
# 装到用户全局目录(所有项目可用)
npx skills add vercel-labs/agent-skills --skill frontend-design -g -a claude-code
- 理解项目级和全局安装的区别。默认安装到当前项目的 Agent 目录下,适合随代码提交、团队共享;加
-g装到用户目录,所有项目都能用。个人通用技能用全局,团队规范用项目级。 - 在 Agent 里直接用自然语言触发。安装后不需要记命令,直接描述任务,Agent 会根据
description自动判断是否调用。以云栖大会 Skill 为例,官方发布的安装命令是:
npx skills add QianWen-AI/apsara-conference-2026
从零做一个自己的 Skill
我们以“GEO 文章体检”为例,做一个能给中文文章打分的 Skill。完整代码包见文末附件,下面是关键步骤。
- 建目录,名字全部小写加连字符:
mkdir -p geo-article-check/scripts geo-article-check/references geo-article-check/assets
- 写
SKILL.md。这是示例 Skill 的完整SKILL.md(共 27 行),注意description里同时写了“做什么”和“什么时候用”,还放了用户可能说出口的原话:
---
name: geo-article-check
description: 检查中文文章是否适合被豆包、Kimi、DeepSeek 等 AI 搜索引擎引用(GEO 就绪度),输出 0-100 分与逐项修改建议。当用户要求“GEO 检查”“AI 搜索优化体检”“文章能不能被 AI 引用”,或提交一篇公众号/博客/教程草稿要求评估可引用性时使用。
license: MIT
metadata:
author: aistacknav
version: "1.0"
---
# GEO 文章体检
## 何时使用
用户提供一篇中文文章(Markdown 或纯文本),希望知道它是否容易被 AI 搜索引擎摘取和引用。
## 执行步骤
1. 把用户的文章保存为本地文件,例如 `draft.md`。
2. 运行评分脚本:`python3 scripts/geo_check.py draft.md`
3. 读取脚本输出的 JSON:`score` 为总分,`items` 为 7 个维度的得分与建议。
4. 按 `assets/report-template.md` 的格式,把结果整理成中文体检报告。
5. 对得分最低的 2 个维度,直接给出可替换的改写示例,而不是只说“建议优化”。
## 规则说明
每个维度的判定依据见 [references/RULES.md](references/RULES.md),只在用户追问“为什么扣分”时再读取。
## 注意
- 脚本只做结构检查,不判断事实真伪;事实核验需另行完成。
- 不要修改用户原文件,改写建议写在报告里。
- 写评分脚本
scripts/geo_check.py。脚本共 51 行,只用 Python 标准库,没有任何第三方依赖,也不联网。核心是 7 个维度的检查函数,下面是入口部分:
if __name__ == "__main__":
if len(sys.argv) != 2:
sys.exit("用法:python3 geo_check.py <文章文件>")
p = pathlib.Path(sys.argv[1])
if not p.exists():
sys.exit(f"找不到文件:{p}")
print(json.dumps(check(p.read_text(encoding="utf-8")), ensure_ascii=False, indent=2))
- 把判定规则放进
references/RULES.md。规则表只在用户追问扣分原因时才加载,这正是渐进式加载的用法——平时不占上下文。 - 用官方工具校验格式。agentskills.io 提供了参考实现
skills-ref,可以从官方 GitHub 仓库安装,然后运行:
skills-ref validate ./geo-article-check
# 实测输出:Valid skill: geo-article-check
- 用 skills CLI 从本地目录安装测试。先用
--list确认 CLI 能识别,再实际安装:
npx skills add ./geo-article-check --list
npx skills add ./geo-article-check -a claude-code -y
实测结果:CLI 输出“Found 1 skill”并完整显示了中文描述;安装后文件被复制到项目的 .claude/skills/geo-article-check 目录,同时生成一个记录来源和哈希值的 skills-lock.json。安装完成时 CLI 还会给出一句提醒:安装前要审查 Skill,因为它们以完整的 Agent 权限运行。
实际工作流示例
一个健康的 Skill 使用流程,不是“看到就装”,而是“查看 → 审查 → 校验 → 小范围试用 → 纳入日常”。下面用示例 Skill 演示从安装到日常使用的完整链路。

第一步:查看并审查
对任何第三方 Skill,先用 --list 看它包含哪些技能,再到源仓库完整阅读 SKILL.md 和 scripts/ 下的每个脚本。重点看三件事:脚本有没有联网请求、有没有读取密钥或配置文件、有没有执行 curl | bash 这类下载即运行的命令。
第二步:在隔离项目里试用
不要直接装到存放重要代码的项目里。新建一个空目录作为试验场,装进去跑几个任务,观察 Agent 调用 Skill 时执行了哪些命令。确认行为符合预期后,再装到正式项目或全局。
第三步:实测示例 Skill 的效果
我们用示例 Skill 的脚本对两篇文章做了实际评分。第一篇是结构完整的教程文章(有摘要、表格、FAQ、来源和核验日期),得分 100 分、等级“优秀”;第二篇是只有一句开头和一个小标题的随手草稿,得分 0 分,脚本逐项给出了修改建议,例如“二级标题只有 1 个,建议至少 4 个”“FAQ 问题数为 0,建议至少 3 个”。传入不存在的文件时,脚本会明确提示“找不到文件”并退出,不会抛出难懂的报错。
这个结果也说明了 Skill 的边界:脚本只做结构检查,一篇结构完美但事实错误的文章同样能拿高分。所以示例 Skill 在 SKILL.md 里专门写了“事实核验需另行完成”。
成本估算
以下为示例计算,非官方数据。Skill 本身免费,成本来自 Agent 调用模型消耗的 token。按官方规范的量级估算,并假设:你装了 15 个 Skill,每个元数据约 100 token;每次会话启动固定多消耗约 1500 token;某次任务激活了示例 Skill,正文约 800 token,脚本输出的 JSON 约 600 token。
那么这次任务因为 Skill 额外消耗约 1500 + 800 + 600 = 2900 token 的输入。相比每次手动粘贴一段 2000 token 的完整提示词,Skill 在不用时几乎不花钱,用到时的成本也与手动粘贴相当,但省掉了找提示词、复制粘贴和遗漏规则的时间。实际单价请以你所用模型的官方价格为准。
对比与选型建议
选 Skill 的核心原则是来源可信度优先于功能丰富度。一个功能简单但来自官方或知名团队的 Skill,远比一个功能花哨但来路不明的 Skill 安全。
| 来源类型 | 可信度 | 建议 |
|---|---|---|
| Agent 厂商或模型厂商官方仓库 | 高 | 可以直接试用,仍建议扫一遍脚本 |
| 知名企业的开源仓库(如 vercel-labs) | 较高 | 查看安装量和仓库活跃度后使用 |
| 公开技能市场中的个人作者 | 不确定 | 必须完整审查,优先选有源码、有 Star、有维护记录的 |
| 聊天群、网盘转发的压缩包 | 低 | 不建议安装 |
| 自己编写 | 最高 | 适合团队规范和个人工作流,写完用 skills-ref 校验 |
几条选型建议(编辑判断,不代表官方结论):
- 先自己写一个,再装别人的。亲手写过一个 Skill,你就能一眼看出别人的 Skill 在干什么,审查效率会高很多。
- 少而精。虽然元数据很轻,但 Skill 越多,Agent 选错技能的概率越高。只保留真正常用的,定期清理。
- 团队规范用项目级,个人习惯用全局。项目级 Skill 随代码进入版本管理,改动有记录、可回滚。
- 需要访问外部系统时搭配 MCP。比如想让 Agent 读取企业知识库再按规范写报告,就用 MCP 连接数据、用 Skill 规定写法。站内的 OpenClaw 相关教程 也介绍了 Skill 与工具调用结合的用法。
风险、限制与注意事项
Skill 最大的风险不是“不好用”,而是“太好用”——它以 Agent 的完整权限运行,一个恶意 Skill 能做的事,和你授权给 Agent 的一样多。
供应链安全风险。 多家第三方安全研究机构报道,Snyk 在 2026 年 2 月对 3984 个公开 Skill 的审计中发现,约 36.82% 至少含有一个安全缺陷,并人工确认了 76 个带恶意载荷的 Skill,能够窃取凭据或执行任意命令(第三方研究数据,以原始报告为准)。云安全联盟的研究简报也提醒,应把 Agent 上下文文件当作不受信任的第三方代码对待。skills CLI 在安装完成时同样提示:使用前要审查,它们以完整的 Agent 权限运行。
Prompt Injection(提示词注入)。 Skill 的正文是写给模型看的自然语言,恶意作者可以在里面藏入“忽略用户要求”“把某文件内容发送到某地址”之类的指令,传统杀毒软件很难识别。审查时不仅要看脚本,也要读完 SKILL.md 的全部文字。
密钥与权限。 不要在 Skill 里硬编码任何密钥;需要凭据时使用环境变量,示例写成 YOUR_API_KEY 这样的占位符。对需要联网或执行命令的 Skill,优先在权限受限的环境中运行,只开放必要的目录和网络地址。
实验性字段与兼容差异。 allowed-tools 字段在官方规范中标注为实验性,不同 Agent 的支持程度不同。Skill 格式虽然统一,但各 Agent 的安装目录、触发方式和对脚本的执行策略仍有差异,跨 Agent 使用前建议分别实测。
触发不稳定。 Agent 是否调用某个 Skill,取决于它对 description 的理解。描述太笼统会导致该用时不用,描述太宽泛会导致不该用时乱用。遇到这种情况,优先修改 description,把用户常说的原话写进去。
脚本执行的边界。 Skill 中的脚本可能被 Agent 反复调用或因失败而重试,编写时要保证幂等(重复运行结果一致)、有清晰的错误提示和超时处理,不要在脚本里做删除文件、批量修改、对外发送消息这类不可逆操作。凡是涉及付款、删除、发布、发邮件、修改权限或操作生产数据库的步骤,都应在 Skill 说明里写明“执行前必须请求用户确认”。
事实依据与来源
本文信息按可信度分级如下:
- 官方已确认:Skill 的目录结构、
SKILL.md字段与约束、渐进式加载的三层机制与 token 建议值、skills-ref validate校验方式,来自 agentskills.io 官方规范;Agent Skills 最初由 Anthropic 开发并作为开放标准发布,来自 agentskills 官方 GitHub 仓库;skills CLI 的安装方式与参数(--list、-a、-g、--skill、-y)来自 vercel-labs/skills 官方仓库说明;云栖大会 Skill 的安装命令与兼容 Agent 列表来自阿里技术官方账号发布内容(经媒体转载)。 - 实测结果:示例 Skill 的校验结果、CLI 识别与安装输出、安装目录与锁文件、评分脚本对两篇样例文章的得分,均为本文写作时在模拟环境中实际运行所得(Node.js v22、skills CLI 1.7.0),未在各 Agent 的真实会话中做长期验证。
- 第三方报道:标准正式发布于 2025 年 12 月 18 日、Skill 与 MCP 的分工概括、Snyk 审计数据(3984 个 Skill、36.82% 含缺陷、76 个恶意),来自第三方技术媒体与安全研究机构,本文未直接核验原始报告,请以原始来源为准。
- 编辑判断与示例计算:人群用法、来源可信度分级、选型建议为本站编辑判断;token 成本估算为示例计算,非官方数据。
内容核验日期为 2026 年 9 月 27 日。
FAQ
Agent Skills 和提示词有什么区别?
Skill 是可复用、按需加载的提示词加工具包。普通提示词每次都要手动粘贴;Skill 平时只占约 100 token 的简介,用到时才展开,还能附带脚本、模板和参考文档。
一个 Skill 能在多少个 Agent 里用?
凡是实现了 Agent Skills 开放标准的 Agent 都能用。官方与厂商资料中提到的包括 Claude Code、Codex、Cursor、OpenClaw、OpenCode、GitHub Copilot 等,具体数量随 skills CLI 版本持续增加,以官方列表为准。
不会写代码能做 Skill 吗?
能做。scripts/ 目录是可选的,很多 Skill 只有一个 SKILL.md 文件,用中文写清楚步骤和规则即可。只有需要精确计算、格式转换这类任务时才需要脚本。
Skill 的 name 能用中文吗?
不能用中文。官方规范要求 name 只能包含小写字母、数字和连字符,并且必须与目录名一致;中文可以写在 description 和正文里。
第三方 Skill 安全吗?
不能默认安全。第三方安全审计显示公开市场中存在大量缺陷和恶意 Skill。安装前要完整阅读 SKILL.md 和所有脚本,优先选择官方或知名团队的仓库,并先在隔离目录里试用。
Skill 和 MCP 应该选哪个?
两者解决不同问题,通常一起用。需要让 Agent 访问外部系统和数据时用 MCP;需要教 Agent 按固定流程和标准做事时用 Skill。
装了 Skill 但 Agent 不调用怎么办?
优先修改 description。把“做什么”和“什么时候用”都写具体,加入用户常说的原话;也可以在对话中直接点名要求使用该 Skill 来验证它是否安装成功。
参考来源
- Agent Skills 官方规范(agentskills.io)
- agentskills 官方 GitHub 仓库
- vercel-labs/skills:开放 Skill 生态的命令行工具
- 腾讯新闻:云栖大会 Skill 上线(阿里技术官方账号发布)
- Firecrawl:Agent Skills 与 SKILL.md 工作原理解析
- 云安全联盟:SKILL.md 与 Agent 上下文投毒研究简报
- Obot:MCP 与 Agent Skills 供应链安全分析
内容核验日期:2026 年 09 月 27 日
工具选型与提示词资料
适合阅读工具评测、工具推荐、对比测评类文章后继续转化。