Claude Code 最强代码清理神器:code-simplifier 完全使用指南
Anthropic 团队内部自用的代码简化 Agent,现已开源。不改变任何功能,只让你的代码更优雅、更易读、更可维护。
一、code-simplifier 是什么?
code-simplifier是 Anthropic 官方开源的 Claude Code 插件——同一个工具,Claude Code 团队自己每天都在用。
它的定位非常纯粹:在不改变代码功能的前提下,简化代码实现,提升清晰度、一致性和可维护性。
用 Boris Cherny(Anthropic 工程师)的话说:
“We just open sourced the code-simplifier agent we use on the Claude Code team. Ask Claude to use the code simplifier agent at the end of a long coding session, or to clean up complex PRs.”
核心原则:一条铁律
Never changes code functionality — only changes implementation.
所有原始特性、输出和行为保持不变。它只关心"怎么写",不关心"写什么"。
底层规格
| 属性 | 说明 |
|---|---|
| 类型 | Claude Code 官方 Plugin / Agent |
| 底层模型 | Claude Opus(最强推理能力) |
| 工具集 | Read、Edit、Glob、Grep |
| 规则数量 | 45 条重构规则,分 8 大类别 |
| 上下文 | 自动读取项目CLAUDE.md+ 近期git diff |
| 策略 | 迭代式重构,一次聚焦一个问题 |
二、三大安装方式
方式一:命令行安装(推荐)
claude plugininstallcode-simplifier方式二:在 Claude Code 会话中安装
/plugin marketplace update claude-plugins-official /plugininstallcode-simplifier方式三:社区版 Skill 安装(更灵活)
如果你想把它当 Skill 用,而不是 Agent:
npx-yskillsaddpproenca/dot-skills--skillcode-simplifier--agentclaude-code或者手动下载:
mkdir-p~/.claude/skills/code-simplifier-pproenca-dot-skillscurl-Lhttps://claudskills.com/skills/code-simplifier-pproenca-dot-skills/SKILL.md\-o~/.claude/skills/code-simplifier-pproenca-dot-skills/SKILL.md安装路径:
- macOS/Linux:
~/.claude/skills/code-simplifier/ - Windows:
%USERPROFILE%\.claude\skills\code-simplifier\
安装完成后,Claude Code 会在下次启动时自动发现它。
三、如何使用?四种实战场景
场景 1:长时间编码后一键清理(最常用)
写完一个功能模块后,让 code-simplifier 帮你"回头看":
请用 code-simplifier 清理我们今天修改的代码或英文:
Run the code-simplifier agent on the changes we made todayClaude 会自动分析所有最近修改的文件,并一次性完成清理。
场景 2:提交 PR 前的质量把关
在创建 Pull Request 前,确保代码符合质量标准:
用 code-simplifier 检查并优化这些变更,然后再创建 PR英文:
Use the code-simplifier to review and clean up these changes before we create the PR场景 3:重构后的规范化
当你刚完成跨多个文件的大型重构,需要确保模式一致性:
用 code-simplifier 统一我们刚重构文件中的代码模式英文:
Use code-simplifier to normalize the patterns in the files we just refactored场景 4:指定模块清理
针对特定文件或目录:
用 code-simplifier 处理我刚写的 auth 模块英文:
Use code-simplifier on the auth module I just built技术调用方式(进阶)
由于 code-simplifier 本质是一个 Agent 而非传统 Skill,正确的调用方式是通过Task Tool:
{"subagent_type":"code-simplifier:code-simplifier"}而不是通过 Skill tool(那样会报 “Unknown skill” 错误)。
四、它到底能做什么?五大核心能力
1. 保留功能(铁律)
这是 code-simplifier 的第一原则:绝不改变功能。
- 所有原始特性、输出和行为完全保持不变
- 只改实现方式,不改业务逻辑
- 运行后会自动验证功能未受损
2. 遵循项目标准
自动读取并遵循项目的编码规范:
- 项目根目录的
CLAUDE.md—— 最高优先级 .cursor/rules/*.md、.cursorrulesAGENTS.md、.github/copilot-instructions.md.editorconfig、.prettierrc、.eslintrc.*
这意味着:你的团队规范定义得越清晰,code-simplifier 的表现就越好。
3. 提升清晰度
- 减少不必要的复杂度和嵌套
- 消除冗余代码和过度抽象
- 优化变量和函数命名
- 合并相关逻辑
- 移除描述明显代码的无用注释
- 避免嵌套三元运算符—— 改用 switch 或 if/else 链
- 选择清晰而非简洁—— 显式代码优于过度紧凑的代码
4. 保持平衡(不过度简化)
code-simplifier 很聪明,知道什么不该做:
- 不会为了简化而牺牲代码清晰度
- 不会创造过于" clever "的难以理解的方案
- 不会将太多关注点塞进单个函数
- 不会移除有助于代码组织的抽象
- 不会为了"行数更少"而牺牲可读性
5. 专注近期修改
默认只关注最近修改的代码(通过git diff/git status识别),除非你显式指定其他范围。这使得它:
- 运行速度快,不浪费 token
- 精准定位需要清理的代码
- 不影响已经稳定的旧代码
五、45 条重构规则速览(8 大类别)
code-simplifier 内置了 45 条重构规则,按优先级和影响范围分为 8 大类:
| 类别 | 优先级 | 规则示例 |
|---|---|---|
| 上下文发现 | Critical | 读取 CLAUDE.md,了解项目标准 |
| 行为保留 | Critical | 功能不变性验证、测试通过确认 |
| 作用域管理 | High | 变量作用域最小化、减少全局依赖 |
| 控制流优化 | High | 扁平化嵌套、early return、避免嵌套三元 |
| 命名规范 | Medium | 清晰命名、统一命名风格 |
| 死代码清理 | Medium | 移除未使用的变量、函数、导入 |
| 重复消除 | Medium | 提取公共逻辑(遵循"三次重复才提取"原则) |
| 语言惯用法 | Low | 遵循各语言的最佳实践和惯用模式 |
六、实战前后对比
示例 1:嵌套三元运算符 → 清晰条件链
清理前:
conststatus=user.active?user.verified?'active-verified':'active-unverified':user.suspended?'suspended':'inactive';清理后:
functiongetUserStatus(user){if(user.suspended)return'suspended';if(!user.active)return'inactive';returnuser.verified?'active-verified':'active-unverified';}conststatus=getUserStatus(user);示例 2:复杂条件 → 提前返回
清理前:
functionprocessOrder(order){if(order){if(order.items&&order.items.length>0){if(order.paymentStatus==='paid'){returnfulfillOrder(order);}else{thrownewError('Payment not completed');}}else{thrownewError('Order has no items');}}else{thrownewError('Invalid order');}}清理后:
functionprocessOrder(order){if(!order)thrownewError('Invalid order');if(!order.items?.length)thrownewError('Order has no items');if(order.paymentStatus!=='paid')thrownewError('Payment not completed');returnfulfillOrder(order);}七、最佳实践与注意事项
五个最佳实践
- 定期运行—— 不要等代码变乱才想起来用,每次重要编码会话后跑一遍
- 审查变更—— code-simplifier 很强,但不是绝对可靠,提交前务必 review 它的改动
- 配置好 CLAUDE.md—— 编码标准定义得越清晰,效果越好
- 配合版本控制—— 在 git 跟踪的目录中运行,方便对比和回滚
- 与其他工作流结合—— 与 Plan mode、code-review agent、test runner 配合使用
三个注意事项
- 它不是 Skill,是 Agent—— 需要通过 Task tool 或自然语言调用,不能通过
/code-simplifier调用(社区版 Skill 可以) - Token 成本—— 需要重新处理已生成的代码,建议选择性使用,不要对每个小改动都跑
- 运行前提交代码—— 这样方便对比和回滚:
git checkout -- <file>
八、支持的语言
code-simplifier 支持所有主流编程语言,特别擅长:
- TypeScript / JavaScript—— 前端/全栈首选
- Python—— 数据科学、后端开发
- Go—— 云原生、后端服务
- Rust—— 系统编程
- Java—— 企业级应用
社区还贡献了框架专属版本:
- Laravel/PHP:
laravel-simplifier@laravel - Rust:MCP marketplace 上的 Rust 专用变体
九、一句话总结
code-simplifier 就像一位不知疲倦的代码洁癖专家——它不会帮你写新功能,但会让你的每一行代码都干净利落。在 AI 辅助编程的时代,它的价值愈发明显:AI 生成的代码往往倾向于"过度完备",而 code-simplifier 就是专门来消除这种冗余的。
记住这个黄金时机:每当你完成一个功能、准备提交 PR、或者结束一次长编码会话时——
“Run the code-simplifier.”
参考资源
- Anthropic 官方插件仓库
- Claude Code 官方文档 - Skills
- Claude Code Agent SDK
- ClaudSkills 社区注册表