Blog

/

setup


10 min read
2026.03.31

My Setup

A guide to my future self: the tools, apps, CLI, and preferences I use daily as a developer in 2026

by Nahuel Scotti

Last update: October 23, 2026

This is a snapshot of my development setup as of March 2026. A guide to my future self — so when I inevitably nuke my machine or get a new one, I know exactly what to install and how I like things.

First Things First

Install (or reinstall) the Xcode Command Line Tools — required for git, compilers, and Homebrew:

sudo rm -rf /Library/Developer/CommandLineTools
sudo xcode-select --install

Then install Homebrew — the package manager everything else depends on:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Create the source code folder:

mkdir -p ~/src && cd ~/src

Configure git with your name and email:

git config --global user.email "your@email.com"
git config --global user.name "your-username"

Don't forget: Enable the SSH agent in 1Password (Settings → Developer → Use as SSH Agent) so git uses your 1Password-stored SSH keys for authentication.

Hardware

  • Computer: MacBook Pro (M3 Pro, 11-core CPU / 14-core GPU, 36 GB RAM)
  • Display: One 27" monitor as primary, sometimes a 24" rotated as secondary
  • Keyboard: KBParadise V60 Type R — 60% mechanical. Caps Lock remapped to Control
  • Mouse: Logitech MX Master 3s — quiet clicks, fast scrolling, multi-device

Terminal & Shell

Shell: Zsh with Oh My Zsh.

Prompt: Starship — fast, cross-shell prompt written in Rust. Replaced Powerlevel10k. Just the directory, git status, and command execution time. No clutter.

Plugins:

  • git — standard git aliases
  • zsh-autosuggestions — fish-like suggestions as you type
  • zsh-syntax-highlighting — colors for valid/invalid commands
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
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-syntax-highlighting ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
brew install starship
echo 'eval "$(starship init zsh)"' >> ~/.zshrc

CLI Tools

I've replaced most of the default Unix tools with faster, modern alternatives:

DefaultReplacementWhy
findfdSimpler syntax, respects .gitignore
grepripgrep (rg)Blazing fast, respects .gitignore
catbatSyntax highlighting, git integration
lsezaBetter defaults, tree view
cdzoxide (z)Frecency-based directory jumping
vimNeovimAsync, Lua config, better plugins

Other essentials:

  • Turborepo — monorepo build system. Installed globally via pnpm add turbo --global for running turbo build, turbo lint, etc. from anywhere.
  • jq — lightweight command-line JSON processor. Indispensable for piping API responses and config files.
  • fzf — fuzzy finder for everything. Ctrl+R for history, Ctrl+T for files.
  • delta — beautiful git diffs in the terminal. Set as the default git pager.
  • gh — GitHub CLI. PR creation, reviews, issue management without leaving the terminal.
  • tig — text-mode interface for git. Great for browsing history.
  • lazygit — terminal UI for git. Staging hunks, rebasing, and resolving conflicts without memorizing flags.
  • Helix — post-modern modal editor. LSP and tree-sitter out of the box, zero config.
  • micro — modern terminal editor with sane keybindings. For quick edits when I don't want modal.
  • ffmpeg — convert, trim, and compress audio and video.
  • yt-dlp — download audio and video from pretty much anywhere.
  • cloudflared — Cloudflare Tunnel client. Expose local services without opening ports.
  • ngrok — tunnels to localhost. Handy for testing webhooks.
  • AWS CLI — official Amazon AWS command-line interface.
  • actionlint — static checker for GitHub Actions workflow files.
  • 1Password CLI — inject secrets into scripts and env files without hardcoding them.
  • Mole — deep clean and optimize the Mac from the terminal.
  • glow — render markdown in the terminal. Great for reading docs and READMEs without leaving the CLI.
  • thefuck — auto-corrects previous console commands.
  • mas — Mac App Store CLI. Install App Store apps from the terminal.
  • Vercel CLI — deploy, manage env vars, and interact with the Vercel platform from the terminal.
  • Supabase CLI — local development, migrations, and management for Supabase projects.
  • Worktrunk — git worktree manager with commit message generation and hooks. Replaced my ad-hoc worktree scripts entirely.
