Agent Skills
返回列表
死代码定位助手

死代码定位助手

开发编程 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_c283aad7/gy4 技能。

技能介绍

你要解决的问题

仓库里总有一批没人敢删的代码:老工具函数、注释掉的分支、三年没被 import 的模块。直接 grep 一遍往往扫出几百个「未引用」结果,但真敢删的没几个——因为静态扫描看不见的路径太多了:动态注册的路由、反射调用、定时任务、配置文件里的开关,都可能让一段看似死掉的代码在运行时复活。

这个技能怎么工作

它不靠单一正则,而是把静态证据和动态入口分开验证,整个流程分四步:

  1. 静态引用扫描:用 rg、语言自带工具链或项目索引找出所有引用点,建立候选清单。
  2. 动态入口排查:检查路由表、CLI 入口、插件注册表、反射调用、配置文件以及定时任务,确认没有隐藏的触发路径。
  3. 置信度分级:把「确认无引用」和「疑似未使用」分成两档,低置信度的候选单独标记,不做删除建议。
  4. 带证据输出:每个候选都会给出所在文件与符号、判定为死代码的依据、动态加载的潜在风险,以及删除前的验证方式。

适用边界

它给出的是证据链,不是删除指令。跨仓库的符号引用、运行时生成的代码(如序列化框架自动绑定)、依赖注入容器隐式注册的类,都可能超出单次扫描的覆盖范围。最终删除动作仍需结合测试覆盖率与团队对运行行为的了解来决策。

使用场景

  • 准备清理老项目的冗余模块时,需要先排查哪些函数没有被静态引用,也没有路由、定时任务等动态入口触发
  • 重构前想移除废弃的工具函数,但不确定是否被反射或配置文件引用,需要生成带删除依据的候选清单
  • CI 流程里想做自动死代码检查,需要先按静态引用和动态入口分级输出候选结果,再交给团队验证
  • 接手陌生的大型项目时,想快速梳理可删除的历史代码,但不清楚动态注册路径,需要获得带风险说明的候选列表

适合人员

  • 负责维护大型单体仓库的后端工程师,需要安全清理无人引用的废弃模块,避免误删被动态触发的代码
  • 参与老项目重构的技术负责人,想在删除代码前获得明确的引用证据和动态入口排查结果
  • 搭建 CI 质量检查流程的开发工具工程师,需要自动输出死代码候选及验证建议,减少人工排查成本
  • 刚接手历史项目的全栈开发者,想快速识别可删除的冗余代码,但不熟悉项目的动态注册逻辑