从零开始写好 Skill(一):Skill 是什么?为什么你应该关心它

举报
AGENT魔方 发表于 2026/04/13 15:45:09 2026/04/13
【摘要】 本文为「从零开始写好 Skill」系列第一篇,核心围绕 “Skill 是什么” 及 “为何需要关注 Skill” 展开。该系列承接上一系列(7 篇拆解 Agent 骨架的内容),重点教学如何为 Agent 撰写 “工作手册”。

专栏1.png

欢迎阅读「从零开始写好 Skill」系列文章 —— 上一个系列我们用 7 篇文章拆解了 Agent 的骨架,这个系列教你给 Agent 写"工作手册"。

  • 第一篇:Skill 是什么?为什么你应该关心它(本文)
  • 第二篇:一个好 Skill 长什么样(即将更新)
  • 第三篇:手把手写你的第一个 Skill(即将更新)

作者:十一

开场:一个所有人都遇到过的场景

朋友在群里转了一篇公众号文章。

你点开看了,写得真好,想存下来以后反复看。于是你把链接丢给 Agent:

" 帮我把这篇公众号文章下载到本地,转成 Markdown,再给我一个要点总结。"

Agent 回你:

抱歉,我无法直接访问微信公众号的链接。微信公众号文章有反爬机制,我没有办法获取页面内容。

不过你可以试试以下方法:

1. 在浏览器中打开文章,手动复制全文

2. 使用"保存为 PDF"功能

3. 使用第三方工具如 MarkDownload 浏览器插件

如果你把文章内容粘贴给我,我可以帮你整理和总结。

对话到这里就死了。

Agent 很礼貌,很诚实,给了你三条"建议"——但没有一条是它帮你做的。你还是得自己动手复制粘贴。

这不叫帮忙,这叫甩锅。

换个 Agent 试试?

不,不用换 Agent。同一个 Agent,同一个模型,同一个链接,再来一次。

这次唯一的区别是:你给它装了一个叫 wespy-fetcher 的 Skill。

" 帮我把这篇公众号文章下载到本地,转成 Markdown,再给我一个要点总结。"

Agent 回你:

好的,我来获取这篇文章。

(自动调用 wespy-fetcher,抓取公众号文章内容,转为 Markdown)

文章已保存到 ~/Documents/articles/2025-03-12-agent-native-api.md

以下是要点总结:

核心观点: Agent 时代的云服务 API 需要从"人类友好"转向"Agent 友好"——减少交互轮次、提供结构化响应、支持批量操作。

三个关键论点:

1. 传统 REST API 为人类设计的分页、确认弹窗等交互模式会严重拖慢 Agent 的执行效率

2. Agent 友好的 API 应该提供"意图级"接口,而不是"操作级"接口

3. 未来 API 的文档本身就是写给 Agent 看的,可读性需要为机器优化

需要我对其中某个部分展开分析吗?

同一个 Agent。同一个模型。同一个链接。

第一次说"我做不到",第二次说"做好了"。

区别在哪?

区别在于,第二次它手里多了一份"工作手册"。这份手册告诉它:遇到公众号链接时,不要说"我做不到"——去调用一个叫 WeSpy 的工具,它能帮你绕过反爬机制抓取内容。手册还告诉它:抓完之后转成 Markdown 格式,保存到指定目录,文件名用日期加标题。

这份工作手册,就叫 Skill

打个比方:你公司来了个新员工,聪明、勤快、学啥都快——但他第一天上班,啥流程都不知道。你让他"帮忙处理一下客户投诉",他可能直接回复客户说"不好意思我们解决不了"。不是他笨,是他不知道公司有工单系统、有处理流程、有需要抄送的负责人。

给他一份《客户投诉处理 SOP》,他立刻就能按流程操作。

Agent 也是一样。模型就是那个聪明的新员工,Skill 就是你递给他的那份 SOP。

一、Skill 到底是什么?

上面用比喻讲清楚了 Skill 的角色——Agent 的 SOP。但光知道"它是个 SOP"还不够,我们拆开看看它具体包含什么。

一个 Skill 就是一个 Markdown 文件,通常叫 SKILL.md,用人类的语言写清楚三件事:

  1. 什么时候该用我——遇到什么样的任务,Agent 应该想到这个 Skill
  2. 具体怎么做——一步一步的操作流程,用什么工具、按什么顺序
  3. 注意什么——边界条件、常见坑、出错了怎么办

就这三件事,不多不少。

还是用公众号那个例子来说:wespy-fetcher 这个 Skill 告诉 Agent 的就是——"当你看到 mp.weixin.qq.com 的链接,别说做不到,去调用 WeSpy 这个工具,按这个步骤抓取内容,保存成 Markdown"。Agent 的智商没变,但它突然"知道该怎么做了"。

