真正开始用上 Agent 类工具之后你会发现“Skills”这个词几乎躲不开。无论是 Claude Code 里那一堆从 GitHub 上克隆下来的技能包还是 Codex、OpenCode 里越来越多人分享的 worklow 集合大家都在用一个同样的概念把高频、可复用的工作方法打包成一种特殊指令让 AI 在特定任务里像突然长出了“专业肌肉记忆”一样干活。这正是“skills”的迷人之处。我最早接触 skills 是在一次数学建模比赛准备期。华为杯这类比赛时间紧、任务杂从数据清洗到论文排版都是流水线操作团队里有人拉了一个“数学建模 skills 合集”装上之后确实省了大量重复对话成本。后来我逐渐把这套思路搬到前端开发、AI 漫剧脚本、日常工程落地上踩了不少坑也整理了不少心得。这篇东西就是我实操层面的一个总结适合正在用 Claude Code、Codex、OpenCode或者单纯好奇 skills 到底怎么玩的人。1. 先搞清楚Agent Skills 到底是什么为什么突然这么火1.1 Skills 和普通 Prompt、MCP、插件到底差在哪很多人第一次听到 skills下意识会把它和 Prompt 模板混在一起或者觉得它就是插件的又一个名字。我一开始也这么理解直到自己动手写了一个之后才明白它们之间的差别其实是“一次对话”和“一套能力”的差别。普通 Prompt 是你给 AI 的一段一次性指令比如“帮我把这段数据做个可视化”。它的作用范围只在当前对话里AI 读一遍、执行完一切就烟消云散。你下次再想让它做同样的事还得重新组织语言甚至得重新纠正它犯过的错误。MCP 则是给 AI 提供了外部工具和实时数据通道比如连数据库、调 API它解决的是“AI 能调用什么资源”的问题。而 Skills 处在更靠上的层次——它解决的是“AI 知道怎么把一件复杂的事做好”。一个 Skill 通常包含一个特殊格式的说明文档常见叫 SKILL.md里面写清楚了某个任务的完整方法论、分步流程、输入输出格式、注意事项甚至附带了几个参考示例文件。AI 在对话中一旦识别到当前任务匹配这个 Skill 的描述就会主动加载它然后按照里面的方法完成工作。你可以把普通 Prompt 理解成给实习生口述一个需求而 Skills 是你递给实习生一整本“岗位操作手册”。手册里有流程、有范例、有禁忌实习生照着做交付质量自然稳定得多。这也是为什么社区里流传“superpower skills”这类集合时大家都说装上之后 AI 的“战斗力”明显提升了一截——因为它补的不只是某一次指令而是整套做事方式的缺失。1.2 什么场景下你真正需要 SkillsSkills 不是万能药也不是装得越多越好。我见过有人一次性塞了几百个 skills 进配置目录结果 AI 启动时半天不响应或者频繁加载错误技能反而拖垮了效率。根据我自己实际使用的体感真正值得做成 skills 的场景基本有这几类第一类是流程固定的重复任务。比如数学建模里的论文 LaTeX 排版无论是华为杯还是其他比赛格式要求都相当固定摘要页、目录、章节、公式编号、图表引用。把这一整套排版规范写成一个 SkillAI 每次都能按同样的标准输出团队就不用反复检查格式。第二类是知识密集、需要统一方法论的任务。比如前端代码审查不同人有不同的风格偏好但一套好的审查 Skill 可以把常见性能陷阱、可访问性问题、TypeScript 类型漏洞全写进去AI 按图索骥比让 AI 自由发挥要可靠得多。第三类是跨步骤的长链路工作。比如 AI 漫剧制作从剧本拆解、分镜生成、提示词构造到角色一致性控制环节多、上下文长很容易做着做着就忘了前面的设定。如果有一个“AI 漫剧分镜 Skill”把每一步的输入输出格式和传递参数定死整个链路就不会走样。反过来那些一次性问题、临时查询、简单问答压根不需要 Skills。硬把这类场景做成技能只会增加 AI 的匹配噪音后面我会专门讲怎么清理这类垃圾技能。2. 找 Skills 的靠谱渠道官网、GitHub 与社区2.1 主流开源仓库推荐现在 skills 的生态有点像早期 npm资源很多但质量参差不齐。先从大家提得最多的几个说起。Superpowers 是一个在 Claude Code 圈子里口碑非常高的技能集合作者把软件开发里常见的复杂任务拆成了一组相互配合的 skills涵盖从项目规划、架构设计到代码实现、测试验证的完整链路。它的特点是每个 skill 之间不是孤立存在的有一套统一的格式和引用关系装上之后 AI 的行为模式会变得非常有节奏感。TypeSafe AI Skills 是另一个值得重点关注的仓库。它主打 TypeScript 生态和类型安全方向里面很多技能都是围绕类型定义、依赖校验、API 契约生成这些工程痛点设计的。前端开发的同学装了之后至少类型相关的重复劳动会大幅减少。Nature Skills 和 Cola Skills 则属于那种“杂而全”的社区合集里面既有数据处理、文档写作这种通用技能也有针对特定比赛或特定生产流程的定制项。我不太建议一上来就整个合集全部安装最好是挑几个和自己工作直接相关的装进去用自己的真实任务测一测。还有一个常被忽略的途径——官方文档里其实也标注了推荐做法。Claude Code 的官方文档有 skills 的目录规范说明Codex 和 OpenCode 的仓库里也有对应的示例。先看官方示例再看社区集合这样你对“标准格式”才有底不至于被各种魔改版本带偏。2.2 评估一个 Skills 是否值得安装的三个标准我判断一个 skill 值不值得装基本就看三条。第一条描述写得好不好。SKILL.md 开头的 description 字段是 AI 决定何时加载它的唯一依据。如果描述写得含糊其辞比如“帮助用户完成任务”这种废话AI 根本不知道什么时候该触发它。真正好的描述会写清楚“当用户要求做数据回归分析并希望生成报告时使用”。描述越具体触发越精准。第二条有没有真实示例。一个 skill 如果只有方法提纲没有参考输入和期望输出那基本等于 PPT 上画饼。好的技能仓库会附带完整的示例文件比如一个数学建模 skill 会带着“题目样例.md”“优秀论文结构参考.md”“公式模板.tex”。这些示例是 AI 执行时的锚点缺失的话质量会肉眼可见地下降。第三条维护时间线和 issue 活跃度。我还真见过有人拿一年前就失效的 skill 包反复踩坑里面引用的文件路径和配置格式早就变了。装任何 GitHub 上的 skills 之前扫一眼最近 commit 时间和 issue 列表比看 star 数更有用。star 高只代表很多人收藏了不代表它还活着。2.3 网页上怎么浏览和下载 Skills很多人问“skills 网页版进入”是什么意思。我理解的是他们想找一个直接在浏览器里就能浏览、搜索技能内容的入口。目前最实用的做法还是通过 GitHub 的网页端直接在仓库界面点进某个 skills 目录就能看到 SKILL.md 的渲染效果爱好的话还能直接在线预览引用文件的代码。比一个个 clone 下来再翻目录要直观得多。另外社区里也有不少“技能源网站”本质上就是把 GitHub 上的技能仓库做了一层索引和搜索。这类站点的价值是发现而不是存储最终你还是要拿到仓库地址去下载。我的习惯是在站点里发现一个有意思的技能先去原始仓库看完 README 和 SKILL.md再决定要不要进本地。3. 手动安装 GitHub 上的 Skills以 Claude Code 为例3.1 目录结构与安装路径手动安装 GitHub 上的 skills 其实并不复杂核心就是搞清楚“该把文件夹放到哪”。以 Claude Code 为例它默认读取两个位置的 skills用户级目录和项目级目录。用户级目录通常在~/.claude/skills/这里的技能对所有项目生效。项目级目录是当前项目里的.claude/skills/只对这个仓库生效。如果你安装的是一个通用技能比如“代码审查”“文档润色”放用户级就好。如果是和具体业务绑定很深的技能比如“公司内部 API 调用规范”那就放项目级避免污染其他项目。手动安装的步骤如下先找到要安装的 GitHub 仓库找到对应的技能目录。绝大多数仓库会按skills/技能名/来组织目录。接着打开终端把这整个技能文件夹复制到目标位置以 superpowers 仓库为例mkdir -p ~/.claude/skills git clone https://github.com/obra/superpowers.git /tmp/superpowers cp -r /tmp/superpowers/skills/* ~/.claude/skills/装完之后看一眼目录结构是否符合规范。一个合法的技能目录必须包含SKILL.md其他的引用文件、脚本、模板都放在同目录下~/.claude/skills/ └── code-review/ ├── SKILL.md ├── patterns/ │ ├── security-review.md │ └── performance-review.md └── examples/ ├── good-review.md └── bad-review.md最后重启一下 Claude Code 会话让它重新扫描技能目录。然后开一个新对话直接抛出符合技能描述的请求观察 AI 是否主动加载了它。3.2 ID 规范化与命名避坑这一节要说的坑是我自己踩过的。很多 GitHub 仓库里的技能文件夹名字起得很随意比如“常用技巧整理”文件夹里夹着中文空格或者缩写名带连字符。这类名字在人类眼里没问题但到了 AI 加载机制里就会变成灾难。Claude Code 对技能名也就是 YAML frontmatter 里的 name 字段是有规范要求的只能包含小写字母、数字和连字符不能有空格不能有下划线不能以数字开头。手动安装时如果发现仓库里的技能名不符合规范一定要先改再装。比如仓库里叫Data_Analysis的技能你得改成>