Claude Code 又双叒叕放大招:一键清理 AI 写的屎山代码!

0 阅读13分钟

让 AI 给自己擦屁股

你有没有这种经历?

用 Claude Code 写代码速度飞快,结果回头一看——

妈呀,这是什么玩意儿?

三百行的函数、套了八层的 if-else、变量名叫 temp1 temp2 temp3……

写的全是屎山

问题来了:AI 挖的坑,谁来填?

答案是:让 AI 自己填。

2025 年 1 月,Anthropic 官方发布了 code-simplifier 插件——

专门用来清理 AI 生成的烂代码,把屎山变成人能读的东西。

Claude Code 创始人 Boris Cherny 在 Twitter 说道:

"我们刚刚开源了 Claude Code 团队内部使用的 code-simplifier agent。试用:claude plugin install code-simplifier。在长时间编码后,或清理复杂 PR 时,让 Claude 使用代码简化 agent。"


code-simplifier 是什么?

一句话概括:Claude Code 官方出品的代码简化 Agent。

它的核心能力:

  • 🔍 扫描冗余代码 - 识别重复逻辑、过度抽象、不必要复杂度
  • ✂️ 自动重构优化 - 拆分大函数、优化命名、统一代码风格
  • 📝 保持功能不变 - 只优化结构和可读性,不改变程序行为
  • 📖 遵循你的规范 - 读取项目 CLAUDE.md,应用团队编码标准

也就是说——

AI 写的烂代码,现在可以让 Claude Code 自己来清理了。

这波操作 666。


四大核心原则

code-simplifier 遵循四大核心原则,确保优化质量:

1️⃣ 保留功能(Preserve Functionality)

永不改变代码功能 - 只改变实现方式。

  • 所有原始特性保持不变
  • 输出和行为完全一致
  • 测试用例必须全部通过

2️⃣ 应用项目标准(Apply Project Standards)

自动遵循项目的 CLAUDE.md 中定义的编码规范:

  • 使用 ES 模块,正确排序和扩展导入
  • 优先使用 function 关键字而非箭头函数
  • 为顶层函数使用显式返回类型注解
  • 遵循适当的 React 组件模式和显式 Props 类型
  • 使用正确的错误处理模式
  • 保持一致的命名约定

3️⃣ 增强清晰度(Enhance Clarity)

通过以下方式简化代码结构:

  • 减少不必要的复杂性和嵌套
  • 消除冗余代码和抽象
  • 通过清晰的变量和函数名提高可读性
  • 合并相关逻辑
  • 删除描述明显代码的不必要注释
  • 重要:避免嵌套三元运算符,对于多条件选择使用 switch 语句或 if/else 链
  • 选择清晰而非简洁,显式代码通常优于过度紧凑的代码

4️⃣ 保持平衡(Maintain Balance)

避免过度简化可能导致:

  • 降低代码清晰度或可维护性
  • 创建难以理解的过度巧妙解决方案
  • 将过多关注点组合到单个函数或组件中
  • 删除改善代码组织的有用抽象
  • 优先考虑"更少行数"而非可读性(如嵌套三元、密集的单行代码)
  • 使代码更难调试或扩展

三步安装,即插即用

安装过程简单到离谱,三条命令搞定:

方法一:通过插件市场安装(推荐)

1️⃣ 打开 Claude Code

确保你已经安装了 Claude Code 最新版本。

2️⃣ 更新插件市场

在 Claude Code 会话中输入:

/plugin marketplace update claude-plugins-official

这一步是同步官方插件库,确保你能看到最新发布的插件。

3️⃣ 安装 code-simplifier

接着输入:

/plugin install code-simplifier

搞定。

方法二:直接命令安装

claude plugin install code-simplifier

等待安装完成,你就拥有了一个专门帮你清理代码的 AI 助手。

验证安装成功:

/plugin list

看到 code-simplifier 在列表中,就说明安装成功了。


五种使用姿势

安装完成后,你可以用以下方式召唤它:

1️⃣ 直接 @mention

@code-simplifier 帮我优化这段代码

2️⃣ 指定文件范围

