Semgrep Code is the commercial Static Application Security Testing (SAST) engine in the Semgrep AppSec Platform. Coverage extends across 30-plus programming languages including JavaScript, TypeScript, Python, Java, Go, Rust, Ruby, PHP, Kotlin, Scala, Swift, C, C++, Apex, and infrastructure-as-code formats (Terraform, Kubernetes manifests, Helm). The same engine handles modern microservices and the legacy stacks enterprise programs still maintain.
Cross-file and cross-function dataflow analysis are the engine differentiators. Single-file SAST scanners flag syntactic matches. Semgrep traces tainted data through the application across function and file boundaries to find where untrusted input reaches a sink. Cross-file analysis produces 50-70% more true positives than single-file analysis with low false-positive rates per Semgrep's published benchmarks. Recent platform improvements have increased detected true positives by 250% and reduced false positives by 25% via cross-file capabilities.
YAML custom rule authoring is the practical reason developers adopt Semgrep faster than competing SAST tools. Rules are written in YAML and look like source code, so AppSec architects encode the customer's internal coding standards directly into the scanner without learning a domain-specific language or working with abstract syntax trees. Custom rules deploy alongside the 20,000-plus Pro Rules from Semgrep's security research team. AI-powered detection in private beta extends the platform into business-logic vulnerabilities like IDORs (Insecure Direct Object References) and broken authorization patterns.
Default rules and Pro Rules produce signal but not customer-specific signal. Programs that adopt Semgrep without authoring custom rules use it as a noisier substitute for other SAST tools rather than the better one. Merito's standard rollout begins with Pro Rules calibration against the customer's risk tolerance, custom rule authoring for internal coding standards, AI Assistant Memories configuration, and PR-time integration so developers see findings in the workflow they already use.
Ideal use cases
- Developer-first SAST across heterogeneous codebases
- Custom rule authoring for internal coding standards through YAML rule definitions
- PR-time SAST gates in GitHub, GitLab, Azure DevOps, and Bitbucket
- Cross-file dataflow analysis on programs that need low false-positive math
- AI Assistant noise filtering against the customer's organization-specific Memories