Day 0 — Prerequisites
This chapter installs every tool you’ll use for the rest of the guide. Run the commands in order. Each one is safe to re-run if interrupted.
You’ll be working in Terminal. Open it from Spotlight (⌘ Space → “Terminal”).
0. Check what you already have
Some tools may already be on your Mac from prior work. Don’t reinstall things you already have — you may end up with two copies fighting each other (this happens most often with Claude Code).
Run each of these and read the output:
brew --version 2>/dev/null && echo "✓ Homebrew installed" || echo "✗ Homebrew missing"
node --version 2>/dev/null && echo "✓ Node installed" || echo "✗ Node missing"
git --version 2>/dev/null && echo "✓ git installed" || echo "✗ git missing"
gh --version 2>/dev/null | head -1 && echo "✓ GitHub CLI installed" || echo "✗ GitHub CLI missing"
claude --version 2>/dev/null && echo "✓ Claude Code installed" || echo "✗ Claude Code missing"
wrangler --version 2>/dev/null && echo "✓ Wrangler installed" || echo "✗ Wrangler missing" For each tool the script reports as already installed, skip its install step below and move to the next one. The verify steps in each section are still worth running.
If claude reports a version, also run which -a claude to see if there are multiple installs:
which -a claude If two or more paths appear, you have duplicate installs. Pick the one you want to keep (Homebrew installs to /opt/homebrew/bin/claude; the native installer puts it at ~/.local/bin/claude) and remove the other per the uninstall instructions.
1. Homebrew
Homebrew is the package manager you’ll use to install most of the other tools.
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" The installer pauses to explain what it will do. Press Return to continue. It will ask for your Mac password — that’s expected.
Verify:
brew --version You should see something like Homebrew 4.x.x.
2. Node.js
Node powers the website’s build process.
brew install node Verify:
node --version You should see something like v24.x.x or higher. Astro (the framework you’ll use) recommends even-numbered Node versions; if you happen to land on an odd-numbered one (e.g. v25), builds still work but you may see a warning.
3. git
git ships with Apple’s developer tools. The first time you try to use it, macOS will offer to install them. Trigger that prompt now:
git --version If a dialog appears asking to install developer tools, click Install and wait. Re-run the command above to confirm it now reports a version.
4. GitHub CLI
The GitHub CLI (gh) lets you create repositories and pull requests from the terminal without leaving Claude Code.
brew install gh Sign in to your GitHub account:
gh auth login Choose: GitHub.com → HTTPS → Login with a web browser. A code appears in the terminal; copy it, press Return, paste the code into the browser tab that opens, and approve.
Verify:
gh auth status You should see Logged in to github.com account <your-username>.
4a. Create your projects folder
You’ll want a single, predictable folder to check out and create GitHub projects in. The convention this guide uses is ~/ClaudeCode.
mkdir -p ~/ClaudeCode Every chapter that creates or clones a repo assumes you’re starting in ~/ClaudeCode. If you already use a different folder for code (e.g. ~/Code or ~/dev), it’s fine to substitute it — just be consistent.
5. Claude Code
Claude Code is the AI assistant you’ll work with. Install it as a Mac app via Homebrew:
brew install --cask claude-code Verify:
claude --version Run Claude Code’s self-check:
claude doctor The first time you launch Claude Code, run claude from a terminal in any folder and follow the browser sign-in prompts. You need a Pro, Max, Team, or Enterprise account.
6. Superpowers plugin
Superpowers is a Claude Code plugin that adds disciplined workflow skills (brainstorming, planning, debugging). Install it from inside Claude Code itself.
Open Claude Code:
claude In the Claude Code prompt, type:
/plugin install superpowers@claude-plugins-official Wait for confirmation that the plugin installed. You can quit Claude Code with Ctrl+C (or type /exit) once it’s done.
7. Nexus-Council MCP
Nexus-Council gives Claude Code access to a library of expert personas (Brand Strategist, Conversion Copywriter, etc.) you’ll use later for design and copy review.
Fast path: copy the config from Claude Desktop
If you already have Nexus-Council working in Claude Desktop, you can skip the entire handoff. Here’s why it’s safe:
- The bridge file (
mcp-nexus-council-bridge.mjs) is already on your Mac — Claude Code can use the same one Claude Desktop is using. - Your API key is in your macOS keychain, not in the config file. The bridge reads it at runtime via
security find-generic-password. So both Claude Desktop and Claude Code pick up the same key automatically — nothing to re-paste.
The only thing that differs between Desktop and Code is which JSON file points at the bridge. Claude Desktop reads ~/Library/Application Support/Claude/claude_desktop_config.json; Claude Code reads ~/.claude.json. Copy the relevant entry across.
Open Claude Code and paste:
Read
~/Library/Application Support/Claude/claude_desktop_config.jsonand find the entry undermcpServerswhose command path mentionsnexus-councilorpersonas. Copy that entire entry into~/.claude.jsonunder its ownmcpServersblock (creating the file or merging into the existingmcpServersif one already exists). Preserve the same key name (e.g.nexus-council). After writing, show me the resultingmcpServersblock in~/.claude.jsonso I can confirm it copied correctly.
Quit and restart Claude Code. Skip ahead to the verification step at the end of this section.
If Claude can’t find the entry, or if you’ve never set up Nexus-Council in Claude Desktop, follow the from-scratch path below instead.
From-scratch path
Setup is a four-step handoff from Thomas:
- Thomas issues you an API key and shares it via 1Password.
- Thomas sends you the bridge file
mcp-nexus-council-bridge.mjs. Save it to~/bin/mcp-nexus-council-bridge.mjs(create the folder if needed):
mkdir -p ~/bin - Install the API key into your Mac keychain. Replace
megwith whatever identity Thomas tells you, and paste the actual key inside the single quotes:
security add-generic-password -s mcp-nexus-council -a meg -w 'PASTE_KEY_HERE' - Tell Claude Code about the MCP server. Open
~/.claude.jsonin any editor and add (or merge into) anmcpServersblock:
{
"mcpServers": {
"nexus-council": {
"command": "node",
"args": ["/Users/YOUR_USERNAME/bin/mcp-nexus-council-bridge.mjs"],
"env": {
"PERSONAS_WORKER_URL": "https://mcp-nexus-council.tiny-term-27a1.workers.dev/mcp",
"PERSONAS_IDENTITY": "meg"
}
}
}
} Replace YOUR_USERNAME with your Mac username (run whoami to see it). Replace meg with the identity Thomas gave you.
Quit and restart Claude Code.
Verify
Run Claude Code and ask it: “List the available Nexus-Council personas.” If it returns a list (Brand Strategist, Conversion Copywriter, and so on), you’re done.
When everything above is checked, move on to chapter 01.