@code-simplifier 优化 src/utils/helpers.ts 这个文件

3️⃣ 自然语言指令

请使用 code-simplifier 帮我整理一下刚才修改的代码

4️⃣ 只检查不修改

请使用 code-simplifier 帮我检查一下 dayu.ts,不要做任何修改

5️⃣ 完整指令(推荐)

@agent-code-simplifier:code-simplifier 请在不改变任何功能的前提下,优化并简化代码,使其更清晰、更一致、更易维护。

默认情况下,它只会优化最近修改过的代码,避免误伤其他文件。


实测效果:真香警告

我拿了一个之前用 AI 生成的项目来测试。

优化前:

  • 一个 500+ 行的「上帝函数」
  • 变量命名全是 data result temp
  • 嵌套层级深到看不见底
  • 重复逻辑到处复制粘贴

优化后:

  • 拆分成 12 个职责单一的小函数
  • 变量名语义化,一眼看懂
  • 代码量反而减少了 30%
  • 统一了代码风格,符合团队规范

这才叫代码,之前那是什么?乱码吗?

真实案例:嵌套三元运算符优化

优化前(噩梦):

const status = user.active ?
  user.verified ? 'active-verified' : 'active-unverified' :
  user.suspended ? 'suspended' : 'inactive';

这种嵌套三元运算符,读起来想吐。

优化后(清晰):

function getUserStatus(user) {
  if (user.suspended) return 'suspended';
  if (!user.active) return 'inactive';
  return user.verified ? 'active-verified' : 'active-unverified';
}

const status = getUserStatus(user);

一目了然,这才是人写的代码!

code-simplifier 自动识别嵌套三元运算符,并将其重构为清晰的函数,符合"选择清晰而非简洁"的原则。


配置自定义规则:让插件听你的

code-simplifier 最强的地方在于——

它会读取你项目根目录的 CLAUDE.md 文件,遵循你的团队编码规范。

创建自定义规则

在项目根目录创建或编辑 CLAUDE.md:

# Coding Standards

## Import Convention
- Use ES modules with explicit extensions (.js, .ts)
- Sort imports: external packages first, then local modules

## Function Patterns
- Prefer `function` keyword for top-level functions
- Use arrow functions for callbacks and inline functions

## Type Annotations
- All exported functions must have return type annotations
- Prefer explicit types over `any`

## 命名规范
- 函数名使用 camelCase
- 组件 Props 必须显式声明类型
- 常量使用 UPPER_SNAKE_CASE

## 代码风格
- 优先使用 function 关键字,而非箭头函数
- import 语句必须包含文件扩展名
- 错误处理统一使用 try-catch

## 注释规范
- 删除所有注释,代码应该自解释
- 例外:复杂算法逻辑保留注释

## 其他
- 禁止使用 var 声明变量
- 优先使用 const,其次是 let

示例:强制使用箭头函数

如果你的团队偏好箭头函数:

## 函数声明
- 优先使用箭头函数:const foo = () => {}
- 避免使用 function 关键字

code-simplifier 会自动把所有 function foo() {} 改成 const foo = () => {}

这就像是给插件装了「团队 DNA」,优化出来的代码完全符合你们的风格。


典型使用场景

场景一:清理 AI 生成的原型代码

问题:

用 Claude Code 快速搭建 MVP,代码能跑但难以维护。

解决方案:

@code-simplifier 帮我重构 src/ 目录下的所有代码

场景二:统一团队代码风格

问题:

多人协作项目,代码风格五花八门,code review 痛苦。

解决方案:

CLAUDE.md 定义团队规范,然后:

@code-simplifier 统一整个项目的代码风格

场景三:优化遗留代码

问题:

接手别人的老项目,代码复杂到不敢动。

解决方案:

@code-simplifier 先检查一下 legacy/ 目录,列出可以优化的地方,不要修改

场景四:代码审查前的清理

问题:

提交 PR 前,想让自己的代码更专业。

解决方案:

@code-simplifier 优化我最近修改的文件

⚠️ 重要提醒:备份!备份!备份!

划重点了兄弟们!

在使用 code-simplifier 之前,一定要先备份代码!

