最近一段时间,公众号、小红书和 𝕏 的时间线上涌出了一堆关于 Skills 的内容,上天入地无所不能的样子。

我看了一下微信热度,大有超过 MCP 和 RAG 的趋势。

图片

但是:

这东西到底是个啥?怎么用上这个东西?
Skills 真的能帮助普通人更好地用 AI 么?
什么人需要深度研究这个技术?具体应该关注什么?

这篇文章我们讲透 Skills,主打一个背景信息全面 + 通俗易懂

别嫌啰嗦,我们开车。

SKills是什么

这是 Claude 发布的一个功能,它可以被应用在 Claude 客户端和 Claude Code 中(目前越来越多工具开始支持,稍后再说)。与 MCP、Commands、SubAgents 属于同一级别。

如果这几个功能你都不熟悉也没关系,看下表:

图片

我好像一不小心已经把 SKills 的原理讲完了……

如果看到这里你已经了解Skills是什么了,评论区打个 1,让大家看看谁这么聪明,一点就透!

还没看懂也没关系,不是你不聪明,你只是比评论区那些人少一点背景知识,接下来马上给你补齐。

所有这些花里胡哨的名词,本质上都是预设或者现场编写一些提示词、在需要的时候发给大模型,让AI 按提示词干活。

以 Claude Code 为例,你有以下可以“发送”提示词的入口:

1. 像 ChatBot 一样有个对话框可以输入文本,就是最基本的现场编写提示词发给 AI。

图片

2. 你可以在项目的文件夹里,创建一个CLAUDE.md的文档,在里面写提示词。这些提示词会被插入到 Claude Code 的系统提示词里,在对话的最前面自动发送给大模型,统领全局。

图片

3. 你可以在项目的文件夹里,创建一个.claude的文件夹,在里面再创建一个commands的文件夹,在里面创建name.md的文档,里面写上提示词的话,前面那个name就会在你输入/的时候显示。相当于把一些提示词预设到指令里,省的你每次复制粘贴了。

图片

4. 你还可以在刚刚创建的.claude文件夹里再创建一个agents文件,在里面创建name.md的文档,里面写上提示词,就可以在 Claude Code 里通过/agents指令看到他们。可以主动唤醒让它们干活,它们也会在遇到适合自己的任务时被主模型调用。

图片

众所周知,大模型它只能给你回复文本。

它没手没脚的,你就是把它吹上天,它也只有“嘴皮子”功夫。

得能让 AI 像人类一样使用各种工具,才会显得“智能”。

毕竟我们之所以被称为“智人”,除了会用语言以外,另一个重要的特征是会使用工具。

但,众所周知,大模型它只能给你回复文本,没手没脚。

只能由人类来伺候它(我想到了一个科学家,但我不能说,显得很不尊重人……)

所谓的 Tool Use、MCP 这种看起来让模型“使用工具”、“掌握某种技能”的说法,其核心本质是这样的:

💭 我想让大模型使用百度联网搜索资料
🤔 但是模型只能输出文本啊?
💭 那能不能让模型输出一段它想搜的关键词,我帮它搜、搜完以后把结果告诉它,它再帮我分析?
🤔 能,但是这太“人工”智能了。你这样:我这有百度搜索的 API 接口,我这写好一个程序,你让大模型按要求输出,我这边程序接收到以后直接就帮你搜了,搜完把结果告诉大模型。
💭 高级,把你说的这个封装起来给其他人用行不行?
🤔 行,就叫它搜索MCP吧!

图片

如果我们给了 AI 好多工具,它怎么知道该用哪个呢?

MCP、SubAgents、SKills 这几个东西,在他们的 提示词/代码 里都有一个叫description的板块,里面写了什么时候、怎么使用这个功能。

图片

总结一下:我们可以使用提示词直接约束引导 AI 通过生成文本完成某些事情(commands、SubAgents),也可以给它提供一些工具让 AI 通过生成指定格式的文本,我们帮它调用工具,获得更多信息后 AI 再通过生成文本完成一些相对复杂的任务(Tool Use、MCP、SKills)

