What This Script Does
The quick-setup.sh script is designed for developers who want to get a fresh Mac into a productive state quickly. Unlike the full interactive setup, it shows no menus: it runs eight fixed steps and only stops to ask for your Git details and to sign in to GitHub.
1. Xcode Command Line Tools. If they are missing, the script starts Apple's installer and waits for you to press a key when it finishes.
2. Homebrew. If Homebrew is missing, the script downloads the official installer to a temporary file, checks that it looks like a bash script, and runs it. An existing Homebrew is left as it is. The brew environment is loaded for the current session only; this script does not edit your shell profile (brew-setup.sh does).
3. Brewfile packages. It runs brew bundle with the project's Brewfile. Out of the box that installs three CLI tools: gh (GitHub CLI), jq and tree. More tools and all GUI apps are listed as commented-out examples in the Brewfile's EDIT HERE block; nothing else installs unless you uncomment it.
4. VS Code code command. If code is not already on your PATH but Visual Studio Code is in /Applications, the script runs sudo mkdir -p /usr/local/bin and sudo ln -sf to link it there, so you will be asked for your password. If VS Code is not installed, the step is skipped; the script does not install VS Code.
5. VS Code extensions. If code is available, it installs the extensions listed in dotfiles/vscode/extensions.txt: by default GitLens (eamodio.gitlens) and Code Spell Checker (streetsidesoftware.code-spell-checker).
6. Git configuration. It asks whether to configure Git. If you say yes, it prompts for your name and email and writes them, plus the Git LFS filter settings, to your global ~/.gitconfig. It does not install git-lfs itself; add brew "git-lfs" to the Brewfile if you need it. It asks every run, even if a name and email are already set.
7. GitHub CLI. If gh is installed and not yet signed in, it runs gh auth login, which walks you through signing in to GitHub.
8. Summary. It lists what was installed or configured and what was already present.
Use --dry-run to preview every step without changing anything. Real runs are logged to ~/Library/Logs/QuickSetup.log.