brew install neovim fd ripgrep bat eza fzf zoxide git-delta gh tig glow thefuck mas vercel-cli supabase jq lazygit helix micro ffmpeg yt-dlp cloudflared awscli actionlint mole worktrunk
brew install --cask ngrok 1password-cli

Shell Aliases

The ones I can't live without:

alias vim="nvim"
alias find="fd"
alias grep="rg"
alias pn="pnpm"
alias cc="claude --thinking-display summarized --permission-mode auto --model opus"

Node.js & Package Management

  • Node: v24 LTS via fnm (Fast Node Manager). It auto-switches versions when you cd into a project with a .node-version file.
  • pnpm: My default package manager. Fast, disk-efficient, great monorepo support.
brew install fnm pnpm
fnm install 24
fnm default 24
pnpm add turbo --global

Editors

VS Code

My primary editor.

Neovim

Running v0.11+ with a Kickstart.nvim-based config and Lazy as the plugin manager. It lives at ~/.config/nvim/.

Disable the macOS press-and-hold accent picker so key repeat works — essential for holding h/j/k/l to navigate:

defaults write -g ApplePressAndHoldEnabled -bool false

AI-Assisted Development

Claude Code

Heavily integrated into my workflow. I run it from the terminal with cc (aliased to claude).

Key setup:

  • LSP enabled for better code intelligence
  • Multiple plugins: TypeScript LSP, Context7, Playwright, Chrome DevTools
  • Superpowers — skills for planning, debugging, TDD, code review, and more.
brew install --cask claude-code

AI Skills

Reusable, composable instructions that extend Claude Code with domain expertise. I lean on a few collections:

  • Superpowers — planning, debugging, TDD, code review, brainstorming.
  • Agent Skills — Addy Osmani's collection covering TDD, incremental implementation, shipping, code review, and more.
  • Compound Engineering — Every's plugin for planning, working, and reviewing in a loop where each task makes the next one easier.
  • Impeccable — frontend design skills: critique, polish, typography, layout, and motion.
  • PM Skills — product management toolkit: discovery, strategy, PRDs, OKRs, and launch planning.
  • Worktrunk — the Claude Code plugin that pairs with the CLI for worktree workflows.

MCP Servers

  • Context7 — up-to-date library docs pulled straight into context.
  • fff — fast, frecency-ranked file search. Replaced the default search tools.
  • Linear, Notion, and Vercel — work with issues, docs, and deployments without leaving the session.

Other AI Tools

  • Orca — runs multiple coding agents side by side, each in its own git worktree.
  • opencode — open source AI coding agent for the terminal. Good for trying other models.
  • CodeBurn — shows where my AI coding tokens go, by task, tool, model, and project.
brew install anomalyco/tap/opencode codeburn

RTK (Rust Token Killer)

A token-optimized CLI proxy that sits between Claude Code and shell commands. Saves 60-90% on tokens for dev operations. It rewrites commands transparently via hooks — e.g., git status becomes rtk git status with filtered output.

Check savings with rtk gain and discover optimization opportunities with rtk discover.

brew install rtk

Ruby

Only required for work. Ruby 4.0 via rbenv.

brew install rbenv
rbenv install 4.0.0
rbenv global 4.0.0

Fonts

All installed via Homebrew (brew install --cask):

brew install --cask font-commit-mono font-fira-code font-geist-mono font-hack font-iosevka font-jetbrains-mono font-jetbrains-mono-nerd-font font-maple-mono-nf font-martian-mono font-meslo-lg-nerd-font font-monaspace font-scientifica font-silkscreen font-source-code-pro

macOS Apps

