Find bugs and reachable dependency vulnerabilities in code. Enforce your code standards on every commit.
Scan with Semgrep AppSec Platform
Deploy static application security testing (SAST), software composition analysis (SCA), and secrets scans from one platform.
Get started
Run your first Semgrep scan.
Deploy Semgrep
Deploy Semgrep to your organization quickly and at scale.
Triage and remediate
Triage and remediate findings; fine-tune guardrails for developers.
Write rules
Create custom rules to enforce your organization's coding standards.
Supported languages
Product | Languages |
---|---|
Semgrep Code | Generally available (GA) C and C++ • C# • Generic • Go • Java • JavaScript • JSON • Kotlin • Python • TypeScript • Ruby • Rust • JSX • PHP • Scala • Swift • Terraform Beta APEX • Elixir Experimental Bash • Cairo • Circom • Clojure • Dart • Dockerfile • Hack • HTML • Jsonnet • Julia • Lisp • Lua • Move on Aptos • Move on Sui • OCaml• R • Scheme • Solidity • YAML • XML |
Semgrep Supply Chain | Generally available reachability C# • Go • Java • JavaScript and TypeScript • Kotlin • PHP • Python • Ruby • Scala • Swift Languages without support for reachability analysis Dart • Elixir • Rust |
Semgrep Secrets | Language-agnostic; can detect 630+ types of credentials or keys. |
See the Supported languages documentation for more details.
June 2025 release notes summary
- You can now customize PR and MR comments to provide additional context to the comments generated by Semgrep.
- The Finding details page has been redesigned and unified across all Semgrep products.
- Support for PHP reachability is now in public beta, which means that Semgrep offers 98% coverage for Critical severity issues, plus some coverage for High severity issues.
- C#:
- Dependency Paths for C# projects using NuGet are now in public beta.
- Semgrep can scan NuGet codebases without the need for a lockfile. This feature is in public beta.
- Memories can now be scoped to a rule's vulnerability class, which are the same groupings that exist on the policies page.
- You can now create memories for generic secrets, allowing you to create and apply custom rules for secret detection through Assistant.
Not finding what you need in this doc? Ask questions in our Community Slack group, or see Support for other ways to get help.