第 9 章 Skills 生态

54 阅读5分钟

第 9 章 Skills 生态

← 上一章 | 下一章 →


本章目标

  • 理解 Skills 的概念及其与 Hooks、Agent 的区别
  • 熟悉内置 Skills 及其用途
  • 学会从社区市场安装和管理 Skills
  • 能编写一个简单的自定义 Skill
  • 了解如何用 Skills 组合构建完整工作流

9.1 Skills 是什么

**Skills(技能)**是 Claude Code 的可复用领域专长模块。每个 Skill 封装了一套特定的工作流程、知识体系和行为准则,当被加载时会扩展 Claude Code 的能力和决策方式。

Skills 的设计思想

flowchart TD
    A[用户需求] --> B{Claude Code 基础能力}
    B --> C[不够用?]
    C -->|是| D[加载对应 Skill]
    D --> E[获得领域专长]
    E --> F[更专业地完成任务]

    G[Skill 来源]
    G --> H[内置 Skills]
    G --> I[社区市场]
    G --> J[自定义编写]

Skills vs 其他机制

机制回答的问题生效方式
CLAUDE.md"这个项目的规则和约定是什么"自动加载,全程影响
Settings.json"行为偏好和权限边界是什么"配置驱动,自动生效
Hooks"在 X 发生时应该自动做什么"事件触发执行
Skills"做 Y 类任务时应该遵循什么方法论"用户按需调用加载
Agent"谁来做这件事"主 Agent 分发给 Subagent

💡 Skills 的核心价值:把"人知道怎么做但 Claude 不知道"的领域经验,封装成可复用的模块。一次编写,团队共享。


9.2 内置 Skills 一览

Claude Code 内置了一批 Skills,覆盖常见开发工作流。

流程类 Skills

Skill用途典型触发场景
brainstorming将创意转化为完整设计开始新功能前需要梳理需求
writing-plans编写详细实施计划设计通过后要落地为执行步骤
executing-plans按计划逐任务执行有写好的计划需要执行
verification-before-completion完成前验证声称任务完成前确保没遗漏

开发方法类 Skills

Skill用途典型触发场景
test-driven-developmentTDD 开发流程实现功能前先写测试
systematic-debugging系统化调试方法论遇到 Bug 需要排查
requesting-code-review请求代码审查功能完成准备合并
receiving-code-review处理审查反馈收到 review 意见后的处理

工程实践类 Skills

Skill用途典型触发场景
dispatching-parallel-agents并行 Agent 分发有多个独立任务同时进行
subagent-driven-developmentSubagent 驱动开发用 Agent 执行实施计划
using-git-worktreesGit Worktree 隔离开发需要工作区隔离
finishing-a-development-branch完成开发分支所有任务完成,决定如何合并

工具类 Skills

Skill用途典型触发场景
writing-skills编写新 Skill创建/编辑自定义 Skill
claude-apiClaude API 应用开发构建基于 Anthropic SDK 的应用
init初始化项目 CLAUDE.md新项目需要 CLAUDE.md

如何调用内置 Skills

在对话中使用 /skill-name 格式:

/brainstorming

或者直接描述你想做的事,Claude Code 会根据上下文自动建议加载合适的 Skill。


9.3 社区 Skills 市场

Superpowers 市场是 Skills 的社区分发平台。

安装社区 Skill

Skills 以插件形式安装。当你加载一个尚未安装的 Skill 时,Claude Code 会询问是否从市场安装。

相关的管理操作:

# Skills 存储在插件缓存目录中
# 通常位于 ~/.claude/plugins/cache/

管理已安装的 Skills

  • Skills 会随 Claude Code 更新而自动升级
  • 不再需要的 Skill 可以删除对应插件目录
  • 建议安装前先了解 Skill 的功能描述和评价

⚠️ 社区 Skills 来自第三方开发者。安装前了解其功能范围,避免安装包含你不理解的权限要求的 Skill。


9.4 编写自定义 Skill

Skill 的结构

一个 Skill 是一个包含以下要素的目录:

my-skill/
├── metadata.json    # Skill 元数据
├── prompt.md        # 核心提示词
└── checklist.md     # 检查清单(可选)

元数据 (metadata)

{
  "name": "my-custom-skill",
  "description": "简短描述这个 Skill 做什么 — 用于匹配触发场景",
  "version": "1.0.0",
  "author": "your-name",
  "triggers": [
    "描述1",
    "描述2"
  ]
}

核心提示词 (prompt)

Prompt 是 Skill 的核心 —— 它告诉 Claude Code 在处理这类任务时应该遵循什么方法论:

# My Custom Skill

## Overview
一句话描述。

## The Process

### Step 1: 第一步做什么
具体说明...

### Step 2: 第二步做什么
具体说明...

## Key Principles
- 原则 1
- 原则 2

检查清单 (checklist)

Checklist 确保 Skill 被正确执行。定义了执行过程中必须完成的检查项:

## Checklist
- [ ] 检查项 1
- [ ] 检查项 2
- [ ] 检查项 3

一个完整的自定义 Skill 示例

假设你需要一个"代码提交前检查"Skill:

prompt.md 核心内容:

# Pre-Commit Review

## Overview
在提交代码前运行一系列质量检查,确保代码符合团队标准。

## The Process

### Step 1: 检查变更范围
读取 `git diff --cached` 了解待提交的变更。

### Step 2: 运行质量检查
- 运行 linter
- 运行类型检查
- 运行相关测试

### Step 3: 生成提交信息
根据变更内容按 Conventional Commits 规范生成提交信息。

### Step 4: 最终确认
列出检查结果和提交信息,等待用户确认。

## Key Principles
- 任何不通过的检查都要向用户明确报告
- 不跳过 hooks
- 不在测试失败时提交

💡 编写 Skill 时,想一个问题:"如果换了一个刚入职的同事来做这件事,你会给他什么操作手册?" 那个手册的内容,就是 Skill 的 prompt。


9.5 Skills 实战组合

Skills 的真正威力在于组合使用。以下是两个典型工作流。

工作流一:完整功能开发

flowchart LR
    A[需求] --> B[brainstorming]
    B --> C[确定设计]
    C --> D[writing-plans]
    D --> E[实施计划]
    E --> F{选择执行方式}
    F -->|Subagent| G[subagent-driven-development]
    F -->|内联| H[executing-plans]
    G --> I[代码完成]
    H --> I
    I --> J[verification-before-completion]
    J --> K[验证通过]
    K --> L[requesting-code-review]
    L --> M[finishing-a-development-branch]

这个流程中,Skills 按顺序流转:从创意到设计到计划到实现到审查到完成。

工作流二:Bug 修复

flowchart LR
    A[Bug 报告] --> B[systematic-debugging]
    B --> C[定位根因]
    C --> D[test-driven-development]
    D --> E[修复 + 测试]
    E --> F[verification-before-completion]
    F --> G[确认修复]

💡 不必每次都走完整流程。上面的工作流是"理想态",实际使用时根据任务复杂度灵活裁剪。


本章要点回顾

  • Skills 是可复用的领域专长模块,告诉 Claude Code "做这类事时应该遵循什么方法论"
  • Skills 不同于 CLAUDE.md(约定)、Hooks(事件响应)、Agent(何人执行)
  • 内置 Skills 覆盖了完整的开发流程:从 brainstorming 到 finishing
  • 社区 Skills 可通过 Superpowers 市场获取和安装
  • 自定义 Skill 由 metadata、prompt 和 checklist 组成
  • Skills 的组合使用构成了完整的开发工作流

← 上一章 | 下一章 →