arm/metis
Metis is an open-source, AI-driven tool for deep security code review
What it solves
Metis is designed to reduce review fatigue and detect subtle security vulnerabilities in large, complex, or legacy codebases. It addresses the limitations of traditional static analysis tools (SAST) and linters, which often rely on hardcoded rules and struggle with semantic understanding of code.
How it works
Metis uses an agentic AI framework powered by Large Language Models (LLMs) to perform deep reasoning over source code. It employs a plugin-based system for language support and leverages Tree-sitter for code splitting and analysis. For C and C++, it utilizes a CodeGraph for reachability analysis. The system can index codebases into vector stores (supporting ChromaDB, PostgreSQL with pgvector, and Qdrant) to enable retrieval-augmented analysis. It also includes a triage flow to validate findings and reduce false positives, which can be applied to its own results or those from third-party SAST tools.
Who it’s for
It is primarily intended for security engineers and software developers who need to perform deep security code reviews and improve secure coding practices across a wide variety of programming languages.
Highlights
- Deep Reasoning: Uses LLMs for semantic understanding rather than hardcoded rules.
- Extensible Architecture: Plugin-friendly design for adding new languages, models, and prompts.
- Broad Language Support: Supports a vast array of languages including C, C++, Java, Python, Rust, Go, and even AArch64 Assembly.
- Provider Flexibility: Compatible with major LLM providers (OpenAI, Anthropic, Gemini, AWS Bedrock) and local models (vLLM, Ollama, llama.cpp).
- Deterministic Evidence: Focuses on source-local analysis and deterministic evidence collection to ensure findings are grounded in the code.
- Integrated Triage: Validates findings to reduce false positives and and can process SARIF files from other tools.
Related
- Project
- Project
- Project
- Project
- Project