macOS dev environment: zsh, terminals, editors, AI coding agents.
git clone https://github.com/pratapyash/dotfiles.git ~ /dotfiles
cd ~ /dotfiles
./bootstrap.sh # creates symlinks, sets up secrets file
source ~ /.zshrc
# required
brew install starship zsh-autosuggestions tree bat fd eza fzf
# terminals (optional)
brew install --cask cmux # AI agent terminal (ghostty-based)
brew install --cask iterm2
# cloud (optional)
brew install awscli
brew install --cask google-cloud-sdk
File
Purpose
.zshrc
core init: completion, keybindings, starship, conda, PATH
aliases.zsh
git, directory, eza, fzf, navigation shortcuts
tools.zsh
terminal launchers, AWS EC2, cmux functions
.zshrc.secrets
credentials -- gitignored, created from template by bootstrap
cmux functions (tools.zsh)
Command
Description
cx [path]
cmux workspace: claude + shell
cxa [path]
cmux workspace: 3 claude agents in split panes
cxc [path]
incremental: named workspace, pick from registry, split or tab
cxm
migrate running iTerm claude sessions to cmux (by session ID)
cxr
interactive workspace registry manager (fzf)
Dir
What
ghostty/
catppuccin mocha, transparency, monaco font
cmux/
workspace registry template, setup defaults
iterm2/
profiles, global prefs, keymaps, snippets, colors (allowlist export)
Dir
What
cursor/
settings, keybindings
claude/
global CLAUDE.md (gitignored), settings, agents, commands
starship/
prompt theme config
zsh/.zshrc shell init
zsh/aliases.zsh aliases + navigation
zsh/tools.zsh terminal launchers, cloud, cmux
zsh/.zshrc.secrets.template credentials template
ghostty/config terminal appearance
cmux/registry.json.template workspace registry template
cmux/setup-defaults.sh cmux preferences checklist
iterm2/profiles/*.json iterm2 profiles (DynamicProfiles format)
iterm2/prefs.xml iterm2 global prefs (allowlisted)
iterm2/snippets.plist iterm2 snippets
iterm2/colors/ iterm2 color presets
iterm2/export.py snapshot live iterm2 -> tracked files
iterm2/install.sh restore on fresh machine
iterm2/hooks/pre-commit leak-scanner hook (core.hooksPath)
cursor/settings.json editor settings
cursor/keybindings.json editor keybindings
claude/settings.json claude code config
claude/agents/*.md custom subagents
claude/commands/*.md custom slash commands
starship/starship.toml prompt config
bootstrap.sh symlink setup + security
Credentials live in zsh/.zshrc.secrets (gitignored). Bootstrap creates it from the template. Contains AWS SSH paths, EC2 instance details, and GCP credentials path.
cmux/registry.json is also gitignored (machine-specific project paths).