背景信息介绍已完成,截止到这里如果你看懂了,就说明你已经学会 MCP 和 Tool Use(Function Calling)了。

请在评论区里打个 1,让大家看看是谁这么聪明!

(是的,没人知道你是前面就看懂了,还是现在才看懂)

(现在学会了就行,管它早还是晚)

进入正题:什么是 SKills?

我们前面提到了 5 种让 AI 干活的方式:

1. [prompt]直接聊天发需求
2. [system_prompt]预设一个指令,写在系统提示词里,每次都带着
3. [commands]预设一个指令,/xxx一键发需求
4. [SubAgents]预设多个指令,写清楚啥时候用,AI 自己调用发需求
5. [MCP]给 AI 一些工具,写清楚啥时候用,AI 生成参数调用工具

事情发展到这里,好像已经挺够用的了,为什么还要有 SKills 这个功能出现呢?

其实,包括我在内的大部分重度用户,也都不知道为啥。

唯一可以拿来解释的就是:emmmm,渐进式披露,节省上下文

一会再解释这个渐进式披露,先说这个 SKills 是让 AI 干活的。

SKills 的创建方式如下:

1. 在.claude文件夹内创建skills文件夹,里面再创建一个表示技能文件夹
2. 技能文件夹里创建名为SKILL.md的文档,里面写技能名称(name)、技能使用条件(description)和正式的技能用法(prompt)
3. 技能文件夹里还可以创建其他文件夹,里面存各种资料和程序脚本。

下面是 Claude 官方给出的让 AI 创建 MCP 服务的技能结构(我翻译成中文了):

1. 根目录下的 SKILL.md文档详细阐述了什么时候、阅读什么文档、运行什哪个脚本
2. reference文件里是各种支持资料文档
3. scripts文件里是各种可以直接运行的 Python 代码程序

图片

SKills 的运行原理如下:

1. Claude Code启动的时候,会加载/.claude/skills文件下面的每个技能文件夹里SKILL.md的 name 和 description,放在提示词里告诉 AI 你有这些技能可以用
2. AI 干活的时候,发现有一个技能挺有意思,想用一下,就会把技能的 SKILL.md文档里的正式用法的提示词拿出来读一读
3. 这时候 AI 发现:“哟,还有个Word文档教程呢!”、“哟,还有个 Python 脚本程序可以运行!”、“哟,还有模版可以抄!”……
4. 然后 AI 就对着SKILL.md里的描述,根据具体任务需求把那些资料和程序扒拉出来阅读学习、运行使用。

发现了没?这就一“炒冷饭”功能:

1. 在文件夹里预设好提示词,用的时候打开看 —— SubAgents
2. 提供资料或程序脚本,用的时候读取运行 —— MCP

差异在于两点(硬撑解释):

1. SKills 渐进式披露,节省 Token 消耗;
2. 以“附件文件”形式提供,更灵活。

关于渐进式披露:

SubAgents 功能还好,每次运行只加载开头的description,真用的时候也是发给另一个 AI,不会占用当前模型的上下文,但是MCP功能就是硬生生的费 Token 了。

下面是现场报道:

🙋:给我讲个笑话。
你有如下工具可用:
web_search:在需要联网的时候调用,你需要输出这样的结构才能用{“tool”:“web_search”,“scheme”:{“query”:"",“data_range”:""}}
weather:需要查询天气的时候调用,你需要输出这样的结构才能用&#%¥_#……
file:想查看本地文档的时候调用,你需要输出这样的结构才能用&#%¥_#……
fetch:想要查看某个 URL 的时候调用,你需要输出这样的结构才能用&#%¥*#……

🤖:[加载10s后]啥任务?你后面啰嗦几万字,一个也没用,你前面说的啥来着?

但是 SKills 就不会这么刚,不会像 MCP 这样把所有程序的使用方法、资料说明都一股脑放在上下文里。

你可能会问了:改改 MCP 不行么?

改了,顺便改了一下名字,叫 SKills

图片

开玩笑,MCP 有它自己的好处:不会拖家带口带着那一堆文件

