Introduction
In my previous article about the MacOS Setup Script, I shared a series of shell scripts to fully automate macOS configuration. In that post, I briefly listed several CLI tools installed via Homebrew.
To transform your terminal into a high-performance development environment, the built-in macOS commands are often not enough. From modern alternatives written in Rust or Go to Git extensions and Zsh plugins, here is a detailed breakdown of the Homebrew CLI apps I include in my setup scripts, categorized by their utility.
1. Modern Terminal Utilities (Rust/Go Alternatives)
These tools replace traditional UNIX commands (cat, find, df, etc.) with faster, more feature-rich alternatives.
bat: Often described as "acatclone with wings." It provides syntax highlighting and Git integration (showing+or-in the margins), drastically improving the code-reading experience directly in the terminal.brew install batfd: A simple, fast, and user-friendly alternative tofind. Written in Rust, it is incredibly quick and respects your.gitignorewhile skipping hidden files by default.brew install fdfzf: A general-purpose command-line fuzzy finder. It allows you to interactively filter lists, search command history (Ctrl + R), and find files. It is an indispensable tool for any modern terminal workflow.brew install fzfduf: A modern replacement fordf. It displays disk usage and free space in a clean, colorful, and easy-to-read tabular format.brew install dufscc(Sloc, Cloc and Code): An incredibly fast tool for counting lines of code, blank lines, and comments across hundreds of programming languages.brew install scc
2. Git & GitHub Enhancements
Tools designed to streamline Git operations and reduce the need to switch back and forth to your browser.
gh(GitHub CLI): The official CLI for GitHub. It lets you create pull requests, check issues, and manage repositories directly from the command line.brew install ghgit-delta: A syntax-highlighting pager forgit diffandgit show. It makes diffs look beautiful (including side-by-side views) and much easier to read, similar to the GitHub UI.brew install git-deltagit-filter-repo: The officially recommended tool for rewriting Git history. It is essential for tasks like permanently removing large files or sensitive information accidentally committed to a repository.brew install git-filter-repo
3. Development Environments & Runtimes
Core tools and runtimes required for various programming environments.
neovim: A fork of Vim focused on extensibility and modern features like native LSP support and Lua-based configuration. It serves as both a quick editor and a full-blown IDE.brew install neovimnode&pnpm: The Node.js runtime andpnpm, a fast, disk-space-efficient package manager. Essential for modern web development.brew install node brew install pnpmuv: An extremely fast Python package and project manager written in Rust. It serves as a replacement forpipandvirtualenv, offering significantly better performance.brew install uvgcc&libomp: The GNU Compiler Collection and the OpenMP runtime. Since Apple Clang does not support OpenMP (multi-threading) by default, these are necessary for compiling C/C++ code that requires parallel processing.brew install gcc brew install libompsqlite: A lightweight relational database engine. Perfect for local data analysis or as a backend for small-scale applications.brew install sqlite
4. System & File Management
Utilities to automate macOS system settings and enhance file manipulation.
coreutils: Installs the GNU version of standard commands (ls,cp,rm, etc.). This is vital if you want to ensure script compatibility between macOS and Linux environments.brew install coreutilsduti: A command-line tool to set default applications for specific file extensions. While macOS usually requires manual configuration via the "Get Info" pane,dutiallows you to script these associations.brew install duti#!/bin/bash # Example: Setting VS Code as the default editor for all text files EDITOR_ID="com.microsoft.VSCode" # Basic text types duti -s $EDITOR_ID public.plain-text all duti -s $EDITOR_ID public.text all duti -s $EDITOR_ID public.data all duti -s $EDITOR_ID public.source-code all # Common file extensions extensions=("txt" "md" "tex" "js" "jsx" "ts" "tsx" "py" "go" "rs" "c" "cpp" "h" "hpp" "css" "json" "yaml" "yml" "xml" "sh" "zsh" "bash") for ext in "${extensions[@]}"; do duti -s $EDITOR_ID $ext all done echo "Default editor associations updated!"mas: A CLI for the Mac App Store. It allows you to install GUI apps like LINE, Kindle, or Xcode usingmas install [App ID]without ever opening the App Store app.brew install masmole: A powerful system cleanup and optimization CLI tool (tw93/Mole). It integrates functions found in GUI apps like CleanMyMac or AppCleaner, allowing you to purge caches and uninstall apps cleanly via themocommand.brew install molerename: A powerful utility to rename multiple files at once using regular expressions. Great for organizing large batches of photos or log files.brew install renametree: A classic but essential command that displays directory structures in a tree-like format. Frequently used for documentation and README files.brew install tree
5. Zsh Plugins
Plugins that turn your default macOS shell into a high-productivity environment.
(Note: These require manual lines in your .zshrc to be activated.)
zsh-autosuggestions: Suggests commands as you type based on your history in a subtle grey text. You can complete them with the right arrow key (orCtrl + F), drastically reducing typing.brew install zsh-autosuggestionszsh-syntax-highlighting: Highlights commands in green if they are valid and red if they are not. It helps you catch typos before hitting enter.brew install zsh-syntax-highlightingzsh-completions: Extends the built-in Zsh completion system with thousands of additional definitions for common commands and Homebrew tools.brew install zsh-completionszsh-git-prompt: Displays the current Git branch and repository status (modified files, staged files, etc.) directly in your terminal prompt.brew install zsh-git-prompt
6. Miscellaneous & Fun
Tools that add flavor to your terminal or serve specific niche purposes.
yt-dlp: A feature-rich fork ofyoutube-dl. It is actively maintained and offers much faster download speeds for saving video content locally.brew install yt-dlpghostscript: An interpreter for PDF and PostScript files. It is often used behind the scenes in scripts to merge or compress PDF files via the command line.brew install ghostscriptcmatrix: A joke app that displays the scrolling green text from The Matrix. Use it as a terminal screensaver to look like a Hollywood hacker when you step away from your desk.brew install cmatrix
When installing Zsh plugins via Homebrew, the installation path differs depending on your architecture (Intel vs. Apple Silicon). Be sure to use the correct path when adding the source command to your .zshrc.
For Apple Silicon (M1/M2/M3):
source /opt/homebrew/share/zsh-autosuggestions/zsh-autosuggestions.zshConclusion
The CLI tools listed here form the foundation of a highly efficient terminal workflow. You don't need to master all of them at once—try installing one or two that catch your eye and see how they fit into your daily routine. Happy hacking!