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 輸出,可無縫整合至專業工作流程中。
相關
- 專案
- 專案
- 專案
- 專案