虽然这个插件很智能,但毕竟是自动重构——

万一出点意外,没备份的话,你可能会哭晕在厕所。

推荐做法:

方法一:Git 提交

git add .
git commit -m "backup before simplify"

方法二:创建分支

git checkout -b backup-branch

方法三:直接复制文件夹

简单粗暴,但有效。

切记:宁可多备份一次,也别事后哭爹喊娘。


高级技巧:结合工作流

最佳实践流程

1️⃣ Plan 阶段:正常开发

@frontend-engineer 实现用户登录功能

2️⃣ Build 阶段:功能完成后,清理代码

@code-simplifier 优化刚才的代码

3️⃣ 人工审查:检查优化结果

git diff

4️⃣ 提交代码:确认无误后提交

git add .
git commit -m "feat: 实现用户登录功能"

工作流集成

你可以把 code-simplifier 集成到 CI/CD 流程:

# .github/workflows/code-quality.yml
- name: Code Simplification Check
  run: |
    claude plugin run code-simplifier --check-only

插件原理揭秘

code-simplifier 使用 Claude Opus 模型,专门训练用于代码优化。

完整工作流程(6 步)

1️⃣ 识别最近修改的代码段

  • 分析 git diff
  • 找出最近修改或触及的代码
  • 默认只处理最近修改的部分

2️⃣ 读取项目上下文

  • 扫描项目结构
  • 读取 CLAUDE.md 规范
  • 分析代码依赖关系

3️⃣ 分析改进机会

  • 使用 Opus 模型分析
  • 识别代码复杂度问题
  • 发现重复逻辑
  • 检测命名不规范

4️⃣ 应用项目最佳实践

  • 应用项目特定的最佳实践和编码标准
  • 生成优化方案
  • 拆分大函数
  • 优化变量命名
  • 删除冗余代码

5️⃣ 确保功能不变

  • 保持所有原始特性、输出和行为
  • 确保测试通过
  • 验证精炼后的代码更简单、更易维护

6️⃣ 应用修改并记录

  • 应用修改到代码文件
  • 仅记录影响理解的重要更改
  • 生成修改报告

Agent 定义

name: code-simplifier
description: Simplifies and refines code for clarity, consistency, and maintainability while preserving all functionality. Focuses on recently modified code unless instructed otherwise.
model: opus
tools: Read, Edit, Glob, Grep

Agent Prompt 核心逻辑

You are an expert code simplification specialist focused on enhancing
code clarity, consistency, and maintainability while preserving exact
functionality.

Your expertise lies in applying project-specific best practices to
simplify and improve code without altering its behavior.

You prioritize readable, explicit code over overly compact solutions.

它使用的是 Opus 模型,确保优化质量。


与 ESLint/Prettier 的区别

很多人会问:我有了 ESLint 和 Prettier,还需要 code-simplifier 吗?

答案是:需要!它们是互补的。

对比维度code-simplifierESLint/Prettier
代码格式化
语法检查
逻辑重构
理解上下文
保持功能N/A
自动化程度
AI 能力

关键区别

ESLint/Prettier:

  • 只做语法检查和格式化
  • 不理解代码逻辑
  • 无法重构复杂逻辑

code-simplifier:

  • 理解代码语义和上下文
  • 能重构嵌套三元运算符
  • 能拆分大函数
  • 能优化代码结构

最佳实践:三者配合使用

# 1. 先用 code-simplifier 重构逻辑
@code-simplifier 优化这段代码

# 2. 再用 ESLint 检查语法
npm run lint

# 3. 最后用 Prettier 格式化
npm run format

与手动重构的对比

对比维度code-simplifier手动重构
速度
一致性取决于开发者
学习成本
理解深度AI 辅助人类判断
复杂决策需要指导完全控制

code-simplifier 不是替代手动重构,而是加速重构过程。


插件 vs MCP Server:别搞混了

很多人会混淆 Claude Code PluginMCP Server:

对比维度Claude Code PluginMCP Server
运行环境Claude Code 内部独立进程
调用方式@mention 或自然语言需要配置 MCP 连接
权限范围只能访问当前项目可访问系统资源
典型用途代码优化、重构数据库连接、API 调用
开发难度简单(Markdown 配置)中等(需要编写代码)

