Vibe coding setup for macOS
Oct 24, 2026
Post 2 of Set up your Mac or Windows machine for vibe coding. You need: macOS 15 or newer, the ability to type your password, ~60–75 minutes, and a free GitHub account. If terminal, prompt, clone and commit are new words, read the primer first. Windows user? Your track is here.
Do the steps in order — each one assumes the ones before it. Open
Terminal (⌘-Space, type Terminal, Enter) and leave it open for the whole
post.
1. Homebrew — the installer for everything else
Homebrew is the de-facto package manager on macOS: one command installs a tool, and one source of truth instead of forty download pages.
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
It asks for your Mac password (typing is invisible — that's normal) and shows
what it will do before doing it. At the end it prints "NEXT STEPS" with two
or three lines to copy into Terminal — do exactly that, they put brew where
your shell can find it. Then check it worked:
brew --version
When this goes wrong:
zsh: command not found: brew— you skipped (or closed the window before running) the "NEXT STEPS" lines, or this window predates them. Run the NEXT STEPS commands, or simply open a new Terminal window and trybrew --versionagain.
Source: docs.brew.sh/Installation · checked 2026-10-24 · ⏳ clean-VM stamp pending
2. git — and introduce yourself to it
brew install git
git config --global user.name "Your Name"
git config --global user.email "you@example.com"
git --version
Use the name and email you want attached to your work (the GitHub email is a good choice). This isn't an account login — it's the signature git stamps on every commit you save.
Source: git-scm.com · checked 2026-10-24 · ⏳ clean-VM stamp pending
3. A font with icons in it (MesloLGS NF)
The fancy prompt you'll build in steps 5–6 uses small symbols — arrows, a git branch — that need a font which actually contains them. Install the one the prompt theme recommends before configuring it:
- Download these four files from the
Powerlevel10k README:
MesloLGS NF Regular.ttf,Bold.ttf,Italic.ttf,Bold Italic.ttf. - Double-click each one and click Install.
Now teach Terminal.app to use it: Terminal → Settings → Profiles → Text → Font → Change… → MesloLGS NF. (On older macOS, Settings is called Preferences.)
Source: github.com/romkatv/powerlevel10k (Fonts) · checked 2026-10-24 · ⏳ clean-VM stamp pending
4. Oh My Zsh — the framework for your shell
The Mac's default shell is already zsh; Oh My Zsh makes it pleasant and plugin-friendly. Say yes when it offers to make zsh your default shell.
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
Source: ohmyz.sh · checked 2026-10-24 · ⏳ clean-VM stamp pending
5. Two plugins you'll feel every day
zsh-autosuggestions suggests the rest of a command in grey as you type (→ to accept); zsh-completions fills in the rest with Tab.
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-completions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-completions
nano ~/.zshrc
In nano, find the line starting with plugins= and make it read:
plugins=(git zsh-autosuggestions zsh-completions)
Save with Ctrl-O, Enter, exit with Ctrl-X.
Source: github.com/zsh-users/zsh-autosuggestions, github.com/zsh-users/zsh-completions · checked 2026-10-24 · ⏳ clean-VM stamp pending
6. Powerlevel10k — the prompt that pays rent
This theme shows, right in the prompt: where you are, the git status of any project folder, and whether the last command failed. (It's the most popular zsh theme by a wide margin; its development has slowed, but it is stable and ubiquitous.)
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
nano ~/.zshrc
Find the line ZSH_THEME="robbyrussell" and change it to:
ZSH_THEME="powerlevel10k/powerlevel10k"
Save (Ctrl-O, Enter), exit (Ctrl-X), then load the new setup:
exec zsh
The configuration wizard starts on its own and asks about visual styles —
pick Rainbow and accept the suggested answers; every choice can be redone
any time with p10k configure. When it finishes you have the prompt from the
top of this post's promise.
When this goes wrong: little boxes or question marks in the prompt — the font from step 3 isn't active in this window's profile. Redo step 3's Terminal font setting, then quit and reopen Terminal.
Source: github.com/romkatv/powerlevel10k (Oh My Zsh install) · checked 2026-10-24 · ⏳ clean-VM stamp pending
7. VS Code — a comfortable place to look at code
You won't code by hand in this series, but when the agent edits files you'll want to inspect them in something nicer than a wall of terminal text. VS Code is free and the safest default.
brew install --cask visual-studio-code
Open it from Applications like any Mac app (you won't need its terminal integration in this series).
Source: code.visualstudio.com · checked 2026-10-24 · ⏳ clean-VM stamp pending
8. SSH key + Keychain — prove to GitHub it's you
An SSH key is a pair of files: the public half you give to GitHub, the private half that never leaves your Mac. Generate your pair, give GitHub the public half, and let macOS Keychain remember the private one's passphrase so you almost never type it.
ssh-keygen -t ed25519 -C "you@example.com"
Press Enter to accept the location, and set a passphrase (Keychain will carry it for you). Then teach macOS to store it in Keychain:
cat > ~/.ssh/config <<'EOF'
Host github.com
AddKeysToAgent yes
UseKeychain yes
IdentityFile ~/.ssh/id_ed25519
EOF
ssh-add --apple-use-keychain ~/.ssh/id_ed25519
Now put the public half on GitHub: copy it, open
github.com/settings/keys → New SSH key →
title it MacBook, paste, Add SSH key.
pbcopy < ~/.ssh/id_ed25519.pub
Finally, the proof — this must say hi to you, by username:
ssh -T git@github.com
When this goes wrong:
git@github.com: Permission denied (publickey)— GitHub doesn't recognize the key. Almost always one of: the public key never got pasted on the keys page (check for a duplicate/typo), or the private key isn't loaded — runssh-add --apple-use-keychain ~/.ssh/id_ed25519and tryssh -T git@github.comagain.
Source: docs.github.com — connecting to GitHub with SSH · checked 2026-10-24 · ⏳ clean-VM stamp pending
Checkpoint — and the payoff
You should now have: a brew --version that prints, a git --version that
prints, a prompt worth a screenshot, and a ssh -T git@github.com that says hi.
That's every dependency for the last post:
→ Your first agent run (OpenCode + OpenRouter)
Stuck on a step? Open an issue at github.com/napjoseph/napjose.ph with the step number and the exact error text — it goes straight into the verification log.