二、为什么没有 Skill 的 Agent 会说"我做不到"?

这个问题值得多想一步。

Agent 说"我无法访问公众号链接",它在撒谎吗?不是。它说的是事实——以它当前掌握的信息和工具,它确实做不到。就像那个新员工说"我不知道怎么处理投诉"也不是在偷懒,他是真不知道。

问题出在信息差

Agent 的底座模型知道的东西很多——编程、写作、分析、翻译——但它不知道有一个叫 WeSpy 的开源工具可以抓取公众号内容。它也不知道该把抓回来的内容存到哪个目录、用什么格式命名。这些"领域知识"不在模型的训练数据里,或者即使在,它也不知道什么时候该用。

Skill 做的事情就是填补这个信息差

它不是让 Agent 变得更聪明(模型能力没变),而是告诉 Agent:你其实有这个能力,只是你不知道而已。这里有一个工具,这样调用,按这个流程走。

这就是为什么 Skill 的核心价值不是"提升质量",而是扩展能力边界。没有 Skill,Agent 只能做模型本身"知道怎么做"的事;有了 Skill,Agent 能做任何"有人教它怎么做"的事。

三、Skill 和 Prompt 有什么区别?

你可能会想:这不就是写一段更详细的 Prompt 吗?

不完全一样。区别在三个地方:

1. 触发方式不同

Prompt 是你每次对话时手动输入的。Skill 是预先写好、自动匹配的——Agent 遇到符合条件的任务,会自己去读对应的 Skill,不需要你每次都把操作流程重复一遍。

你不会每次让新员工处理投诉时都把 SOP 念一遍。你把 SOP 放在那里,他遇到了自己去查。Skill 是同一个逻辑。

2. 复用性不同

一段 Prompt 是一次性的,换个对话窗口就没了。Skill 是持久化的文件,写一次,所有后续对话都能自动生效。你可以分享给同事,发布到 GitHub 让全世界用。

上面提到的 wespy-fetcher 就是一个开源的 Skill(GitHub 仓库[1])。作者把自己的经验写成了一个 SKILL.md 文件,任何人装上就能用,不需要重新摸索"公众号文章怎么抓"这个问题。

3. 结构化程度不同

Prompt 是自由文本,怎么写都行。Skill 有相对固定的结构——什么时候触发、具体步骤、依赖什么工具、注意事项。这种结构化让 Agent 更容易"读懂"你的意图。

当然,从本质上说,Skill 最终也是以文本的形式注入到 Agent 的上下文中的。你可以把 Skill 理解为一种结构化的、可复用的、自动触发的 Prompt。但正是"结构化"、"可复用"、"自动触发"这三个特性,让它和随手写的 Prompt 有了质的差别。

四、一个真实的 Skill 长什么样?

说了这么多,Skill 文件到底长什么样?

以刚才的 wespy-fetcher 为例,下面是它真实的 SKILL.md 文件(来自 GitHub仓[2])。

别被下面这段"代码"吓到——它其实就是一份分了几个章节的文档,跟你在 Word 里写标题加正文没什么区别,只不过格式是 Markdown。我加了批注帮你看懂每一段在干什么:

---
name: wespy-fetcher
description: 获取并转换微信公众号/网页文章为 Markdown 的封装 Skill,
  完整支持 WeSpy 的单篇抓取、微信专辑批量下载、专辑列表获取、
  HTML/JSON/Markdown 多格式输出。
  Use when user asks to 抓取微信公众号文章、公众号专辑批量下载、
  URL 转 Markdown、保存微信文章、mp.weixin.qq.com to markdown.
---
# ↑ 这段是"身份证":告诉 Agent 这个 Skill 叫什么、什么时候该用它。

# WeSpy Fetcher

封装 tianchangNorth/WeSpy 的完整能力。

## 功能范围(与 WeSpy 对齐)
# ↑ 这段是"能力清单":告诉 Agent 你能做哪些事。

- 单篇文章抓取(微信公众号 / 通用网页 / 掘金)
- 微信专辑文章列表获取(--album-only)
- 微信专辑批量下载(--max-articles)
- 多格式输出(Markdown 默认,支持 HTML / JSON / 全部)

## 使用
# ↑ 这段是"操作手册":一步步告诉 Agent 该调用什么命令。

脚本位置:scripts/wespy_cli.py

# 单篇文章(默认输出 markdown)
python3 scripts/wespy_cli.py "https://mp.weixin.qq.com/s/xxxxx"

