ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

Claude Code Skills完全指南:概念、安装、编写与实战

Claude Code Skills完全指南:概念、安装、编写与实战 最近圈子里高频出现一个词skills。我逛技术社区刷到它看直播听到它连身边做前端的朋友都在聊前端开发skills做建模的同学在找数学建模skills做短视频的在问AI漫剧常用skills。这几个字放在一起指的就是给Claude Code这类AI编程助手用的技能包。说白了SKILL.md 就是一个带说明书的文件夹你把想要AI掌握的专业能力比如代码审查、论文润色、分镜脚本生成做成一套标准指令丢给它它就能在对应场景里调用不用每次反复解释需求。这篇文章我一次性讲清楚skills是什么、去哪找、怎么装、怎么写、怎么清理以及我自己踩过的坑。1. Skills到底是什么为什么突然火了1.1 从一个会说话的文件夹说起先说个最直观的理解方式。你可以把Skills看作给AI配的岗位说明书。以前你让AI帮你写前端组件你得把项目背景、技术栈、组件规范、输出格式全说一遍而且换个项目又得重说一遍。有了skills之后这些信息全部固化成一个文件夹名字叫前端组件生成以后你只需要说一句用前端组件生成技能帮我写个Button它自己就知道要去读那份说明书然后按里面的规范干活。这个文件夹不是随便建的它有固定结构核心是一个 SKILL.md 文件开头是YAML格式的元信息包括name和description后面跟着技能正文告诉AI这个技能该怎么用、有哪些步骤、有什么禁忌。目录里还可以放脚本、模板、参考文档。AI读到这个目录就会在合适的时机主动调用它这就是整个skills机制的原理。目前在Claude Code这类工具里技能包可以放在项目级目录 .claude/skills/ 下只对本项目生效也可以放在用户级目录 ~/.claude/skills/ 下所有项目都能用。放好之后重启一下会话AI启动时就能看到这批技能了。1.2 Skills与Prompt、MCP的区别很多人刚接触会问这跟写一段复杂的Prompt有什么区别区别可大了。Prompt是一次性的口头约定关掉窗口就没了Skills是可复用的工程化产物它是文件、是目录、是可以放进Git管理的代码资产。你可以把Skills提交到GitHub上分享别人克隆下来就能用跟开源代码的分发方式一模一样。那跟MCPModel Context Protocol模型上下文协议的区别呢MCP解决的是AI怎么连外部工具和数据源的问题比如连数据库、连文件系统、连APISkills解决的是AI拿到任务后按什么流程去做的问题更像方法论。两者其实能配合MCP负责取数据Skills负责规范动作。一个管连接一个管干活。还有个更容易混淆的概念是CLAUDE.md。CLAUDE.md是项目级的全局说明AI每次会话都会读取适合写项目背景、技术栈、编码规范Skills则是一个个独立的专业能力模块按需调用。一个像公司规章制度一个像岗位SOP。理解了这个区别你再看网上那些skills入门文章就不会迷路。1.3 到底解决了什么问题Skills火的本质是因为它把调教AI这件事变成了工程化开发。过去让AI扮演某个角色、按某种方式工作全靠对话里临时引导结果稍纵即逝、效果时好时坏。现在你可以把一套稳定的工作流固化下来AI遇到某类任务时该读哪些资料、先做什么后做什么、输出格式是什么、质量标准是什么全都写清楚。对于团队来说这个意义更大。你们前端组可以共用一套前端开发skills建模组可以共用一套论文写作skills新人加入也不用再靠口口相传去学习团队里的AI用法。我自己的体会是技能包写到一定程度AI的工作质量稳定的可怕很少再出现这次忘了加错误处理这次输出格式跑偏这种问题。2. 从哪找Skills常用技能库网址和源网站速览2.1 GitHub是最大的技能库找skills的第一站毫无疑问是GitHub。直接用搜索框搜skillsclaude skillsagent skills就能翻到大量仓库。很多开发者在分享自己的技能包时会在README里写清楚适用场景、安装方法、操作截图质量高的仓库往往有几百上千个star。我自己找技能的一个技巧是不直接搜skills这种大词而是搜场景skills比如frontend skillsmath modeling skillsvideo script skills命中率会高很多。再一个是看仓库的更新时间长时间不更新的多半是实验性产物用起来要谨慎。除了散落的个人仓库GitHub上还有不少合集仓库把几十上百个技能整理在一起按场景分类放好。这种合集仓库特别适合刚入门的人一次性就能看到常用skills长什么样。不过我建议别贪多先下载两三个贴合你工作场景的就行技能包不是越多越好后面我会专门讲清理问题。2.2 官方示例仓库与社区集合站官方仓库一定要关注。Claude Code的官方文档里就有关于Skills的完整说明GitHub上也有官方示例仓库里面是最标准的SKILL.md写法。新手想学习怎么写skills我的建议是先读一遍官方示例比看十篇二手教程都管用。社区这边除了GitHub各种AI资讯站、开发者社区里也有很多技能库汇总帖。有人把源网站整理成导航页有人做成在线搜索工具还有人直接在笔记里维护了一张技能清单表格。我个人常用的方式是看到某个技能被多个社区博主同时推荐才会把它加入到备选清单。像superpower skills这种被反复提到的名字我一开始就是从社区合集里见到的。2.3 挑选skills的三个标准技能库看多了你很容易陷入这也想要那也想要的状态。我用了大半年总结出三个筛选标准第一看description写得认不认真。SKILL.md前面那段description是AI判断什么时候该调用这个技能的依据。如果description写得含糊、场景不清晰AI大概率不会主动调用它这个技能基本等于白装。第二看技能正文的复杂度。好的技能通常不是两三行话而是有背景、有步骤、有输出规范、有例子。我甚至见过一个文档生成技能光正文就写了上千字还把各种情况的处理方式枚举得清清楚楚。这种才能叫真正的技能。第三看维护频率。开源技能跟开源软件一样需要持续修复和适配。一个技能如果半年不更新很可能是作者自己都不用了。你判断不出来时就看它最近一次commit时间。3. 手动安装GitHub上的Skills以superpower skills为例3.1 安装前先确认你的环境很多新手在安装环节就卡住了其实问题多半出在没搞清楚装到哪。拿Claude Code举例你要在项目里用就装到 .claude/skills/要在所有项目里用就装到用户主目录下的 .claude/skills/。如果你压根找不到这个目录先手动建一个就行AI会自动识别。这里有个小经验如果你对某个技能还不确定是否好用先装到项目级目录里试用确认稳定了再挪到用户级目录。因为用户级目录会污染所有项目装一个质量不高的技能进去等于让AI全局带病工作。我自己试新技能都是先开个临时目录做实验套件验证通过才正式部署。3.2 三种手动安装方式第一种git clone。这种方式最干净。打开终端进入目标目录执行cd ~/.claude/skills git clone https://github.com/某个用户/superpower-skills.git克隆下来的仓库里如果已经包含了skills目录需要把它里层的技能目录复制出来如果仓库本身就是单个技能那直接保持在 .claude/skills/ 下即可。装完后建议看一眼目录结构确保最终是 .claude/skills/技能名/SKILL.md 这样的形态。第二种下载zip包。GitHub仓库页面找到Code按钮选择Download ZIP下载后解压到skills目录。这种方法适合不熟悉git命令的人缺点是没有版本管理以后想更新只能重新下载覆盖。第三种如果是浏览器里有集成安装页面的技能直接点网页上的安装按钮让浏览器帮你下载并解压到指定目录。这种方式最省事但前提是那个技能确实提供了网页版安装入口且它支持你的AI工具。3.3 验证安装是否成功装完之后不要急着干活先验证。在Claude Code里执行 /skills 命令或者直接问AI你现在有哪些可用技能它应该会列出已加载的技能列表。如果没看到刚装的那个90%是目录放错了位置或者SKILL.md文件没在正确层级。另一个笨但有效的验证方法是让你自己的AI助手描述一下那个技能的内容。如果它能准确说出技能的用途、步骤、输出要求说明文件读到了、加载成功了如果它支支吾吾乱说说明技能虽然被看到了但正文可能格式有问题去检查YAML的frontmatter是不是写对了。3.4 新手最容易踩的三个坑第一个坑把技能根目录整个塞进. claude/skills导致变成 skills/skill名字/skill名字/SKILL.md多套了一层目录AI就识别不到了。装完后花十秒钟检查目录树能省半小时排查时间。第二个坑git clone后没有处理隐藏文件。很多技能仓库里会有 .github 之类的目录那不是技能的一部分留着没必要还可能干扰加载。装好后清理掉无关文件保持技能目录干净。第三个坑装了重复功能的技能。比如你装了一个代码审查技能又从另一个合集里装了包含同样功能的技能两个description都匹配时AI可能随机调用其中一个输出风格不稳定。装技能之前先盘点一下已有的别让它们打架。4. 按场景选Skills前端、数学建模、AI漫剧的推荐清单4.1 前端开发skills从代码审查到组件生成我前端开发圈的朋友用得最多的是三类。第一类是代码审查技能它会让AI按你团队约定的规范逐行检查代码输出问题级别问题位置修改建议的清单而不是空泛地来一句整体不错。第二类是组件生成技能里面预置了你项目里通用的CSS变量、组件命名规范、注释习惯AI生成出来的组件直接能过CI不用再改格式。第三类是样式转换技能比如把设计稿描述转成Tailwind类名或者把一套主题的色值批量迁移到另一套设计系统。挑选前端skills时我建议优先看description里有没有出现你技术栈的关键词。如果你用的是Vue技能却是为React写的用起来会非常别扭。虽然AI能理解任务但技能正文里很多示例都是React代码反而会带偏输出。前端场景特别强调技能和项目的匹配度宁可用通用技能代替不适配的专用技能。4.2 数学建模skills华为杯竞赛备赛利器数学建模是我近期见过最典型的skills应用场景。每年华为杯数学建模竞赛赛程只有几天要完成问题分析、模型构建、编程求解、论文写作时间极其紧张。把skills用起来之后很多重复劳动都能压到极短时间。我见过有人在竞赛备赛期整理了一套建模工具箱里面包含四五个技能数据清洗技能负责处理赛题给的脏数据做缺失值填充、异常值剔除、字段标准化可视化技能按赛题要求生成合适的图表并同步输出作图代码论文润色技能负责把草稿改写成学术语气的LaTeX段落还有模型选择技能根据数据特征列出候选模型并给出训练建议。用起来的动作通常是这样导入赛题数据后调数据清洗技能处理一遍跑模型阶段让AI按建模技能里的推荐流程做特征工程最后写论文时用论文技能统一术语和格式。比赛拼的是谁能在同样的时间里把结果打磨得更完整这类skills就是把AI的能力用在刀刃上。4.3 AI漫剧常用skills从分镜到角色一致性AI漫剧这个方向最近特别火做这种短视频通常需要AI生成场景、角色、配音、分镜脚本。这里最常见的技能包包括分镜脚本生成、角色一致性维护、文案润色和成片检查。分镜脚本生成技能会让AI按镜头号-画面描述-台词-时长-转场的结构输出脚本而且能控制单集时长在1分钟左右。角色一致性维护技能是很多漫剧创作者的核心需求它把主角的外貌特征、服装配色、表情习惯写成强制约束AI每次生成新画面时都要先读取这段约束避免同一个人物在不同镜头里换脸。我自己试用这类技能最大的感受是它比手动写Prompt稳定得多。手写Prompt的时候角色描述经常越写越长到最后互相矛盾技能把描述固化下来以后每集都能保持一致这就是工程化带来的好处。不过要提个醒做AI漫剧时尽量使用原创角色和素材这也是平台规则里的基本要求。5. 自己动手写Skills从零开始开发一个可用技能5.1 SKILL.md就是你的说明书如果你想彻底掌握skills开发记住一句话SKILL.md 就是技能的大脑其余文件都是它的手脚。这个文件决定了AI什么时候调用技能、怎么执行技能、最终输出成什么样。我建议把80%的心思花在这份文件上。文件头部是YAML frontmatter标准格式大概是这样--- name: paper-summarizer description: 适合在需要快速阅读学术论文、提取核心贡献、生成摘要时使用。 ---name要唯一description最关键它会决定AI触发技能的时机。description写得太窄AI不知道该什么时候用写得太宽又会在无关任务上误触发。我的经验是写成适合在XX场景、需要XX结果时使用把条件和目标都绑进去。正文部分就放开的写。可以包含背景知识、执行步骤、输出格式、质量要求、错误处理。你甚至可以像写SOP一样写它AI会忠实地按步骤执行。5.2 完整案例写一个论文摘要精简技能我现场给你演示一个最简单但完全可用的技能。假设你经常需要把冗长的论文摘要压缩到300字以内那就在 .claude/skills/paper-summarizer/ 下创建 SKILL.md--- name: paper-summarizer description: 适合在需要将论文摘要或技术文档压缩为300字以内中文摘要时使用。 --- # 论文摘要精简技能 ## 目标 将输入的摘要内容压缩至300字以内且不丢失核心信息。 ## 步骤 1. 阅读原文提取背景、方法、结果、结论四个要素。 2. 检查每个要素在原文中的具体描述保留关键数据。 3. 用中文重写保持学术语气删除修辞和重复表达。 4. 统计字数如超过300字删除次重要细节而非强制截断。 ## 输出格式 - 目标字数不超过300字 - 结构背景一句话、方法两句话、结果一句话、结论一句话 - 文末附上原始字数与压缩后字数 ## 注意事项 - 不得增加原文没有的信息 - 保留关键数值和结论性判断这个技能文件写完就能用。保存后重启会话让AI用paper-summarizer压一下这篇摘要它就会严格按步骤干活。你可以自己在SKILL.md里随意加约束AI会照做。这就是skills开发最基本的样子。5.3 进阶脚本、资源与多步骤编排纯文字的技能只算入门真正的进阶技能会带脚本和资源。比如一个前端代码审查技能可以附带一个 node 脚本用来解析ESLint输出并生成报告一个建模数据清洗技能可以附带一份处理常见缺失值模式的 template.py一个漫剧技能可以附带一份角色外貌描述的模板JSON。在SKILL.md正文里你要明确告诉AI脚本的调用方式和执行时机。比如## 执行流程 1. 先运行 scripts/analyze.py 分析代码库。 2. 读取输出报告按错误类型分类整理。 3. 针对每类问题输出修改建议。这样做的好处是AI既能理解任务又能借助脚本做精确计算两手抓。注意别把脚本写到SKILL.md里文件越大加载越慢宁可保持正文精简把复杂逻辑交给脚本。5.4 调试技能的两条经验写完技能不等于能直接用调试阶段最容易出问题的是AI没有按技能里的步骤走。遇到这种情况我第一条经验是先检查description是不是写得太含糊。AI判断调用时机靠的就是description如果几十个技能同时命中它可能随机选一个你就觉得技能没生效。第二条经验是在正文里加上必须和不得的强约束。AI对祈使句的服从度远高于建议句建议先做A它可能跳过必须先做A它就会老实执行。如果你的技能有严格的步骤顺序那就用第1步、第2步的编号强制它。6. Skills管理与清理tibo式方法论的实践6.1 为什么skills多了反而坏事有人看到技能库就疯狂收藏装了几十个skills结果AI反而变笨了。原因很简单skills是在会话开始时被扫描、需要时被检索的装得越多检索干扰越大。AI有时候会拿错技能有时候会同时参考两个对立技能里的规范输出结果自然飘。我见过最夸张的例子是一个人项目级目录里放了三十多个技能其中光改写文章方向的技能就有五个。你想让AI改一段营销文案它可能随机调用其中一个改出来的风格全看运气。技能数量多不代表能力强甚至可能拉低AI的稳定性。6.2 清理skills的三个步骤我之前在社区看到有人分享了一套清理方法论看名字像是一位叫tibo的作者写的。思路很简单我整理成三步第一步列清单。在AI会话里执行 /skills 或让它输出当前加载的所有技能整理成清单标出近期真正用过的。第二步分类处理。超过一个月没被调用的技能先移到 backup 目录mkdir -p ~/.claude/skills_backup mv ~/.claude/skills/某个技能 ~/.claude/skills_backup/注意这里不是直接删除而是移入冷宫。万一某个技能只在特定竞赛场景用到直接删掉有点浪费。备份目录不影响AI加载还能随时恢复。第三步观察一周。一周后你大概率会发现没用的技能恢复需求很少。这时再决定是彻底删除还是继续留在备份里。这套方法之所以好用就是因为它让清理动作变得可逆不会因为误删产生损失。6.3 目录规范与命名习惯管理skills还有个基础功目录命名要规范。技能目录名尽量用短横线分隔的小写英文例如 frontend-code-review不要用中文名不要带空格避免路径解析出问题。每个技能目录里只保留必要文件脚本、模板、SKILL.md各归其位不要随手扔一堆无关文档。如果你有多个来源的技能可以用子目录稍微分组。比如~/.claude/skills/ modeling/data-cleaning/ modeling/viz-chart/ frontend/code-review/ frontend/component-generator/但要注意分组层级别太深太深会影响加载。一般两层就够了。我自己的习惯是目录名能说明技能用途description能说明触发条件两者配合管理起来非常省心。7. 常见问题排查与避坑实录7.1 技能未被加载怎么办最常见的问题技能明明放进去了AI就是看不到。我建议按这个顺序排查先检查目录结构确保是 .claude/skills/技能名/SKILL.md多一层少一层都不行。再检查文件名必须是 SKILL.md大小写都不能错。接着检查YAML frontmatter看name和description是否在开头用 --- 包裹格式错误会导致整个文件失效。最后重启会话很多工具只在会话初始化时扫描技能不重启就看不到变化。如果目录没问题、格式也没问题那就可能是指令被其他配置干扰了。比如项目的 CLAUDE.md 里写了忽略目录中的skills这种情况就把相关配置删掉。7.2 技能互相干扰怎么办多个技能的description可能同时命中用户请求这时AI会纠结用哪个。排查方法是打开 /skills 看加载列表找到两个功能相近的技能把其中一个移到备份目录。如果你能修改文件也可以把description写得更精确减少匹配范围。如果技能之间存在规范冲突比如一个技能要求输出中文另一个技能里写了始终使用英文注释AI可能会在同一个任务里反复横跳。我的做法是在两个技能里都加上本技能优先于其他技能的声明然后保留一个最主要的删掉多余的。7.3 技能里脚本权限问题带脚本的技能容易遇到权限问题。AI调用脚本时提示Permission denied或者执行失败八成是脚本没有执行权限。手动给脚本加上执行权限chmod x ~/.claude/skills/技能名/scripts/analyze.py如果是Windows环境可能需要检查脚本的换行符或Python解释器路径。这几个坑我在Windows环境里帮人排查过不少次。另外脚本依赖问题也很常见。技能正文里写清楚依赖安装命令比如pip install -r requirements.txt建议在技能目录里带上requirements.txt或package.json让AI能自助安装依赖。7.4 一键排查清单最后分享一份我自己调试skills的排查清单遇到问题照着走一遍80%的情况能解决检查项操作目录结构确认 .claude/skills/技能名/SKILL.md 层级正确文件名确认文件名为 SKILL.md大小写无误YAML格式确认name和description被 --- 包裹description确认触发条件描述准确不过于宽泛重启会话修改后重启AI工具让技能重新加载权限确认目录脚本具备执行权限依赖确认脚本依赖已安装且版本兼容冲突检查是否有多个技能命中同一场景这套清单我自己打印过好几份也给团队里的人用过。实际操作下来能解决大部分技能不生效的问题。我个人在实际操作中的一个体会是skills虽然看起来像是一个小功能但它背后的思维模式很值钱——把AI的使用经验沉淀成可复用的资产而不是每次都在对话框里从零开始。最后再分享一个小技巧写skills的时候先把你最常做的那件事完整走一遍流程把每一步记录下来那本身就是一份优秀的技能草稿。
返回列表