Skip to content

Informant254/Zero-Trust-GitHub-Guard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🛡️ Zero-Trust GitHub Guard

Stars License: MIT Defensive Excellence

A defensive secret scanner for developers who want fast local evidence, dry-run remediation, and safer credential cleanup before code reaches GitHub.

🚀 Quick Start

Install directly from GitHub:

pip install git+https://github.com/Informant254/Zero-Trust-GitHub-Guard.git

Initialize the guard:

zero-trust-guard init

Scan your current directory for secrets:

zero-trust-guard scan

Scan a specific path:

zero-trust-guard scan path/to/project

Emit JSON for CI or scripts:

zero-trust-guard scan --format json --fail-on-findings .

Preview remediation actions:

zero-trust-guard fix

Apply an interactive remediation:

zero-trust-guard fix --apply

✨ Features

  • Multi-Provider Scanning: Detects common tokens for Google, AWS, Stripe, GitHub, Slack, OpenAI, Anthropic, and more.
  • Dry-Run Fix Mode: Shows remediation options first and requires --apply before changing files.
  • Line-Level Evidence: Reports file paths, secret types, counts, and line numbers without printing secret values.
  • Safe Redaction: Replaces detected values with [REDACTED].
  • Quarantine Workflow: Moves risky files into .quarantine/ with collision-safe names.
  • Small Runtime Footprint: Uses a minimal dependency set for local and mobile-friendly scanning.
  • CI-Friendly Output: JSON output and --fail-on-findings support automation without exposing secret values.

🔐 Defensive Defaults

  • Skips .git, dependency folders, caches, build outputs, and symlinked files.
  • Limits scanned files to 1 MB by default to keep scans fast and predictable.
  • Redacts matched secrets as [REDACTED] instead of exposing values in output.
  • Keeps quarantine output in .quarantine/, which is ignored by Git.
  • Documents assumptions and limits in docs/THREAT_MODEL.md.

⚠️ Secret Handling

If a real key was committed, redaction is not enough. Rotate or revoke the key with the provider, then remove it from Git history if required by your incident process.

🤝 Contributing

If you find this tool useful, please give it a ⭐ Star! Contributions are welcome.


Built with ❤️ by Informant254

About

🛡️ AI-Powered Sentinel for GitHub Repository Security & Automation. Detect secrets, audit dependencies, and secure your code automatically.

Topics

Resources

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages