Named after Argus Panoptes — the hundred-eyed giant who never slept and saw everything.
Static scanners tell you what looks wrong. Argus proves it: it reads your code, then spins your app up and actually attacks it — dumping data via SQLi, forging admin JWTs, reaching cloud metadata via SSRF — and explains every finding in plain English, tailored to your codebase.
pip install argus-panoptesCOPYargus demo scans and attacks a bundled, intentionally-vulnerable app so you can watch the full flow immediately.
◈ ARGUS — STATIC SCAN Risk Score 98/100 [CRITICAL] ■ HIGH SQL injection · command injection · unsafe yaml.load ◈ ARGUS — ATTACK AGENT [INJECTOR:SQLI-ERROR] ✓ SQL injection (error-based) [AUTHBREAKER:JWT-WEAK-SECRET] ✓ JWT signed with a weak secret [XSSHUNTER:REFLECTED] ✓ Reflected XSS [SSRFPROBER:CALLBACK] ✓ Server-Side Request Forgery (blind) [IDORHUNTER] ✓ Insecure Direct Object Reference [FILEATTACKER:TRAVERSAL] ✓ Path traversal (arbitrary file read) every finding above ships with a runnable proof-of-concept, not a guess.
Built-in rules, dependency CVEs, secret detection (regex + entropy + git history), behavioral supply-chain analysis, then an LLM layer that validates and explains every finding for your code.
A swarm of 19 specialised agents attacks the running app — with an out-of-band callback server to confirm blind vulnerabilities, and a runnable proof-of-concept behind every confirmed finding.
Hover an eye. Each one hunts a different class of vulnerability, orchestrated as a single swarm against the running app.
argus benchmark runs the full attack swarm against known-vulnerable apps — OWASP Juice Shop, DVWA, VAmPI — and reports a real detection rate against a hand-curated ground truth. Published on every release. Not smoothed over.
Every gap here is a known, documented one — Juice Shop is an Angular SPA racing a bootstrap timer, DVWA needs a per-session difficulty unlock, VAmPI's OpenAPI auto-discovery alone moved it from 0% to 20%. Full run-by-run history in ROADMAP.md.
pip install argus-panoptes — scan, attack, fix, and export SARIF/PDF/Jira from one binary.
A GitHub Action, --fail-on severity gating, and per-rule policy files for PR checks that actually block.
argus mcp-server exposes scan/attack/fix as MCP tools for Claude Code, Cursor, and Copilot.
A real native shell (Tauri) driving the same Python engine — live attack feed, reports, and settings, no demo data.
Catch a hardcoded secret or an injectable query before it ever reaches a PR.
Run fully offline against a local Ollama model, or bring your own Groq/Gemini/Claude/OpenRouter key.
Read the full docs — install flags, CI setup, MCP, pre-commit →
| Static | Active attack | LLM reasoning | Free | Local model | Open source | |
|---|---|---|---|---|---|---|
| Snyk | ✓ | ✗ | ✗ | Partial | ✗ | ✗ |
| SonarQube | ✓ | ✗ | ✗ | Partial | ✗ | Partial |
| Semgrep | ✓ | ✗ | ✗ | ✓ | ✗ | ✓ |
| Burp Suite | ✗ | ✓ | ✗ | Partial | ✗ | ✗ |
| OWASP ZAP | ✗ | ✓ | ✗ | ✓ | ✗ | ✓ |
| Argus | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
Grab the CLI from PyPI, or the desktop app's native installer for your platform.
pip install argus-panoptesCOPYYes — MIT licensed, no account, no paywall, no usage limits. Run it fully offline against a local model if you don't want to touch a cloud provider at all.
Only if you configure a cloud LLM provider (Groq, Gemini, Claude, OpenRouter) — and even then, only the specific finding context sent for reasoning, never your whole repo. Local-model mode (Ollama) never leaves your machine.
Argus only attacks the exact origin you authorize — off-origin links, redirects, and API specs on a target page can't pull it out of scope. Read the security & responsible use policy before pointing it at anything you don't own.
GitHub Issues — PRs welcome too.