2026 最新 Claude Skills 开发指南:原理、入门及实战案例

一、什么是Claude Skills?

最近AI圈又火了一个新概念——Claude Skills(也叫Agent Skills)。很多人看了技术文档一脸懵,今天我们用最通俗的方式,带你彻底搞懂这个让AI"进化"的神器。

1.1 用一句话理解Skills

Skills就是给AI配备的"专业技能包",就像游戏里的法师学会了"火球术"技能书一样。

传统的AI只能"纸上谈兵"——你问它怎么画海报,它只能给你写一段描述性文字。但有了Skills,AI可以直接调用绘图脚本,啪的一声,海报就生成在你的文件夹里了。

1.2 Skills vs 普通提示词

很多人会问:“这不就是提示词(Prompt)吗?”

不!Skills是超级进化版的提示词,它由三部分组成:

  1. 元数据(Metadata):轻量级的技能描述,保存在全局上下文中,非常节省Token
  2. 行动指南(Instructions):详细的执行步骤,告诉AI每一步该怎么做
  3. 资源文件(Resources):这是最厉害的地方!可以包含Python代码、模板文件等可执行程序

简单对比:

特性 普通提示词 Claude Skills
触发方式 每次手动输入 AI自动识别并调用
复用性 需要反复复制粘贴 一次配置,全局可用
能力边界 仅限文本生成 可执行代码、处理文件
Token消耗 每次都占用大量上下文 渐进式加载,按需使用

二、Skills的工作原理

2.1 渐进式披露架构

Claude Skills采用了一种聪明的"渐进式披露"(Progressive Disclosure)机制:

  1. 发现阶段:启动时只加载所有Skills的名称和描述(轻量级)
  2. 激活阶段:当你的请求匹配某个Skill的描述时,Claude才加载完整内容
  3. 执行阶段:Claude按照Skill的指令执行任务

这就像一个图书馆:

  • 你先看目录(元数据)找到需要的书
  • 然后才打开那本书(加载详细指令)
  • 最后按书中的方法做事(执行任务)

2.2 自动触发机制

关键点:Skills不需要你手动调用,AI会根据你的自然语言自动判断是否使用。

例如,你有一个"Git提交信息生成"的Skill,描述是:“帮助生成规范的Git提交信息”。

当你说:“帮我写一个提交信息”,Claude会:

  1. 扫描所有Skills的描述
  2. 发现"Git提交信息生成"匹配你的需求
  3. 自动激活这个Skill
  4. 按照Skill中的规范生成提交信息

三、快速上手:3步配置你的第一个Skill

3.1 环境准备

前置条件

  • Claude付费账户(Pro或Team)
  • 已安装Claude Code(需要Node.js环境)

安装Claude Code

# 1. 安装Node.js(访问nodejs.org下载)

# 2. 安装Claude Code
npm install -g @anthropic-ai/claude-code

# 3. 验证安装
claude --version

国内用户提示:如果遇到网络问题,可以使用国内镜像:

npm install -g @anthropic-ai/claude-code --registry=https://registry.npmmirror.com

3.2 创建Skill目录结构

Skills可以存放在两个位置:

位置 路径 作用范围
个人全局 ~/.claude/skills/ 你的所有项目
项目级别 .claude/skills/ 当前项目所有人

创建你的第一个Skill

# 创建全局Skills目录
mkdir -p ~/.claude/skills/code-explainer

# 创建Skill定义文件
touch ~/.claude/skills/code-explainer/SKILL.md

3.3 编写SKILL.md文件

每个Skill必须包含一个SKILL.md文件,格式如下:

---
name: code-explainer
description: 用通俗易懂的方式解释代码,包含类比和ASCII图示
version: 1.0.0
author: 你的名字
---

# 代码解释专家

## 目标
用新手也能理解的方式解释代码逻辑。

## 执行步骤

1. **阅读代码**:仔细分析代码结构和逻辑
2. **生活类比**:用日常生活中的例子类比代码功能
3. **绘制图示**:用ASCII字符画出代码流程图
4. **逐行解释**:用简单语言解释关键代码行

## 输出格式

### 功能概述
[一句话总结代码功能]

### 生活类比
[用生活中的例子类比]

### 流程图

[ASCII流程图]


### 详细解释
[逐步解释关键逻辑]

## 注意事项
- 避免使用专业术语
- 多用比喻和例子
- 确保新手也能理解

3.4 测试你的Skill

# 1. 启动Claude Code
claude

# 2. 验证Skill已加载
> What Skills are available?

# 3. 测试Skill
> 请解释这段代码是如何工作的:
> [粘贴你的代码]

如果配置正确,Claude会自动使用code-explainer Skill,并按照你定义的格式输出解释。

四、实战案例:5个必备Skills

4.1 Git提交信息生成器

场景:每次提交代码都要想半天提交信息?

Skill配置

---
name: git-commit-generator
description: 分析代码变更,生成符合规范的Git提交信息
---

# Git提交信息生成器

## 执行流程

1. 运行`git diff --staged`查看暂存的变更
2. 分析变更类型:
   - feat: 新功能
   - fix: 修复bug
   - refactor: 重构
   - docs: 文档更新
   - style: 代码格式调整
   - test: 测试相关
3. 生成格式:`类型(范围): 简短描述`

## 示例输出
feat(auth): 添加JWT身份验证

- 实现用户登录/登出功能
- 添加token刷新机制
- 集成Redis存储会话

Closes #123

使用方式

git add .
claude

> 帮我生成一个提交信息

4.2 代码审查助手

场景:想要统一团队的代码审查标准?

Skill配置

---
name: code-reviewer
description: 按照团队标准审查代码,检查安全性、性能和可维护性
---

# 代码审查标准

## 审查清单

### 1. 安全性检查
- [ ] 是否存在SQL注入风险
- [ ] 是否存在XSS漏洞
- [ ] 敏感信息是否加密
- [ ] 输入验证是否完善

### 2. 性能检查
- [ ] 是否存在N+1查询
- [ ] 循环中是否有重复计算
- [ ] 是否合理使用缓存
- [ ] 数据库索引是否优化

### 3. 可维护性
- [ ] 函数是否过长(>50行)
- [ ] 是否有重复代码
- [ ] 命名是否清晰
- [ ] 是否有必要的注释

## 输出格式

### 审查摘要
[总体评价]

### 发现的问题
1. **[严重程度]** 问题描述
   - 位置:文件名:行号
   - 建议:如何修复

### 优点
[值得表扬的地方]

4.3 API文档生成器

场景:写完接口忘记更新文档?

Skill配置

---
name: api-doc-generator
description: 从代码自动生成API文档,包含请求示例和响应格式
---

# API文档生成器

## 分析步骤

1. 识别API端点(路由定义)
2. 提取请求参数和类型
3. 分析响应结构
4. 生成curl示例

## 文档模板

### 端点:[方法] [路径]

**描述**:[功能说明]

**请求参数**:
| 参数名 | 类型 | 必填 | 说明 |
|--------|------|------|------|
| xxx | string | 是 | xxx |

**请求示例**:
```bash
curl -X POST https://api.example.com/users \
  -H "Content-Type: application/json" \
  -d '{"name": "张三"}'

响应示例

{
  "code": 200,
  "data": {...}
}

4.4 测试用例生成器

场景:写测试太费时间?

Skill配置

---
name: test-generator
description: 为函数自动生成单元测试用例,覆盖正常和异常场景
---

# 测试用例生成器

## 测试策略

1. **正常场景**:验证基本功能
2. **边界条件**:空值、最大值、最小值
3. **异常场景**:错误输入、网络异常
4. **性能测试**:大数据量处理

## 测试模板(Jest)

```javascript
describe('函数名', () => {
  test('正常场景:描述', () => {
    // Arrange
    const input = ...;

    // Act
    const result = functionName(input);

    // Assert
    expect(result).toBe(expected);
  });

  test('边界条件:空输入', () => {
    expect(() => functionName(null)).toThrow();
  });
});

4.5 Markdown转电子书

场景:想把笔记转成精美的电子书?

Skill配置

---
name: markdown-to-epub
description: 将Markdown文件转换为EPUB格式的电子书
allowed-tools: Read, Write, Bash
---

# Markdown转电子书

## 执行步骤

1. 读取Markdown文件
2. 解析标题结构生成目录
3. 使用pandoc转换为EPUB格式
4. 添加封面和元数据

## 依赖工具

需要安装pandoc:
```bash
# macOS
brew install pandoc

# Ubuntu
sudo apt-get install pandoc

转换命令

pandoc input.md -o output.epub \
  --toc \
  --epub-cover-image=cover.jpg \
  --metadata title="书名" \
  --metadata author="作者"

五、进阶技巧

5.1 Skills组合使用

Skills可以相互配合,发挥更大威力:

场景:完整的代码提交流程

  1. code-reviewer Skill:审查代码质量
  2. test-generator Skill:生成测试用例
  3. git-commit-generator Skill:生成提交信息

使用方式

> 请审查我的代码,生成测试,然后提交

Claude会自动:

  1. 激活code-reviewer审查代码
  2. 激活test-generator生成测试
  3. 运行测试确保通过
  4. 激活git-commit-generator生成提交信息
  5. 执行git commit

5.2 添加支持文件

对于复杂的Skill,可以添加额外的参考文件:

my-skill/
├── SKILL.md              # 主文件(必需)
├── examples/             # 示例文件
│   ├── example1.md
│   └── example2.md
├── templates/            # 模板文件
│   └── template.txt
└── scripts/              # 辅助脚本
    └── processor.py

SKILL.md中引用:

## 参考资料

详细示例请查看:
- [示例1](examples/example1.md)
- [模板文件](templates/template.txt)

需要时可以运行脚本:
```bash
python scripts/processor.py