code-simplifier 是 Plugin,不是 MCP Server。

它运行在 Claude Code 的 Agent 系统内,只能访问当前项目的代码。


开源地址

code-simplifier 是开源项目,你可以在 GitHub 查看源码:

github.com/anthropics/…

官方仓库由 Boris Cherny(Claude Code 创始人)维护。


支持的编程语言

code-simplifier 支持所有主流编程语言,特别擅长:

  • TypeScript/JavaScript - 最强支持
  • Python - 优秀的重构能力
  • Go - 理解 Go 特有模式
  • Rust - 支持所有权和生命周期优化
  • Java - 理解面向对象模式
  • C/C++ - 支持内存管理优化
  • Ruby - 理解 Ruby 惯用法
  • PHP - 支持现代 PHP 模式

无论你用哪种语言,code-simplifier 都能帮到你!


为什么这个插件很重要?

2025 年,Vibe Coding 火遍全球。

越来越多人开始用 AI 写代码——

  • 不会写代码的产品经理,用 Cursor 做出了 MVP
  • 设计师用 Claude Code 实现了自己的创意
  • 学生靠 AI 完成了毕业设计

但问题也来了:

AI 生成的代码,往往「能跑」但「难以维护」。

玩具还好,但如果你想长期迭代——

屎山迟早会反噬你。

现在有了 code-simplifier,等于给 AI 开发加了一道质量保险

用 AI 生成 ➜ 用 AI 简化 ➜ 人工微调 ➜ 完美交付

这才是完整的 AI 辅助开发闭环。


常见问题 FAQ

Q1: code-simplifier 会改变代码功能吗?

A: 不会。这是 code-simplifier 的核心原则 - 只改变实现方式,不改变功能。所有原始特性、输出和行为保持不变。

Q2: 它支持哪些编程语言?

A: code-simplifier 支持所有主流语言,特别擅长 TypeScript/JavaScript、Python、Go、Rust、Java。

Q3: 可以自定义优化规则吗?

A: 可以,通过项目根目录的 CLAUDE.md 文件定义团队的编码标准,code-simplifier 会自动遵循。

Q4: 它会删除注释吗?

A: 只删除描述明显代码的冗余注释。有价值的文档注释和复杂逻辑说明会被保留。

Q5: 如何撤销 code-simplifier 的更改?

A: 使用 git 回滚即可:

git checkout -- <file>

建议在运行前提交代码,方便对比和回滚。

Q6: 它能处理大型项目吗?

A: 可以。code-simplifier 默认只处理最近修改的代码,避免全项目扫描。你也可以指定特定文件或目录。

Q7: 需要联网吗?

A: 不需要。code-simplifier 运行在本地,不需要联网。它使用本地部署的 Opus 模型。

Q8: 会泄露我的代码吗?

A: 不会。所有代码处理都在本地完成,不会上传到任何服务器。


总结

AI 写的屎山,终究还是交给了 Claude Code。

这不是打脸,这是进化。

从「能用就行」到「用得优雅」——

AI 辅助编程,正在走向成熟。

code-simplifier 的核心价值:

🎯 对个人开发者

  1. 提升代码质量 - 自动清理冗余,优化结构
  2. 学习最佳实践 - 观察 AI 如何重构代码
  3. 节省重构时间 - 快速清理 AI 生成的原型代码

🏢 对团队

  1. 统一代码风格 - 遵循 CLAUDE.md 规范
  2. 降低 Code Review 成本 - 提交前自动优化
  3. 降低维护成本 - 让代码更易读、易维护

🚀 对项目

  1. 提高代码可维护性 - 减少技术债务
  2. 加速开发迭代 - 快速清理遗留代码
  3. 保障代码质量 - 自动化代码优化流程

安装只需 3 步,使用只需 1 句话。

配合 ESLint + Prettier,打造完美的代码质量工具链。

还在等什么?赶紧用起来!


欢迎关注公众号 FishTech Notes,一块交流使用心得!