Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gomop 🧹

An interactive disk-space scanner for macOS — see what's eating your drive before you clean it.

gomop scans the places where gigabytes quietly pile up on a Mac — dev caches, build artifacts, app leftovers, forgotten downloads, duplicate files — and presents them in a fast, keyboard-driven terminal UI. Every entry explains what it is, why it's reclaimable, and how safe it is to remove.

gomop is read-only (v1). It never deletes anything — it shows you exactly what could go, with full paths and safety ratings, and lets you jump straight to any item in Finder. Deletion is planned for v2.

 gomop · candidates ≤ 23.4 GB

  ▾ Dev caches & artifacts                                   12.1 GB
      Go module cache (use: go clean -modcache)               1.0 GB
      npm cache                                             389.7 MB
    ▸ Project build artifacts (regenerable)                 145.4 MB
  ▸ System & app caches                                      8.2 GB
  ▸ Large & old files                                        2.4 GB
  ▸ Duplicate files                                          0.7 GB
 ╭──────────────────────────────────────────────────────────────────╮
 │  SAFE  Go build cache                                            │
 │ Go's incremental build cache. Rebuilt automatically — the next   │
 │ build is just slower.                                            │
 ╰──────────────────────────────────────────────────────────────────╯
  ~/Library/Caches/go-build
  ↑/↓ · ⏎ expand · o Finder · y copy · r refresh · ? help · q quit

What it finds

Dev caches & artifacts — package caches (npm, pnpm, Yarn, pip, cargo, Go, Homebrew, pub, Gradle, Maven, CocoaPods, SwiftPM, Poetry, uv, Playwright/Puppeteer browsers), Xcode DerivedData & Archives, simulators, Android emulator images, Docker — plus build artifacts inside your own projects (node_modules, target, build, dist, .venv, …), detected only when the matching project file (package.json, Cargo.toml, pubspec.yaml, …) sits next to them, with an "untouched > 90 days" flag. It also spots version graveyards: per-version folders old JetBrains IDEs and iOS versions leave behind, keeping only the newest.

System & app caches~/Library/Caches with a per-app breakdown, logs, browser profile caches (web content only — bookmarks, passwords and history are never touched), local iOS device backups, and Application Support folders whose app appears to be uninstalled.

Large & old files — big files and installers in Downloads, Trash contents, forgotten macOS installer apps, iOS firmware images, and month-old screenshots on the Desktop. Local Time Machine snapshot count is shown in the header (not as a list row) — thin them with tmutil once a real backup exists.

Duplicate files — byte-identical copies in Downloads, Desktop and Documents, verified by checksum (size → 64 KB probe → full SHA-256), shown as sets with the wasted bytes counted.

Safety model

Every entry carries one of three ratings, shown with its explanation in the panel at the bottom:

Badge Meaning
SAFE Recreated automatically — caches, logs, build indexes.
SAFE · REBUILD NEEDED Nothing is lost, but the next build or install re-downloads it.
REVIEW FIRST Your call — backups, archives, your own files, Docker volumes.

Missing tools are skipped silently, protected folders are never forced, and sizes that would be counted twice (a dev cache that also lives in ~/Library/Caches, for instance) are counted once.

Install

Requires Go 1.24+ and macOS.

git clone https://github.com/YOUR_USER/gomop.git
cd gomop
go build -o gomop .
./gomop

A Homebrew formula is planned.

Usage

gomop            # interactive TUI
gomop -list      # plain-text report (for piping, scripts, or a quick look)
Key Action
/ or k/j move selection
pgup/pgdn (or ctrl+u/ctrl+d) page up / down
g / G (or home/end) jump to top / bottom
/ space / h/l / / expand or collapse
o reveal the selected item in Finder
y or c copy the selected path to the clipboard
r rescan (cancel in-flight scan and start over)
? show key help in the status line
q quit

The four categories scan concurrently; sizes stream into the UI live as they're computed. A full scan typically takes a few seconds. Deletion is not available in v1 (d is a no-op stub until v2).

On first launch macOS may ask for permission to access your Desktop, Documents or Downloads folder — that's the duplicate scanner reading file sizes. gomop only ever reads.

Roadmap

  • v2: actual deletion — per-item, with confirmation, Trash-first
  • Homebrew formula

About

An interactive disk-space scanner for macOS — see what's eating your drive before you clean it.

Topics

Resources

Stars

Watchers

Forks

Releases

Contributors

Languages