5.3 限制Skill可用工具

出于安全考虑,可以限制Skill只能使用特定工具:

---
name: safe-analyzer
description: 安全的代码分析工具
allowed-tools: Read, Grep, Glob
---

这样Skill就无法执行写入或Bash命令,只能读取和搜索。

5.4 调试Skills

查看Skills是否被激活

# 启动调试模式
claude --debug

# 或查看详细日志
claude --verbose

常见问题排查

  1. Skill没有被触发

    • 检查description是否准确描述了使用场景
    • 尝试在请求中包含更多关键词
    • 使用--debug查看Claude的决策过程
  2. Skill加载失败

    • 确认SKILL.md文件名大写正确
    • 检查YAML前置元数据格式
    • 验证文件路径是否正确
  3. 执行出错

    • 查看allowed-tools是否限制了必要工具
    • 检查引用的文件路径是否存在
    • 确认依赖的外部工具已安装

六、获取现成的Skills

不想自己写?直接用现成的!

6.1 官方Skills仓库

Anthropic官方提供了200+个Skills:

# 克隆官方仓库
git clone https://github.com/anthropics/claude-cookbooks.git

# 复制需要的Skills
cp -r claude-cookbooks/skills/official-skills/* ~/.claude/skills/

推荐Skills

  • pptx:生成PowerPoint演示文稿
  • xlsx:创建和处理Excel表格
  • pdf:生成PDF文档
  • docx:创建Word文档
  • skill-creator:用对话方式创建新Skill

6.2 社区精选Skills

Awesome Claude Skills

  • GitHub搜索:awesome-claude-skills
  • 包含各种实用Skills:前端设计、数据分析、自动化测试等

Obsidian专用Skills

  • Obsidian CEO亲自开发的3个Skills:
    • obsidian-markdown:撰写Obsidian笔记
    • json-canvas:绘制Canvas知识图谱
    • obsidian-bases:创建数据库

6.3 选择性安装

不需要全部安装,按需选择:

# 只安装需要的Skills
cd ~/.claude/skills
ln -s /path/to/official-skills/git-commit-generator .
ln -s /path/to/official-skills/code-reviewer .

七、Skills vs 其他功能对比

Claude Code提供了多种定制方式,什么时候用什么?

7.1 功能对比表

功能 触发方式 适用场景 上下文
Skills AI自动判断 专业知识、审查标准、输出格式 共享主上下文
斜杠命令 手动输入/command 固定流程、快捷操作 共享主上下文
Sub Agents 显式调用 需要隔离的任务、只读操作 独立上下文
MCP 工具调用 连接外部系统、数据库、API 工具接口
Hooks 事件触发 强制执行的流程(如保存前格式化) 事件驱动

7.2 选择指南

什么时候用Skills?

  • ✅ 需要AI自动识别使用场景
  • ✅ 包含复杂的执行逻辑
  • ✅ 需要在多个平台共享(Web、Desktop、Code)
  • ✅ 需要捆绑脚本和资源文件

什么时候用斜杠命令?

  • ✅ 固定的操作流程
  • ✅ 需要精确控制触发时机
  • ✅ 简单的提示词扩展

什么时候用MCP?

  • ✅ 需要连接外部系统(数据库、API)
  • ✅ 需要实时数据访问
  • ✅ 复杂的工具集成

7.3 组合使用示例

场景:专业的代码审查流程

# 组合方案

1. **MCP**:连接GitHub API获取PR信息
2. **Skill**:应用团队代码审查标准
3. **Sub Agent**:创建只读审查代理,防止误修改
4. **Hook**:提交前自动运行linter

八、最佳实践

8.1 编写高质量Skills的5个原则

  1. 描述要精准

    • ❌ “帮助处理代码”(太模糊)
    • ✅ “分析Java代码,检查安全漏洞和性能问题”
  2. 指令要具体

    • 使用编号列表
    • 明确每一步的输入输出
    • 提供具体的示例
  3. 善用渐进式披露

    • 主文件保持简洁(<200行)
    • 详细文档放在单独文件
    • 按需引用
  4. 添加使用示例

    • 至少提供2-3个实际例子
    • 包含输入和期望输出
    • 覆盖常见和边缘情况
  5. 持续迭代优化

    • 收集使用反馈
    • 记录常见问题
    • 定期更新改进

8.2 团队协作建议

项目级Skills管理

# 在项目中创建Skills
mkdir -p .claude/skills

# 提交到Git
git add .claude/skills
git commit -m "chore: add team skills"
git push

团队成员git pull后即可使用。

建立Skills库

# 创建团队Skills仓库
company-claude-skills/
├── frontend/
│   ├── react-component-generator/
│   └── css-optimizer/
├── backend/
│   ├── api-doc-generator/
│   └── database-migration/
└── devops/
    ├── docker-composer/
    └── ci-cd-generator/

8.3 安全注意事项

  1. 不要在Skills中硬编码敏感信息

    • ❌ API密钥、密码
    • ✅ 使用环境变量或配置文件
  2. 谨慎使用allowed-tools

    • 只读操作:Read, Grep, Glob
    • 需要写入:添加Write, Edit
    • 需要执行:添加Bash(谨慎!)
  3. 审查第三方Skills

    • 检查是否包含恶意脚本
    • 验证数据访问权限
    • 测试后再部署到生产环境

九、常见问题解答

Q1: Skills和Prompt有什么本质区别?

A: 三个关键区别:

  1. 触发方式:Skills自动激活,Prompt需要手动输入
  2. 能力边界:Skills可以执行代码,Prompt只能生成文本
  3. 上下文管理:Skills按需加载,Prompt每次都占用完整上下文

Q2: 为什么我的Skill没有被触发?

A: 检查清单:

  1. description是否准确描述使用场景
  2. 是否重启了Claude Code
  3. 使用What Skills are available?确认Skill已加载
  4. 尝试在请求中包含description中的关键词

Q3: Skills可以跨平台使用吗?

A: 可以!Skills支持:

  • Claude.ai(网页版)
  • Claude Desktop(桌面应用)
  • Claude Code(命令行工具)

只需将Skills放在~/.claude/skills/目录即可全平台共享。

Q4: Skills会消耗很多Token吗?

A: 不会!得益于渐进式披露:

  • 元数据(name + description):~50 tokens
  • 只有被激活时才加载完整内容
  • 可以有数百个Skills而不影响性能

Q5: 可以用中文编写Skills吗?

A: 完全可以!Claude支持多语言:

---
name: 代码解释器
description: 用中文解释代码逻辑,适合中文开发者
---

# 代码解释器

## 目标
用简单的中文解释复杂的代码...

Q6: Skills和MCP应该如何选择?

A: 简单判断:

  • Skills:处理逻辑、工作流程、输出格式
  • MCP:连接外部系统、数据访问、工具集成

最佳实践:MCP提供数据,Skills处理数据。

十、未来展望

10.1 Skills的发展趋势

  1. 更智能的激活机制

    • 多模态触发(语音、图像)
    • 上下文感知的自动推荐
    • 学习用户习惯
  2. 更丰富的生态系统

    • Skills市场(类似VSCode插件市场)
    • 一键安装和更新
    • 社区评分和推荐
  3. 更强大的能力

    • 支持更多编程语言
    • 集成更多外部工具
    • 跨Skills协作

10.2 对开发者的影响

Skills正在改变AI辅助编程的范式:

从前

开发者 → 写提示词 → AI生成代码 → 开发者复制粘贴

现在

开发者 → 自然语言描述需求 → AI自动选择Skills → 直接生成可执行结果

未来

开发者 → 描述业务目标 → AI自主规划和执行 → 交付完整功能

十一、总结

核心要点回顾

  1. Skills是什么:可自动激活的专业技能包,包含指令、脚本和资源
  2. 为什么重要:让AI从"文本生成器"进化成"任务执行者"
  3. 如何使用:创建SKILL.md文件,放在~/.claude/skills/目录
  4. 最佳实践:精准描述、具体指令、渐进披露、持续迭代

行动建议

新手

  1. 从官方Skills仓库安装几个常用Skills
  2. 体验自动触发的便利性
  3. 尝试修改一个Skill适配自己的需求

进阶

  1. 创建第一个自定义Skill
  2. 为团队项目配置专用Skills
  3. 探索Skills与MCP的组合使用

高级

  1. 构建完整的Skills工作流
  2. 开发可复用的Skills库
  3. 为开源社区贡献优质Skills

资源链接

  • 官方文档:https://code.claude.com/docs/en/skills
  • 官方Skills仓库:https://github.com/anthropics/claude-cookbooks
  • 社区Skills集合:搜索"awesome-claude-skills"
  • Obsidian Skills:搜索"kepano obsidian-skills"

最后的话

Claude Skills不仅仅是一个新功能,它代表了AI辅助编程的新范式。从"对话式编程"到"技能驱动编程",AI正在从你的"嘴替"变成真正的"打工人"。

现在就开始配置你的第一个Skill,让AI真正为你工作!


Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