Scan SaaS sources for leaked secrets. Backend-agnostic (trufflehog, gitleaks, native regex), source-agnostic (filesystem, plus every connector saas-scraper provides).
Project description
pleno-secret-scanner (Python)
Python CLI that scans SaaS content for leaked secrets, backed by saas-scraper for source collection and a pluggable detection backend (trufflehog, gitleaks, or a tiny built-in regex set).
The Go binary in this repo (cmd/pleno-secret-scanner) remains for
filesystem-only scans; the Python package is the path forward for any
SaaS source.
Install
uv tool install pleno-secret-scanner
# or
pipx install pleno-secret-scanner
playwright install chromium
Usage
# Scan a Slack workspace using the trufflehog backend (requires trufflehog on PATH)
pleno-secret-scanner scan slack --workspace acme --backend trufflehog
# Scan a GitHub repo with the built-in native backend (no system deps)
pleno-secret-scanner scan github --owner plenoai --repo saas-scraper
# Output formats
pleno-secret-scanner scan slack --workspace acme --format sarif > findings.sarif
Backends
| Backend | Verifies | System dep |
|---|---|---|
| trufflehog | yes (per-detector) | trufflehog CLI on PATH |
| gitleaks | no | gitleaks CLI on PATH |
| native | no | none — bundled regex set (AWS, GitHub PAT, Slack bot, OpenAI, Anthropic) |
Connectors
Anything saas-scraper provides: filesystem, slack, github, gitlab,
bitbucket, jira, confluence, notion. New connectors land in saas-scraper
and become immediately available here.
Release
Tag py-vX.Y.Z triggers PyPI trusted publishing via GitHub Actions.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pleno_secret_scanner-0.2.0.tar.gz.
File metadata
- Download URL: pleno_secret_scanner-0.2.0.tar.gz
- Upload date:
- Size: 9.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8a70d3433f53ba60d8ee2a27df4d54ad6d404e0924c7c243d72025ffbbf591f9
|
|
| MD5 |
4fd209a40ea363f8624c2348d9e530d7
|
|
| BLAKE2b-256 |
f7d37b5ac74c389cff639d83eaf88387bc3635acbe8112266bd74ff351c4c053
|
Provenance
The following attestation bundles were made for pleno_secret_scanner-0.2.0.tar.gz:
Publisher:
release-py.yml on plenoai/pleno-secret-scanner
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pleno_secret_scanner-0.2.0.tar.gz -
Subject digest:
8a70d3433f53ba60d8ee2a27df4d54ad6d404e0924c7c243d72025ffbbf591f9 - Sigstore transparency entry: 1449652751
- Sigstore integration time:
-
Permalink:
plenoai/pleno-secret-scanner@0fc3358d3d0b70c44931f7143f70a58d1e243e3c -
Branch / Tag:
refs/tags/py-v0.2.0 - Owner: https://github.com/plenoai
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release-py.yml@0fc3358d3d0b70c44931f7143f70a58d1e243e3c -
Trigger Event:
push
-
Statement type:
File details
Details for the file pleno_secret_scanner-0.2.0-py3-none-any.whl.
File metadata
- Download URL: pleno_secret_scanner-0.2.0-py3-none-any.whl
- Upload date:
- Size: 15.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4e2a35730004d7fda507004a8897f48e31582f4a5147bdb203ebef887390d6bc
|
|
| MD5 |
e9847b89edb447c85b7833907aedd074
|
|
| BLAKE2b-256 |
f6d27709f1e67c1b0bc62ac1a2f087c910923ecaa8a6614250b60e2f96242998
|
Provenance
The following attestation bundles were made for pleno_secret_scanner-0.2.0-py3-none-any.whl:
Publisher:
release-py.yml on plenoai/pleno-secret-scanner
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pleno_secret_scanner-0.2.0-py3-none-any.whl -
Subject digest:
4e2a35730004d7fda507004a8897f48e31582f4a5147bdb203ebef887390d6bc - Sigstore transparency entry: 1449652757
- Sigstore integration time:
-
Permalink:
plenoai/pleno-secret-scanner@0fc3358d3d0b70c44931f7143f70a58d1e243e3c -
Branch / Tag:
refs/tags/py-v0.2.0 - Owner: https://github.com/plenoai
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release-py.yml@0fc3358d3d0b70c44931f7143f70a58d1e243e3c -
Trigger Event:
push
-
Statement type: