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.

DiskPilot's Overview: 130 GB used of 245 GB, a bar of usage by category, cleanup suggestions such as Rust build output (11.0 GB, likely safe) and a breakdown of where space goes.
The real app. Numbers come from a sample scan, not your Mac.

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.

      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.

      DiskPilot's Developer Tools page: Rust 12.5 GB, Cursor 8.3 GB with 81 workspace folders for projects that no longer exist, Node.js 6.4 GB, Claude Code 1.6 GB with superseded versions, and a check for credentials in AI transcripts.
      Developer Tools in the real app, with sample data.

      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_modules in 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
      DerivedData 31.7 GB
      ~/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.

      1. Scan Read-only. Nothing changes.
      2. Suggest A tier, the reason and the risk for each item.
      3. You review The exact paths and space, confirmed by you.
      4. Check again Each path is re-checked just before it moves.
      5. Trash Recoverable until you empty the Trash.
      6. History Every action and its result is recorded.
      Likely safe

      Data the tool rebuilds on its own: package caches, build output, app caches, logs.

      Review first

      Probably unused, but something may depend on it: data for deleted projects, old versions, stale backups.

      Keep

      Important, or not understood well enough: conversation history, sign-in data, settings, Docker volumes, your own files.

      DiskPilot's Cleanup page: tabs for Likely safe 23.2 GB, Review first 10.3 GB and Keep 11.7 GB, a note that every path is re-checked before anything happens, and selected items such as Rust build output and application caches.
      Cleanup in the real app, with sample data.
      • 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.

      DiskPilot compared with other kinds of storage tools
      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.

      1. Download

        Get DiskPilot.dmg. One file runs on every Mac.

      2. Move to Applications

        Open the disk image and drag DiskPilot into the Applications folder.

      3. Open it

        DiskPilot is signed and notarized by Apple, so it opens like any other app, with no security warning to get past.

      4. 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.