Environment Setup Guide
This article assumes you have never used a terminal (also called a "command line") and will start from the most basic operations.
What is a terminal? A terminal is a program that lets you operate your computer by typing text commands. Normally you click icons with a mouse to open software, but in a terminal, you type a command and press Enter, and the computer executes the corresponding operation.
What does "entering a command" mean? It means typing with your keyboard in the terminal window, then pressing Enter (the return key). All content in gray code blocks throughout this article are commands you need to enter.
This article is divided into a macOS section and a Windows section. Choose the section that matches your operating system -- you only need to read one.
macOS Section
All commands in this section work on both Apple Silicon (M1/M2/M3/M4 chips, arm64 architecture) and Intel Macs.
Step 1: Open the Terminal
macOS comes with a built-in program called Terminal, and you need to find it first.
Method 1 -- Using Spotlight Search (recommended):
- Press
Command+Space barsimultaneously; a search box will appear in the center of the screen - Type
Terminal - Click Terminal.app in the search results
Method 2 -- Open from the Applications folder:
- Open Finder (the smiley face icon on the far left of the Dock)
- Click Applications in the sidebar
- Open the Utilities folder
- Double-click Terminal.app
After opening, you'll see a black or white window with a line of text and a blinking cursor -- this is the terminal.
FAQ: Opening the Terminal
Q: Spotlight Search doesn't respond? Check the keyboard shortcut: open System Settings > Keyboard > Keyboard Shortcuts > Spotlight, and confirm the "Show Spotlight search" shortcut is Command + Space.
Q: The terminal shows "zsh" or "bash" after opening -- what does that mean? This is the name of the CLI shell the terminal is using. This is normal and does not affect subsequent operations.
Step 2: Install Homebrew
Homebrew is the most commonly used package manager on macOS. You'll need it to install Git, Node.js, Go, and other tools.
Enter the following command in the terminal, then press Enter:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"During installation, you'll be prompted to enter your computer's login password (no characters will appear on screen as you type -- this is normal). Type your password and press Enter. The installation takes approximately 2-10 minutes.
Extra step for Apple Silicon Macs (important):
After installation, the terminal will display "Next steps" instructions. You need to run the two commands it provides. Typically:
echo >> ~/.zprofile
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"Verify installation:
brew --versionYou should see output similar to:
Homebrew 4.x.xFAQ: Installing Homebrew
Q: It says "Command Line Tools" needs to be installed? This is normal. Homebrew will automatically install Apple's command-line developer tools, which may take an additional 5-15 minutes. Just wait patiently.
Q: brew --version says "command not found"? The Homebrew path hasn't taken effect. Run the commands from the "Extra step for Apple Silicon Macs" section above, then close the terminal window and open a new one.
Step 3: Install Git
Git is a version control tool used to download and manage project code.
brew install gitVerify installation:
git --versionYou should see output similar to:
git version 2.x.xFAQ: Installing Git
Q: It says "Already installed"? Your Mac already has Git pre-installed (macOS command-line tools include Git). You can use it directly -- skip to the next step.
Q: It says "brew: command not found"? This means Homebrew from Step 2 wasn't installed successfully. Go back to Step 2 and try again.
Step 4: Install Node.js
Node.js is a JavaScript runtime environment. Installing it also gives you npm (Node.js's package manager), which you'll need for installing tools like Claude Code.
brew install nodeVerify installation:
node --versionYou should see output similar to:
v22.x.xAlso verify npm:
npm --versionYou should see output similar to:
10.x.xFAQ: Installing Node.js
Q: node --version shows a very old version (e.g., v16)? There may be an older version on your system. Run brew upgrade node to upgrade to the latest version.
Q: npm --version says "command not found"? npm is installed along with Node.js. If the node command works but npm isn't found, try closing and reopening the terminal, or run brew reinstall node.
Step 5: Install Go
Go is the programming language used for Presto backend and template development.
brew install goVerify installation:
go versionYou should see output similar to:
go version go1.23.x darwin/arm64Note that
darwin/arm64in the output indicates you're using the Apple Silicon version, which is correct. If you're on an Intel Mac, it will showdarwin/amd64.
FAQ: Installing Go
Q: It shows darwin/amd64 but my Mac is M1/M2/M3/M4? This means you installed the Intel version of Homebrew (possibly running through Rosetta). It's recommended to uninstall and reinstall the native arm64 version of Homebrew.
Q: go version says "command not found" after installation? Close and reopen the terminal. If it still doesn't work, run brew link go.
Step 6: Install VS Code
VS Code (Visual Studio Code) is a code editor for writing and viewing code files.
brew install --cask visual-studio-codeVerify installation:
After installation, you can verify in the following ways:
- Search for
Visual Studio Codein Spotlight and open it - Or enter the following in the terminal:
code --versionYou should see output similar to:
1.9x.x
<a string of letters and numbers>
arm64FAQ: Installing VS Code
Q: code --version says "command not found"? Open VS Code, press Command + Shift + P, type shell command, select Shell Command: Install 'code' command in PATH, then reopen the terminal.
Q: It says "damaged and can't be opened" or is blocked by Gatekeeper? Run xattr -cr /Applications/Visual\ Studio\ Code.app in the terminal, then reopen.
Step 7: Install Claude Code
Claude Code is an AI programming assistant CLI tool from Anthropic. The Presto project uses it to assist development.
npm install -g @anthropic-ai/claude-codeVerify installation:
claude --versionYou should see output similar to:
1.x.xFAQ: Installing Claude Code
Q: It says "permission denied" or "EACCES"? This is an npm global installation permission issue. Run the following command to fix it:
sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}Enter your computer password, then re-run the installation command.
Q: Installation succeeded but the claude command isn't found? Run npm config get prefix to check the npm global installation path, and confirm its bin directory is in your terminal's search path. Usually closing and reopening the terminal resolves this.
Step 8: Install cc-switch
cc-switch is a model and configuration switching tool for Claude Code, making it easy to quickly switch between different AI models.
npm install -g cc-switchVerify installation:
cc-switch --helpYou should see output similar to:
Usage: cc-switch [options] [command]
...FAQ: Installing cc-switch
Q: It says "permission denied"? Same solution as Step 7's permission issue -- refer to the sudo chown command above.
Q: Installation succeeded but the command isn't found? Close and reopen the terminal. If it still doesn't work, run npm list -g to confirm the package is installed, then check if there's a bin/cc-switch file under the path output by npm config get prefix.
Step 9: Install get-shit-done
get-shit-done (GSD) is the workflow management tool used by the project for planning and executing development tasks.
npm install -g get-shit-doneVerify installation:
gsd --versionYou should see output similar to:
x.x.xFAQ: Installing get-shit-done
Q: It says "permission denied"? Same solution as Step 7's permission issue -- refer to the sudo chown command above.
Q: The gsd command isn't found? Close and reopen the terminal. You can also try running with the full path: $(npm config get prefix)/bin/gsd --version.
macOS Section Complete
Congratulations! You've completed the installation of all tools. Run the following command for a final check:
brew --version && git --version && node --version && npm --version \
&& go version && claude --version \
&& cc-switch --help | head -1 && gsd --versionIf each line produces normal output with no errors, the environment setup is complete.
Windows Section
This section applies to Windows 10 (version 1809 and above) and Windows 11.
Step 1: Open PowerShell
PowerShell is the terminal program on Windows where you'll enter commands.
Method 1 -- Using Search (recommended):
- Click the Search icon (magnifying glass) on the taskbar, or press the
Windows key - Type
PowerShell - Right-click Windows PowerShell in the search results and select Run as administrator
Method 2 -- Open from the Start menu:
- Right-click the Start button (Windows icon) at the bottom-left of the screen
- Select Windows PowerShell (Admin) or Terminal (Admin)
After opening, you'll see a window with a blue background, a path text line, and a blinking cursor.
Some installation commands in the following steps require administrator privileges. It's recommended to always run PowerShell as administrator.
FAQ: Opening PowerShell
Q: Can't find PowerShell? Both Windows 10 and 11 come with PowerShell pre-installed. If search doesn't find it, try pressing Windows + R, typing powershell, and pressing Enter.
Q: A dialog asks "Do you want to allow this app to make changes to your device"? Click Yes. This is a normal prompt when running as administrator.
Step 2: Verify winget Is Available
winget is Windows' package manager, used to install various development tools.
Windows 11 comes with winget pre-installed -- just verify it.
Windows 10 requires installing "App Installer" first: open the Microsoft Store, search for App Installer, and click Install or Update.
Verify winget is available:
winget --versionYou should see output similar to:
v1.x.xxxxxFAQ: winget Not Available
Q: It says "winget: The term 'winget' is not recognized as a command"?
- Open the Microsoft Store, search for App Installer, and install/update it
- After installation, close PowerShell and reopen it as administrator
Q: Microsoft Store won't open or can't install? You can manually download from GitHub: visit https://github.com/microsoft/winget-cli/releases, download the latest .msixbundle file, and double-click to install.
Step 3: Install Git
Git is a version control tool used to download and manage project code.
winget install Git.GitIf a confirmation prompt appears during installation, type Y and press Enter.
After installation, close PowerShell and reopen it (so newly installed commands can be recognized).
Verify installation:
git --versionYou should see output similar to:
git version 2.x.x.windows.xFAQ: Installing Git
Q: git --version says the command isn't recognized? Close and reopen PowerShell. If it still doesn't work, manually add Git to the system path: search for Environment Variables in the search bar, open Edit the system environment variables, and add C:\Program Files\Git\cmd to Path.
Q: winget says "a higher version is already installed"? This means Git is already installed and you can use it directly.
Step 4: Install Node.js
Node.js is a JavaScript runtime environment. Installing it also gives you npm (Node.js's package manager), which you'll need for installing tools like Claude Code.
winget install OpenJS.NodeJS.LTSAfter installation, close PowerShell and reopen it.
Verify installation:
node --versionYou should see output similar to:
v22.x.xAlso verify npm:
npm --versionYou should see output similar to:
10.x.xFAQ: Installing Node.js
Q: node --version says the command isn't recognized? Close and reopen PowerShell. If it still doesn't work, check if C:\Program Files\nodejs exists and add that path to the system environment variable Path.
Q: npm command not found but node works? Run where.exe npm to check if npm is in the path. If not, try reinstalling: winget install OpenJS.NodeJS.LTS --force.
Step 5: Install Go
Go is the programming language used for Presto backend and template development.
winget install GoLang.GoAfter installation, close PowerShell and reopen it.
Verify installation:
go versionYou should see output similar to:
go version go1.23.x windows/amd64
windows/amd64in the output indicates the Windows 64-bit version, which is correct.
FAQ: Installing Go
Q: go version says the command isn't recognized? Close and reopen PowerShell. If it still doesn't work, check if C:\Program Files\Go\bin is in the system environment variable Path.
Q: Installation prompts for a restart? Restart your computer as prompted, then open PowerShell and verify after rebooting.
Step 6: Install VS Code
VS Code (Visual Studio Code) is a code editor for writing and viewing code files.
winget install Microsoft.VisualStudioCodeVerify installation:
After installation, close PowerShell and reopen it, then type:
code --versionYou should see output similar to:
1.9x.x
<a string of letters and numbers>
x64FAQ: Installing VS Code
Q: code --version says the command isn't recognized? Close and reopen PowerShell. If it still doesn't work, search for Visual Studio Code in the search bar to confirm it's installed, then manually add C:\Users\<your-username>\AppData\Local\Programs\Microsoft VS Code\bin to the system environment variable Path.
Q: No desktop shortcut after installation? Search for Visual Studio Code in the search bar to find and open it.
Step 7: Install Claude Code
Claude Code is an AI programming assistant CLI tool from Anthropic. The Presto project uses it to assist development.
npm install -g @anthropic-ai/claude-codeVerify installation:
claude --versionYou should see output similar to:
1.x.xFAQ: Installing Claude Code
Q: It says "EACCES" or permission error? Make sure you're running PowerShell as administrator. If it still fails, try running:
npm config set prefix "$env:APPDATA\npm"Then re-run the installation command.
Q: Installation succeeded but the claude command isn't found? Run npm config get prefix to check the npm global installation path, and confirm that path is in the system environment variable Path. Usually closing and reopening PowerShell resolves this.
Step 8: Install cc-switch
cc-switch is a model and configuration switching tool for Claude Code, making it easy to quickly switch between different AI models.
npm install -g cc-switchVerify installation:
cc-switch --helpYou should see output similar to:
Usage: cc-switch [options] [command]
...FAQ: Installing cc-switch
Q: Permission error? Same solution as Step 7 -- make sure you're running PowerShell as administrator.
Q: Installation succeeded but the command isn't found? Close and reopen PowerShell.
Step 9: Install get-shit-done
get-shit-done (GSD) is the workflow management tool used by the project for planning and executing development tasks.
npm install -g get-shit-doneVerify installation:
gsd --versionYou should see output similar to:
x.x.xFAQ: Installing get-shit-done
Q: Permission error? Same solution as Step 7 -- make sure you're running PowerShell as administrator.
Q: The gsd command isn't found? Close and reopen PowerShell. You can also try running:
npx get-shit-done --versionIf this command produces output, the installation succeeded but the path hasn't taken effect. Add the path output by npm config get prefix to the system environment variable Path.
Windows Section Complete
Congratulations! You've completed the installation of all tools. Run the following command for a final check:
git --version; node --version; npm --version
go version; claude --version
cc-switch --help | Select-Object -First 1; gsd --versionIf each line produces normal output with no errors, the environment setup is complete.
