← 返回学习中心 · Skills 与决策OiOi Academy
SKILLS 生态 · 01

Skill 小白完整入门教程

从“教完就忘”到“教一次就好”:11 章一次讲透 Skill 是什么、怎么写、怎么评测、怎么赚钱。高中生可读,细节无删减。

原作者 @ai_xiaomu(黄小木) 来源 X 长文 发布 2026-05-24
?

开篇:每个用 AI 工作的人都遇到的三个归零时刻

先别管定义,看三个你一定经历过的场景:

  • 场景一:你教会 AI 一件事,隔天开新对话,一切归零,又要从头解释。
  • 场景二:你花三天跟 Claude 来回对话调好一套工作流程,隔天又要从头解释。
  • 场景三:你把 500 字的 prompt 存在笔记里,每次复制粘贴,贴了一个月,开始怀疑——这真的是 AI 该有的用法吗?
记住:Skill 就是为了解决“教完就忘”而诞生的。它在 2025 年 10 月由 Anthropic 推出,12 月成为开放标准。
原文题图:Skill 要解决的核心问题
原文题图:Skill 要解决的核心问题
📦

一、Skill 到底是什么

一句话定义

Skill 就是一个文件夹,核心是一个叫 SKILL.md 的 Markdown 文件,告诉 AI 按你定义的 SOP(标准作业流程)稳定执行某类专业工作。

它把“某类事情应该怎么做”封装成可复用、可自动触发的能力模块。

高中生类比
通用 AI 就像出厂的裸机:智力够,但不懂你的领域。Skill 就是即插即用的扩展包——装上“小红书风格 Skill”,AI 立刻变成懂你品牌的小编;装上“周报 Skill”,立刻按你公司格式出周报。就像给手机装 App,手机还是那部手机,但 suddenly 会点外卖、会打车了。

先纠正一个关键误解:Skill 不绑定任何 AI

很多人听到 Claude Skills 就以为是 Claude 专属功能,完全不是。

记住:Agent Skills 是 Anthropic 推出的开放标准,Claude 只是带头实现者。同一个 Skill 文件夹,可以放在 ~/.claude/skills/ 给 Claude Code 用,也可以放在 ~/.cursor/skills/ 给 Cursor 用,还能给 OpenAI Codex、Gemini CLI、VS Code Copilot、JetBrains Junie 用。

你今天写的 Skill,明天可以无缝搬到另一个 Agent 上,投入不会被锁死在一家。本文以 Claude Code 为主举例(标准制定者、生态最全),但所有原理、写法、避坑经验对所有 Agent 工具通用——看到“Claude Skill”,心里等同于“Agent Skill”即可。

🧭

二、Skill 和四个东西的边界

很多人把 Skill 和提示词、知识库、MCP、智能体混着说,其实分得很清:

概念 一句话 高中生类比
提示词 一次性的指令,说完就忘 你给员工发了一条微信,说完就忘
Skill 可复用的能力模块,自动触发 你给员工写了一本工作手册放他桌上,还附带工具箱
知识库 静态的资料集合 图书馆:告诉你世界上有什么
MCP 连接外部工具的协议 厨房里的各种厨具:解决“能不能做”
智能体 能记忆、能决策的完整系统 整个员工系统;Skill 只是它身上的一个零件
原文图:Skill 与四者的边界关系
原文图:Skill 与四者的边界关系

四件事不是互斥的,实战中经常组合

原文给了一个组合案例,一个工作流里四者各司其职:

  • MCP 让 Claude 连到 Reddit 抓数据;
  • Skill 教它抓到数据后怎么筛选 / 分类 / 推荐;
  • 知识库 提供品牌资料库;
  • 智能体 是整个跑通的系统。
高中生类比
做一桌菜:MCP 是锅碗瓢盆(没工具做不了菜),知识库是菜谱大全(查得到做法),Skill 是你家祖传的那张“红烧肉秘方”(按步骤来,次次都好吃),智能体是掌勺的大厨(自己决定先做哪个菜)。四样齐了,馆子才能开张。
🏗

三、架构与运作机制

文件结构:一主三从

skill-name/
├── SKILL.md          (必需:YAML 元数据 + Markdown 指令)
├── scripts/          (可选:可执行代码,确定性任务)
├── references/       (可选:按需加载的参考文档)
└── assets/           (可选:输出用的模板/素材)

每个子目录解决不同问题,但服务于同一件事——省 context、稳品质:

  • scripts/:不占 context 又算得准(比如数数、调 API);
  • references/:按需载入,不浪费空间;
  • assets/:让输出格式标准化(模板、素材)。

