Claude Skill

1. 概念介绍

1.1 什么是 Skill?

简单来说,Skill 就是 Claude Code 的专业技能包。Claude 自带了一些内置 Skill(如代码审查、安全检查),你也可以创建自己的自定义 Skill(如文档格式化),或者安装别人通过插件分享的 Skill。

你可以把它想象成手机上的"快捷指令"或者游戏里角色的"技能栏"——平时你和 Claude 对话是普通的聊天,而当你输入 /skill名称,或者用自然语言描述你的需求时,Claude 就会按照预设的流程去执行特定任务。

举个例子,同样是对代码审查的需求,有三种不同的方式:

  • 普通对话:你说"这段代码有什么问题吗",Claude 凭经验给出一些泛泛的建议
  • 手动触发 Skill:你输入 /review,Claude 按照标准化审查流程,系统地检查代码质量、安全问题、潜在 bug 等
  • 自动触发 Skill:你说"帮我做一下安全检查",Claude 识别到这句话匹配了 security-review 的描述,自动启动安全审查流程——你不需要记得具体的命令名称

1.2 Skill 的作用

Skill 解决了几个痛点:

  1. 提高效率:不用每次都写一大堆提示词,一个命令搞定
  2. 结果一致:每次执行相同的 skill,走的是同一套流程,结果更可预期
  3. 专业聚焦:每个 skill 只做一件事,效果比泛泛的对话要好
  4. 可复用:一次配置,反复使用
  5. 个性化定制:内置 Skill 覆盖通用场景,但每个项目都有独特需求。自定义 Skill 让你能把项目专属的工作流固化下来(比如团队的文档格式规范、特定的部署检查流程),无需每次重新描述

1.3 内置 Skill 与自定义 Skill

Claude Code 的 Skill 有三种来源:

来源 说明 典型用途
内置 Skill 程序自带,开箱即用,共 9 个 代码审查、安全检查、项目初始化等通用场景
自定义 Skill 自己编写,放在 ~/.claude/skills/ 或 .claude/skills/ 团队专属工作流、个人常用任务
插件 Skill 通过 /plugin install 安装别人写好的 Skill 社区共享的专业技能(如文档处理、数据转换等)

三者的使用方式完全一样——都是输入 /skill名称 来调用。区别只在于来源和安装方式。内置 Skill 覆盖了常见开发场景(详见附录速查表),但实际开发中,你很可能会需要针对自己项目特点的专属 Skill,这时候自定义 Skill 就派上用场了。

具体如何创建自定义 Skill,见 2.3 如何安装/创建自定义 Skill;GitHub 开源 Skill 项目的详细介绍,见 4. 笔者用到的 GitHub 开源 Skill 项目


2. 上手指南

2.1 如何查看已安装的 Skill

最简单的方式:在 Claude Code 中输入 /help,可以查看所有可用的命令和 skill。

另外,在每次对话的开头,Claude 也会收到系统提示,列出当前可用的 skill。比如本次对话中:


以下技能可供使用:
- update-config: 通过 settings.json 配置 Claude Code
- keybindings-help: 自定义键盘快捷键
- simplify: 审查代码质量并优化
- loop: 定时/循环执行任务
- claude-api: 构建、调试和优化 Claude API 应用
- init: 初始化 CLAUDE.md 文件
- review: 审查 Pull Request
- security-review: 安全审查
- fewer-permission-prompts: 减少权限提示

2.2 如何使用 Skill

基本语法:直接输入 / 加上 Skill 名称


/review
/simplify
/claude-api

带参数使用:有些 Skill 支持传入参数


/loop 5m /review # 每 5 分钟执行一次 review

实际操作示例

假设你想对当前代码进行安全审查:


你:/security-review
Claude:(启动安全审查流程,检查当前分支的所有待提交更改)

又比如你想看看代码能不能优化:


你:/simplify
Claude:(审查代码的复用性、质量和效率,然后自动修复发现的问题)

自定义 Skill 的调用方式和内置完全一样。比如本项目中有一个 document-format-skills


你:/document-format-skills
Claude:(识别到这是一个文档格式处理技能,按照预设流程处理 .docx 文件)

就这么简单,不需要写复杂的提示词,一个斜杠命令就够了。

自动触发:除了手动输入斜杠命令,Claude 还会根据你的对话内容自动识别并调用 Skill。

原理是 Claude 将你说的话与每个 Skill 的 description 做匹配——匹配上就会自动调用,不需要你手动输入 /skill名称。例如:


你:帮我检查一下代码有没有安全问题
Claude:(识别到需求匹配 security-review 的 description,自动触发安全审查流程)

你:这份文档格式太乱了,帮我整理一下
Claude:(识别到需求匹配 document-format-skills 的 description,自动触发文档格式化)

几个要点:

  • 自动触发是 Claude 基于语言理解的判断,不是精确的关键词匹配,所以偶尔可能匹配不上或误触发
  • 如果你确定要用某个 Skill,手动输入 /skill名称 更精确可靠
  • description 写得越好(明确描述触发条件),自动触发的准确率越高
  • 将 user-invocable 设为 false 的 Skill 不会出现在斜杠菜单中,只能通过自动触发调用

2.3 如何安装/创建自定义 Skill

Skill 存放位置

自定义 Skill 放在两个位置之一:

级别 目录 说明
全局 ~/.claude/skills/ 所有项目都能用
项目级 项目根目录下 .claude/skills/ 只有当前项目能用

创建一个自定义 Skill(三步走)

第 1 步:建目录

在 ~/.claude/skills/ 下新建一个文件夹,名字用小写字母加连字符(如 my-test):


~/.claude/skills/
└── my-test/

第 2 步:写 SKILL.md

在 my-test/ 目录下创建 SKILL.md,格式如下:


---
name: my-test
description: This skill should be used when the user asks to "测试一下" or "检查某功能".
---
# 测试 Skill
1. 读取当前目录下的所有 `.py` 文件
2. 统计每个文件的行数
3. 输出一份汇总报告

就这么简单——YAML frontmatter 写上名称和触发描述,Markdown body 写具体要执行的步骤。

第 3 步:保存即生效

Claude Code 会自动扫描 ~/.claude/skills/ 和 .claude/skills/ 目录,保存后无需重启,热重载立即生效。输入 /my-test 就能调用。

Frontmatter 常用字段说明

字段 必需 说明
name Skill 名称,用小写字母+连字符
description 触发条件,写"什么时候该用这个 skill"
version 版本号
model 指定模型(sonnet/opus/haiku
allowed-tools 限定可用的工具,如 Read, Write, Bash(git:*)
argument-hint 参数提示,如 [file-path]
user-invocable 是否出现在斜杠菜单中(默认 true)

写 description 的技巧:用第三人称写触发条件,比如 "This skill should be used when the user asks to '做某事'"。Claude 就是靠这个 description 来判断何时触发你的 Skill。

通过插件安装 Skill

除了自己写,还可以通过插件安装现成的 Skill:


/plugin install <插件名>

插件中包含的 Skill 会自动被识别,输入 /skills 就能看到。


3. 进阶内容

3.1 Skill 的触发机制

Skill 有两种触发方式:

Logo

小龙虾开发者社区是 CSDN 旗下专注 OpenClaw 生态的官方阵地,聚焦技能开发、插件实践与部署教程,为开发者提供可直接落地的方案、工具与交流平台,助力高效构建与落地 AI 应用

更多推荐