我猜你可能在前面讲 SKills 运行原理的时候就发现了:那一堆文件夹,必须一直带着,并且确保客户端有读取文件、运行代码的能力。

这时候你应该能理解,为啥这 SKills 只能在客户端类的应用里运行,而不能像 MCP 那样可以配置在网页里。

MCP 有两种调用方法:

Stdio:把写好的功能程序保存或者缓存在本地,让客户端运行程序;
Streamable HTTP:原来叫SSE,开发者把功能代码放在云服务器,客户端的 AI 直接云端请求

你看到那些在网页上就能配置 MCP 的产品,用的都是第二种调用方法。

SKills 目前只有类似 MCP 的 Stdio 类型的调用方法,所以网页应用几乎没办法使用这个功能。

目前已知的支持 SKills 的客户端有如下几个:

1. Claude 官方客户端,但需要购买 Pro 及以上会员
2. Claude Code:在终端里使用的 AI 编程工具
3. Qwen Code:在终端里使用的 AI 编程工具
4. Alma:一个 ChatBot 客户端,不但支持 SKills,还有其他好多很强的能力

图片

使用和创建 Skills

Skills 的使用非常简单,把别人打包好的文件下载下来放在你电脑上就好了。

如果你使用 Claude 客户端,把技能压缩包上传到 Claude 客户端,位置在:Setting » Capability » SKills,记得打开上面的 Code execution and files creation,也就是给客户端运行代码、编辑文件的权限。

图片

如果使用 Claude Code,把技能文件夹放在以下两个地方都可以:

1. 电脑根目录下/.claude文件中(是个隐藏文件),创建一个 skills 文件夹,把技能文件夹放进去即可在所有项目中使用这个技能
2. 项目目录下,创建.claude文件,再创建一个 skills 文件夹,把技能文件夹放进去即可在当前项目中使用这个技能

图片

如果你使用 Qwen Code,跟 Claude Code 一样,只是文件名不是.cluade了,换成.qwencode之类的(我没用过 Qwen Code,瞎猜的,自己找找看)

如果你使用 Alma,路径换成根目录» .config » Alma » skills文件。

图片

如果你想创建自己的 SKills,可以按照如下流程操作:

1. 首先确保你有一个值得被封装标准化的技能
2. 把这个技能写成 SOP,即:什么时候使用、如何使用、如何一步一步干活、怎么算干好了、有什么参考资料。
3. 把官方那个skills-creater技能包下载下来,配置到你的客户端里
4. 把你写的 SOP 发给客户端。

下面是一个示例指令:

<span leaf="">给我创建一个 SKills,按下面的流程帮我指引大模型干活:<span leaf="">  
<span leaf="">1.<span leaf=""> 在需要做封面图片的时候使用这个技能<span leaf="">  
<span leaf="">2.<span leaf=""> 通过调用 Seedream API 根据需求生成图片,调用文档我放在工作目录下的<span leaf="">`/makeCoverSkills-docs/Seedream_ 4.0-4.5_API.md`<span leaf="">里了<span leaf="">  
<span leaf="">3.<span leaf=""> 工作流程这样:识别用户的需求→把用户的需求抽象成生成封面图片的提示词→根据需求选择合适的图片尺寸→以上信息作为入参运行可以调用 API 的脚本程序→把 API 返回的图片 URL 显示在前端<span leaf="">  
<span leaf="">4.<span leaf=""> 生成封面的提示词,参考<span leaf="">`封面设计,主题“{根据用户需求抽象}”,副标题“{可选}”,主题和标题为黑色字体,圆润粗体,带阴影,铺满画面。干净的背景,白色到{根据需求调整主色调}渐变。点缀浅灰色、半透明的{根据需求抽象配图关键词}等元素线框插图做配饰插画。`<span leaf="">  
<span leaf="">5.<span leaf=""> Seedream API Key使用<span leaf="">`XXXXX`<span leaf="">,写死在调用程序里就好了。

我用 Alma,配置了 Kimi 的 K2-Thinking 模型,最终写出来的 SKills 还不错。

图片

值得投入精力研究么?

对于普通人来说,看完这篇文章,知道这东西是个啥、有谈资就够了。

