Caches, Docker and Android
Package caches, Docker and the Android SDK
Every package manager keeps a copy of everything it ever downloaded. DevSweeper measures each cache, counts only the space removal actually frees, and clears it with the tool's own command where there is one.
Free to scan. Seven days of cleaning free, no card. macOS 26 or later.
| Cache | Where | How it is cleared |
|---|---|---|
| npm | ~/.npm/_cacache | npm cache clean --force |
| pnpm | the store pnpm reports | pnpm store prune |
| yarn | ~/Library/Caches/Yarn, ~/.yarn/berry/cache | yarn cache clean |
| bun | ~/.bun/install/cache | bun pm cache rm |
| uv | the cache uv reports | uv cache clean, when no uv process is running |
| pip | ~/Library/Caches/pip | pip3 cache purge |
| CocoaPods | ~/Library/Caches/CocoaPods | pod cache clean --all |
| SwiftPM | ~/Library/Caches/org.swift.swiftpm | Trash, with Xcode quit |
| pub (Dart, Flutter) | ~/.pub-cache | dart pub cache clean --force |
| Homebrew | the cache brew reports | brew cleanup --prune=all |
| Gradle | ~/.gradle/caches | Trash, with Android Studio quit |
Caches
When a tool isn't installed any more, its cache goes to the Trash instead. brew cleanup --prune=all also removes old versions of installed formulae, and the preview says so.
Sizes leave out blocks shared through APFS clones. If uv's cache is cloned into your virtualenvs, DevSweeper reports the space clearing it would actually free, not the size of the folder.
Docker
With Docker running, DevSweeper reads docker system df and shows:
- Stopped containers and build cache, cleared with
docker system prune --force; - Unused images, cleared with
docker image prune --all --force; - Unused volumes, review only. Volumes hold data, and DevSweeper never removes them.
Docker Desktop's disk image gives space back to macOS gradually, so free space can take a while to catch up.
Android SDK
In ~/Library/Android/sdk, older NDK and build-tools versions, and system images no virtual device uses. In ~/.android/avd, virtual devices you haven't used within the window. They are removed with sdkmanager --uninstall and avdmanager delete avd, with Android Studio quit.