sast-configuration
wshobson/agents
Configure SAST tools like Semgrep, SonarQube, and CodeQL for automated vulnerability detection in CI/CD pipelines.
What is sast-configuration?
This skill guides setup and configuration of Static Application Security Testing (SAST) tools for automated code vulnerability scanning. Use it when implementing DevSecOps practices, creating custom security rules, configuring quality gates, or integrating security scanning into CI/CD pipelines.
- Configure Semgrep with custom pattern-matching rules across 30+ programming languages
- Set up SonarQube quality gates, security hotspot analysis, and technical debt tracking
- Integrate CodeQL for GitHub Advanced Security and custom vulnerability query development
- Establish CI/CD pipeline integration with GitHub Actions, GitLab CI, and Jenkins
- Implement false positive management, performance optimization, and compliance scanning (PCI-DSS, SOC 2)
- Create pre-commit hooks and incremental scanning strategies for large codebases
How to install sast-configuration
npx skills add https://github.com/wshobson/agents --skill sast-configuration- Basic understanding of CI/CD pipelines and version control
- Familiarity with your codebase's primary programming languages
- Access to CI/CD platform (GitHub Actions, GitLab CI, Jenkins, etc.)
- Docker installed (for SonarQube deployment option)
- Python or package manager for installing Semgrep CLI
How to use sast-configuration
- 1.Identify your codebase's primary programming languages and compliance requirements
- 2.Choose a SAST tool (Semgrep for custom rules, SonarQube for code quality, CodeQL for deep analysis)
- 3.Install the tool using provided commands (pip install semgrep, Docker for SonarQube, gh extension for CodeQL)
- 4.Run an initial baseline scan to establish current security posture
- 5.Configure tool-specific settings: Semgrep rules, SonarQube quality profiles, or CodeQL queries
- 6.Integrate into CI/CD pipeline using provided YAML examples for GitHub Actions or other platforms
- 7.Create custom rules or policies for organization-specific security patterns
- 8.Establish false positive management through allow lists and documented suppressions
Use cases
- Setting up security scanning in a new project with language-specific SAST rules
- Integrating multiple SAST tools into an existing CI/CD pipeline for defense-in-depth coverage
- Creating custom security rules to detect organization-specific vulnerability patterns
- Configuring compliance-focused scans for PCI-DSS or SOC 2 requirements
- Tuning SAST tool configurations to reduce false positives and improve developer adoption
- DevSecOps engineers implementing security automation
- Security architects designing code scanning strategies
- Development teams adopting shift-left security practices
- Compliance officers managing vulnerability detection requirements
- Security champions establishing organizational security standards
sast-configuration FAQ
Semgrep excels at custom rules and fast scans across 30+ languages; SonarQube combines security with code quality tracking; CodeQL is best for deep analysis and GitHub-native workflows. Start with Semgrep for quick adoption or SonarQube for comprehensive code quality integration.
Review and tune rule sensitivity, add path filters to exclude test files, use organization-specific rule exceptions, and document legitimate suppressions. Gradually expand rules rather than enabling all at once.
Yes—enable incremental scanning, parallelize scans across modules, optimize rule patterns, exclude generated code and test files, and cache results in CI/CD.
Use the provided CI/CD integration examples (GitHub Actions, GitLab CI, Jenkins). Most tools offer pre-built actions or plugins; configure with your tool's API token and desired rule sets.
Start with a baseline scan, prioritize critical findings, implement blocking only for critical issues initially, provide security training, and establish a security champions program for internal guidance.
Full instructions (SKILL.md)
Source of truth, from wshobson/agents.
name: sast-configuration description: Configure Static Application Security Testing (SAST) tools for automated vulnerability detection in application code. Use when setting up security scanning, implementing DevSecOps practices, or automating code vulnerability detection.
SAST Configuration
Static Application Security Testing (SAST) tool setup, configuration, and custom rule creation for comprehensive security scanning across multiple programming languages.
Overview
This skill provides comprehensive guidance for setting up and configuring SAST tools including Semgrep, SonarQube, and CodeQL. Use this skill when you need to:
- Set up SAST scanning in CI/CD pipelines
- Create custom security rules for your codebase
- Configure quality gates and compliance policies
- Optimize scan performance and reduce false positives
- Integrate multiple SAST tools for defense-in-depth
Core Capabilities
1. Semgrep Configuration
- Custom rule creation with pattern matching
- Language-specific security rules (Python, JavaScript, Go, Java, etc.)
- CI/CD integration (GitHub Actions, GitLab CI, Jenkins)
- False positive tuning and rule optimization
- Organizational policy enforcement
2. SonarQube Setup
- Quality gate configuration
- Security hotspot analysis
- Code coverage and technical debt tracking
- Custom quality profiles for languages
- Enterprise integration with LDAP/SAML
3. CodeQL Analysis
- GitHub Advanced Security integration
- Custom query development
- Vulnerability variant analysis
- Security research workflows
- SARIF result processing
Quick Start
Initial Assessment
- Identify primary programming languages in your codebase
- Determine compliance requirements (PCI-DSS, SOC 2, etc.)
- Choose SAST tool based on language support and integration needs
- Review baseline scan to understand current security posture
Basic Setup
# Semgrep quick start
pip install semgrep
semgrep --config=auto --error
# SonarQube with Docker
docker run -d --name sonarqube -p 9000:9000 sonarqube:10.8-community
# CodeQL CLI setup
gh extension install github/gh-codeql
codeql database create mydb --language=python
Integration Patterns
CI/CD Pipeline Integration
# GitHub Actions example
- name: Run Semgrep
uses: returntocorp/semgrep-action@v1
with:
config: >-
p/security-audit
p/owasp-top-ten
Pre-commit Hook
# .pre-commit-config.yaml
- repo: https://github.com/returntocorp/semgrep
rev: v1.45.0
hooks:
- id: semgrep
args: ['--config=auto', '--error']
Best Practices
-
Start with Baseline
- Run initial scan to establish security baseline
- Prioritize critical and high severity findings
- Create remediation roadmap
-
Incremental Adoption
- Begin with security-focused rules
- Gradually add code quality rules
- Implement blocking only for critical issues
-
False Positive Management
- Document legitimate suppressions
- Create allow lists for known safe patterns
- Regularly review suppressed findings
-
Performance Optimization
- Exclude test files and generated code
- Use incremental scanning for large codebases
- Cache scan results in CI/CD
-
Team Enablement
- Provide security training for developers
- Create internal documentation for common patterns
- Establish security champions program
Common Use Cases
New Project Setup
./scripts/run-sast.sh --setup --language python --tools semgrep,sonarqube
Custom Rule Development
# See references/semgrep-rules.md for detailed examples
rules:
- id: hardcoded-jwt-secret
pattern: jwt.encode($DATA, "...", ...)
message: JWT secret should not be hardcoded
severity: ERROR
Compliance Scanning
# PCI-DSS focused scan
semgrep --config p/pci-dss --json -o pci-scan-results.json
Troubleshooting
High False Positive Rate
- Review and tune rule sensitivity
- Add path filters to exclude test files
- Use nostmt metadata for noisy patterns
- Create organization-specific rule exceptions
Performance Issues
- Enable incremental scanning
- Parallelize scans across modules
- Optimize rule patterns for efficiency
- Cache dependencies and scan results
Integration Failures
- Verify API tokens and credentials
- Check network connectivity and proxy settings
- Review SARIF output format compatibility
- Validate CI/CD runner permissions
Related Skills
- STRIDE Analysis Patterns
- Threat Mitigation Mapping
Tool Comparison
| Tool | Best For | Language Support | Cost | Integration |
|---|---|---|---|---|
| Semgrep | Custom rules, fast scans | 30+ languages | Free/Enterprise | Excellent |
| SonarQube | Code quality + security | 25+ languages | Free/Commercial | Good |
| CodeQL | Deep analysis, research | 10+ languages | Free (OSS) | GitHub native |
Next Steps
- Complete initial SAST tool setup
- Run baseline security scan
- Create custom rules for organization-specific patterns
- Integrate into CI/CD pipeline
- Establish security gate policies
- Train development team on findings and remediation
Related skills
More from wshobson/agents and the wider catalog.

scan
Scan your codebase to auto-generate project-doc.md and AGENTS.md for agent-driven repos.

screen-reader-testing
Test web applications with screen readers (VoiceOver, NVDA, JAWS) to validate accessibility and assistive technology support.

secrets-management
Secure secrets management for CI/CD pipelines using Vault, AWS Secrets Manager, and platform-native solutions.

security-requirement-extraction
Transform threat models into actionable security requirements and test cases.

service-mesh-observability
Implement distributed tracing, metrics, and visualization for service mesh monitoring and debugging.

session-guard
Monitor session health and prevent context corruption through behavioral self-enforcement.