SuperAPI AI 工具集

simplify

编程与开发

查看项目

更新于 10-15 14:31

技能介绍

Simplify 是一个代码审查与清理技能,核心目标是在代码发生变更后,检查所有改动文件在复用性、代码质量和执行效率三个维度上的问题,并直接修复发现的问题。

用途 该技能用于对已修改的代码进行系统性审查与清理。它不负责新增功能,而是聚焦于让改动后的代码更简洁、更一致、更高效。

主要能力 技能按三个阶段组织:

第一阶段:识别变更。运行 git diff(若存在已暂存改动则运行 git diff HEAD)查看改了什么。如果没有 git 变更,则审查用户提到的、或本次对话中此前编辑过的最近修改文件。

第二阶段:并行启动三个审查代理。使用 Task 工具在单条消息中并发启动全部三个代理,并把完整 diff 传给每个代理,使其拥有完整上下文。

代理一:代码复用审查。对每处改动,搜索可替代新写代码的现有工具与辅助函数,关注工具目录、共享模块以及与改动文件相邻的文件等常见位置;标记任何重复现有功能的新函数并建议改用现有函数;标记可用现有工具替代的内联逻辑,例如手写字符串处理、手动路径处理、自定义环境检查、临时类型守卫等常见模式。

代理二:代码质量审查。审查同样的改动是否存在取巧模式,包括:冗余状态(重复已有状态、本可派生却缓存的值、本可直接调用却使用观察者/副作用);参数膨胀(给函数不断加新参数而非泛化或重构现有参数);轻微变体的复制粘贴(近似重复的代码块应统一为共享抽象);抽象泄漏(暴露本应封装的内部细节,或破坏既有抽象边界);字符串硬编码(在代码库已有常量、枚举(字符串联合)或品牌类型时仍使用原始字符串);不必要的 JSX 嵌套(无布局价值的包装 Box/元素,检查内部组件属性如 flexShrink、alignItems 是否已提供所需行为)。

代理三:效率审查。审查同样的改动在效率上的问题,包括:不必要的工作(冗余计算、重复读文件、重复网络/API 调用、N+1 模式);错失并发(本可并行却顺序执行的独立操作);热路径负担(在启动或每请求/每渲染热路径上新增阻塞工作);重复的空操作更新(轮询循环、定时器或事件处理器中无条件触发的状态/存储更新,应加变更检测守卫,避免无变化时通知下游消费者;另外,若包装函数接收 updater/reducer 回调,需确认它尊重同引用返回(或相应的“无变化”信号),否则调用方的提前返回空操作会被静默破坏);不必要的存在性检查(操作前预先检查文件/资源是否存在,即 TOCTOU 反模式,应直接操作并处理错误);内存(无界数据结构、缺少清理、事件监听器泄漏);过宽操作(只需部分内容却读取整个文件,只筛选一项却加载全部条目)。

第三阶段:修复问题。等待三个代理全部完成,汇总它们的发现并逐项直接修复。如果某条发现是误报或不值得处理,记录下来并跳过,不与发现争辩。完成后简要总结修复了什么,或确认代码本就干净。

使用方式 该技能以 git diff 为入口,依赖 Task 工具并行调度三个审查代理,最终由主流程汇总并修复。使用前提是代码处于 git 版本控制之下,且存在可审查的变更或最近修改的文件。

适用场景 适用于提交前检查、重构后清理、代码评审准备等需要快速发现复用、质量与效率问题的场合。

限制 资料未提供该技能的具体安装命令、支持的平台、收费方式或价格信息。其审查范围限于 git 变更或最近修改的文件;对于误报或不值得处理的发现,技能选择跳过而非修正。