Claude Code Skill 完整指南

Claude Code Skill 完整指南

一、Skill 是什么

Skill 是 Claude Code 的可复用能力模块,用于扩展 Claude 的行为。类似于:

  • VS Code 的插件
  • Shell 的 alias/function
  • AI Agent 的工具包

核心作用

1
用户触发 → Claude 加载 Skill → 按 Skill 定义的规范执行
场景 没有 Skill 有 Skill
输出格式 每次描述需求,格式不一致 自动应用标准格式
重复任务 每次重新解释 一键触发
团队协作 各自发挥 统一规范

二、Skill 工作原理

2.1 触发机制

触发方式
├── 斜杠命令:/skill-name
├── 关键词触发:用户消息中包含特定关键词
└── 自动识别:Claude 根据上下文判断是否适用

2.2 文件位置

项目级 Skill:
├── .claude/skills/your-skill.md     # 当前项目可用

用户级 Skill:
├── ~/.claude/skills/your-skill.md   # 所有项目可用

2.3 加载流程

用户输入 → 匹配 Skill 规则
    ↓
找到匹配的 Skill → 读取 .md 文件内容
    ↓
将 Skill 内容注入到 Claude 的上下文
    ↓
Claude 按照 Skill 定义的规范执行任务
    ↓
输出结果

三、Skill 文件结构

3.1 基本结构

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# Skill 名称

简短描述 Skill 的作用(1-2句话)

## 触发规则(可选)

- 关键词列表
- 或斜杠命令说明

## 输出规范

### 规范1
具体要求...

### 规范2
具体要求...

## 示例

输入:

示例输入

1
2

输出:

示例输出
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
```

### 3.2 实际示例:generate-wiki.md

```markdown
# 生成 Wiki

将内容以 Wiki 格式输出,适用于 Confluence、GitBook、语雀等知识库平台。

## 输出规范

### 基本原则
- **结构和文字内容**:使用 Markdown 格式
- **表格**:使用 HTML `<table>` 标签,简洁清晰
- **架构图/流程图**:使用 SVG 格式
- **代码块/流程图**:使用带左边框的 HTML 样式

### 表格格式

使用简化的 HTML 表格,宽度 75%,第一列使用带颜色的粗体:

```html
<table class="_table" style="width: 75%">
<thead>
<tr>
<th>类型</th>
<th>具体动作</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong style="color: #C15F3C">IDE 选型</strong></td>
<td>VS Code + Copilot、Cursor、JetBrains AI</td>
<td>选择合适的 AI 辅助开发环境</td>
</tr>
</tbody>
</table>

使用场景

当用户提到以下关键词时,自动应用此格式:

  • “生成wiki”
  • “wiki格式”
  • “知识库格式”

示例

输入:

1
生成一个wiki,展示项目进度

输出:
(展示格式化后的 Wiki 内容)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97

---

## 四、如何编写高质量 Skill

### 4.1 核心原则

<table class="_table" style="width: 75%">
<thead>
<tr>
<th>原则</th>
<th>说明</th>
<th>反例</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong style="color: #C15F3C">单一职责</strong></td>
<td>一个 Skill 只做一件事</td>
<td>"生成文档并部署到服务器"</td>
</tr>
<tr>
<td><strong style="color: #C15F3C">明确触发</strong></td>
<td>触发条件清晰,避免误触发</td>
<td>"当需要时自动应用"</td>
</tr>
<tr>
<td><strong style="color: #C15F3C">示例驱动</strong></td>
<td>提供输入输出示例</td>
<td>只有文字描述没有示例</td>
</tr>
<tr>
<td><strong style="color: #C15F3C">可验证</strong></td>
<td>输出结果可判断是否符合规范</td>
<td>"生成高质量文档"</td>
</tr>
</tbody>
</table>

### 4.2 编写步骤

<pre style="background: #f1f5f9; padding: 16px 20px; border-radius: 6px; font-family: 'Monaco', 'Menlo', monospace; font-size: 13px; color: #334155; line-height: 1.6; border-left: 3px solid #10b981; overflow-x: auto;">
Step 1:明确目标
├── 这个 Skill 解决什么问题?
├── 用户期望什么输出?
└── 适用哪些场景?

Step 2:定义触发规则
├── 用什么关键词触发?
├── 是否需要斜杠命令?
└── 如何避免误触发?

Step 3:编写输出规范
├── 格式要求(表格、代码块、图表)
├── 内容结构(章节、标题层级)
├── 风格要求(语气、用词)
└── 特殊约定(颜色、样式)

Step 4:提供示例
├── 简单示例(基本用法)
├── 复杂示例(高级用法)
└── 边界示例(特殊情况)

Step 5:测试和迭代
├── 实际使用测试
├── 收集问题
└── 优化规范
</pre>

### 4.3 规范编写技巧

#### 技巧1:用示例代替描述

```markdown
# 不好的写法
表格应该简洁清晰,第一列要突出显示。

