简介
本文通过完整可直接复制的技能定义 + 调用示例,演示如何编写、配置、调用 Claude Code Skills(智能体技能)。
技能文件存放路径:.claude/skills/,后缀为 .md,一个文件对应一个技能。
实例1:代码评审技能 code-review.md
文件路径:.claude/skills/code-review.md
# Skill:code-review ## 技能描述 对指定源码文件进行代码评审,检查类型错误、安全隐患、代码规范、冗余代码。## 输入参数
- files:待评审文件路径,支持单个或多个文件 ## 执行步骤
1. 读取传入的源码文件
2. 从4个维度检查:类型安全、业务逻辑、性能、代码规范
3. 按严重等级划分:严重 / 一般 / 优化建议
4. 输出评审报告:文件路径、行号、问题描述、修复建议## 约束
1. 仅输出评审报告,不修改任何代码
2. 必须遵守项目 CLAUDE.md 编码规范
3. 不擅自新增、删除业务逻辑
调用示例
调用技能 code-review,评审 @src/utils/request.ts
调用技能 code-review,评审 @src/components/Form.vue @src/api/user.ts
实例2:单元测试生成技能 test-generator.md
文件路径:.claude/skills/test-generator.md
# Skill:test-generator ## 技能描述 根据目标源码,生成配套单元测试用例,覆盖正常场景、边界值、异常场景。## 输入参数
- targetFile:待编写测试的源码文件路径
- testFramework:测试框架,默认 vitest ## 执行步骤
1. 读取目标源码,提取函数、入参、返回值
2. 梳理业务场景:正常输入、空参数、异常输入
3. 编写单元测试代码,增加注释说明用例目的
4. 输出完整测试文件代码,并说明执行测试命令## 约束
1. 测试代码风格与项目保持一致
2. 不修改原有业务源码
3. 优先覆盖核心业务逻辑,不必过度追求100%覆盖率
调用示例
调用技能 test-generator,targetFile=@src/utils/validator.ts
调用技能 test-generator,targetFile=@src/service/user.ts,testFramework=jest
实例3:接口文档生成技能 api-docs.md
文件路径:.claude/skills/api-docs.md
# Skill:api-docs ## 技能描述 读取接口TS类型定义,自动生成Markdown格式接口文档。## 输入参数
- apiFile:接口类型定义文件 ## 执行步骤
1. 读取接口请求、响应类型
2. 提取接口地址、请求方法、请求参数、返回字段
3. 输出Markdown文档,包含字段说明、字段类型、是否必填
4. 补充调用示例## 约束
1. 文档简洁清晰,使用标准markdown表格
2. 不修改源码文件
调用示例
调用技能 api-docs,apiFile=@src/api/types.ts
技能管理操作
/skill list # 查看项目所有可用技能
/skill describe code-review # 查看code-review技能完整定义
/skill reload # 修改技能文件后,重载技能配置
完整实操流程
- 在项目
.claude/skills/目录新建code-review.md,粘贴上面技能内容 - 保存文件
- 在 Claude Code 会话输入
/skill reload重载技能 - 调用技能:
调用技能 code-review,评审 @src/main.ts - Claude Code 加载技能定义,按照技能内定义的步骤执行任务
✅ 修改技能文件后,必须
/skill reload或者/clear新建会话才能生效。
技能组合示例(技能 + 子代理)
调用子代理 lint-reviewer,然后调用技能 code-review,审查 src 目录全部接口文件
主代理先唤起子代理做静态检查,再调用代码评审技能,合并两份报告。
常见使用误区
- 技能文件放错目录:必须放在
.claude/skills/,文件名即为调用名称 - 修改技能后直接调用:没有执行
/skill reload,仍然读取旧技能定义 - 技能职责写得太杂:不要同时让技能“评审代码+修改代码+写文档”,建议拆分成多个单一技能
- 在技能内写入密钥:禁止存放任何敏感信息
最佳实践
- 技能尽量保持通用,可以在多个项目复用
- 输出格式在技能内固定,每次调用输出结构统一,方便阅读
- 高频重复的开发任务,优先封装成技能
.claude/skills目录提交Git,团队成员共享技能库
0 条笔记