Skip to main content

Repo hygiene scanner and fixer (junk files, secrets, gitignore).

Project description

Repoclean (CLI) v0.8.0

PyPI License CI

repoclean — GitHub Repo Cleanup & Secret Leak Prevention CLI

A fast repo hygiene scanner + scary-good secrets detector + pre-commit hook that blocks risky commits automatically.

Why repoclean exists

Most repo leaks don’t happen because people are careless — they happen because shipping is fast and repo hygiene is manual.

repoclean stops:

  • accidental API key/token leaks
  • pushing .env, .pem, id_rsa etc
  • committing junk (__pycache__/, .log, .tmp, dist/, etc)
  • committing huge files that bloat history

repoclean is a small CLI tool meant to be run before pushing to GitHub. It helps you quickly:

  • spot repo hygiene issues
  • detect secret/token patterns
  • block accidental leaks via an optional Git pre-commit hook

Demo

repoclean demo

Install

pip install repoclean-cli

Quick Start

repoclean scan
repoclean secrets
## Secrets scanner (v0.6.0)

repoclean detects:
- Private key markers (`BEGIN PRIVATE KEY`)
- GitHub tokens (`ghp_`, `github_pat_`, `gho_`)
- Slack tokens (`xoxb-...`)
- Stripe live keys (`sk_live_...`)
- Telegram bot tokens (`123456:ABC...`)
- JWT tokens
- High entropy secret candidates in assignment contexts

CI usage

repoclean ci
repoclean scan --fail-on sensitive,large
repoclean secrets --fail

Typical workflow

repoclean scan
repoclean secrets --fail
repoclean fix --yes
repoclean install-hook --mode strict

Secrets severity + CI

repoclean secrets --min-severity high
repoclean secrets --fail-on critical
repoclean ci --json

Command

Scan repo hygiene issues
repoclean scan
Create a default .gitignore
repoclean init
Config

Create a .repoclean.toml config file:

repoclean config init
Safely clean junk files/folders

Preview:

repoclean fix --dry-run --verbose

Apply cleanup:

repoclean fix --yes
### Unstage instead of delete

```bash
repoclean fix --staged-only --unstage --yes
Scan for secrets/tokens
repoclean secrets

Fail mode (useful for CI and hooks):

repoclean secrets --fail

Install git pre-commit hook

Install (strict mode blocks commit on issues):
repoclean install-hook --mode strict
Install (warn mode prints warnings but allows commit):
repoclean install-hook --mode warn
Uninstall:
repoclean uninstall-hook
Hook utilities:
repoclean hook status
repoclean hook print --mode warn
repoclean hook print --mode strict

Notes

  • repoclean is the command name.
  • The PyPI package name is repoclean-cli.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

repoclean_cli-0.8.0.tar.gz (23.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

repoclean_cli-0.8.0-py3-none-any.whl (26.5 kB view details)

Uploaded Python 3

File details

Details for the file repoclean_cli-0.8.0.tar.gz.

File metadata

  • Download URL: repoclean_cli-0.8.0.tar.gz
  • Upload date:
  • Size: 23.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.6

File hashes

Hashes for repoclean_cli-0.8.0.tar.gz
Algorithm Hash digest
SHA256 0b4de18a03820ef01656f2825e2086ff6445c17151fc84c1b5ab569505df411f
MD5 5a053e3e0b73a0fd83a161f607a949fe
BLAKE2b-256 95f660997741091706587cde36108ee725573a4456a67f9992234480a2a80a1e

See more details on using hashes here.

File details

Details for the file repoclean_cli-0.8.0-py3-none-any.whl.

File metadata

  • Download URL: repoclean_cli-0.8.0-py3-none-any.whl
  • Upload date:
  • Size: 26.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.6

File hashes

Hashes for repoclean_cli-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 039f6fdfc55749fdaac6e06e29c811a182ef82f98b5f57c0393d54256bb7c158
MD5 447d956389476a78fa5f6304f019e66b
BLAKE2b-256 d375c9dba269205134580e6054eed6d56ea7259d711d2660a484e09b93925913

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page