ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

Claude Code Skills 实战:把重复任务变成可复用的技能包

Claude Code Skills 实战:把重复任务变成可复用的技能包 你每次让 Claude Code 生成 CRUD都要重复差不多的 Prompt——“参照 UserController 风格包含 Entity、Mapper、Service、Controller、DTO做完跑测试”。这篇文章教你用 Skill 把这套流程固化下来——以后说为 xx 表生成 CRUD就够了。Skill 是什么Skill 是一个 Markdown 文件放在项目的.claude/skills/目录下。它定义了一类任务的执行流程——什么时候触发、按什么步骤做、有什么注意事项。Claude Code 在对话启动时自动加载项目里的所有 Skill遇到匹配的任务就按你定义的流程执行。它本质上就是把你的Prompt 模板和操作规范打包成了一个可复用的文件。创建你的第一个 Skill假设你的 Java 项目经常要生成 CRUD 代码。创建一个标准化的 CRUD 生成 Skill。第一步建目录和文件在项目根目录下创建.claude/skills/java-crud/SKILL.md第二步写 SKILL.md--- name: java-crud-generator description: 为 MyBatis-Plus 项目生成完整 Java CRUD 代码 --- # Java CRUD Generator ## 何时使用 - 用户说生成 CRUD、创建新模块、新建实体 - 用户提到具体表名并要求生成代码 ## 执行步骤 1. 如果用户没提供表名和字段先向用户确认 2. 读取 CLAUDE.md 了解技术栈和编码规范 3. 参照项目里已有的 Controller 确定代码风格 4. 按此顺序生成 Entity → Mapper → Service ServiceImpl → Controller → SaveDTO、UpdateDTO、QueryDTO、VO 5. 所有代码必须符合 CLAUDE.md 里的规范 6. 生成完毕后提示用户运行测试验证 ## 注意事项 - 使用构造器注入禁止 Autowired - MyBatis-Plus 用 LambdaQueryWrapper - 统一返回 ResultT分页返回 PageResultT - 时间字段用 LocalDateTime金额用 BigDecimal文件分两部分---包裹的元数据name 和 description 必填以及下面的执行指令。description 决定了 Skill 何时被触发。Claude Code 根据 description 来判断当前任务是否匹配这个 Skill。description 要写清楚用户说了什么才触发而不是简单的分类标签。写得太模糊比如只写代码生成可能导致 Skill 永远不会被自动激活。第三步验证 Skill 是否生效保存文件后重启 Claude Code或新开一个对话输入 你加载了哪些 Skill如果看到java-crud-generator出现在列表中说明 Skill 生效了。也可以直接说为 xxx 表生成 CRUD看它是否按你定义的流程执行。效果对比没有 Skill 的时候每次都要写这样的 Prompt 为 sys_product 表生成一套完整的 CRUD。 包括 Entity、Mapper、Service、ServiceImpl、Controller、 SaveDTO、UpdateDTO、QueryDTO、VO。 参照 DeptController 的代码风格。 用构造器注入不要 AutowiredMyBatis-Plus 用 LambdaQueryWrapper。 统一返回 ResultT分页用 PageResultT。 时间用 LocalDateTime金额用 BigDecimal。 做完跑 mvn test 验证。有了 Skill 之后只需要一句话 为 sys_product 表生成 CRUDClaude Code 自动读取 Skill按你定义的步骤执行确认表结构 → 读 CLAUDE.md 了解规范 → 参照已有代码确定风格 → 按顺序生成 → 提醒跑测试。Skill 的目录结构.claude/skills/ ├── java-crud/ │ └── SKILL.md # CRUD 生成 ├── code-review/ │ └── SKILL.md # 代码审查 └── write-tests/ └── SKILL.md # 单元测试生成每个 Skill 一个子目录里面一个 SKILL.md文件名必须叫 SKILL.md。项目级的.claude/skills/可以随 Git 提交团队成员共享。用户级 Skills如果你想让某个 Skill 在所有项目中生效放到~/.claude/skills/下。比如通用的 Code Review 规范、通用的测试生成模板可以放用户级。跟某个项目技术栈强相关的比如 MyBatis-Plus CRUD放项目级。还能用 Skill 做什么Code Review Skill--- name: java-code-review description: 按团队标准审查 Java 代码变更 --- ## 执行步骤 1. 用 git diff 查看未提交的变更 2. 重点检查空指针风险、事务边界、SQL 注入、异常处理 3. 输出按严重程度分三级高危必须改/ 建议 / 风格 4. 每个问题给出具体的修复代码单元测试生成 Skill--- name: unit-test-generator description: 为 Service 类生成完整单元测试 --- ## 执行步骤 1. 先读取目标 Service 类分析所有 public 方法 2. 为每个方法生成正常/异常/边界三类用例 3. 使用 MockitoMock 所有外部依赖 4. 使用 ExtendWith(MockitoExtension.class) 5. 生成完后跑 mvn test -DtestxxxTest 验证注意事项Skill 不是万能的它定义的是流程不是魔法。任务太复杂的话 Skill 也帮不了你——但它能让 90% 的重复任务变得简单。保持简单每个 Skill 专注一类任务不要试图把整个项目文档塞进去。随项目提交.claude/skills/放 Git 里新人拉代码就能用。总结Skill Prompt 模板 操作规范打包成可复用文件放在.claude/skills/名称/SKILL.md元数据写 name 和 description正文写执行步骤随 Git 提交团队共享一次写好以后同类任务一句话触发把最常重复的那几个任务CRUD、测试、审查做成 Skill每天能省不少打字时间。系列文章第一篇用 CC Switch 接入 DeepSeekAPI 费用降低 90%第二篇CLAUDE.md 写法详解第三篇10 个必学斜杠命令第四篇2026 安装教程原生安装器第五篇第一次对话——5 个实战场景第六篇Prompt 公式与模板第七篇权限系统配置实战第八篇Haiku / Sonnet / Opus 模型对比第九篇本文Skills 实战——创建可复用技能包下一篇MCP 实战——连接数据库AI 自动读表生成代码
返回列表