Dicklesworthstone/ultimate_bug_scanner

Static analysis tool that catches 1000+ bug patterns across all popular programming languages, with auto-wiring into AI coding agent quality guardrails

解決的問題

Ultimate Bug Scanner (UBS) 解決了 AI 編碼代理(如 Claude Code、Cursor 和 Codex)引入細微但關鍵的錯誤——例如空指標崩潰、XSS 漏洞和遺漏的 await 呼叫——這些錯誤在生產環境中調試成本高昂且耗時。UBS 作為 AI 生成程式碼的品質守門員,在開發週期早期標記出可能的錯誤。

工作原理

UBS 是一個語言感知的元執行器,能自動偵測單一倉儲中的多種語言(包括 JavaScript/TypeScript、Python、C/C++、Rust、Go、Java、Ruby、Swift、C# 和 Elixir),並執行各語言的掃描器。這些掃描器會延遲下載,並透過 SHA-256 校驗和驗證,以確保供應鏈安全。

關鍵技術機制包括:

  • AST 分析:使用 ast-grep 和自訂 AST 遍歷器,深入分析資源生命週期(例如偵測 Go 中遺漏的 Close() 呼叫或 Python 中遺漏的 with 塊)。
  • 污點分析:追蹤資料流,識別 Java 和 Go 中的開放重導向和 SQL 注入等安全漏洞。
  • 統一報告:將多個掃描器的結果合併為單一報告,支援 JSON、SARIF 或專為 LLM 優化的「TOON」格式。
  • 整合:可透過機器可讀輸出和 JSON 模式,整合至 Git pre-commit 鈎子或 AI 代理循環中。

適用對象

希望自動化錯誤檢測與安全審計的 AI 編碼代理使用者。也適用於 CI/CD 流水線,透過基線對比與嚴格失敗設定防止回歸問題。

亮點

  • 多語言支援:對多種現代程式語言提供統一掃描能力。
  • 代理優化:提供 AI 代理可消費的機器可讀格式(JSON、TOON)與專用文件。
  • 供應鏈安全:透過固定校驗和及 Minisign/Cosign 支援,驗證下載模組的完整性。
  • 資源生命週期追蹤:採用專用啟發式方法,發現套接字、檔案和子行程的洩漏問題。
  • CI/CD 就緒:支援基線差異分析、HTML 報告和 SARIF 輸出,可無縫整合至專業工作流程中。

相關

  • 專案
  • 專案
  • 專案
  • 專案