三层渐进式披露:Skill 设计的灵魂

这是 Skill 能在十几个并存时不爆 context 的根本原因。Claude 分三层加载:

启动时只读所有 Skill 的 description(元数据里的一句话简介),决定该用哪一本。就像进图书馆先看书脊标题,不会把每本书都翻一遍。

高中生类比
就像你查字典:先看目录(L1)找到大概在哪,再翻到那一页(L2)看释义,实在不懂才看附录的例句(L3)。你不会为了查一个词把整本字典背下来——Skill 让 AI 也这么干。
原文图:三层渐进式披露机制
原文图:三层渐进式披露机制

YAML 元数据:门面怎么写

---
name: your-skill-name
description: 这个技能做什么以及何时使用。包括触发上下文、文件类型、
  任务类型和用户可能提及的关键词。
license: MIT
allowed-tools: Bash, Read, Grep
trigger_keywords:
  - 关键词1
  - keyword2
version: 1.0
---
原文图:YAML 各字段说明
原文图:YAML 各字段说明

Description 决定生死

三层架构里,L1 的 description 是最关键的——它决定你的 Skill 会不会被触发。三个核心事实:

  1. Claude 启动时只读所有 Skill 的 description;
  2. 根据 description 做语义判断,不是关键字匹配;
  3. Claude 倾向保守:不确定就不触发,实测描述模糊时触发准确率只有 55%。

反例(永远不会被触发):

description: 帮助处理日常工作。

正例(Anthropic 官方推荐“pushy”风格——宁可主动一点):

description: 每日工作规划流程。当用户说"规划今天""daily planning"
  "今日规划""开工"时使用。即使用户没明确说"规划"二字,
  只要在早晨问"今天做什么",也务必触发此 skill。
记住:写好 description 的三条铁律:① WHAT + WHEN 一起写(做什么+什么时候用);② 触发词中英文双语都列;③ 宁可 pushy 不要保守——官方明确说,主流问题是欠触发,不是乱触发。
📏

四、写好 Skill 的核心原则

三大原则与自由度

原文图:写 Skill 的三大原则
原文图:写 Skill 的三大原则
原文图:自由度怎么把握
原文图:自由度怎么把握

核心思想:给模型留多少自由发挥的空间,取决于任务的确定性——步骤越确定,写得越死;越需要判断,留白越多。

Anthropic 归纳的五种设计模式

原文图:五种 Skill 设计模式
原文图:五种 Skill 设计模式

好用的 Skill 通常混用多种模式。不用刻意去套,但知道有这些可能性,设计时会更有结构。

黄金法则:用“为什么”代替“必须”

这是 skill-creator(Anthropic 官方做 Skill 的元 Skill)源码里的原话:

"Try to explain to the model why things are important in lieu of heavy-handed musty MUSTs."
(与其用一堆死板的 MUST 来压模型,不如跟它解释为什么这件事重要。)

反例:

ALWAYS 在执行命令前显示命令内容。NEVER 直接执行。

正例:

执行命令前先显示内容,因为使用者需要确认安全性。
未经确认就执行可能造成不可逆的损害。
高中生类比
就像管小孩:你说“不许碰热水壶!”,他只知道这一个壶不能碰,换个开水瓶照样摸;你说“烫的东西会烫伤手,看到冒热气的都要小心”,他遇到没见过的烫东西也会躲。原因让模型举一反三,规则只能覆盖你想得到的情境。

唯一的例外是输出格式:“输出一定要用这个模板”这种机械要求,没有“为什么”可解释,直接写死。

信息归属:别重复 + 不要放的文件

skill-creator 的铁律:“信息应该存在于 SKILL.md 或 references 中——不能同时存在。”SKILL.md 只留基本程序,详情移到 references。重复存放会导致改一处忘另一处,产生不一致。

避坑
Skill 是给 AI 看的,不是给人看的:别加 README.md、INSTALLATION_GUIDE.md、QUICK_REFERENCE.md、CHANGELOG.md 这些人类文档,它们只会浪费 context。
🛠

五、动手做第一个 Skill

Anthropic 官方六步(skill-creator 内部标准流程)

  1. Capture Intent:让用户说清做什么 / 何时触发 / 输出格式 / 是否需要测试;
  2. Interview & Research:边角案例 / 输入输出格式 / 示例文件 / 依赖;
  3. Write SKILL.md:写草稿;
  4. Test Cases:写 2-3 个真实测试用例;
  5. Run & Evaluate:同时跑 with-skill 和 baseline 双盲对比,生成 benchmark;
  6. Iterate:根据反馈改,重跑,直到满意。

