detect-secrets vs ggshield
detect-secrets
github.comggshield
gitguardian.comSide by side
| Figure | detect-secrets | ggshield |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | Yes |
| Open source | — | — |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| API | — | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 3 |
| Spec score · Secrets Scanning Software | 8.5 (#3) | 8.1 (#6) |
| Detection | Its detection strategies include regex rules, entropy heuristics, and keyword detection. | The documentation says ggshield detects more than 600 types of secrets. |
| Purpose | detect-secrets detects secrets in code and helps prevent new secrets from entering a codebase. | ggshield is GitGuardian’s command-line application for detecting and preventing hardcoded secrets before code is pushed. |
Plans
In their own words
detect-secrets
detect-secrets is a free, open-source Python module for finding secrets in codebases and helping stop new secrets from entering Git changes. It runs on Linux, macOS, and Windows, with self-hosted use documented through pip or Homebrew. Heuristic regular expressions inspect changes for newly committed secrets, alongside entropy and keyword detection. The scan command creates or updates a baseline of potential findings; hook flags new secrets; and audit lets analysts review, label, report, or compare baseline entries. Users can configure it as a pre-commit hook with the pre-commit framework. Built-in plugins and filters can be adjusted, and custom detector plugins and filters can be developed. Exclusions, matching-line or file exclusions, secret-value exclusions, and inline allowlist comments help handle false positives. The package can also be imported into Python scripts to scan files and serialize findings. Word-list filtering and gibberish detection require optional packages, and gibberish detection is disabled by default. The project uses Apache-2.0 licensing.
ggshield
ggshield is GitGuardian’s command-line tool for finding hardcoded secrets before code is pushed. It can scan local files and repositories, run before commits or in CI pipelines, and act as a pre-receive hook for self-managed version control. It also scans Docker image layers, build arguments, and Dockerfiles. GitGuardian’s documentation describes detection for more than 600 secret types. The open-source CLI uses a closed-source secrets detection library behind GitGuardian’s public API. It runs on macOS, Linux, and Windows, with API and self-hosted options. Standard installation needs Git and a supported, non-end-of-life Python version; standalone packages are an exception. Scans require an API key for a GitGuardian workspace, and the login command can provision and store a personal access token. Files over 1 MB are ignored, and API calls accept up to 20 documents each. The free Starter plan is free, billed Always; it includes up to 25 developers, 10K API calls per month, up to 500 historical scan detections, and unlimited real-time scanning.