外观
第8章 技能系统
约 2061 字大约 7 分钟
2026-06-07
这一章来聊聊怎么把那些反复要做的事情打包成一个"快捷按钮",以后只需要说一句话,Claude 就帮你全套搞定。
8.1 技能到底是个啥?
从生活里找个例子
你每天可能都在重复这些事:
- 打开项目 → 看看当前状态 → 拉最新的内容
- 改完东西 → 跑一遍检查 → 看看结果 → 提交
每次都要跟 Claude 完完整整说一遍步骤,说多了自己也烦。
技能就是把这一串步骤打包成一个"快捷按钮"。
没有技能的时候:
"帮我看看当前状态,然后拉取最新内容,然后看看有没有冲突"
(下次)"帮我看看当前状态,然后拉取最新内容,然后看看有没有冲突"
(下下次)"帮我……" 😫
有了技能以后:
输入 /sync(一句话搞定)😊技能是怎么跑起来的?
技能和普通对话有什么不一样?
| 对比项 | 普通对话 | 技能 |
|---|---|---|
| 一次对话 | 说一句做一件 | 说一个词搞定一整套 |
| 能不能复用 | 用完就没了 | 保存下来反复用 |
| 适合干啥 | 简单的事 | 多步骤的复杂操作 |
| 需要配置吗 | 不需要 | 需要写一个 SKILL.md |
一句话搞懂技能
技能就是 Claude Code 的"快捷方式",把重复做的事变成一句话。就像手机上的"快捷指令",但功能更强大。
8.2 怎么找到现成的技能?
看看现在有哪些技能可用
在 Claude Code 对话里输入:
/skills就会列出当前能用的所有技能。
安装别人做好的技能
技能可以通过好几种方式安装:
# 从本地目录安装,就像从 U 盘拷软件
claude skill add /path/to/skill-directory
# 从网址安装,就像从应用商店下载
claude skill add https://example.com/my-skill
# 从 zip 文件安装,解压即用
claude skill add ./my-skill.zip让 Claude 帮你找技能
在对话里直接跟 Claude 说:
有没有适合做代码审查的技能?Claude 会帮你搜索和推荐合适的技能。
8.3 来动手做一个技能
下面咱们自己做一个实用的技能:项目同步(sync) —— 一句话完成拉取内容、检查状态、安装依赖。
第一步:创建技能的文件夹
# 在 Claude 的技能目录下创建一个 sync 文件夹,名字就是技能名
mkdir -p ~/.claude/skills/sync第二步:写 SKILL.md 文件
在 ~/.claude/skills/sync/SKILL.md 里写上这些内容:
# 技能名称
sync
# 触发描述
当用户说"同步项目"、"更新项目"、"sync"时触发
# 技能说明
一键完成项目同步:拉取最新代码、检查状态、安装依赖。
# 执行步骤
<!-- 步骤写得越清楚,Claude 执行得越靠谱 -->
1. 运行 `git status` 查看当前状态
2. 如果有未提交的改动,提醒用户
3. 运行 `git pull origin main` 拉取最新代码
4. 检查 package.json 是否有变化,如果有则运行 `npm install`
5. 汇报同步结果
# 输出格式
用简洁的列表汇报每一步的结果:
- ✅ 成功的步骤
- ⚠️ 需要注意的步骤
- ❌ 失败的步骤第三步:让 Claude Code 认识这个技能
重启 Claude Code,或者在对话里输入 /skills 刷新一下技能列表。
第四步:试试看
在对话里说:
同步项目Claude 就会按照你定义的步骤一步步自动执行了。
其实很简单
做技能的核心就是写 SKILL.md 文件。把名字、触发条件、步骤、输出格式都写清楚,Claude 就能自动按流程执行。
8.4 再看几个技能的例子
例子1:代码审查(review)
# 技能名称
review
# 触发描述
当用户说"审查代码"、"code review"、"review"时触发
# 技能说明
对当前 git 暂存区的改动进行代码审查。
# 执行步骤
1. 运行 `git diff --staged` 查看暂存区改动
2. 审查以下方面:
- 代码逻辑是否正确
- 是否有安全漏洞(SQL注入、XSS等)
- 命名是否规范
- 是否有未处理的异常
3. 按严重程度分级列出问题:🔴 严重 / 🟡 建议 / 🔵 提示
4. 给出改进建议
# 输出格式
## 审查摘要
- 审查文件数:X 个
- 发现问题数:X 个
## 问题列表
[按严重程度列出]例子2:写测试(test)
# 技能名称
test
# 触发描述
当用户说"写测试"、"生成测试"、"add tests"时触发
# 技能说明
为指定的文件或模块生成单元测试。
# 执行步骤
1. 读取目标文件,理解其功能
2. 分析公共函数和方法
3. 为每个功能生成测试用例:
- 正常输入的测试
- 边界情况的测试
- 异常输入的测试
4. 在适当位置创建测试文件
5. 运行测试,确保全部通过
# 硬性规则
- 测试文件放在与源文件对应的 test 目录下
- 测试文件命名为 <原文件名>.test.<扩展名>
- 使用项目现有的测试框架例子3:一键发布(deploy)
# 技能名称
deploy
# 触发描述
当用户说"部署"、"deploy"、"发布"时触发
# 技能说明
把项目发布到生产环境前的检查和操作流程。
# 执行步骤
1. 确认当前在 main 分支
2. 运行测试,确保全部通过
3. 运行代码检查(lint),确保没有错误
4. 检查是否有未提交的改动
5. 构建 production 版本
6. 确认无误后,提示用户确认是否继续
7. 执行发布命令8.5 技能放在哪、怎么管?
技能存放在哪?
| 位置 | 谁能用 |
|---|---|
~/.claude/skills/ | 全局,所有项目都能用 |
项目目录/.claude/skills/ | 只有当前项目能用 |
技能的文件夹长什么样?
~/.claude/skills/
├── sync/
│ └── SKILL.md ← 同步项目
├── review/
│ └── SKILL.md ← 代码审查
├── test/
│ └── SKILL.md ← 写测试
└── deploy/
└── SKILL.md ← 发布每个技能一个文件夹,文件夹里放一个 SKILL.md 文件就行。
想改技能怎么办?
直接编辑 SKILL.md 文件就好,Claude Code 每次用技能时都会重新读取。
不想要了怎么删?
删掉对应的文件夹就行:
# 删掉整个技能文件夹,技能就没了(小心别删错)
rm -rf ~/.claude/skills/sync8.6 写好技能的几个小窍门
1. 触发词要写具体
# ✅ 这样写好
当用户说"同步项目"、"更新项目"、"sync"时触发
# ❌ 这样写不好
当用户需要同步时触发2. 步骤要写清楚
# ✅ 步骤很清楚
1. 运行 `git status` 查看当前状态
2. 如果有未提交的改动,列出文件名
3. 运行 `git pull origin main`
# ❌ 太模糊了
1. 检查 git
2. 拉代码3. 说清楚你想要什么样的输出
在 SKILL.md 里写好你期望的输出格式,Claude 给你的结果会更一致、更整齐。
4. 别忘了写异常处理
描述一下如果出错了该怎么处理,这样技能不会在半路就卡住。
总结四个要点
- 触发词要具体 —— 列出具体的关键词,别含糊
- 步骤要清楚 —— 每一步干什么都写明白
- 输出格式要说清楚 —— 让 Claude 知道你想要什么样的结果
- 异常处理要想到 —— 出错了该怎么办也写上
8.7 这一章聊了啥
| 要点 | 简单说 |
|---|---|
| 技能是什么 | 把一堆步骤打包成一句话就能触发的快捷方式 |
| 怎么创建 | 建个文件夹 + 写个 SKILL.md |
| 怎么用 | 在对话里说触发关键词就行 |
| 怎么管理 | 放在 ~/.claude/skills/ 或项目 .claude/skills/ |
| 怎么写好 | 触发词具体、步骤清楚、输出格式明确 |
一句话总结: 技能是 Claude Code 的"快捷方式",把重复做的事变成一句话。
下一章来聊聊 怎么给 Claude 定几条规矩,让它更听话、更安全!
