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 输出,可无缝集成到专业工作流中。

相关

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