I built a CLI package manager for macOS because brew list hid 145 dependencies
Description and use
Dronagiri aggregates package data from Homebrew, npm, pipx, Cargo, RubyGems, and go install, displaying size, install date, description, last‑used info, and dependencies, and safely removes packages.
Problem
Homebrew’s brew list shows 188 packages but hides which are user‑chosen tools and which are transitive libraries, providing no size, usage, or safe removal info.
Outcome
Dronagiri gives macOS users a single, searchable view of all installed packages, their sizes, usage, and dependencies, and enables safe removal without force or private APIs.
Workflow
- Run
brew listto get all installed packages - Dronagiri reads package databases of Homebrew, npm, pipx, Cargo, RubyGems, and
go install - It calculates real on‑disk size with a batched
du - It queries
brew deps <formula>for actual runtime linkage and inverts the graph - It gathers last‑used data from Spotlight’s
kMDItemLastUsedDateand shell history - It displays a sortable table with all metadata and a Mine/Dependencies split
- To delete, select rows with space, press
d, confirm twice; Dronagiri delegates removal to the original manager
Evidence
I ran brew list on my Mac and got 188 names.
Dronagiri is a terminal app that reads the package databases of Homebrew, npm, pipx, Cargo, RubyGems and go install, then puts everything in one sortable table:
Deletion is deliberately inconvenient. Select rows with space, press d, and confirm twice in bordered dialogs.
- Record date: 2026-11-02T10:28:48.494Z