# 好的写法
### 表格格式

使用 HTML 表格,第一列使用橙红色粗体:

```html
<table class="_table" style="width: 75%">
<thead>
<tr>
<th>类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong style="color: #C15F3C">示例</strong></td>
<td>这是示例内容</td>
</tr>
</tbody>
</table>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

#### 技巧2:提供模板

```markdown
# PRD 生成 Skill

## 输出模板

# 产品需求文档:{产品名称}

## 一、背景与目标
- 背景:{背景描述}
- 目标:{目标描述}

## 二、用户故事
作为 {用户角色},我希望 {功能描述},以便 {价值描述}。

## 三、功能需求
| 功能模块 | 功能描述 | 优先级 |
|----------|----------|--------|
| {模块名} | {描述} | P0/P1/P2 |

...

技巧3:分层规范

1
2
3
4
5
6
7
8
9
10
11
12
13
14
## 输出规范

### 必须遵守(Must)
- 使用 Markdown 格式
- 包含摘要部分
- 表格使用 HTML 格式

### 建议遵守(Should)
- 文档长度控制在 2000 字以内
- 使用 SVG 替代文字描述复杂流程

### 可选遵守(May)
- 添加版本号和日期
- 包含相关链接

五、常用 Skill 示例

5.1 代码审查 Skill

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# 代码审查

对代码进行专业审查,输出结构化的审查报告。

## 触发规则
- 关键词:代码审查、code review、审查代码
- 斜杠命令:/review

## 审查维度

### 代码质量
- 可读性:命名是否清晰、注释是否充分
- 可维护性:代码结构是否合理、是否便于修改
- 性能:是否存在性能问题

### 安全性
- SQL 注入风险
- XSS 漏洞
- 敏感信息泄露

### 最佳实践
- 是否遵循项目规范
- 是否有重复代码
- 错误处理是否完善

## 输出格式

## 代码审查报告

### 总体评价
{评价内容}

### 问题列表

| 级别 | 位置 | 问题描述 | 建议修改 |
|------|------|----------|----------|
| 🔴 严重 | file:line | 问题描述 | 修改建议 |
| 🟡 警告 | file:line | 问题描述 | 修改建议 |
| 🟢 建议 | file:line | 问题描述 | 修改建议 |

### 优点
- 优点1
- 优点2

## 示例

