Penthera, home Star49 Download
  • Open source
  • MIT
  • Offline

Penthera: your open-source cyber security agent

The security review you never had time for. Offline, rule-based, and you can verify every finding yourself.

Run it in your project folder, or paste the prompt into Claude Code, Cursor or Codex. No install, no account, Node 22 or later.

Or check one file in this tab first

12 seconds: setup, an offline scan, the dashboard, one fix approved.

Check your AI tooling in this tab

Drop or paste a package.json, .mcp.json, .claude/settings.json, CLAUDE.md or AGENTS.md, or the files that pin your runtime: a Dockerfile, compose.yaml, .php-version, .tool-versions or composer.json. Or paste your site's response headers. Penthera's own rules run in the page, bundled from the same code as the CLI: 35 pack rules (core@1.0.0, advisories@1.0.0, ioc-2025-2026@1.0.0), the agent-config and secret rules, and 7,765 popular npm names for the typosquat check.

Check Offline · rules from 1.8.0
Paste text instead
Paste response headers

Run this yourself, with your own site's address, and paste what it prints. Penthera reads X-Powered-By, Server and the PHPSESSID cookie name. This page never contacts your site.

Why a version number alone is not proof: the PHP case study

    Add a file to start. It stays in this tab: nothing is uploaded.

    Nothing leaves your browser

    The check runs in this tab and never sends what you paste. The page's Content-Security-Policy allows exactly two destinations: Vercel's cookieless page-view and load-time counters on penthera.org itself (/_vercel/insights/ and /_vercel/speed-insights/). They record that the page was visited and how fast it loaded, never your files. Open your browser's network tab, run a check and see. No cookies, no third-party scripts.

    What this check cannot do

    • Read your dependencies' code. It sees the install scripts package.json declares, not what is in node_modules.
    • Read your lockfile, so version ranges are not matched against known-malicious versions.
    • Scan a running app or a URL. For headers, you run curl and paste the output; the page never contacts your site.
    • Fix anything, or write a report.

    The full scan does all of that on your machine, offline too: npx penthera.

    Get it

    The guided start. Penthera detects your setup offline, asks what to check, and checks your code, dependencies and AI tooling. It scans your running app only after you confirm the app is yours. Nothing is committed or pushed.

    npx penthera deps
    What the packages in this project can do: shell, network, install scripts.
    npx penthera agents --home
    Audit your Claude Code, Cursor and MCP setup.
    npx penthera ui
    The local dashboard, on 127.0.0.1.

    Or ask your coding agent

    Claude Code

    Set up Penthera in this repo. Run `npx penthera init --dry-run` and show me what it would do. Then run `npx penthera agents` and `npx penthera deps`, and list the findings by severity, with the file for each. Do not change, commit or push anything without asking me.

    Cursor

    Set up Penthera in this repo. In the terminal, run `npx penthera init --dry-run` and summarize the plan. Then run `npx penthera agents` to check .cursor/ and the MCP config, and `npx penthera deps` for the dependencies. Ask me before you change any file.

    Codex

    Set up Penthera in this repo. Run `npx penthera init --dry-run`, then `npx penthera agents` and `npx penthera deps`. Report each finding with its severity, file and the fix Penthera suggests. Do not edit files or commit.

    Each of them can also load Penthera as an Agent Skill: npx skills add danoszz/penthera.

    Eighty seconds, start to fix

    Setup, a scan, the dashboard in Simple and Advanced mode, one fix approved, the report. Demo data, no sound, captions on.

    What it does not do

    It finds known classes of problems, not novel ones: misconfigured headers, leaked keys, risky dependency behavior, unsafe agent setups, common injection patterns. It does not find business-logic flaws, complex authorization bugs or zero-days, and it does not replace a human penetration test.

    Its accuracy is measured, on a small sample: precision 0.88 (95% CI 0.69 to 0.96) and recall 0.91 (95% CI 0.73 to 0.98), on 24 findings in labs we wrote ourselves. These numbers catch regressions; they do not measure real-world accuracy.

    How each check works, and what it cannot see: the methodology

    Evidence for EU rules

    Penthera turns what it finds into the paperwork EU cyber law asks for: drafts and evidence you can check, not a certificate.

    Penthera does not make you compliant and does not certify anything. It is not affiliated with or endorsed by the European Union; the stars mark the subject.

    Open R&D

    Penthera is a research project with a tool you can use today. Each check is measured in public, pre-registered experiments, and the results are published, good or bad. What holds up ships in the next release. What does not is dropped.

    Made byDaan van der Zwaag