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 年前的提交中固定的成熟開源倉庫進行比較,以建立基線。
相關
- 專案
- 專案
- 專案
- 專案