普通人的四条快速路径

原文图:四条快速上手路径
原文图:四条快速上手路径

强烈推荐:先装 skill-creator(写 Skill 的元 Skill)

它是一个专门帮你做 Skill 的 Skill。启动后 Claude 会像访谈一样问你:工作流长什么样、什么时候触发、有哪些边界条件——然后自动生成 SKILL.md 和资料夹结构。

安装命令(跟 Claude 说):

帮我安装这个 skill,地址:https://github.com/anthropics/skills/tree/main/skills/skill-creator
克隆到 ~/.claude/skills

它不只是产出,还能帮你:

  • Eval:自动生成测试案例,验证 Skill 能不能正确触发;
  • Improve:根据测试结果自动优化 description 和指令,用 60/40 train/test split 防止过拟合;
  • Benchmark:追踪成功率、token 用量,甚至能跑 A/B test 两个版本盲测对决。

一个最小示例:小红书菜谱改写 Skill

假设你是小红书美食博主,要把普通菜谱改写成小红书风格。SKILL.md 全文如下,放到 ~/.claude/skills/xiaohongshu-recipe/SKILL.md,以后说“转小红书版”就自动触发。从新建文件到能用,不超过 20 分钟。

---
name: xiaohongshu-recipe
description: 把普通菜谱改写成小红书风格的美食笔记。
  当用户说"转小红书版""改成小红书风格"时使用。
trigger_keywords:
  - 转小红书版
  - 小红书风格
  - 改成笔记
---

# 小红书菜谱改写

## 执行规则

### 标题
- 必须带数字,比如"3 步做出""5 分钟搞定"
- 控制在 20 字以内
- 要有悬念或反差感

### 正文
- 开头一句话说清楚这道菜的亮点
- 食材列表用 emoji 标注
- 步骤用数字序号,每步不超过两行
- 语气活泼,像跟朋友聊天
- 禁止"首先""其次""综上所述"这类书面语

### 结尾
- 引导互动:"你们一般怎么做?评论区告诉我"
- 加 2-3 个相关话题标签
- 字数控制在 500 字以内
💾

六、安装、存放与跨工具

加载优先级(4 级,越具体越高)

原文图:Skill 加载优先级
原文图:Skill 加载优先级
记住:经验:除非项目特定,都放个人级 ~/.claude/skills/ 统一管理,避免忘记自己有哪些 Skill。

三种安装方式

原文图:三种安装方式
原文图:三种安装方式

装完记得重启 Claude Code。

跨工具兼容:同一份 SKILL.md 到处用

原文图:各工具 Skill 存放路径对照
原文图:各工具 Skill 存放路径对照

操作上的意义:同一个 SKILL.md,把文件夹软链到不同工具的目录下就能用,不用为每个 AI 重写一遍。这是 Agent Skills 作为开放标准最大的红利。

国内用户痛点(原文整理)

  • 官方 Claude 贵:用中转 API 性价比高,或用 GLM 4.7 划算;
  • CC Switch:开源工具,管理多 API 配置一键切换(github.com/farion1231/cc-switch);
  • 原生安装比 npm 稳:curl -fsSL https://claude.ai/install.sh | bash。
🧩

七、进阶:多 Skill 协作架构

拆分粒度:一个 Skill 只干一件事

记住:核心原则:每个 Skill 一个明确任务,不要做“万能 Skill”。粒度太粗,description 写不清楚,触发不精准;粒度太细,管理成本上来。一个合理的颗粒度是:一个 Skill 解决一类问题,大约 200-500 行的 SKILL.md 主体。

实战案例:博客写作 Skill 套件——不要做一个“全能写作 Skill”,拆成 5 个协作:

~/.claude/skills/
├── blog-outline/       # 生成大纲
├── blog-writer/        # 写初稿(可调用 blog-outline)
├── blog-editor/        # 编辑润色
├── blog-seo/           # SEO 检查(用脚本算客观数据)
└── blog-meta/          # 生成元信息(标签/描述/社交文案)

协作模式:主 Skill 在 ## 步骤 里显式调用其他 Skill:

## 步骤

1. 如果用户没提供大纲,先调用 `blog-outline` skill 生成
2. 按 reference/style-guide.md 的风格规范写作
3. 使用 templates/article.md.tpl 作为基础模板
4. 输出完整 Markdown,含 frontmatter
原文图:拆分协作的好处
原文图:拆分协作的好处
高中生类比
就像拍电影不靠一个超人:编剧只写剧本(outline),导演只管拍摄(writer),剪辑只管剪(editor),宣发只管海报(meta)。导演喊一声“编剧先出剧本”,各干各的,片子反而又快又好。

