Skills 自定义
什么是 Skills
Skills(技能) 是 AI 编程工具中的可复用指令模板。将常用的工作流程封装为 Skill,一次创建,多次使用。
定位说明:Skills 介于"规则配置"和"工程方法论"之间。规则是静态的约束("不要做什么"),Skills 是动态的能力("按这个流程做")。
Skills 与规则文件的区别
| 维度 | 规则文件(AGENTS.md) | Skills |
|---|---|---|
| 性质 | 静态约束 | 动态能力 |
| 触发方式 | 自动加载 | 手动调用 |
| 适合内容 | "不要用 any" | "按这个流程做代码审查" |
| 复杂度 | 低 | 中到高 |
| 示例 | "使用 TypeScript 严格模式" | "审查代码的安全漏洞并输出报告" |
简单理解:规则告诉 AI "守规矩",Skills 告诉 AI "干活"。
核心价值
- 复用性 — 一次创建,多次使用
- 标准化 — 团队共享统一的工作流程
- 效率提升 — 减少重复配置和描述
常见 Skills 类型
1. 代码审查 Skill
# Code Review Skill
## 任务
审查代码并提供改进建议
## 检查项
- 代码规范(命名、格式、注释)
- 性能优化(N+1 查询、不必要的重渲染)
- 安全漏洞(SQL 注入、XSS、未校验输入)
- 错误处理(异常捕获、边界条件)
## 输出格式
### 问题
- [问题描述](严重程度:高/中/低)
### 建议
- [建议描述]
2. 单元测试 Skill
# Unit Test Skill
## 任务
为代码生成单元测试
## 要求
- 使用 Vitest
- 覆盖率目标:80% 以上
- 包含边界条件测试
- 包含异常场景测试
## 输出格式
- 测试文件与源文件同目录,后缀 `.test.ts`
- 每个 describe 块对应一个函数
- 每个 it 块对应一个场景
3. 文档生成 Skill
# Documentation Skill
## 任务
为代码生成 API 文档
## 要求
- Markdown 格式
- 包含请求方法、路径、参数
- 包含请求/响应示例
- 包含错误码说明
## 输出格式
- 每个 API 一个章节
- 包含 curl 调用示例
各工具的创建方式
| 工具 | 创建方式 |
|---|---|
| Cursor | Settings → Rules → New Rule |
| Claude Code | 通过 CLAUDE.md 定义 slash command |
| Trae | 设置 → Skills |
最佳实践
- 为高频重复的任务创建 Skills(重复超过 3 次就该封装)
- 保持 Skills 单一职责(一个 Skill 做一件事)
- 团队共享常用 Skills,统一工作流
- 定期维护更新,删除不再使用的 Skills
- Skill 的定义应与项目规则保持一致
常见问题
| 问题 | 解决方案 |
|---|---|
| Skill 输出不稳定 | 在定义中加入更具体的输出格式要求 |
| Skill 和规则文件冲突 | Skill 的定义应与项目规则保持一致 |
| 不知道什么该做成 Skill | 如果你重复做同一件事超过 3 次,就该做成 Skill |
| 团队成员的 Skill 不一致 | 用 Git 管理 Skill 定义文件,PR 审查时一并检查 |