Productivity

  • Raycast — launcher, snippets, clipboard history. Replaced Spotlight entirely.
  • 1Password — password manager.
  • Notion — docs and project wikis.
  • Linear — issue tracking.
  • Slack — team communication.
  • Amphetamine — keeps the Mac awake when needed.
  • Itsycal — tiny menu bar calendar.

Development

  • Claude — AI assistant, desktop app.
  • Warp — AI-powered terminal.
  • Visual Studio Code — editor for specific tasks.
  • Zed — fast native editor.
  • OrbStack — Docker alternative. Faster, lighter, native ARM.
  • Hoppscotch — API testing. Open source Postman alternative.
  • Gitify — GitHub notifications in the menu bar.
  • ForkLift — dual-pane file manager with SFTP.

Design

  • Figma — UI design and prototyping.
  • Affinity — Designer, Photo, and Publisher. My Adobe replacement.
  • Pica — font manager. Preview, organize, and activate fonts.
  • Shottr — screenshot tool with annotations and OCR.
  • ImageOptim — lossless image compression.
  • DaVinci Resolve — video editing, color grading, and audio post.
  • Cap — open source Loom alternative for quick screen recordings.

Browsers

Chrome Extensions

  • Refined GitHub — simplifies the GitHub interface and adds useful features.

Media

  • Spotify — music.
  • IINA — video player. Modern, native, and miles better than VLC.
  • Jellyfin — self-hosted media server client.
  • NetNewsWire — RSS reader. Free, native, fast.

Communication

  • WhatsApp — messaging.
  • Discord — communities and voice chat.
  • Zoom — video calls. I hate it, but needed for work.

Utilities

  • Keka — file archiver. Handles everything.
  • Dropbox — file sync.
  • Transmission — lightweight torrent client.
  • Karabiner-Elements — keyboard customizer for remaps beyond what macOS allows.
  • SwiftBar — put the output of any script in the menu bar.
  • Lunar — adaptive brightness for external displays.
  • MonitorControl — control external monitor brightness and volume with the keyboard.

Music Production

Games

  • Little Navmap — flight planner and navigation tool for flight simulators.
brew install --cask raycast 1password notion linear-linear slack itsycal claude warp visual-studio-code zed orbstack hoppscotch gitify forklift figma shottr imageoptim cap google-chrome firefox tor-browser spotify iina jellyfin-media-player netnewswire whatsapp discord zoom keka dropbox transmission karabiner-elements swiftbar lunar monitorcontrol native-access

Mac App Store apps via mas:

mas install 937984704  # Amphetamine
mas install 634148309  # Logic Pro

Not available via Homebrew or mas: AmpliTube 5, TONEX, Orca, and DaVinci Resolve (download it from Blackmagic). Safari is built-in.

Preferences & Philosophy

  • Gatekeeper disabled: I allow apps from anywhere — many tools I use aren't code-signed.
sudo spctl --master-disable

To re-enable: sudo spctl --master-enable

  • Minimal UI: I prefer lean prompts, dark themes, and no unnecessary visual noise.
  • Speed over aesthetics: Tools are chosen for performance first. If it's slow, it's gone.
  • Automation: If I do it more than twice, it gets aliased or scripted.
  • Modern replacements: I actively replace legacy Unix tools with faster Rust/Go alternatives.
  • Monorepo by default: Shared code, unified tooling, single source of truth.
  • Wallpapers: Raycast Wallpapers — clean, minimal, updated regularly.
curl -o ~/Pictures/raycast-cube.heic https://misc-assets.raycast.com/wallpapers/cube_prod.heic
osascript -e 'tell application "System Events" to tell every desktop to set picture to POSIX file "'$HOME'/Pictures/raycast-cube.heic"'

Trying

Things I'm testing but not sure if they'll stick:

  • Clearly — native macOS markdown editor.
  • Tailscale — zero-config VPN built on WireGuard. Mesh networking for personal devices.
  • Tolaria — minimal markdown editor.

That's the setup. If you're reading this, future me — you're welcome.

  • #cli
  • #macos
  • #productivity
  • #setup
  • #tools