homebrew
Skill: homebrew
When to Use
Use this skill when the user asks to:
- Install software, a tool, an app, or a package on macOS
- Install a programming language, database, or dev tool (e.g. node, python, redis, postgres, go, rust)
- Install a GUI/desktop application via
brew install --cask(e.g. Chrome, Slack, Docker, VS Code) - Search for available packages or check if something is installable via Homebrew
- List installed packages or check what's currently on the system
- Update Homebrew or upgrade installed packages
- Uninstall / remove a package
- Diagnose or fix Homebrew issues (
brew doctor) - Tap a new Homebrew repository
- Check info or version of an installed package
Prerequisites
- macOS only — Homebrew is a macOS package manager (also works on Linux but this skill targets Mac)
- Homebrew must be installed. If not, install it first:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Available Tool
The brew tool is registered as a core tool. Use it directly:
| Action | Tool Input | Description |
|---|---|---|
install |
{"action": "install", "packages": ["node", "redis"]} |
Install one or more formulae |
install_cask |
{"action": "install_cask", "packages": ["google-chrome"]} |
Install GUI apps via cask |
uninstall |
{"action": "uninstall", "packages": ["node"]} |
Remove installed packages |
search |
{"action": "search", "query": "python"} |
Search for available packages |
info |
{"action": "info", "packages": ["node"]} |
Get detailed info about a package |
list |
{"action": "list"} |
List all installed formulae |
list_casks |
{"action": "list_casks"} |
List all installed cask apps |
update |
{"action": "update"} |
Update Homebrew itself |
upgrade |
{"action": "upgrade"} |
Upgrade all outdated packages |
upgrade |
{"action": "upgrade", "packages": ["node"]} |
Upgrade specific packages |
doctor |
{"action": "doctor"} |
Diagnose Homebrew issues |
tap |
{"action": "tap", "tap_name": "homebrew/cask-fonts"} |
Add a third-party repo |
outdated |
{"action": "outdated"} |
Show packages with updates available |
Procedure
- Check Homebrew is available: The
brewtool will automatically verify Homebrew is installed before running any action. If not found, it will return instructions to install it. - Determine what to install: Extract the package name(s) from the user's request. If unclear, use
ask_userto clarify. - Choose formulae vs cask: CLI tools use
install, GUI apps (Chrome, Slack, Docker Desktop, etc.) useinstall_cask. - Execute: Call the
brewtool with the appropriate action and parameters. - Report results: Confirm what was installed/updated/removed with version info where available.
Common Package Examples
CLI Tools & Languages (formulae)
| Request | Package Name |
|---|---|
| "install node" | node |
| "install Python" | python@3.12 or python |
| "install PHP" | php |
| "install Go" | go |
| "install Rust" | rust |
| "install Redis" | redis |
| "install PostgreSQL" | postgresql@16 or postgresql |
| "install MySQL" | mysql |
| "install Git" | git |
| "install FFmpeg" | ffmpeg |
| "install wget" | wget |
| "install jq" | jq |
| "install ripgrep" | ripgrep |
| "install Docker CLI" | docker |
GUI Apps (casks)
| Request | Cask Name |
|---|---|
| "install Chrome" | google-chrome |
| "install VS Code" | visual-studio-code |
| "install Slack" | slack |
| "install Docker Desktop" | docker (cask) |
| "install Spotify" | spotify |
| "install Figma" | figma |
| "install iTerm" | iterm2 |
| "install Rectangle" | rectangle |
| "install 1Password" | 1password |
| "install Cursor" | cursor |
Example
Example requests that trigger this skill:
install node and redis on my mac
I need ffmpeg installed
install google chrome
what packages do I have installed?
search for a markdown editor
update all my brew packages
is postgres installed?
install docker desktop
More from dalehurley/phpbot
desktop-control
Control the mouse, keyboard, and read screen content via accessibility. Use this skill when the user asks to click somewhere on screen, type text into an app, move the mouse, press keyboard shortcuts, read what's on screen, get the accessibility tree of the current window, automate desktop interactions, or control the computer.
39summarize-unread-emails
Retrieve and summarize all unread emails from your inbox, organized by category, sender, and date. Use this skill when the user asks to summarize unread emails, get an overview of unread messages, organize inbox emails, or review pending email communications. Provides a structured summary with categorization and timeline analysis.
20open-application
Open or launch applications on your computer by name. Use this skill when the user asks to open, launch, or start an application like Mail, Finder, Safari, Chrome, or any other installed macOS application. Works with both built-in and third-party applications.
10csv-tools
Parse, query, filter, sort, transform, and summarize CSV and JSON data files. Use this skill when the user asks to view a CSV, filter data, get statistics from a data file, convert CSV to JSON or vice versa, sort data, or analyze tabular data.
9get-weather-forecast
Retrieve current weather conditions and multi-day forecasts for any location using the wttr.in API. Use this skill when the user asks for weather information, weather forecast, current conditions, temperature, or weather updates for a specific city or location. Provides detailed weather data including temperature, wind, precipitation, and visibility.
8self-correct-reasoning
Analyze and correct previous responses when questioned or when contradictions are detected. Use this skill when the user challenges your reasoning, points out inconsistencies, or asks 'what makes you think that?' to help you review your logic, identify errors in your previous statements, and provide accurate corrections. Useful for maintaining consistency, admitting mistakes, and rebuilding trust through transparent self-evaluation.
8