01
SKILL.md 文件,Claude 读到它之后,就知道在特定场景下该怎么按照一定的流程做事。02
SKILL.md 文件:├── SKILL.md # 主指令文件(必须)
├── examples/ # 示例文件(可选)
└── scripts/ # 脚本文件(可选)
└── references/ # 参考资源(可选)
SKILL.md 文件告诉 Claude 触发这个技能时,需要执行的步骤。在这个文件,你需要告诉大模型其它资源文件夹中的内容组成。SKILL.md 长下面这样:
examples 目录存放了供大模型参考的例子。scripts 目录存放了大模型可以调用的脚本,可以理解为工具。references 目录存放了大模型可以参考的资料,类似于人在写文章时需要参考其它资料一样。SKILL.md 是如何引用其它的资源和脚本的。
SKILL.md、测试。~/.claude/skills/<skill-name>/ | ||
.claude/skills/<skill-name>/ |
SKILL.md,写上配置和指令:name: explain-code
description: 用类比和图示解释代码。当用户问"这段代码怎么工作的"时自动触发
---
解释代码时,始终包含以下四个部分:
1. 先打比方:用生活中的事物类比这段代码
2. 画个图:用 ASCII 图展示流程或结构
3. 逐步讲解:一步步解释代码做了什么
4. 指出陷阱:这里有什么常见误解或容易踩的坑?
语言要口语化,对复杂概念可以用多个类比。
name 字段是 Claude 可以检测到的名字,以破折号隔开,是一个好的命名。你也可以在 Claude 终端直接通过 /explain-code 进行调用。description 字段很关键——Claude 靠它判断什么时候该自动加载这个 Skill。描述越贴近用户的自然语言,触发越准确。/skills 查看有哪些 skills 可以使用:


description 里的关键词是否和你的提问匹配,或者直接用 /skill-name 手动调用。03
api-conventions Skill:name: api-conventions
description: 本项目的 API 设计规范,写接口时自动应用
---
写 API 接口时,遵循以下规范:
- 使用 RESTful 命名约定
-统一错误响应格式:{ "error": { "code": "...", "message": "..." } }
- 所有入参必须做校验
- 返回 HTTP 状态码要语义准确(200/201/400/404/500)
04
/simplify:代码写完之后,用它做一次"代码体检"。它会同时启动三个审查 Agent,分别检查代码复用、代码质量和执行效率,然后汇总结果并自动修复问题。就像你写完一篇文章后请三位编辑同时审稿,效率比一个人逐项检查高得多。/batch <指令>:面对大规模重构时的利器。比如你要把整个项目从 React 迁移到 Vue,手动改几十个文件既费时又容易出错。/batch migrate src/ from React to Vue会自动分析代码库,把工作拆成若干独立单元,每个单元在隔离的 git worktree 里并行执行,最后各自提 PR。/debug:当 Claude Code 本身出现奇怪行为时,用它读取当前会话的调试日志,帮你定位问题。/loop <间隔> <指令>:设置定时任务。比如/loop 5m check if the deploy finished会每五分钟检查一次部署状态,省去你反复手动查询的麻烦。
05
/find-skills,直接在 CC 的命令行当中输入该命令以及要寻找的 skills 描述:
在 Skills市场去寻找:https://skillsmp.com/。
在中国 SkillHub 上寻找:https://skillhub.tencent.com/。
实在没有找到满意的 Skills,那就只能动手自己编写了。06
description 字段加载到上下文里。这让 Claude 知道有哪些工具可用,但不会把完整的 Skill 内容都塞进去——那样会很快撑爆上下文窗口。SKILL.md 内容才会被加载进来,Claude 按照里面的指令执行。
/skill-name 调用一次就能解决。!command」 语法在 Skill 内容发送给 Claude 之前先执行 shell 命令,把输出插入进去:name: pr-summary
description: 总结当前 PR 的改动
context: fork
---
## PR 信息
- 改动内容:!`gh pr diff`
- PR 评论:!`gh pr view --comments`
- 改动文件:!`gh pr diff --name-only`
请总结这个 PR 做了什么,以及潜在的风险点。
gh pr diff」 会在 Claude 看到这段内容之前就执行,Claude 收到的是真实的 diff 内容,而不是命令本身。这是预处理,不是让 Claude 去执行命令。07
.claude/commands/deploy.md 这样的文件定义自定义命令。现在这些文件依然有效,但 Skills 是推荐的方式——Skills 支持目录结构(可以放辅助文件)、frontmatter 配置(控制调用方式)、以及自动触发。如果你有旧的 .claude/commands/ 文件,不需要迁移,它们会继续工作;如果同名,Skill 优先级更高。context: fork,这个 Skill 就会在一个 Sub-agent 里运行,既有 Skill 的便捷定义方式,又有 Sub-agent 的隔离执行环境:name: deep-research
description: 深入研究某个话题
context: fork
agent: Explore
---
研究 $ARGUMENTS:
1. 用 Glob 和 Grep 找相关文件
2. 阅读并分析代码
3. 总结发现,附上具体文件引用
context: fork 让它在 Sub-agent 里跑。08
SKILL.md。你会发现,让 AI 真正懂你的工作流,其实并不难。