Learn/Install · 3 min · updated 2026-04-26

Homebrew on Apple Silicon — the official default prefix is /opt/homebrew

On Apple Silicon Macs, Homebrew installs to /opt/homebrew by default — not /usr/local. The official docs and the Aura CLI both expect this prefix.

On Apple Silicon (M1, M2, M3, M4), Homebrew\'s default prefix is /opt/homebrew. This is documented in the official Homebrew Installation guide: Apple Silicon installs there because /usr/local is the Intel-mac convention and the two prefixes are intentionally separated to avoid silent ABI mixing.

Why Aura cares

Aura's install script and the aura doctor health check both detect the prefix automatically, but several agent-generated install scripts hard-code /usr/local/bin for the binary location, which silently fails on Apple Silicon. If aura is missing from your PATH after install, this is the most common reason.

Quick check

# Confirm the prefix
brew --prefix
# /opt/homebrew  on Apple Silicon
# /usr/local     on Intel

# Confirm aura is installed under it
ls "$(brew --prefix)/bin/aura"

# If your shell cannot find aura:
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile
source ~/.zprofile

Why two prefixes exist at all

Homebrew\'s formulae are compiled per-architecture. Mixing an Intel-built bottle with an arm64 binary at runtime is undefined behaviour. The split prefix lets a single machine host both (helpful when you\'re running an x86_64 Rosetta shell for legacy tools) without bottle-version collisions.

Aura\'s rule

Aura assumes /opt/homebrew on Apple Silicon, /usr/local on Intel, and respects $HOMEBREW_PREFIX as an override. Anything else fails fast with a readable error from aura doctor.

Questions

Where does Homebrew install on Apple Silicon?

/opt/homebrew is the default prefix on Apple Silicon Macs. Intel Macs use /usr/local. Both can exist on one machine after a migration, which is the usual reason a command resolves to a version you did not expect.

Why is Homebrew in /opt/homebrew instead of /usr/local?

The prefix moved with the architecture so Intel and Apple Silicon installations could coexist without colliding, and to sit outside the paths macOS itself manages. /usr/local remains valid for Intel and for Rosetta installs.

How do you check which Homebrew prefix you are using?

brew --prefix prints it. If which brew and brew --prefix disagree, or if the command is not found in a new shell, the PATH set up by brew shellenv is missing from your shell profile.