SuperAPI AI 工具集

unused-code-audit

编程与开发

查看项目

更新于 10-15 20:31

技能介绍

用途 本技能回答一个具体问题:某个代码对象是否还有真实消费者,以及在零消费者时能否安全删除。它用于死代码清理、未使用代码检测、未使用导出审计、删除安全检查和消费者搜索,不负责判断“代码仍被使用但是否有必要”。

主要原则 自动化结果只作为候选线索,不作为证明;只有在用法、入口、副作用和公共 API 风险都被排除后才删除。优先做小而有证据的删除。不要仅因导出名或类型没有直接 import 就收缩公共 API,生成声明和推断类型仍可能依赖它。审计需覆盖作用域内所有文件、导出、本地 helper 和 re-export 路径,不能发现第一个未使用符号就停止。

边界 适合判断文件、导出、类型、常量、组件、hook、helper 是否无人 import 或引用;判断 re-export、barrel export、type-only import、动态字符串 key、框架入口和副作用是否构成真实消费;删除零消费者代码后清理直接 export、孤立 import/type 和残留路径。若代码有调用方但疑似不必要,或涉及公共 API 收缩、防御分支、页面状态与查询权限,应改用 necessary-code-audit 或 page-flow-cleanup-audit。

使用方式 基线先检查工作区状态:git status --short --untracked-files=all;查看变更:git diff --name-status -- <scope>、git diff --cached --name-status -- <scope>;用 rg --files <scope> 构建文件清单。搜索时用 rg 查精确符号名、file stem、import path、别名和大小写变体,覆盖定义位置与所有可能消费者根目录。删除标准需全部满足:结构检查与文本搜索均无真实消费者,候选非框架入口、副作用模块或公共 API 必需项,且在请求作用域内允许删除。验证时对每个删除名称做残留 rg,运行最窄相关 typecheck,公共 API 变更时先验证定义模块再验证下游消费者,并运行 git diff --check -- <scope>。报告分已删除、已移交、已保留、已验证四类。

限制 技能不迁移有消费者的调用方,除非迁移只是清理同一文件内新孤立的直接引用。注释不因未使用而删除或重写,除非相关代码被删除或注释已过期。具体收费、价格与平台信息暂未提供。