用途:扫描项目中的死代码(未使用的局部变量、导入、参数、类型、导出符号、孤立文件),核验后批量删除。
主要流程(据技能说明):
- 并行扫描:优先运行
bunx tsc --noEmit --noUnusedLocals --noUnusedParameters获取未使用项及其 file:line;同时以 explore 代理查找未被任何文件导入的孤立文件与未被引用的导出符号(排除 index.ts、测试文件、入口点、.md、packages/)。 - 核验:对每个候选用 LspFindReferences(filePath, line, character, includeDeclaration=false);0 引用判定为死代码,1+ 引用则剔除。未使用参数不删除,重命名为 _paramName。
- 分批:按文件分组,同一文件归入同一批次以避免编辑冲突;整文件删除单独成批;目标 5-15 批。
- 执行:每批交由 deep 代理(category="deep-low",load_skills=["typescript-programmer","git-master"])并行处理,代理需重新 LSP 核验、应用编辑、运行
bun run typecheck;失败则git checkout -- [files]回滚并报告,成功则只暂存本批文件并git commit -m "refactor: remove dead code from [brief file list]"。禁止git add -A。 - 最终验证:
bun run typecheck、bun test、bun run build,输出删除项、跳过项与验证结果汇总。
范围控制:提供 $ARGUMENTS 可按文件路径、目录或符号名缩小扫描;all 或空为全项目扫描。中止条件:候选超过 50 个,或构建中断且无法通过回滚修复。
限制:依赖 TypeScript 与 bun、LSP 环境;预存在的其他文件测试失败视为正常,仅本批 typecheck 关键;其余平台支持、收费与效果资料暂未提供。