首页 教程 常见问题

7.4 技能系统

技能(Skills)让你把重复性的工作流打包成可复用的指令,与团队共享。

什么是技能

技能是打包好的工作流指令。你把一个复杂任务(如代码审查、部署、测试)的最佳实践封装成技能,以后只需一个斜杠命令就能执行。

技能的组成部分

每个技能包含:

创建技能

目录结构

技能文件放在项目的 .claude/skills/ 目录中:

.claude/
  skills/
    review-pr/
      skill.json    # 技能元数据
      instructions.md  # 详细指令

skill.json 示例

{
  "name": "review-pr",
  "description": "审查 Pull Request 的变更",
  "disable-model-invocation": true
}

instructions.md 示例

# PR 审查技能

## 审查步骤
1. 获取 PR 的所有变更文件
2. 检查安全问题(SQL 注入、XSS、敏感信息泄露)
3. 检查边界条件处理
4. 检查代码风格是否一致
5. 评估是否有不必要的复杂度
6. 总结发现的问题和改进建议

## 输出格式
对每个文件:
- 文件名
- 问题列表(严重程度 + 描述)
- 改进建议

使用技能

在 Claude Code 中,通过斜杠命令使用技能:

/review-pr

或者

帮我审查 PR #42

Claude 会自动识别这是技能调用,加载指令并按步骤执行。

技能加载机制

按需加载

技能有两种加载模式:

上下文优化

对于不常用的技能,建议设置 disable-model-invocation: true。这样不会在每次会话时占用上下文空间。

技能与 CLAUDE.md 的区别

特性CLAUDE.md技能(Skills)
用途项目全局规则特定工作流指令
加载每次会话自动加载按需加载或调用
粒度整个项目单一任务
复用项目内跨项目共享

技能共享

技能可以跨项目共享。将技能文件放入版本控制,团队成员可以复用。

常见技能示例

代码审查

/review

按团队标准审查当前变更,输出结构化的审查报告。

部署到预发环境

/deploy-staging

运行测试、构建、部署到预发环境,并验证。

数据库迁移

/db-migration

安全地创建和执行数据库迁移脚本。

下一步