Skip to main content

Unified CI/CD Security Dashboard — Pipeline Sentinel

Project description

🛡️ Pipeline Sentinel

Unified CI/CD Security Observability — AI‑Enhanced & Offline‑Ready

Aggregate findings from Trivy, Semgrep, Poutine, Zizmor and more into a single, beautiful dashboard. Correlate risks with an LLM‑powered analysis engine, track security trends over time, and enforce guardrails – all in one CLI + web UI.

GitHub stars License Docker Pulls PyPI version GitHub release CI


🚀 Quick Start

# Install from PyPI
pip install devsecops-radar

# Or install directly from GitHub
pip install git+[https://github.com/Mehrdoost/devsecops-radar.git](https://github.com/Mehrdoost/devsecops-radar.git)

# Run the web dashboard
devsecops-radar-web

🐳 Docker: docker pull ghcr.io/mehrdoost/devsecops-radar:latest (see instructions below)


✨ Key Features

Capability Description
🔌 Multi‑Scanner Integration Natively parses Trivy, Semgrep, Poutine, Zizmor. More via pluggable architecture.
🧠 LLM‑Powered Analysis Optional AI correlation, false‑positive reduction, attack‑path identification (Ollama‑backed, offline capable).
📈 Scan History & Trends SQLite‑powered historical storage. Visual trend chart shows risk evolution over time.
🤖 GitHub Action One‑step integration into your CI/CD. Summarises findings and optionally comments on PRs.
🎨 Beautiful Dark Dashboard Severity doughnut, trend line chart, search & filters – works fully offline (all assets bundled).
🐳 Docker Native Official image on GitHub Container Registry. Just one docker run away.

🔧 Supported Scanners

Scanner What it scans Status
Trivy Container images & dependencies
Semgrep SAST (Static Code Analysis)
Poutine GitLab CI/CD configuration security
Zizmor GitHub Actions workflow security
Snyk, ZAP, Dependency-Track Roadmap 🔲

Adding a new scanner is easy – extend BaseScanner and plug it in.


📸 Dashboard Preview

DevSecOps Radar Dashboard


🤖 GitHub Action

Add security analysis to your workflow with a single step:

- name: Pipeline Sentinel
  uses: Mehrdoost/devsecops-radar/action@main
  with:
    trivy_report: trivy-results.json
    semgrep_report: semgrep-results.json
    poutine_report: poutine-results.json
    zizmor_report: zizmor-results.json

The action merges findings, creates a job summary, and outputs CRITICAL/HIGH counts.


📊 Scan History & Trends

Every run automatically stores findings in a local scan_history.db. The dashboard renders a Trend Over Time chart so teams can monitor whether security posture is improving.

# Multiple scans build history
devsecops-radar --trivy sample_trivy.json --semgrep sample_semgrep.json
devsecops-radar --trivy sample_trivy.json --semgrep sample_semgrep.json --poutine sample_poutine.json

# Now view the trend in the dashboard
devsecops-radar-web

🧠 AI‑Powered Analysis (Optional)

Enable LLM analysis with --analyze (requires Ollama running locally):

ollama pull llama3.2:latest          # one-time setup
devsecops-radar --trivy sample_trivy.json --semgrep sample_semgrep.json --zizmor sample_zizmor.json --analyze

Generates findings_ai_summary.md with executive summary, attack paths, and remediation tips.


🛠️ Usage

From Source (Python)

pip install -e .
devsecops-radar --trivy trivy.json --semgrep semgrep.json
devsecops-radar-web

Docker

docker pull ghcr.io/mehrdoost/devsecops-radar:latest
docker run -p 8080:8080 -v $(pwd)/findings.json:/data/findings.json ghcr.io/mehrdoost/devsecops-radar:latest

Using Sample Data

devsecops-radar --trivy sample_trivy.json --semgrep sample_semgrep.json --poutine sample_poutine.json --zizmor sample_zizmor.json

🗺️ Roadmap

  • Multi‑scanner engine (Trivy, Semgrep, Poutine, Zizmor)
  • AI correlation & analysis
  • Scan history & trend visualisation
  • GitHub Action (composite)
  • Docker image (GitHub Container Registry)
  • Security guardrail policies (policy.yml)
  • AI remediation advisor (detailed fix guidance)
  • Findings diff/compare between branches
  • Jira / Slack integration

🤝 Contributing

Pull requests and issues are warmly welcome! If you’d like to integrate a new scanner, open an issue with a sample of its JSON output.


👨‍💻 Author

Mehrdoost

GitHub


📜 License

MIT – see LICENSE file.

If this project helps your team ship more secure software, please drop a star!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

devsecops_radar-0.1.0.tar.gz (11.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

devsecops_radar-0.1.0-py3-none-any.whl (12.8 kB view details)

Uploaded Python 3

File details

Details for the file devsecops_radar-0.1.0.tar.gz.

File metadata

  • Download URL: devsecops_radar-0.1.0.tar.gz
  • Upload date:
  • Size: 11.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for devsecops_radar-0.1.0.tar.gz
Algorithm Hash digest
SHA256 8032971eaf6b8fcf53835b5dbe7d0e5da525c2e26a539a2e028c04eb978828b0
MD5 98c31224c429699b7b7b39f1c50b8621
BLAKE2b-256 fbd729f105df02ad0881d8293b2dadce1b656257de744e2fe7150838a214dcac

See more details on using hashes here.

File details

Details for the file devsecops_radar-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for devsecops_radar-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7e26fc5db32d457fe82bc08cb1a1440928cf465b5307bae40ecc28fdd27d7065
MD5 10c888f9f95306abb5bfa71d4da898d4
BLAKE2b-256 f1ce7519284d8bf305bce9ac3662ac5f88bef6884980e3273f0daa331b92648f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page