modem-dev/slop-scan

Detect AI code slop patterns in your repo

解决的问题

识别 JavaScript 和 TypeScript 仓库中常见的「低判断力」、「可疑」或「样板化」的模式(即“slop”),这些模式通常出现在未经审查的 AI 生成代码中。帮助开发者区分成熟、经过人工审查的开源软件与感觉像“氛围编码”或过度依赖生成样板的代码库。

工作原理

该工具使用确定性 CLI 扫描仓库,查找特定启发式规则(即规则),以标记常见的 AI 相关模式。它提供原始分数和归一化分数(按文件数、逻辑 KLOC 和函数数),以便在不同大小的仓库之间进行公平比较。同时支持 delta 模式,用于追踪这些模式随时间或在不同分支之间是增加还是减少。

适用人群

  • 审计第三方仓库质量的开发者。
  • 希望在自身代码库中发现低判断力样板的团队。
  • 比较 AI 生成仓库与成熟开源基准的研究人员。
  • 迭代优化用于检测生成代码的确定性启发式规则的用户。

主要亮点

  • 确定性扫描:使用经过验证的规则集,查找空的 catch 块、隐藏错误的 catch 块、重复的函数签名等模式。
  • 归一化指标:通过比率(例如,Score/KLOC)比较仓库,确保公平基准测试。
  • 可扩展性:支持第三方规则插件和通过 slop-scan.config.json 进行自定义配置。
  • CI/CD 集成:提供 --lint 模式以生成人类可读日志,以及 --json 模式以输出机器可读数据,可根据新发现失败构建。
  • 固定基准:包含一组基准测试,将 AI 生成仓库与在 2025 年前的提交中固定的成熟开源仓库进行比较,以建立基线。

相关

  • 项目
  • 项目
  • 项目
  • 项目