# 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.
**[penthera.org](https://penthera.org)**: check your live site in a few seconds. Passive, nothing stored.
**132** readable rules · **6** read-only MCP tools · **1** runtime dependency · **0** requests past loopback in the benchmark · **MIT**, no telemetry
[](https://www.npmjs.com/package/penthera)
[](https://www.npmjs.com/package/penthera)
[](https://github.com/danoszz/penthera/stargazers)


[](https://github.com/danoszz/penthera/actions/workflows/ci.yml)
[](https://scorecard.dev/viewer/?uri=github.com/danoszz/penthera)
| `penthera ui`, Simple, dark | `penthera ui`, Advanced, light |
|---|---|
|  |  |
---
## What it is
Penthera checks your app, its dependencies and your AI coding tools on your own
machine. It fixes what it can, with your approval. Every finding comes from a
rule you can read, with its evidence at `file:line`. A model may propose; a rule
decides.
It is also an open R&D project. We measure every check in public and publish
the results, good or bad, so you can see how far to trust it.
It finds known classes of problems, not novel ones. It does not replace a human
pentester.
## Public benchmarks
We test Penthera on public datasets that other people built, next to the free
open-source tools that do the same job, scored the same way. Each dataset was
split in half before we looked: we improved Penthera on one half and scored it
once on the other, sealed half. The rules for scoring and ranking were written
down before that run ([protocol](docs/research/prereg/E11b-improvement-study.md)).
| Benchmark | Score | Penthera 1.9.0 | **Penthera 2.0.0** | Rank among free tools | Best other free tool |
|---|---|---|---|---|---|
| Leaked secrets (Samsung CredData) | F1 | 0.18 | **0.74** | **2nd of 10** | deepsecrets 0.78 |
| Malicious npm packages (DataDog) | caught minus false alarms | 0.57 | **0.71** | **1st of 6** | malcontent 0.63 |
| Malicious PyPI packages (DataDog) | caught minus false alarms | 0.74 | **0.82** | **1st of 8** | GuardDog 0.74 |
| Injection bugs in JS libraries (SecBench.js) | found in the right file | 0.16 | **0.70** | **1st of 8**, within the margin | odgen 0.68 |