Releases: bysiber/cleardisk
Release list
v1.9.0
Added
- Go build cache (
~/Library/Caches/go-build). This isGOCACHE, and it is usually several times larger than the module download cache that was already listed. Cleared bygo clean -cache; the next build is slower, then it is fast again. - Android System Images and NDK (
~/Library/Android/sdk/system-images,.../ndk). The existing Android entry covered~/.android/avd, which is often empty while the SDK beside it holds several gigabytes. Both are listed per subdirectory and never as the whole SDK: deleting~/Library/Android/sdkwould takeplatform-toolswith it, and there is noadbwithout it. The three Android entries now share a group. - VS Code updater cache (
~/Library/Caches/com.microsoft.VSCode.ShipIt), a sibling of the VS Code cache directory that was already listed. Squirrel parks downloaded update payloads there and never prunes them. - pnpm cache (
~/Library/Caches/pnpm). Separate from the package store:pnpm store pathresolves to~/Library/pnpm/store, while registry metadata and the dlx cache live under Caches. Neither covers the other. - rustup toolchains (
~/.rustup/toolchains), grouped with the other version managers rather than with Rust Cargo — these are the compilers themselves, and removing one uninstalls that toolchain. - node-gyp headers (
~/Library/Caches/node-gyp) and TypeScript type acquisition (~/Library/Caches/typescript), both of which keep one copy per version indefinitely.
Fixed
-
Repositories kept directly in the home directory were never scanned for project artifacts. Every scan root was a subdirectory of
~, and none of them reached its siblings, so a project in~/my-projectwas invisible while the identical project in~/Documents/my-projectwas found.The home directory is scanned one level down, and deliberately never as a project itself. Handing
~to the scanner directly would have been worse than the bug: several tools leave a stray~/package.jsonbehind, which makes the whole home directory match the Node.js type — and.cacheand.expoare on that type's artifact list.~/.cacheis the shared cache for uv, Puppeteer, Prisma, Bazel and HuggingFace, not a build directory, and it would have been offered for deletion. Matching at~would also have stopped the walk there, so the projects this is meant to find would never have been reached. -
Artifacts reachable from more than one scan root are listed once. A duplicate row double-counted its size in the totals and made the second clean fail on an already-trashed path.
Changed
- Total cache paths: 74.
Install
brew tap bysiber/cleardisk
brew trust bysiber/cleardisk
brew install --cask cleardiskOr download the DMG below and drag ClearDisk to Applications.
v1.8.4
Changed
- Risk levels for the AI tools now describe what deleting actually costs, rather than which app owns the directory.
- Cursor and Windsurf are marked risky and no longer called caches. Both entries cover the whole
~/Library/Application Support/<app>directory, which for an AI editor is where chat history, workspace state and settings live. - Ollama models are marked caution instead of risky. They are downloads that
ollama pullrestores, and treating them as risky hid the largest entry in the list from the default view.
Install
brew tap bysiber/cleardisk
brew trust bysiber/cleardisk
brew install --cask cleardiskOr download the DMG below and drag ClearDisk to Applications.
v1.8.3
Fixed
- Claude Code and Claude Desktop data was listed as a deletable cache (#27). Both entries covered
~/.claudeand~/Library/Application Support/Claudein full, where session transcripts, job state, file history, plugins and settings live, and claimed the contents would be re-created. They are now marked risky and their descriptions state that the deletion is permanent. - Clean Safe Caches emptied caution entries as well as safe ones, so a single click reached Xcode Archives, Android emulators, editor workspace state and every language-version manager. It now cleans only the entries marked safe.
Changed
- Universal binary for Apple Silicon and Intel.
Install
brew tap bysiber/cleardisk
brew trust bysiber/cleardisk
brew install --cask cleardiskOr download the DMG below and drag ClearDisk to Applications.
v1.8.2
Added
- Added signed app produced pipeline to avoid
xattr -cr ...quirk - Updated version derivation from scripts
Install
brew tap bysiber/cleardisk
brew trust bysiber/cleardisk
brew install --cask cleardiskOr download the DMG below and drag ClearDisk to Applications.
ClearDisk v1.8.1
Fixed
- No menu bar icon; the app appears to do nothing (#22, #16).
NSApplication.delegateis a weak reference, and nothing else in the app retainedAppDelegate— every other reference to it capturedselfweakly. Held only by a local inmain(), ARC was free to release it after its last use, before or duringapp.run(), taking the status item and the popover with it. The process kept running (some users still saw notification banners) but there was no menu bar icon and clicks went nowhere. Whether it happened at all depended on the optimiser, which is why it reproduced on some Macs and not others. The delegate is now held for the life of the process.
Install
brew tap bysiber/cleardisk
brew trust bysiber/cleardisk
brew install --cask cleardiskOr download the DMG below and drag ClearDisk to Applications. The app is ad-hoc signed and not
notarized, so macOS blocks it on first launch. To open it:
- System Settings → Privacy & Security, scroll down, click Open Anyway, or
xattr -cr /Applications/ClearDisk.appin Terminal.
(Homebrew does this for you.)
ClearDisk v1.8.0
Added
- Project scanner expanded from 11 to 23 project types — Python, CocoaPods, Carthage, Xcode, .NET/C#, Godot, Unity, Unreal, Haskell, Elixir, Zig, Crystal, plus the modern JS caches (
.next,.nuxt,.svelte-kit,.angular,.turbo,.vite,.yarn/cache). A project now lists each of its caches as a separate row. - Cleanup history — every cleaned project cache is logged (what, where, how big, when) and can be reviewed or cleared from the Projects tab.
- Failed cleans are now reported. If a directory cannot be moved to the Trash, the app says so — and offers to open Full Disk Access settings when the cause is permissions.
Fixed
- Phantom savings: a clean whose
trashItemfailed still reported "Recovered X!", credited the savings and wrote a history entry, while the files were untouched on disk. Only bytes that actually reach the Trash are counted now, measured from disk rather than assumed. - Unclickable UI after reopening the popover: presenting a
.sheetfrom inside a.transientNSPopover strands SwiftUI's presentation state when the popover auto-closes on focus loss. The project sheets are drawn inside the popover now, and every modal is torn down when the popover closes. - Duplicate artifact rows: a directory matching two project types (a Unity project is also a .NET project; a JS+Python monorepo shares
dist/,build/,coverage/) was listed once per type, double-counting its size and failing the second clean. Each directory is surfaced once. - Data-loss guards:
env/,venv/,.venv/are only ever offered when a real virtualenv is proven (pyvenv.cfg/bin/activate), and Crystal'slib/only when ashard.lockprovesshards installran. UnityBuilds/and UnrealSaved/are no longer touched — those are user output, not caches. - The large-file scanner no longer looks inside media library packages (
.photoslibrary,.fcpbundle,.imovielibrary, …), where deleting a single file corrupts the whole library.
Changed
- The version is declared once, in
scripts/build_app.sh, and read back from the bundle at runtime. - Project cache actions use the same trash icon as the Developer tab — they perform the same destructive action.
Install
brew tap bysiber/cleardisk
brew trust bysiber/cleardisk
brew install --cask cleardiskOr download the DMG below and drag ClearDisk to Applications. The app is ad-hoc signed and not
notarized, so macOS blocks it on first launch. To open it:
- System Settings → Privacy & Security, scroll down, click Open Anyway, or
xattr -cr /Applications/ClearDisk.appin Terminal.
(Homebrew does this for you.)
v1.7.1
What's New
- Large Files tab redesign — folder-grouped cards (Downloads, Documents, Desktop, Movies, Music, Pictures)
- Tap any folder card to expand and see large files inside, sorted by size
- Added Music and Pictures folders to Large Files scan
- Full row is tappable (previously only icon/text area triggered expand)
Download
Download the DMG below, open it, drag ClearDisk to Applications, then:
ℹ️ First launch: macOS will block it because it is not notarized. Choose one:
- GUI: Open the app once (it will be blocked), then go to System Settings > Privacy and Security, scroll down and click Open Anyway
- Terminal (if GUI does not work):
xattr -cr /Applications/ClearDisk.appThis is needed because ClearDisk is not notarized ($99/yr Apple Developer fee). The app is fully open-source — you can verify every line of code.
v1.7.0
What's New
- Game Engines: Unity Cache, Unity Hub Cache, UnityHub Templates, Unity Logs, Godot Export Templates, Godot Cache
- Version Managers: nvm Node Versions, pyenv Versions, mise Installs
- Python: Poetry Cache, pipenv Virtualenvs (community contribution by @IT-HONGREAT)
- Build Tools: SBT/Ivy Cache, Gradle Wrapper, Bazel Cache
- Cloud: AWS CLI Cache
- Total developer cache paths: 63 (was 50)
- Fixed: Deno cache path, JetBrains macOS path, Unity Hub path
Download
Download the DMG below, open it, drag ClearDisk to Applications, then:
ℹ️ First launch: macOS will block it because it is not notarized. Choose one:
- GUI: Open the app once (it will be blocked), then go to System Settings > Privacy and Security, scroll down and click Open Anyway
- Terminal (if GUI does not work):
xattr -cr /Applications/ClearDisk.app\> - **Terminal** (if GUI does not work):xattr -cr /Applications/ClearDisk.app> - Terminal ul> - Terminal (if GUI dove> - **Terminale of code.
v1.6.9
What's New
- Check for Updates -- New button in Settings to quickly check for the latest version (opens GitHub releases page in browser, zero network requests from the app)
Download
Download the DMG below, open it, drag ClearDisk to Applications, then:
ℹ️ First launch: macOS will block it because it is not notarized. Choose one:
- GUI: Open the app once (it will be blocked), then go to System Settings > Privacy and Security, scroll down and click Open Anyway
- Terminal (if GUI does not work):
xattr -cr /Applications/ClearDisk.appThis is needed because ClearDisk is not notarized ($99/yr Apple Developer fee). The app is fully open-source -- you can verify every line of code.
v1.6.8
What's New
- Check for Updates -- New button in Settings to quickly check for the latest version (opens GitHub releases page in browser, zero network requests from the app)
Download
Download the DMG below, open it, drag ClearDisk to Applications, then:
⚠️ First launch: macOS will block it because it is not notarized. Choose one:
- GUI: Open the app once (it will be blocked), then go to System Settings > Privacy and Security, scroll down and click Open Anyway
- Terminal (if GUI does not work):
xattr -cr /Applications/ClearDisk.appThis is needed because ClearDisk is not notarized ($99/yr Apple Developer fee). The app is fully open-source -- you can verify every line of code.