但对于产品经理、算法工程师这类需要设计开发 AI 产品的从业者,必须仔细、透彻的搞清楚。

普通人不用浪费精力的三个原因:

1. 使用成本太高了,要不是有 Alma 这种客户端,那黑漆漆的终端不是人用的;
2. 自己写 SKills 一旦涉及到程序脚本,就是地狱难度了;
3. 用别人的 Skills 是无稽之谈,参差不齐且不一定适合你用,改又改不了……

但是产品经理必须搞明白,原因太多了,随便也写三条:

1. 一种把最佳实践产品化、且让大模型接管的最小实现,AI产品经理的必备技能
2. 通过提示词让模型正确的使用自建工具(代码脚本),提示词工程的基准线
3. 上下文工程此刻的最佳实践之一,渐进式披露也好、按需调用也好,比 MCP 省窗口

推荐学习ui-ux-pro-max这个 Skills,我前两天拆解后决定评选它为此刻 skills 的最佳实践!

它在SKILL.md之外提供:

1. 资源:50+ 种 UI 样式、21+ 套配色方案、50+ 种字体搭配、20+ 种图表类型、8 个技术栈的最佳实践,以表格形式提供
2. 脚本:用以根据需求,在资源库中查询匹配的模板

图片

是的,它并不是把所有模板示例都扔给模型,而是做成 Excel 表格,然后写个脚本,让模型抽象需求后使用脚本从表格中查找匹配的模板。

图片

Anthropic 官方提供的那些 Skills 也值得研究一番,我之前有对那些 Skills 进行翻译、分析,扫码加入 AI 学习行动圈知识星球获取。

图片

AI学习行动圈

这是我 23 年底开始,和人人都是产品经理社区共同运营的一个圈子,截至目前已经持续运营、维护超过 600 天了。

图片

我的各种 AI 研究心得、发现的好应用、开发的小项目都会在里面分享,目前圈子有核心三个交流学习平台。

7 个微信群,早报和日常交流

微信群里每天一早有 AI 早报,上下午还有“读报时间”,以及我每天不定期刷屏级的各种 AI 工具体验、提示词编排思考、行业新闻解读同步。

图片

以及,你可以在群里讨论任何与 AI 相关的工具、应用问题,几乎都能找到答案。

图片

腾讯文档-圈友空间

用来沉淀体系化、深度的 AI 文章和超长的工程化提示词,不定期更新。

当前包括:Claude codeCursorManus等顶级产品的系统提示词和工具列表,各种深度的 Agent 白皮书和实践指南

图片

知识星球-每日报告、工具和实战经验分享

我在星球里主要维护「实战分享」「工具箱」和「情报局」三个标签

图片

实战分享是可以在日常工作和生活中直接应用的提示词和效率工具。上面截图里的 Step-Back 提示词就非常好用,堪比 o4。在公众号、直播中演示的所有 AI 实战应用的提示词也都在这个标签下。

AI 工具和鲜知道就是好用的、热门的 AI 工具、资讯分享,我把那些太技术、太浮夸的都筛选了,放进这个标签的都是可以直接用来的好玩儿!

加入圈子,跟 4000+ 行动派一起玩 AI、聊 AI,精进起飞~

![图片](data:image/svg+xml,%3C%3Fxml version=‘1.0’ encoding=‘UTF-8’%3F%3E%3Csvg width=‘1px’ height=‘1px’ viewBox=‘0 0 1 1’ version=‘1.1’ xmlns=‘http://www.w3.org/2000/svg' xmlns:xlink=‘http://www.w3.org/1999/xlink'%3E%3Ctitle%3E%3C/title%3E%3Cg stroke=‘none’ stroke-width=‘1’ fill=‘none’ fill-rule=‘evenodd’ fill-opacity=‘0’%3E%3Cg transform=‘translate(-249.000000, -126.000000)’ fill=’%23FFFFFF’%3E%3Crect x=‘249’ y=‘126’ width=‘1’ height=‘1’%3E%3C/rect%3E%3C/g%3E%3C/g%3E%3C/svg%3E)