五条工程经验

  1. 粒度要细:每个 Skill 一个明确任务;
  2. 协作显式化:主 Skill 用 ## 步骤 显式调用其他 Skill;
  3. 脚本承担计算:SEO 字符数、链接统计这类需要客观数据的部分一定用脚本,不要让模型估算;
  4. 风格指南独立:把稳定的知识(写作风格/品牌规范)单独放 references/,改风格只动一个文件;
  5. 模板兜底:模板提供“最差也不至于太离谱”的下限保证。
🧪

八、专业级评测与迭代

Eval 体系(skill-creator 标准流程)

  1. 在 evals/evals.json 写测试 prompts;
  2. 同时跑 with-skill 和 baseline(无 skill),双盲对比;
  3. 通过 agents/grader.md 给每个断言打分;
  4. 用 aggregate_benchmark 出 pass_rate / time / tokens 报告。
{
  "skill_name": "example-skill",
  "evals": [
    {
      "id": 1,
      "prompt": "User's task prompt",
      "expected_output": "Description of expected result",
      "files": []
    }
  ]
}

Description 自动优化(最值钱的一段)

  • 写 20 条 trigger eval queries(8-10 条应触发 + 8-10 条不该触发);
  • 难点:不该触发的要写“近 miss”——共享关键词或概念但实际需要别的工具,不要写“写个 fibonacci”这种太明显的反例;
  • 自动优化脚本:60% train + 40% held-out test,防止过拟合;
  • 跑 5 轮,选 test 分数最高的描述。

应触发的好例子——不是简单写“提取 PDF 表格”,而是写得像真实用户:

"ok so my boss just sent me this xlsx file (it's in my downloads, called something like 'Q4 sales final FINAL v2.xlsx') and she wants me to add a column that shows the profit margin as a percentage."

包含文件路径、个人背景、列名值、随意的口语、可能的拼写错误——越像真人,测得越准。

迭代心法(skill-creator 原文四条)

  1. 从反馈中泛化:不要为单个 case 加 fiddly 规则,如果某问题反复出现,试试换个比喻或工作模式;
  2. 保持精简:看 transcript 找浪费时间的指令,删掉不出力的部分;
  3. 解释 why:LLM 有 theory of mind(心智理论),会举一反三;
  4. 看 transcript 找重复工:如果每个 case 子代理都独立写了 create_docx.py,说明应该 bundle 进 scripts/。

真实迭代案例:/daily skill 改到 v6 才稳定

  • v1:步骤不清楚、路径写错、有些情况没处理;
  • v2:加内容发现系统整合;
  • v3:发现周进度计算常出错,加明确的计算规则;
  • v4:加自动触发——周二提醒跑周会、月初提醒归档;
  • v5:加 iPhone 轻量模式(检测环境,手机上跳过需要 Python 的步骤);
  • v6:才算“好用”。
记住:Skill 不是写完就丢的设定档,它是你工作流的活文件。每改一次,你对自己的工作流就多理解一层。第一版必然不完美。
🚦

九、什么时候才该做 Skill + 避坑清单

三种信号:出现之一才值得动手

原文图:值得做 Skill 的三种信号
原文图:值得做 Skill 的三种信号

反过来:什么时候不要做

  • 一次性任务:做完就不用了,直接 prompt 解决;
  • 过度封装:三个用法就开始拆 Skill,维护成本远大于收益;
  • 追求完美:想 v1 就完美,等真用起来才发现假想需求。

避坑清单

原文图:Skill 避坑清单
原文图:Skill 避坑清单
🌐

十、生态与必装 + 十一、商业潜力 + 结语

Skill 资源地图

原文图:Skill 资源地图
原文图:Skill 资源地图

必装 Skill 清单

原文图:必装 Skill 清单
原文图:必装 Skill 清单

Skill 的商业潜力:重新定义 AI 应用的生产方式

过去,开发一个垂直 AI 应用要漫长的开发周期、昂贵的研发成本、技术团队的高门槛。现在:

  • 零代码门槛:不会写代码也能造垂直 Agent;
  • 极速验证:数周开发周期被压到几小时甚至几分钟;
  • API 服务化:把 Skill 封装成 API,给现有产品快速赋能 AI;
  • Skill 可以当产品卖:本质和当年卖 Prompt 合集一样,但门槛/价值都更高。

