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 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格式”
- “知识库格式”
示例
输入:
输出:
(展示格式化后的 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
### 格式要求 {具体格式说明}
## 示例
输入:
|
{示例输入}
{示例输出}
文档版本:v1.0
编写日期:2026-03-18