Skills 实战指南:让 AI 拥有专属技能
前置阅读:Claude Code 初步上手体验
Skills 是 Anthropic 公司在 2024 年 8 月推出的一个特性。如今,Anthropic 已将其完善并开源,更名为 Agent Skills。类似的技术方案还有 Codex、最近备受关注的 OpenCode,以及 GitHub Copilot 等,都在采用这一特性。
在 Skills 刚推出时,我就非常看好它的发展前景,也写过一些教程,之前的文章中也多次提及。今天想分享下我个人是如何使用 Skills 的。
🎯 什么是 Skills?
简单来说,Skill 就是一个包含 SKILL.md 文件的文件夹。该文件包含元数据(至少包含 name 和 description)以及指导 Agent 如何执行特定任务的指令。Skill 还可以捆绑脚本、模板和参考资料。
my-skill/
├── SKILL.md # 必须:指令 + 元数据
├── scripts/ # 可选:可执行代码
├── references/ # 可选:参考文档
└── assets/ # 可选:模板、资源文件Skills 的工作原理
Skills 在 AI Agent 中的工作流程如下:
- 发现阶段:启动时,Agent 仅加载每个可用技能的标题与简要说明,以初步判断何时可能适用该技能
- 激活阶段:当任务与技能描述匹配时,Agent 会将完整的
SKILL.md操作说明载入上下文 - 执行阶段:Agent 遵循指令,根据需求选择性地加载引用的文件或执行捆绑的代码
想了解更多 Skills 的内容,可以查看官方文档:Agent Skills
Skills 实战
Skills 的核心优势在于:可复制、可分享、可复用。正如管理学中所说的"最高境界是培养另一个自己",Skills 正好提供了这种可能性。
接下来,我将介绍一些社区中优秀的 Skills 资源以及实用的 Skills 合集。
Skills 合集推荐
我个人最常用的是 Vercel 的 skills.sh,这里展示了 Skills 的使用情况以及创建的 Skills 指令。
有时间我也想在公司内部做一个 Skills 的指令与合集平台。
对于初学者,我建议先从 Anthropic 官方的 Skills 合集仓库入手:anthropics/skills。无论是学习 Skills 的编写,还是了解 Anthropic 的 Marketplace 机制,这都是一个非常好的起点。
推荐使用的 Skills
以下是一些我推荐的 Skills:
- skill-creator:用于创建新的 Skill
- docx:处理 Word 文档
- xlsx:处理 Excel 表格
💡 建议配合 Excel 智能分析 一起阅读,效果更佳。
此外,还有一些我和团队创建的 Skills,可以参考这个仓库:team-prompts,其中包含:
- code-commit:代码提交规范化
- hui-plus-helper:HUI-Plus 组件库开发助手
- vue2-to-vue3-migration:Vue 2 到 Vue 3 迁移工具
实战应用一:code-commit
首先介绍我自己创建的 Skill:code-commit。这里有一个很实用的技巧——Skills 可以封装成 claude code command。安装完上面的仓库后,在 Claude Code 中输入 / 即可看到提示:

实际提交效果如下:

看上去舒舒又服服
最佳实践
建议大家不要一次性提交太多代码,而是每次提交一个小的功能点或 Bug 修复。这样可以更方便地 Review 代码,也更容易回滚。
更多 Git 相关 Prompt
这个 Skill 主要利用 Bash 和 Git 的功能。以下是一些其他好用的 Git 相关 Prompt:
- 帮我迁移某个 Git Commit 到另一个分支
- 帮我审核某个 Git Commit
- 帮我审核某人在最近 2 天提交的代码
我还创建了 /code-review 指令用于代码审核。不过目前社区中还没有特别成熟的 code-review 方案,我建议还是以人工审核为主,AI 的建议仅供参考。
实战应用二:skill-creator 与 vue2-to-vue3-migration
接下来介绍 Anthropic 官方的 skill-creator。
场景背景:我有一个业务需要从 Vue 2 迁移到 Vue 3,涉及组件库切换、典型页面迁移、脚手架升级等工作,工作量非常大。如果一开始就编写 Skill,很难一次性定义完整。
我的做法:先不急着创建 Skill,而是用 Claude Code 在两个仓库之间来回调试。Prompt 大概有:
- "有个老的功能是 xxx,代码在
/yyy,我现在的仓库是 aaa,帮我迁移到/bbb" - "之前我们请求接口都在
/api下,我现在用的都是useAxios,不需要单独的 api 文件,可以直接写到代码里" - "老的组件比如
el-row、el-col我都不需要了,我现在都用 UnoCSS 实现,你可以参考/xxx这里的实现逻辑"
经过多次调试后,AI 能够帮我完成迁移工作。这时,我只需要说一句:
"用 skill-creator 帮我把上面的内容封装成一个 Skill"
Skill 的使用:有了这个 Skill 后,下次迁移时就可以这样问:
"有个老的功能是 xxx2,代码在
/yyy2,我现在的仓库是 aaa2,帮我迁移到/bbb2,请使用 vue2-to-vue3-migration 这个 Skill"
我发现第二个页面的迁移时间大大减少。当然,还是会有一些需要调整的地方,调整完成后,下一个 Prompt 就是:
"帮我把之前的内容更新到 vue2-to-vue3-migration 这个 Skill 中"
最终的 Skill 如下:vue2-to-vue3-migration
⚠️ 免责声明:这个 Skill 请谨慎使用。另外,很多 Skill 其实是"阅后即焚"的,不一定都能提炼成通用方案。
这就是 AI 时代的"举一反三"。
其他编辑器中使用 Skills
如果你使用其他编辑器(如 Cursor),可以参考我同事的文档:Cursor Agent 里使用 Claude Code Skills
一些思考与困惑
在使用 Skills 的过程中,我也遇到了一些困惑:
多 Skill 协作:很多复杂的业务功能需要多个 Skills 协同工作,这可能需要较长的 Prompt,或者使用 Plan Mode 模式。这块我还没有深入研究。
Skill 的粒度难以把握:比如某些项目需要多语言支持,有些又不需要,那么在代码审核的 Skill 中,应该如何处理这种差异?
Skills 的分发方式:Anthony Fu 提出了 skills-npm 的理念——将每个技能封装成 npm 包,需要时直接安装到项目中。不过我对这种方式的实用性持观望态度,过度抽象可能会影响易用性。
总结
AI 和基础设施建设正处于"双向奔赴"的阶段,中间还有很多可以探索的空间,与人相处其乐无穷,和 AI 相处何尝也不是,需要我们不断尝试。2025 年必将是 Skills 爆发的一年,建议大家多去尝试编写自己的 Skills!