Skip to content
看累了听个音乐吧

5.1 什么是 Skills

5.1 什么是 Skills

从"每次都要解释"到"一个命令搞定"

用 Claude Code 一段时间之后,你会发现两类任务:

第一类:每次都不一样的任务 修 bug、写新功能、探索陌生代码——这类任务每次都有不同的上下文,需要你即兴描述。

第二类:每次都差不多的任务 代码审查、生成 changelog、部署流程、提交前检查——这类任务有固定的流程和规范,你每次都要重复说一遍同样的要求。

Skills 就是为第二类任务设计的。

它让你把重复的指令打包成一个可以复用的命令,直接用 /命令名 调用。


Skills 是什么,本质上

一个 Skill 就是一个 Markdown 文件,里面写着"当这个命令被调用时,Claude Code 应该做什么"。

就这么简单。

比如一个代码审查的 Skill,文件内容可能是这样的:

markdown
---
name: review
description: Review code changes following our team standards
---

Review the current code changes (git diff or specified files).

Check for:
1. Logic errors and potential bugs
2. Security vulnerabilities (SQL injection, XSS, auth issues)
3. Performance issues (N+1 queries, unnecessary loops)
4. Test coverage for new or changed functionality
5. Adherence to our coding standards in CLAUDE.md

Format the review as:
- **Critical**: must fix before merge
- **Suggestion**: nice to have
- **Nitpick**: minor style issues

End with an overall recommendation: Approve / Request Changes / Needs Discussion

保存好这个文件,以后每次 review 代码,直接输入:

/review

不需要再重复说那一大段要求了。


Skills vs CLAUDE.md:傻傻分不清楚?

这是最常见的困惑,一张表说清楚:

CLAUDE.mdSkills
加载方式每次会话自动加载只在你调用时加载
适合放什么永远要遵守的规则特定任务的流程和指令
调用方式不需要调用,自动生效/命令名 显式调用
消耗上下文每次会话都占用只在调用时占用
能触发工作流吗不能可以

判断标准:

  • "Claude 在任何情况下都应该知道这个" → CLAUDE.md
  • "只有在做某件特定事情的时候才需要这个" → Skill

举例:

  • "我们用 pnpm,不用 npm" → CLAUDE.md(每次都要知道)
  • "帮我 review 这个 PR,按照这个清单检查" → Skill(只有 review 时才用)

Skills 的两种类型

参考型 Skills(Reference Skills)

存储背景知识,Claude Code 在工作时自动参考。比如你的 API 风格指南、数据库 schema、团队词汇表。

markdown
---
name: api-style
description: Our API design conventions and examples
---

# API Style Guide

All API endpoints follow REST conventions:
- Use plural nouns: /users not /user
- Version prefix: /api/v1/
- Response format: { data: ..., error: null } or { data: null, error: ... }

[详细的 API 规范...]

这类 Skill 通常不需要主动调用,Claude Code 在写 API 相关代码时会自动找到并参考它。

动作型 Skills(Action Skills)

定义一套可触发的工作流,用 /命令名 调用。这是更常用的类型,下一节详细讲怎么创建。


Skill 文件放在哪里

位置作用范围适合放什么
.claude/skills/当前项目项目特定的流程(部署、测试规范)
~/.claude/skills/你的所有项目个人习惯(你的代码审查标准)

项目级 Skill 和 CLAUDE.md 一起 check in 到 git,团队所有人都能用。用户级 Skill 只对你自己生效,不进版本控制。


下一节,我们动手创建第一个 Skill。

基于 CC BY-NC-SA 4.0 协议发布