Find and clean dev artifacts across all your projects. node_modules, .venv, target/, build/ — gone.
Project description
Your ~/projects folder is hoarding gigabytes of node_modules, .venv, target/, build/, and other artifacts you don't need. Sweep finds them all and lets you clean them interactively.
SWEEP — 11 projects | 19.0 GB reclaimable
PROJECT TYPE SIZE MODIFIED STATUS
──────────────────────────────────────────────────────────────────────────
artist_desk_website Next.js 12.8 GB today dirty
artistdesk-mobile Flutter 3.0 GB 27d ago clean
artist-desk-admin Node.js 1.6 GB today clean
tldr-web Next.js 556.8 MB today clean
puppeteer-scraping Node.js 310.2 MB 3mo ago clean
──────────────────────────────────────────────────────────────────────────
Total: 19.0 GB across 11 projects
[Space] select [a] all [Enter] delete [q] quit
Install
pip install sweep-cli
Usage
# Scan current directory
sweep
# Scan a specific path
sweep ~/projects
# Dry run — just show what's there, no TUI
sweep ~/projects --dry-run
# JSON output for scripting
sweep ~/projects --json
# Only show projects with 100MB+ of artifacts
sweep --min-size 100MB
# Only show projects untouched for 6+ months
sweep --older-than 6m
# Control scan depth
sweep --depth 3
Interactive TUI
Sweep launches an interactive terminal UI where you can:
| Key | Action |
|---|---|
↑ ↓ / j k |
Navigate |
Space |
Select/deselect project |
a |
Select all / deselect all |
s |
Sort by size |
d |
Sort by date (oldest first) |
n |
Sort by name |
Enter |
Delete selected artifacts |
q / Esc |
Quit |
Color-coded safety:
- Green — selected for deletion
- Yellow — recently modified
- Red — has uncommitted git changes (dirty)
Supported Ecosystems
| Ecosystem | Detected By | Cleans |
|---|---|---|
| Node.js | package.json |
node_modules/ |
| Next.js | next.config.* |
.next/, node_modules/ |
| Python | pyproject.toml, setup.py, requirements.txt |
.venv/, venv/, __pycache__/, .tox/, .mypy_cache/ |
| Rust | Cargo.toml |
target/ |
| Go | go.mod |
vendor/ |
| Java (Maven) | pom.xml |
target/ |
| Java (Gradle) | build.gradle |
build/, .gradle/ |
| .NET | *.csproj, *.sln |
bin/, obj/ |
| Flutter | pubspec.yaml |
build/, .dart_tool/ |
| Ruby | Gemfile |
vendor/bundle/ |
Git-Aware Safety
Sweep checks each project's git status before deletion:
- clean — no uncommitted changes, safe to delete
- dirty — has uncommitted changes, highlighted in red as a warning
- Projects without git are shown without status
How It Works
- Walks your directory tree looking for project marker files
- Detects the ecosystem and finds corresponding artifact directories
- Calculates sizes using fast
os.scandir()recursion - Checks git status for safety
- Presents everything in a sortable, interactive TUI
- Zero dependencies — pure Python stdlib (
curses,os,shutil,argparse)
Support
If Sweep saves you disk space, consider buying me a coffee.
License
MIT
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
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 sweep_cli-0.1.0.tar.gz.
File metadata
- Download URL: sweep_cli-0.1.0.tar.gz
- Upload date:
- Size: 14.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c989e4e93518957e1ce012436cf5050ba88ff742e4b30863910deddc90ac4f7d
|
|
| MD5 |
9f36dcf9193c3289e5fd810692fe316c
|
|
| BLAKE2b-256 |
ba14fa5d779f859c2a2853af52f0671d72016c039c9fbc595dfd7c8502511bab
|
File details
Details for the file sweep_cli-0.1.0-py3-none-any.whl.
File metadata
- Download URL: sweep_cli-0.1.0-py3-none-any.whl
- Upload date:
- Size: 12.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
41a6f20ceaec60178cd9e5471af3618f78545de913abb0ed7ac81163089e276c
|
|
| MD5 |
42f92c6e819a2b5c58c6a1742c86014a
|
|
| BLAKE2b-256 |
521afad62f006e8a5383b41d2974ad153289d04627b1006d80e04107ea26d525
|