跳到主要内容

Skills 系统

源码: skills/ 目录

1. Skill 概述

Skill 是 Claude Code 的可复用能力单元,允许用户定义一组命令、Prompt 模板或工作流程。

skills/
├── builtin/ # 内置技能
│ ├── commit/ # 代码提交
│ ├── review/ # 代码审查
│ └── ...
└── user/ # 用户自定义技能
└── ...

2. Skill 定义

每个技能通过配置文件定义:

# skills/commit/skill.yaml
name: commit
description: "智能提交代码到 git"
prompt: |
检查当前 git 状态,暂存所有更改,
生成规范的 commit message,提交。
allowed_tools:
- Bash
category: workflow

3. Skill 加载

// 加载内置技能
function loadBuiltinSkills(): Skill[] {
return [
loadSkill('commit'),
loadSkill('review'),
// ...
]
}

// 加载用户技能
function loadUserSkills(): Skill[] {
const userDir = getConfig().skillsDir
return globSync('**/skill.yaml', { cwd: userDir })
.map(path => loadSkill(path))
}

4. Skill 触发

用户通过 /skill-name 命令触发技能:

/commit → 执行 commit 技能
/review → 执行 review 技能

触发流程:

用户输入 /commit


解析命令 → 查找对应 Skill


注入 Skill Prompt 到系统上下文


Claude 按照 Skill 定义执行工作流

5. Skill 与 Hook 系统

Skill 与记忆系统联动:

// Skill 执行时会记录到记忆
function executeSkill(skill: Skill) {
const prompt = buildSkillPrompt(skill)
// 注入到对话上下文
appendContext(prompt)
// 记录执行历史
recordSkillExecution(skill.name)
}

6. 内置技能列表

技能功能类别
/commit智能 git 提交workflow
/review代码审查workflow
/explain解释代码knowledge
/refactor重构代码workflow
/test生成测试workflow
/search搜索代码knowledge

上一节:08 服务集成 | 下一节:Plugins 系统