输入:
\`\`\`javascript
function getUser(id) {
return db.query('SELECT * FROM users WHERE id = ' + id);
}
\`\`\`

输出:
(生成审查报告)

5.2 API 文档生成 Skill

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
# API 文档生成

根据代码自动生成 API 文档。

## 触发规则
- 关键词:API文档、接口文档、生成文档
- 斜杠命令:/api-doc

## 输出规范

### 文档结构

# {API 名称}

## 接口概述
{接口描述}

## 请求信息

| 属性 | 值 |
|------|-----|
| URL | /api/path |
| Method | POST/GET/PUT/DELETE |
| Content-Type | application/json |

## 请求参数

| 参数名 | 类型 | 必填 | 说明 |
|--------|------|------|------|
| param1 | string | 是 | 参数说明 |

## 请求示例

\`\`\`json
{
"param1": "value1"
}
\`\`\`

## 响应参数

| 参数名 | 类型 | 说明 |
|--------|------|------|
| code | number | 状态码 |
| data | object | 数据 |

## 响应示例

\`\`\`json
{
"code": 200,
"data": {}
}
\`\`\`

## 错误码

| 错误码 | 说明 |
|--------|------|
| 400 | 参数错误 |
| 401 | 未授权 |

5.3 Git Commit Skill

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# Git 提交信息

生成规范的 Git Commit 信息。

## 触发规则
- 关键词:commit信息、提交信息、commit message
- 斜杠命令:/commit

## 提交格式

<type>(<scope>): <subject>

<body>

<footer>

### Type 类型
- feat: 新功能
- fix: 修复 Bug
- docs: 文档更新
- style: 代码格式(不影响逻辑)
- refactor: 重构
- perf: 性能优化
- test: 测试相关
- chore: 构建/工具相关

## 示例

输入:
添加了用户登录功能,支持手机号和邮箱登录

输出:
feat(auth): 添加用户登录功能

- 支持手机号登录
- 支持邮箱登录
- 添加登录状态校验

Closes #123

六、Skill 最佳实践

6.1 命名规范

类型 命名格式 示例
动词+名词 generate-doc, review-code generate-wiki.md
功能描述 api-doc, prd-template api-doc.md
领域+功能 wiki-format, code-review code-review.md

6.2 文件大小控制

推荐大小
├── 简单 Skill:50-100 行
├── 中等 Skill:100-200 行
└── 复杂 Skill:200-500 行(最多)

超出时的处理
├── 拆分为多个 Skill
├── 使用外部文件引用示例
└── 精简非必要内容

6.3 版本管理

1
2
3
4
5
6
7
8
9
10
# Skill 名称

> 版本:v1.2
> 更新日期:2026-03-18
> 作者:your-name

## 更新日志
- v1.2: 添加 XX 功能
- v1.1: 修复 XX 问题
- v1.0: 初始版本

6.4 调试技巧

调试流程
├── 1. 在 .claude/skills/ 目录创建 Skill 文件
├── 2. 重启 Claude Code 或开启新会话
├── 3. 输入触发关键词测试
├── 4. 检查输出是否符合预期
├── 5. 调整规范内容
└── 6. 重复测试直到满意

常见问题
├── Skill 未触发 → 检查关键词是否匹配
├── 输出格式不对 → 增加更具体的示例
├── 输出不稳定 → 增加约束条件
└── 触发太频繁 → 缩小触发范围

七、Skill 进阶技巧

7.1 条件触发

1
2
3
4
5
6
7
8
## 触发规则

自动触发条件:
- 用户消息包含 "生成wiki" 或 "wiki格式"
- 且消息中包含 "表格" 或 "流程图"

手动触发:
- 斜杠命令:/wiki

7.2 参数支持

1
2
3
4
5
6
7
8
9
10
11
12
13
# 方案生成

## 使用方式

/wiki [类型] [主题]

参数说明:
- 类型:技术方案/产品方案/运营方案
- 主题:方案主题(可选)

示例:
/wiki 技术方案 用户认证系统
/wiki 产品方案 支付功能

7.3 组合使用

1
2
3
4
5
6
7
8
9
10
11
12
# 完整文档生成

## 执行流程

1. 调用 gather-info 收集信息
2. 调用 generate-wiki 格式化输出
3. 调用 review-doc 审查文档质量

## 依赖 Skill
- gather-info
- generate-wiki
- review-doc

八、总结

高质量 Skill 检查清单

检查项 标准 检查
目标明确 一句话说清楚 Skill 的作用
触发清晰 明确的关键词或命令
规范具体 有具体的格式要求和示例
示例完整 包含输入输出示例
大小适中 文件大小在 500 行以内
已测试 实际使用验证过

快速创建 Skill 模板

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# {Skill 名称}

{一句话描述 Skill 的作用}

## 触发规则
- 关键词:{关键词列表}
- 斜杠命令:/{command}

## 输出规范

### 基本原则
- 原则1
- 原则2

### 格式要求
{具体格式说明}

## 示例

输入:

{示例输入}

1
2

输出:

{示例输出}
1


文档版本:v1.0
编写日期:2026-03-18