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