semgrep

Run parallel Semgrep static analysis scans and merge findings into SARIF reports.

Updated Apr 5, 2026
One-click install
npx skills add https://github.com/marumo333/atrox --skill semgrep-marumo333
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: semgrep
Source: https://github.com/marumo333/atrox/tree/main/.claude/skills/trailofbits/plugins/static-analysis/skills/semgrep
Command: npx skills add https://github.com/marumo333/atrox --skill semgrep-marumo333

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve? Running comprehensive Semgrep security scans across multi-language codebases requires manual ruleset selection, sequential execution, and fragmented result handling, which slows down security audits and misses cross-file vulnerabilities. ## Core Features & Use Cases - Parallel Multi-Language Scanning: Detects languages automatically and spawns concurrent scanner subagents per language category, merging all output into a single SARIF report. - Two Scan Modes: Choose "run all" for full ruleset coverage or "important only" for high-confidence security vulnerabilities filtered by severity, confidence, and impact metadata. - Semgrep Pro Detection: Automatically checks for Semgrep Pro to enable cross-file taint analysis, and includes third-party rulesets (Trail of Bits, 0xdea, Decurity) that catch vulnerabilities absent from the official registry. - Use Case: Before a code review of a Python/React application, run a full security audit that scans with Django and React rulesets plus Trail of Bits rules, then receive a merged SARIF file with findings broken down by severity and category. ## Quick Start Ask the AI to scan your codebase for security vulnerabilities with Semgrep and approve the proposed scan plan when prompted.

Frequently Asked Questions about semgrep

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I run a Semgrep security scan on a multi-language codebase?▼

Invoke the skill with a target directory; it detects languages via file patterns, selects matching rulesets, and spawns parallel scanner subagents per language. Results are merged into a single SARIF report in the output directory.

What is the difference between run-all and important-only Semgrep scan modes?▼

Run-all reports every finding from all rulesets and severity levels. Important-only pre-filters with --severity MEDIUM/HIGH/CRITICAL and post-filters JSON metadata to keep only security-category findings with medium-high confidence and impact.

Does Semgrep support cross-file taint analysis?▼

Cross-file taint tracking requires Semgrep Pro, which the skill detects automatically with a validation command. OSS mode only analyzes single files, so the skill checks Pro availability before scanning and uses it when present.

Why does the skill require user approval before scanning?▼

Step 3 is a hard gate requiring explicit approval of the exact rulesets, target, engine, and mode. The original scan request does not count as approval, preventing scans against wrong directories or unintended rulesets.

When should I not use Semgrep for static analysis?▼

Avoid it for binary analysis, when Semgrep CI is already configured, or when you need cross-file analysis without a Pro license (consider CodeQL instead). For writing custom rules, use a rule-creation skill instead.

How are Semgrep scan results merged into one report?▼

A Python script merges per-scan SARIF files from the raw output directory, preferring the Microsoft SARIF Multitool via npx and falling back to a pure Python implementation that deduplicates findings by rule ID, URI, and line number.