# 专辑批量下载
python3 scripts/wespy_cli.py "https://mp.weixin.qq.com/mp/appmsgalbum?..." --max-articles 20

## 实现说明
# ↑ 这段是"注意事项":依赖什么、文件放哪、出错了怎么兜底。

- 优先使用本地源码路径 ~/Documents/QNSZ/project/WeSpy
- 若本地不存在则自动执行 git clone 到该目录
- 通过导入 wespy.main.main 直接调用上游 CLI,保持行为一致

看出来了吗?回头对照前面说的 Skill 三要素:

  1. 什么时候该用我 → 最上面的 description 字段
  2. 具体怎么做 → "使用"章节里的命令和参数
  3. 注意什么 → "实现说明"里的依赖和兜底逻辑

没有复杂的代码逻辑,没有 API 对接,就是用 Markdown 写清楚了"遇到这种任务该怎么做"。

但就是这么一个文件,让 Agent 从"抱歉我做不到"变成了"已经帮你搞定了"。

五、Skill 的生态已经在爆发

你可能会想:就算 Skill 有用,我也不想每个任务都自己从头写一个吧?

好消息是,你不需要。

就像手机的 App Store 一样,Skill 正在形成自己的生态。开源社区已经有了大量现成的 Skill,覆盖各种场景:

  • wespy-fetcher:抓取公众号文章,转 Markdown
  • x-fetcher:抓取 X(Twitter)推文和长文章
  • video-downloader:下载 YouTube 视频
  • invoice-scanner:扫描识别发票,生成分类报告
  • code-roaster:用 Gordon Ramsay 风格吐槽你的代码质量
  • voice-changer:音频变声处理
  • ……

仅 wlzh/skills 这一个仓库[1]就有十几个实用 Skill。而在更大的社区里,像 awesome-agent-skills[3] 这样的汇总仓库已经收录了数千个 Skill,覆盖开发、运营、内容创作、数据分析等各种领域。

你可以直接用别人写好的 Skill,也可以在别人的基础上修改,当然也可以自己从头写——这正是这个系列接下来要教你的。

六、为什么你应该关心 Skill?

三个理由:

Skill 是当前 Agent 生态中杠杆最高的投入。

换一个更贵的模型,效果可能提升 10%。写一个好的 Skill,效果可能从"做不到"变成"做得到"——这不是 10% 的提升,是从 0 到 1 的突破。

Skill 是可以积累的资产。

每写一个 Skill,Agent 就多一个能稳定完成的任务类型。十个 Skill,Agent 就能覆盖你日常工作的十个高频场景。Skill 库越大,Agent 越好用,这是一个正向飞轮。

Skill 是"有经验的人"的超级杠杆。

在 Agent 时代,模型是通用的、工具是公开的,但经验是独特的。你在某个领域踩过的坑、总结的最佳实践、积累的 know-how——这些东西以前只存在你的脑子里,教别人要靠口口相传。现在你可以把它写成 Skill,让 Agent 帮你(和所有人)执行。

这不是 AI 取代人,这是人通过 Skill 放大自己的经验。

下一篇预告

现在你知道 Skill 是什么了:一个 Markdown 文件,告诉 Agent "遇到这类任务该怎么做"。你也看到了它的威力——同一个 Agent,有没有 Skill,表现天差地别。

但你可能已经好奇了:我们刚才看到了 SKILL.md 的大致结构,但每个部分到底该怎么写才算"写得好"?同样是写 description,为什么有的 Skill 能精准触发,有的却总是被 Agent 忽略?同样是写操作步骤,为什么有的 Skill 让 Agent 一步到位,有的却让 Agent 反复出错?

下一篇,我们拿真实的 SKILL.md 文件开刀,一段一段地拆给你看——不只是"每段是什么",而是"每段怎么写才有效"。


「从零开始写好 Skill」系列是「从零开始理解 Agent」系列的姊妹篇。如果你还没有读过 Agent 系列,建议先从 第一篇:Agent 的底层原理[4] 开始,理解 Agent 的基础架构后再来学 Skill,效果更好。

相关链接

[1] GitHub 仓库: https://github.com/wlzh/skills

[2] wespy-fetcher 仓库: https://github.com/wlzh/skills/tree/main/wespy-fetcher

[3] awesome-agent-skills: https://github.com/VoltAgent/awesome-agent-skills

[4] 第一篇:Agent 的底层原理: https://mp.weixin.qq.com/s/gz_vPvgTdozh4FO6vEdF-Q

容器.jpg

关注 AGENT 魔方公众号,回复 Agent

免费领取「从零开始理解 Agent」全套资料包

加速入门和掌握 Agent:

资料二维码.jpg


【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。