几个真实案例:

  • Article-Copilot:一个 Skill 实现素材清洗→逻辑梳理→正文写作的全链路 Agent,媲美独立 AI 产品;
  • AI Partner Skill:让通用 Agent 学会深度记忆,塑造真懂你的 AI 伴侣;
  • 面试准备 Skill:输入公司名 + 岗位 + 简历,自动抓公司信息 + JD + 简历差距分析,生成完整面试准备报告。有人用这个拿到了同花顺的面试机会;
  • Super 黄的玩法:几十个 Skill + 定时任务,凌晨 0/1/2/3/4 点各跑一个,早上起来几份报告全部出来。
高中生类比
当年有人靠卖 Prompt 合集赚钱,Skill 就是升级版、带执行力的 Prompt 合集:以前你买的是一句话,现在你买的是一个“会干活的员工”。任何深耕一个行业的人,把自己的经验和方法论提炼成 Skill,既能自用省时间,也能打包成产品出售。

结语(原文)

如果说 Agent 是 AI 世界的躯体,Skill 就是注入其中的灵魂。

这就像 Steam 平台与创意工坊的关系,正是因为有了极具扩展性的设计架构,游戏才拥有了无限生命力。

Skill 本身不难,就是 Markdown 加上一些结构。但它代表的趋势很重要:AI 从“你每次都要教它”变成“你教一次就好”。而且这个标准是开放的。

记住:“Skill 不是设计出来的,是从一次又一次重复劳动里长出来的。”先跑通一件事,再封装。好的工作流是迭代出来的,不是规划出来的。打开终端,装上 skill-creator,把你今天重复说了第三遍的那段话,写成你的第一个 SKILL.md。
词

术语翻卡:点卡片看解释

Skill
Agent Skill
一个文件夹,核心是 SKILL.md:告诉 AI 按你的 SOP 稳定执行某类专业工作的可复用能力模块。Anthropic 2025-10 推出,12 月成开放标准。
SKILL.md
SKILL.md
Skill 的核心文件:上半是 YAML 元数据(name / description / allowed-tools 等),下半是 Markdown 操作指令。
渐进式披露
Progressive Disclosure
Skill 的三层加载机制:L1 只读 description 选 Skill,L2 注入正文,L3 按需加载 references。省 context 的核心。
Description
description
YAML 里的一句话简介。Claude 启动时只读它来做语义匹配,决定触不触发你的 Skill。写不好=白做。
skill-creator
skill-creator
Anthropic 官方的元 Skill:访谈式帮你生成 SKILL.md,还能做 Eval / Improve / Benchmark。
MCP
Model Context Protocol
连接 AI 与外部工具/数据的开放协议。类比:厨房厨具,解决“能不能做”。
Trigger
触发
Skill 被启用的条件。靠 description 语义匹配+trigger_keywords;官方建议宁可 pushy(主动)不要欠触发。
Eval
evaluation
评测:用测试用例(应触发/不该触发)验证 Skill 的触发准确率和输出质量,再迭代优化。
近 miss
near miss
写负样本测试时的技巧:构造“看起来像、但实际不该触发”的用例(如共享关键词但需别的工具),比明显反例更能测出问题。
行为工程
behavior engineering
原文主张:Agent 开发正从 prompt craft(调提示词)走向 behavior engineering(可测、可评分、可回归的行为工程)。
测

自测一下:点问题展开参考答案

提示词是一次性指令,说完就忘;Skill 是封装成文件夹的可复用能力模块(SKILL.md + scripts/references/assets),能被 AI 自动触发、稳定复用。类比:微信消息 vs 放在桌上的工作手册+工具箱。

因为 Claude 启动时只读所有 Skill 的 description 做语义匹配来决定触发哪个。写模糊了触发准确率实测只有 55%,等于白做。三条铁律:WHAT+WHEN 一起写、中英文触发词都列、宁可 pushy 不要保守。

L1 启动时只读 description(选哪本手册);L2 触发后注入 SKILL.md 正文(按步骤干活);L3 按需加载 references/ 附录(用不到就不加载)。这是十几个 Skill 并存不爆 context 的根本原因。

不要只写死规则(ALWAYS/NEVER),要解释原因。反例:“执行命令前必须显示内容”;正例:“执行前先显示内容,因为使用者需要确认安全性,未经确认可能造成不可逆损害”。原因让模型举一反三,规则只能覆盖你想到的情境。例外:纯格式要求直接写死。

原文三种信号(见“何时做”配图):重复性高的工作流。反之:一次性任务、过早封装(才用三次就拆)、追求 v1 完美,都不值得做。

在主 Skill 的 ## 步骤 里显式写出调用,如“如果用户没提供大纲,先调用 blog-outline skill 生成”。不要指望模型自己猜,协作要显式化。