ESLint 规则影响透视
将以下提示词粘贴到你的 AI 对话框中:
请根据官方安装指南 https://skillhub.cn/install/skillhub.md,在 AI 助手中安装技能 @user_3c6cb52e/eslint-rule-impact-analyzer-2。
技能介绍
先解决「规则上线没数据」的问题
团队要引入新的 ESLint 规则时,常会遇到几个具体问题:
- 这条规则到底会影响哪些文件?
- 有多少违规能被
--fix自动处理,剩下多少需要手动改? - 如果多条规则都要启用,先上哪个后上哪个?
直接跑一遍 eslint . 虽然能看到报错数量,但没法区分「auto-fix 可覆盖」和「必须手动处理」的部分,也看不出哪些文件是违规重灾区。盲目启用规则轻则打断 CI,重则让开发同学花半天时间修 lint。
技能如何工作
这个技能基于 ESLint 的 Node.js API 和 @typescript-eslint/parser,把「规则影响分析」变成可量化的步骤:
- 违规热力图:按文件统计规则触发的违规数,快速定位影响范围最大的文件;
- auto-fix 覆盖率估算:测试规则的自动修复能力,输出可自动处理的违规比例;
- 修复努力优先级:综合违规规模和手动修复成本,给规则排个上线顺序。
使用前需要准备符合要求的运行环境:Node.js 版本必须是 ^20.19.0、^22.13.0 或 >=24,且编译时启用了 SSL 支持;如果项目使用 ESLint 的 TypeScript 类型定义,TypeScript 版本不能低于 5.3。
适用边界与注意点
- 分析结果依赖项目实际的 ESLint 配置,规则冲突或自定义插件可能影响统计准确性;
- auto-fix 覆盖率只是估算,某些复杂语法场景下自动修复可能失效,需要人工复核;
- 适合在规则上线前做影响评估,不适合替代常规的 lint 检查流程。
使用场景
- 团队计划升级 ESLint 规则集,需要评估新规则对整个代码库的影响范围,判断哪些文件违规最多,避免盲目启用规则导致 CI 失败。
- 在 Code Review 时,需要直观看到某条规则触发的违规集中在哪些文件,帮助 Reviewer 快速定位需要重点修改的代码模块。
- 项目要引入更严格的代码规范,需要先估算有多少违规能通过自动修复解决,有多少需要手动修改,从而制定分阶段的迁移计划。
- TypeScript 项目迁移到新 lint 配置时,需要分析规则的违规热力图和修复成本,确定规则的上线顺序,减少对开发流程的干扰。
适合人员
- 负责维护 ESLint 配置的前端工程师,需要在规则升级前了解影响范围,评估迁移工作量并制定分阶段计划。
- 技术负责人或架构师,需要在推行新代码规范前获得数据支持,用违规数量和修复成本来决定规则的上线优先级。
- 负责 CI 流程的开发者,需要在合并代码前预估新规则引入的报错数量,避免测试流水线因 lint 问题被阻塞。
- 正在迁移 TypeScript 项目的后端开发者,需要分析新规则对现有代码的影响,规划自动修复和手动修复的工作量分配。