Free and open source for macOS
Your Mac is full.
Let's find out why.
DiskPilot shows what's eating your storage, finds what Docker, Xcode, node_modules and your AI tools left behind, and cleans it up only after you've reviewed it.
MIT licensed. macOS 11 or later, Apple silicon and Intel.
macOS says “System Data.” That's all it says.
On a developer's Mac, that grey block is build output, package caches, Docker's disk image, simulator runtimes and editor data for projects you deleted months ago. None of it is labeled, so none of it feels safe to touch.
DiskPilot names every part of it, and tells you which parts you'd never miss.
What Storage settings shows
What DiskPilot shows
Illustration with sample data.
See what DiskPilot finds.
Three steps, the same order every time. Try them here with sample data; nothing on your Mac is read or changed.
Scan
~ your home folder
- Files
- 0
- Measured
- 0 GB
- Likely recoverable
- 0 GB
Ready to scan.
Choose a folder to see what DiskPilot knows about it.
Trash first. Every path is checked again before it moves.
Nothing selected
Review cleanup
These paths move to the Trash. Each one is measured and checked again just before it moves.
Moved to the Trash
- Nothing was deleted. Every item can be put back from the Trash.
- The cleanup is recorded in History, with each item's result.
- The space comes back when you empty the Trash.
Sample data, running in this page only.
It knows where your tools keep their data.
Generic cleaners see folders. DiskPilot sees the tool, the project and the version behind each one, and checks whether any of it is still used.
Containers
- Docker Desktop disk image
- Images, containers and build cache, sized by Docker itself
- OrbStack and Colima
Xcode
DerivedData, matched to its workspace- Archives and device support
- Simulator runtimes and devices
JavaScript
node_modulesin projects untouched for months- npm, pnpm, Yarn and Bun caches
- Next.js build output, nvm versions
Rust, Python, Java
target/, Cargo registry, rustup toolchains- Virtual environments and
__pycache__ - Gradle, Maven, CocoaPods and the Android SDK
Editors
- Cursor and VS Code workspace storage for deleted projects
- Extensions, logs and downloaded updates
- JetBrains caches
AI tools
- Older Claude Code versions, Codex, Gemini CLI, Copilot
- Ollama and LM Studio models no one uses
- Hugging Face cache, and Homebrew downloads
A name, a rule and a reason for every folder.
A parallel Rust scanner measures what each folder really occupies on disk. Then a classifier names it and says why. Every rule can be read in the source.
- Stays on one volume and never follows symbolic links
- Counts hard links once
- Shows what it doesn't understand as Unknown, and never suggests it
~/Library/Developer/Xcode/DerivedData
- Category
- Build artifacts
- Rule
xcode.derived-data- Confidence
- High
- What it is
- Build products, indexes and logs for each project Xcode has opened. Xcode recreates them on the next build.
- Suggestion
- Likely safe
Example.
Your storage. Your decision.
DiskPilot never calls something safe because it's large or old. Every cleanup goes through the same steps, and the one in the middle is you.
- Scan Read-only. Nothing changes.
- Suggest A tier, the reason and the risk for each item.
- You review The exact paths and space, confirmed by you.
- Check again Each path is re-checked just before it moves.
- Trash Recoverable until you empty the Trash.
- History Every action and its result is recorded.
Data the tool rebuilds on its own: package caches, build output, app caches, logs.
Probably unused, but something may depend on it: data for deleted projects, old versions, stale backups.
Important, or not understood well enough: conversation history, sign-in data, settings, Docker volumes, your own files.
- System folders and key home folders are refused outright.
- Docker volumes are never removed, and every Docker command is shown first.
- A reviewed plan is single-use and expires after ten minutes.
- Empty Trash removes only the exact items you reviewed.
Nothing leaves your Mac unless you ask.
No account, no telemetry. Scanning, analysis and cleanup all run on this Mac.
Stays on this Mac
- Every scan, size and path
- Cleanup history and saved results
- Private folders such as Mail and Messages, which DiskPilot only ever sizes
- Your files' contents, which DiskPilot never reads
Only when you ask the assistant
The optional assistant answers questions like “What can I safely clean up?” with your own API key from Anthropic, OpenAI or OpenRouter, kept in the macOS Keychain. It's off until you turn it on.
- Your question and the storage data it needs: names, paths and sizes
- Sent straight from your Mac to the provider you chose
- Read-only: it can't delete, move or run anything
Checkable
- Open source under the MIT license
- Every release is built from its tag by GitHub Actions
- Each download carries a signed record of the commit that built it
Where DiskPilot fits
Disk visualizers show sizes. Cleaner suites remove system junk. Single-purpose dev tools clean one thing. DiskPilot explains all of a developer's storage and cleans it through one reviewed workflow.
| Aspect | DiskPilot | Disk visualizersDaisyDisk, GrandPerspective, OmniDiskSweeper | Cleaner suitesCleanMyMac | Single-purpose dev toolsDevCleaner for Xcode, kondo, npkill |
|---|---|---|---|---|
| Open source | Yes, MIT | Some | No | Mostly |
| Explains what a folder is | Rule, confidence and a plain sentence | Sizes only | Junk categories | Only its own targets |
| Developer coverage | Docker, Xcode, Node, Rust, Python, editors, AI agents | None specific | General system data | One tool or project folders |
| Knows when a project is gone | Checks editor, Xcode and agent data against the disk | No | Not its focus | Varies |
| Before anything is removed | Tiered preview, Trash first, history | You decide by hand | Guided cleanup | Prompt or list |
| Visual disk map | Bars and sortable lists | Their strength | Yes | No |
Categories describe typical behavior; check each product for details.
Up and running in a minute.
One download for Apple silicon and Intel Macs, macOS 11 or later.
-
Download
Get DiskPilot.dmg. One file runs on every Mac.
-
Move to Applications
Open the disk image and drag DiskPilot into the Applications folder.
-
Open it
DiskPilot is signed and notarized by Apple, so it opens like any other app, with no security warning to get past.
-
Scan
Click Scan. DiskPilot reads your home folder and changes nothing until you review and confirm a cleanup.
Or install with Homebrew
Homebrew asks you to trust a new tap once. Update later with
brew upgrade --cask diskpilot.
brew tap devanshgoel-123/tap
brew trust devanshgoel-123/tap
brew install --cask diskpilot
Check the download
Each release lists its SHA-256 checksum and a signed record of how it was built. With the GitHub CLI:
shasum -a 256 DiskPilot.dmg
gh attestation verify DiskPilot.dmg -R Devanshgoel-123/diskpilot
Prefer to build it yourself? The source and build steps are on GitHub, along with every release.
Questions people ask first
Can DiskPilot delete something important?
Nothing is removed without a preview you confirm. Items go to the Trash, system and key home folders are refused outright, and conversation history, sign-in data, settings and Docker volumes are never recommended.
Does it need Full Disk Access?
No. macOS asks once before protected folders such as Desktop, Documents and Downloads are read, and folders such as Mail, Messages and the Photos library are skipped and reported. Grant it if you want those measured too: DiskPilot reads sizes only, keeps them on your Mac, and the assistant sees each of those folders only as a total.
Does the app send any data?
No. There is no account and no telemetry. The optional assistant is the only feature that uses the network, only when you ask it something, and it never sends file contents.
Is DiskPilot checked by Apple?
Yes. From version 0.5.1, every release is signed with a Developer ID and notarized by Apple, so macOS opens it without a warning. DiskPilot is also open source, so you can read every line, check how each release was built, or build it yourself.
Is there a Windows version?
Not yet. It's planned after signed macOS releases. The engine is Rust and the shell is Tauri, which already builds for Windows; the work is teaching DiskPilot how Windows stores things, with the same rules: NTFS-aware sizes, OneDrive placeholders left alone, the Recycle Bin first, Docker's WSL disk explained, and system folders off limits. Watch the GitHub repository to hear when a preview is ready.
Find out where your space went.
Free, open source, and nothing moves until you say so.