在 Claude Code 中,Skills 是一套可定制化的“技能包”系统,允许用户将专业知识、任务流程或可执行代码打包成独立模块,供 Claude 根据上下文自动调用。以下是其核心用法和操作指南:

一、Skills 的核心特性

  1. 自动触发
    Claude 会根据任务需求和 Skill 的描述(description 字段)自动匹配并调用相关 Skill,无需手动指定。例如:

    • 输入“生成项目文档”,Claude 会自动加载“文档生成器” Skill。
    • 输入“审查代码”,Claude 会激活“代码审查专家” Skill。
  2. 按需加载
    Skill 仅在需要时加载,避免占用上下文资源,尤其适合 token 敏感的场景。

  3. 可组合性
    多个 Skill 可像积木一样组合,形成完整任务流。例如:

    读取 Excel → 数据处理 → 生成图表 → 输出 PDF
    

    Claude 会自动协调各 Skill 的执行顺序。

  4. 跨平台复用
    Skill 格式统一,一次构建可在 Claude Code、Claude.ai 网页版、桌面应用及 API 中使用,支持 Git 版本控制,方便团队共享。

  5. 支持可执行代码
    对于传统编程更高效的任务(如数据处理、文件操作),Skill 可直接嵌入脚本(如 Python、Bash),扩展 Claude 的功能边界。

在这里插入图片描述

二、Skills 的分类与存储位置

类型 存储路径 适用场景
Personal Skills ~/.claude/skills/ 个人项目通用,跨项目可用
Project Skills ./.claude/skills/(项目根目录) 仅当前项目生效,团队共享
Plugin Skills 随插件捆绑安装 安装插件后直接使用

优先级规则:若同名 Skill 存在于多个位置,优先级为:Enterprise > Personal > Project > Plugin

三、使用步骤

1. 安装 Skills
  • 通过插件市场安装(推荐):
    /plugin marketplace add anthropics/skills  # 添加市场
    /plugin install document-skills@anthropic-agent-skills  # 安装文档技能包
    /plugin install example-skills@anthropic-agent-skills   # 安装示例技能包
    
  • 手动安装
    1. 创建目录(如个人 Skill):
      mkdir -p ~/.claude/skills/my-skill
      
    2. 在目录中创建 SKILL.md 文件,定义 Skill 逻辑(见下文结构)。
2. 创建自定义 Skill

文件结构示例

.claude/skills/my-skill/
├── SKILL.md          # 核心描述文件
├── scripts/          # 可选:存放脚本
│   └── helper.py     # 示例脚本
└── REFERENCE.md      # 可选:详细说明

SKILL.md 模板

---
name: my-skill          # 技能名称(与目录名一致)
description: |         # 关键字段:描述功能及触发条件
  生成规范的 Git 提交消息,遵循 Conventional Commits 规范。
  当用户输入“写提交信息”或提及“git commit”时触发。
allowed-tools: Read    # 可选:限制工具权限(如仅允许读取文件)
---

# 提交消息生成规则
1. 分析代码变更类型(feat/fix/docs等)。
2. 生成清晰描述,包含关联 Issue ID。
3. 示例:

feat: 添加用户登录功能 (#123)

3. 测试与使用
  • 验证 Skill 是否加载

    > 你有哪些可用的 Skills?
    

    Claude 会列出已加载的 Skill 及其描述。

  • 触发 Skill
    直接输入与 Skill 描述匹配的请求,例如:

    > 写提交信息
    

    Claude 会自动调用“提交消息生成器” Skill。

四、高级技巧

  1. 变量占位符
    SKILL.md 中使用 {{args}}{{cwd}} 等变量接收用户输入或上下文信息。

  2. 组合工具调用
    Skill 可调用 Claude Code 的内置工具(如 ReadWriteBash),例如:

    # 读取文件并生成摘要
    1. 使用 `Read` 工具读取 `{{file_path}}`。
    2. 提取关键内容并返回。
    
  3. 渐进式披露
    将辅助文件(如模板、示例)存放在 Skill 目录中,Claude 仅在需要时加载,避免占用上下文。

  4. 错误处理
    SKILL.md 中定义异常情况的处理逻辑,例如:

    # 错误处理
    - 若文件不存在,提示用户重新输入路径。
    - 若权限不足,说明原因并建议解决方案。
    

五、实战案例

案例 1:代码审查助手

功能:自动检查代码风格、潜在 Bug 和性能问题。
SKILL.md 片段

---
name: code-review
description: |
  对代码进行全面审查,包括:
  - 代码风格(ESLint/Prettier)
  - 潜在 Bug(如未处理异常)
  - 性能优化建议
  触发条件:用户输入“审查代码”或“code review”。
---

# 审查步骤
1. 使用 `Bash` 运行 ESLint:
   ```bash
   eslint {{file_path}}
  1. 分析输出结果,生成报告。

#### **案例 2:数据库查询助手**
**功能**:根据自然语言查询生成 SQL 语句。  
**`SKILL.md` 片段**:
```markdown
---
name: sql-query
description: |
  将自然语言转换为 SQL 查询,例如:
  - “查询用户表中年龄大于 30 的记录” → `SELECT * FROM users WHERE age > 30`
  触发条件:用户输入包含“查询”“SQL”等关键词。
---

# 转换规则
1. 解析用户输入中的实体(表名、字段、条件)。
2. 映射为 SQL 语法,支持简单 JOIN 操作。

六、常见问题

  1. Skill 未触发

    • 检查 description 是否明确描述了触发条件。
    • 确保 Skill 存储在正确路径(如个人级或项目级)。
  2. Skill 未加载

    • 重启 Claude Code 以刷新 Skill 列表。
    • 运行 /plugin manage 检查插件状态。
  3. 多个 Skill 冲突

    • 避免同名 Skill,或通过优先级规则调整存储位置。

七、最佳实践

  • 保持专注:每个 Skill 只解决一个具体问题。
  • 清晰描述:在 description 中明确功能、触发条件和关键词。
  • 提供示例:在文档中包含使用示例,降低用户学习成本。
  • 充分测试:在不同场景下验证 Skill 的行为,确保鲁棒性。
  • 迭代优化:根据用户反馈持续改进 Skill。

通过合理使用 Skills,你可以将 Claude Code 打造成高度定制化的 AI 编程助手,显著提升开发效率并标准化团队工作流程。


Claude Code使用指南

Logo

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

更多推荐