DRY 重构交给 AI 干!这款 Skill 把代码去重做成标准化流程

还在靠目测找重复代码?复制粘贴三遍才想起来抽象?DRY 原则谁都懂,但真正要在实际项目里系统化落地,没有一套方法论支撑很容易变成「过度封装」或者「抽象了个寂寞」。

今天挖到一个专门解决这个问题的 Agent Skill——dry-refactoring,来自 GitHub 267 Stars 的 YYH211/Claude-meta-skill 仓库。它把 DRY 重构做成了一套标准化的 4 步工作流,让 AI 在重构时不再随机发挥。

这 Skill 到底干了什么

简单说,它给 Claude Code 植入了一套「代码去重 SOP」。

当你让它做 DRY 重构时,它不会一上来就提取函数,而是严格按照四步走:

第一步:识别重复——先找出代码里所有的重复模式,包括显性的复制粘贴、魔数(magic numbers)、以及结构性的隐式重复。这一步决定了后面抽象的方向对不对。

第二步:抽象逻辑——把共性行为封装成函数、类或模块。注意这里强调的是「业务规则」命名,不是泛泛的 utilhelper,避免抽象完反而更难读。

第三步:实现可复用单元——创建真正可复用的组件或工具函数,同时更新所有调用点。

第四步:验证——通过测试确认重构没有破坏原有行为,行为等价性是硬指标。

什么场景用它最香

日常开发里这三个场景特别适合:

  • 接需求评审时:让 AI 先扫描一遍模块里有没有重复逻辑,输出「DRY 违规清单」,再动手写代码,可以有效减少后期的重构成本。
  • Code Review 前置:PR 提出去之前先用这个 Skill 自检一遍,把明显的重复消掉,review 效率翻倍。
  • 遗留代码整理:接手一个复制粘贴满天飞的祖传项目,不知道从哪下手——按这个 Skill 的步骤逐模块推进,风险可控。

怎么安装

# 直接从 GitHub 克隆到 Claude Code 的 skills 目录
cp -r dry-refactoring ~/.claude/skills/

或者一行命令安装:

npx skills add https://github.com/YYH211/Claude-meta-skill --skill dry-refactoring

装完直接跟 Claude 说「帮我用 DRY 原则重构这个模块」,它就会按上面的四步走,比你自己想怎么抽象要靠谱得多。

几点感受

这个 Skill 最有价值的地方不是告诉你「去重」,而是约束了重构的顺序和判断标准——先识别再抽象,验证不过不动手。很多 AI 重构翻车,恰恰是因为跳步:看到两段相似代码就直接提取,结果提取出来的东西业务含义模糊、名字难取、调用的地方更乱了。

加了顺序约束之后,AI 的输出质量会稳定很多。另外它还特别强调「避免过度抽象」——不是说所有看起来像的代码都要合并,有的情况下保留重复反而更清晰,这一条对 AI 输出尤其重要。

仓库本身是个 Skill 合集,除了 dry-refactoring 还有 create-skill-file(写 SKILL.md)、mcp-builder(做 MCP 服务器)、local-diff-review(本地 Diff 审查)等 9 个技能,感兴趣的可以一起装上试试。

GitHub:https://github.com/YYH211/Claude-meta-skill(Repo Stars:267)


GitHub: https://github.com/YYH211/Claude-meta-skill/tree/main/dry-refactoring

评论区

0 条评论

登录后可评论。

陈一铭 9 阅读