Get your disk back from build caches.

Sweep finds the gigabytes that development leaves behind: node_modules, Xcode DerivedData, Cargo targets, Gradle and package caches, old simulators, AI tool leftovers. It tells you how safe each one is to remove, and removes only what you confirm.

Latest release Apple silicon and Intel Signed and notarized by Apple Free and open source

Scan of ~/Developer
  1. Xcode DerivedData~/Library/Developer/Xcode/DerivedDataSafe20.0 GB
  2. node_modules · 14 projects~/Developer/*/node_modulesSafe9.0 GB
  3. Rust target~/Developer/sweep/targetSafe7.0 GB
  4. iOS 17.4 Simulatorxcrun simctl runtime deleteReview6.0 GB
  5. Gradle Caches~/.gradle/cachesReview4.0 GB
  6. iOS Device Support (old)~/Library/Developer/Xcode/iOS DeviceSupportSafe3.0 GB
  7. Unity Library~/Games/Prototype/LibraryDanger1.2 GB
Ready to free 50.2 GB

Why Sweep exists

A flutter run failed with “not enough space”. The iPhone had plenty. The Mac had 1 GB left, buried under years of build caches nobody remembered making.

Sweep was built after that day, to find those leftovers in one scan and clean them without ever risking source code.

How it works

  1. Scan

    Pick your projects folder. Sweep checks the global caches in your home folder too, recognises each project by its files (package.json, Cargo.toml, pubspec.yaml…) and measures what can go, counting only the space that would really be freed.

  2. Review

    Results are grouped by tool and labelled Safe, Review or Danger, with a note on what happens if you remove each one. Pick exactly what you want to clean.

  3. Clean

    Sweep moves items to the Trash or deletes them permanently, your choice. Where a tool has its own cleanup command, such as xcrun simctl, brew cleanup or docker prune, Sweep runs that instead.

What it cleans

Every rule Sweep ships with, and the safety level it gets. Paths that don’t exist on your Mac are skipped.

Flutter

Projects
  • build, .dart_tool<project>/build
    Safe
  • CocoaPods (iOS, macOS)ios/Pods, macos/Pods
    Safe
  • Plugin symlinks and listsios/.symlinks, .flutter-plugins*
    Safe
  • Android Gradle stateandroid/.gradle
    Safe
  • Pub cache (dart pub cache clean)~/.pub-cache
    Review

Node.js

Projects
  • node_modules<project>/node_modules
    Safe
  • Next.js build<project>/.next
    Safe
  • Tool caches<project>/.cache, .pnpm-store
    Safe
  • dist output<project>/dist
    Review

Rust

Projects
  • target (with Cargo's CACHEDIR.TAG)<project>/target
    Safe
  • target without the tag<project>/target
    Review
  • Incremental cache onlytarget/{debug,release}/incremental
    Safe

Python

Projects
  • Bytecode caches__pycache__
    Safe
  • Test and lint caches.pytest_cache, .mypy_cache, .ruff_cache, .tox
    Safe
  • Virtual environments.venv, venv (with pyvenv.cfg)
    Review

Android / Gradle

Projects
  • Build outputbuild, app/build
    Safe
  • Project Gradle state<project>/.gradle
    Safe

PHP / Laravel

Projects
  • Framework cache and viewsstorage/framework/{cache,views}
    Safe
  • Bootstrap cache, logsbootstrap/cache/*.php, storage/logs/*.log
    Safe
  • vendor<project>/vendor
    Review

Ruby on Rails

Projects
  • tmp cache, logstmp/cache, log/*.log
    Safe
  • Bundled gemsvendor/bundle
    Review

.NET / C#

Projects
  • Build binariesbin, obj
    Safe

C++ / CMake

Projects
  • CMake build foldersbuild, cmake-build-debug, cmake-build-release
    Safe

Unity

Projects
  • Library, Temp, Obj, Logs<project>/Library …
    Danger

Unreal Engine

Projects
  • Intermediate, Saved, Binaries, DerivedDataCache<project>/Intermediate …
    Danger

Xcode

Apple
  • DerivedData~/Library/Developer/Xcode/DerivedData
    Safe
  • Previews~/Library/Developer/Xcode/UserData/Previews
    Safe
  • Documentation and app caches~/Library/Caches/com.apple.dt.Xcode
    Safe
  • Old Device Support (iOS, watchOS, tvOS, visionOS)~/Library/Developer/Xcode/*DeviceSupport
    Safe
  • Archives, by day~/Library/Developer/Xcode/Archives
    Review

Simulators

Apple
  • Simulator caches and logs~/Library/Developer/CoreSimulator/Caches
    Safe
  • Unavailable simulatorsxcrun simctl delete unavailable
    Safe
  • Simulator runtimesxcrun simctl runtime delete
    Review

CocoaPods

Apple
  • Download cache~/Library/Caches/CocoaPods
    Safe
  • Spec repos~/.cocoapods/repos
    Review

Device backups

Apple
  • iPhone and iPad backups~/Library/Application Support/MobileSync/Backup
    Danger

JavaScript

Packages
  • npm cache (npm cache clean), npx cache~/.npm/_cacache, ~/.npm/_npx
    Safe
  • Yarn (classic and Berry)~/Library/Caches/Yarn, ~/.yarn/berry/cache
    Safe
  • Bun cache~/.bun/install/cache
    Safe
  • pnpm store (pnpm store prune)pnpm store path
    Safe
  • Electron downloads~/Library/Caches/electron
    Safe
  • Playwright, Cypress, Puppeteer browsers~/Library/Caches/ms-playwright …
    Review

Rust

Packages
  • Cargo registry and git checkouts~/.cargo/registry, ~/.cargo/git/checkouts
    Safe
  • Unused toolchains~/.rustup/toolchains
    Review

Python

Packages
  • pip, uv, Poetry caches~/Library/Caches/pip …
    Safe
  • Conda packagesconda clean
    Review

Go

Packages
  • Build cache (go clean -cache)~/Library/Caches/go-build
    Safe
  • Module cache (go clean -modcache)~/go/pkg/mod
    Review

Android SDK & Gradle

Packages
  • Gradle daemon logs, SDK cache~/.gradle/daemon, ~/.android/cache
    Safe
  • Gradle caches~/.gradle/caches
    Review
  • Emulator images (AVD)~/.android/avd
    Review

PHP

Packages
  • Composer cache~/Library/Caches/composer
    Safe

Homebrew

Packages
  • Old versions (brew cleanup)brew cleanup
    Review

Docker

Packages
  • Build cache (docker builder prune)docker builder prune
    Safe
  • Stopped containers, unused imagesdocker container / image prune
    Review
  • Volumes are never touched
    Protected

Local models

AI tools
  • Hugging Face models, datasets, Xet cache~/.cache/huggingface
    Review
  • Ollama models (ollama rm)~/.ollama/models
    Review
  • LM Studio models~/.lmstudio/models
    Review
  • PyTorch cache~/.cache/torch
    Review

Coding assistants

AI tools
  • Caches, logs, crash dumpsClaude, Cursor, Codex, Copilot, Cline, Continue, Kiro, Antigravity…
    Safe
  • Bundled runtimes, old app versionse.g. old Claude Code versions
    Review
  • Local-only chat history and checkpointsClaude Code, Codex, Cline, Aider…
    Danger
  • Settings, logins, skills and MCP configs are never touched
    Protected

VS Code family & Cursor

Editors
  • Electron cachesCache, Code Cache, GPUCache…
    Safe
  • Workspace storage of deleted projectsUser/workspaceStorage
    Review
  • Old extension versions~/.vscode/extensions
    Safe

JetBrains

Editors
  • Caches and logs of old IDE versions~/Library/{Caches,Logs}/JetBrains
    Safe
  • Data of old IDE versions~/Library/Application Support/JetBrains
    Review

macOS

System
  • Your app logs and crash reports~/Library/Logs
    Safe
  • App caches, one by one~/Library/Caches/*
    Review
  • Trash~/.Trash
    Review
  • Old files in Downloads~/Downloads/*
    Review

Apps

System
  • Discord, Spotify caches~/Library/…/discord/Cache
    Safe
  • Telegram mediaTelegram media folders
    Review
  • Vagrant boxes~/.vagrant.d/boxes
    Danger

Built not to delete the wrong thing

A cleaner is only useful if you can trust it. These rules are enforced in the Rust engine, not just in the interface.

Safe

Comes back on its own the next time you build or run. Build output, compiler caches, logs.

Review

Comes back, but costs a download or a long rebuild, or may hold something you care about. Gradle caches, simulators, virtual environments, model caches.

Danger

Hard or impossible to get back. Needs you to type a confirmation. Unity and Unreal project data, device backups, local AI chat history.

  • Your code is off limits

    Any folder inside a project that contains files tracked by git is skipped, whatever its name.

  • Fixed blocklist

    Your home folder, Documents, Desktop, Downloads, /System, /Applications, /Library, /usr and the Homebrew root can never be removed.

  • Only what you saw

    The interface sends item IDs, never paths. The engine re-checks each path against the scan before touching it.

  • Symlinks stay symlinks

    A link is removed as a link. Sweep never follows it to delete what it points to.

  • Official tools first

    Simulators, Homebrew, Docker, Go, pnpm and Flutter are cleaned with their own commands, run directly with fixed arguments and never through a shell.

  • Waits for running apps

    Xcode caches aren’t touched while Xcode is open, Gradle caches while Android Studio runs, and so on.

  • Trash by default

    Removed items go to the Trash so you can restore them. Items over 5 GB, and anything cleaned by its own tool, are removed directly. Switch to permanent deletion in Settings if you prefer.

  • Honest sizes

    Hardlinks and APFS clones aren’t counted twice, so the number you see is the space you actually get back.

  • Nothing automatic

    Sweep never cleans in the background. Every removal starts with your confirmation.

Install on macOS

  1. Download

    Get the .dmg from the latest release. One universal build runs on Apple silicon and Intel Macs.

    Download Sweep
  2. Move to Applications

    Open the .dmg and drag Sweep into the Applications folder.

  3. Open it

    Sweep is signed with an Apple Developer ID and notarized by Apple, so it opens like any other app. No terminal commands needed.

  4. Allow Full Disk Access (recommended)

    Some caches sit in folders macOS protects. Open System Settings › Privacy & Security › Full Disk Access and turn on Sweep. Sweep shows a shortcut to this screen when access is missing; without it, those folders are simply skipped.

Questions

Can Sweep delete my source code?

It is designed not to. Project rules only target known build and cache folders, any folder containing git-tracked files is skipped, and personal and system folders are on a fixed blocklist. Rules that once matched folder names commonly used for real code (like Go’s pkg) were removed.

What happens after I clean something?

Safe items come back on their own: the next build recreates node_modules, DerivedData or target. Review items come back too but may need a download, like Gradle dependencies or a simulator runtime. Each item in the app says what to expect.

Why use this instead of a cleanup script?

A script deletes what its pattern matches, including the folder you didn’t expect. Sweep shows every item with its real size and safety level first, checks for git-tracked files, waits for related apps to close, and uses each tool’s own cleanup command where one exists.

Does Sweep need Full Disk Access?

No, but without it Sweep can’t see folders macOS protects, so some caches won’t appear. You can grant it any time in System Settings.

Does Sweep send any data anywhere?

No. Scanning and cleaning happen entirely on your Mac, and your file list and results never leave it. Sweep contacts GitHub only to check for a new version.

Which macOS versions are supported?

Sweep is a native app built with Tauri 2 and runs on recent macOS versions on both Apple silicon and Intel. If something doesn’t work on your setup, please open an issue.

How was Sweep built?

Sweep is written in Rust (Tauri 2) with a React and TypeScript interface. It was built by Abdulrasool Al-Hilo, pair-programming with Google Gemini, Claude and DeepSeek.