Skip to content
← Back to the app

How to use CLI Tools Cabinet

CLI Tools Cabinet

Find installed commands, inspect their help, organize your catalog and share it with coding agents.

Free to read. You can explore the guide before buying the app.

On this page

CLI Tools Cabinet keeps a searchable catalog of the command-line tools installed on your Mac. The Mac app and the clitools command read the same catalog.

Install the app

After buying, connect your GitHub account in Polar and accept the repository invitation. Download the ZIP from the customer releases, unzip it, and drag CLI Tools Cabinet into Applications.

The app runs on macOS 14 or later, on Apple silicon and Intel. Download later versions from the same Releases page and replace the installed app. Older automatic update checks cannot read the private repository.

Find a command you forgot

Start with a scan. CLI Tools Cabinet finds packages you explicitly installed with Homebrew, npm and Cargo, plus commands in your shell’s PATH, ~/bin and ~/.local/bin.

Search for a name, command or description. For example, search for markdown when you remember what a tool does but have forgotten its name. Commands belonging to one package stay together. Searching for psql can find the PostgreSQL package.

Select a tool to read its details. Inspection adds its version, help, description and available examples. A scan discovers tools; inspection runs the selected executable with help and version arguments. Inspect only tools you trust.

Star tools you use often. Archive tools you want to hide from the ordinary list. Archiving does not uninstall a package or remove its executable. You can restore it later.

Add the CLI

The CLI installer is in the purchased source repository. With Xcode 26 or a Swift 6.2 toolchain installed, run this from the repository root:

./Scripts/install-cli.sh

It builds clitools and creates a link in ~/.local/bin. Add that directory to your shell’s PATH if the command is not found.

Scan and look for a command:

clitools scan
clitools search markdown

Read a known tool’s details, inspect it and show examples:

clitools show gh
clitools inspect gh
clitools examples gh

Use filters to work through a large catalog:

clitools list --favorites
clitools list --source homebrew
clitools list --sort usage
clitools list --unused

--unused means the tool does not appear in the shell history the app can read. It is a useful clue when cleaning up, rather than proof you never use it.

Read shell and agent history

Select a tool to see Your History. This reads local zsh, bash and fish history and groups repeated commands.

Click Find agent runs to scan local Cursor, Codex and Claude Code transcripts. The scan happens on request because transcripts can be large. Its results stay in memory while the app is open. Click Refresh for newer sessions.

The equivalent commands are:

clitools history gh --limit 10
clitools history gh --agents

History remains outside the catalog. Agent transcript formats can change, so a missing run does not necessarily mean the agent never used the command.

Let an agent discover your tools

Tools that implement a capabilities command can describe the work they support. Query one through the catalog:

clitools capabilities postdeck

An agent can read the saved capabilities together:

clitools capabilities --all --json

Catalog and backups

The shared catalog is stored at ~/Library/Application Support/CliTools/catalog.json. Print its location with clitools catalog-path. Back up that file to preserve favorites, archived status and inspected details. It does not contain the underlying shell or agent transcripts.

If an installed tool is missing, check that your login shell can find it, then scan again. If a description is missing, inspect that tool. Run clitools --help for the complete command list.

More examples