参考来源GitHub - anthropics/skills
适用版本:Claude Code CLI / Claude.ai / Claude API

Skills(技能)是 Claude 的核心扩展机制。通过 Skills,你可以将重复性的工作流程、企业编码规范或特定的工具链封装成标准化的“指令包”,让 Claude 像经过专业培训的员工一样为你工作。


1. 什么是 Skills?

简单来说,Skill = 指令 (Prompt) + 上下文 (Context) + 工具 (Tools)

在物理形态上,一个 Skill 就是一个包含 SKILL.md 文件的文件夹。

  • 标准化:它定义了 Claude 应该“如何做”某件事。
  • 可复用:一次编写,随时调用。
  • 动态加载:Claude 根据你的自然语言指令,动态决定是否激活某个 Skill。

2. 如何安装和使用 Skills

2.1 官方市场安装 (Claude Code 专属)

Anthropic 官方提供了一个 Skills 仓库,你可以直接在 Claude Code 终端中挂载这个“市场”。

  1. 添加市场源

    /plugin marketplace add anthropics/skills
    
  2. 浏览并安装
    输入上述命令后,Claude 会引导你选择要安装的插件包,例如:

    • document-skills: 处理 PDF, DOCX, PPTX 等文档的能力。
    • example-skills: 包含创意写作、代码审查等示例。
  3. 直接安装指令
    如果你知道具体的插件名,也可以一步到位:

    /plugin install document-skills@anthropic-agent-skills
    

2.2 手动安装 (自定义/私有/社区 Skills)

无论是你自己编写的 Skills,还是从网上下载的第三方 Skills,安装方法都是通用的:将 Skill 文件夹放入 ~/.claude/skills 目录即可

  1. 创建存放目录
    Claude Code 默认会扫描用户主目录下的 .claude/skills

    mkdir -p ~/.claude/skills
    
  2. 部署 Skill
    将下载或编写的包含 SKILL.md 的文件夹完整复制到该目录下。

    • Windows 路径: C:\Users\用户名\.claude\skills\
    • macOS/Linux 路径: ~/.claude/skills/

    目录结构示例

    ~/.claude/skills/
    ├── my-java-reviewer/      <-- 自定义 Skill
    │   └── SKILL.md
    └── video-cut/             <-- 下载的社区 Skill
        ├── SKILL.md
        └── tools/
    

3. Skills 资源宝库

除了自己开发,你还可以从以下精选的社区和仓库中获取高质量的现成 Skills:

3.1 官方与精选仓库

3.2 Skill 市场与目录

  • Skill0 市场: skill0.io/zh
    • 亮点: 提供可视化的搜索界面,收录了 400+ 项技能,支持按场景(如前端开发、SEO 审计)筛选。
  • The Agent Skills Directory: skills.sh
    • 亮点: 极简风格的目录,提供 npx skills add 等快捷安装指令(需配合特定工具)。

3.3 垂类特色 Skills


4. 开发你的第一个 Skill

让我们从零开始创建一个实用的 Skill:“Java 代码规范审查员” (Java Linter Expert)

3.1 目录结构

~/.claude/skills/ 下创建目录 java-linter

mkdir -p ~/.claude/skills/java-linter
touch ~/.claude/skills/java-linter/SKILL.md

3.2 编写 SKILL.md

SKILL.md 由两部分组成:YAML 头信息Markdown 正文

---
name: java-linter-expert
description: 一个专门用于审查 Java 代码风格、命名规范和潜在空指针风险的专家技能。当用户请求 Review Java 代码时使用。
---

# Java Code Review Expert

你是一位拥有 10 年经验的资深 Java 架构师。你的任务是审查用户提供的 Java 代码。

## 核心审查原则
1.  **命名规范**:必须符合 Google Java Style Guide。类名 PascalCase,变量名 camelCase,常量 UPPER_SNAKE_CASE。
2.  **空指针安全**:严格检查 `NullPointerException` 风险,建议使用 `Optional` 或 `Objects.requireNonNull`。
3.  **日志规范**:检查是否使用 `System.out.println`(严禁使用),必须建议替换为 `slf4j` 日志框架。
4.  **注释完整性**:所有 public 方法必须包含 Javadoc。

## 交互格式
请按以下格式输出审查报告:

### 🔴 严重问题
- [行号] 问题描述 (修复建议)

### 🟡 改进建议
- [行号] 问题描述

### ✅ 最佳实践点赞
- 发现的优秀代码片段

## 示例
**输入**:
```java
public void SaveUser(User u) {
    if(u.name == null) return;
    System.out.println("Saved " + u.name);
}

输出:

🔴 严重问题

  • [Line 3] 使用了 System.out.println。建议替换为 log.info("Saved {}", u.getName())
  • [Line 1] 方法名 SaveUser 不符合驼峰命名法。建议修改为 saveUser

🟡 改进建议

  • [Line 1] 参数 User u 建议增加 @Nonnull 注解或在方法头进行空值校验。

3.3 测试 Skill

  1. 重启 Claude Code 或输入 /init 刷新上下文。
  2. 创建一个不规范的 Java 文件 Test.java
  3. 输入指令:“请帮我 Review 一下 Test.java”。
  4. Claude 会识别到 java-linter-expert 技能,并按照你定义的“资深架构师”人设和格式输出报告。

4. 进阶技巧:引用外部资源

Skill 不仅仅是一段 Prompt,它还可以包含文件资源。Claude 在加载 Skill 时,可以读取同一文件夹下的其他文件。

场景:你需要让 Claude 按照公司内部复杂的 checkstyle.xml 规则进行检查。

目录结构

~/.claude/skills/company-style/
├── SKILL.md
└── rules/
    └── company-checkstyle.xml

SKILL.md 写法

---
name: company-style-checker
description: 依据公司内部 XML 规则检查代码风格
---

# Company Style Checker

请参考当前 Skill 目录下的 `rules/company-checkstyle.xml` 文件规则来审查代码。

关键规则提取:
1. 每行字符数限制...
2. ...

(注意:Claude Code 会自动将 Skill 目录下的文件纳入上下文索引,使 AI 能够“看见”这些规则文件。)


5. 官方案例解析

5.1 文档处理 (Document Skills)

anthropics/skills 仓库中,document-skills 是一个非常强大的例子。它展示了如何教 AI 处理二进制文件格式。

  • 原理:它并不是让 AI 直接读取二进制流,而是定义了一套调用 Python/Node.js 脚本或工具的流程(如果环境支持),或者通过详细的结构描述让 AI 理解 XML/JSON 结构的文档(如 .docx 本质是 zip 包裹的 xml)。
  • 启示:你可以编写一个 Skill,让 Claude 学会读取你们公司特有的私有文件格式(只要该格式是基于文本或可解析的)。

5.2 创意写作 (Creative Skills)

仓库中的创意类 Skill 展示了如何通过 Few-Shot Prompting (少样本提示) 来锁定输出风格。在 SKILL.md 中提供 3-5 个高质量的“优秀范文”,能极大提升 Claude 生成内容的质量。


6. 总结

特性 说明
定义方式 文件夹 + SKILL.md (YAML + Markdown)
部署位置 ~/.claude/skills/ 或通过 Marketplace 安装
核心价值 沉淀专家经验,统一团队规范,自动化复杂流程
触发方式 自然语言意图识别 (无需死记硬背命令)

现在,尝试把你的日常重复性工作(如写周报、转换 SQL、生成单元测试)封装成一个 Skill 吧!

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