My personal dotfiles for macOS development environment setup.
- 🚀 Automated setup using Ansible
- 📦 Package management with Homebrew
- 🔧 Development tools version management with mise
- 🐟 Fish shell configuration
- 🤖 AI development tools (Claude Code, MCP servers)
- macOS (tested on macOS 14.x)
- Git
For a fresh macOS installation:
# 1. Install Xcode Command Line Tools
xcode-select --install
# 2. Clone this repository
git clone https://github.com/[your-username]/dotfiles.git ~/git/dotfiles
cd ~/git/dotfiles
# 3. Run the setup
make setup
# 4. Change default shell to fish
chsh -s /opt/homebrew/bin/fish
# 5. Restart your terminal- Node.js 20.18.2
- Python 3.13.5
- Ruby 3.3.4
- Go 1.23.4
- @playwright/mcp - Browser automation MCP server
- @steipete/peekaboo-mcp - Screen capture MCP server
- @upstash/context7-mcp - Up-to-date documentation MCP server
- aws-cdk - AWS Cloud Development Kit
- Claude Code - AI code assistant (installed via native installer)
- fish (shell)
- gpg (encryption)
- gawk (text processing, required for Node.js)
- peco (interactive filtering)
- uv (Python package manager)
- direnv (directory-specific env vars)
- gh (GitHub CLI)
- tmux (terminal multiplexer)
- jj (Jujutsu version control)
- mkcert (local TLS certificates)
- gitleaks (secret scanning)
- Docker
- Dropbox
- Google Drive
- Zed (editor)
- Karabiner Elements (keyboard customization)
- Session Manager Plugin (AWS SSM)
.
├── .config/
│ └── fish/ # Fish shell configuration
├── ansible/
│ ├── playbook.yml # Main Ansible playbook
│ └── roles/ # Ansible roles
│ ├── homebrew/ # Homebrew packages
│ ├── homebrew_cask/ # GUI applications
│ ├── mise/ # Development tools
│ └── dotfiles/ # Dotfiles linking
├── .gitconfig # Git configuration
├── .gitignore_global # Global gitignore
├── .mise.toml # mise configuration (single source of truth)
├── Makefile # Setup and update targets
└── CLAUDE.md # Claude Code project instructions
-
Configure Git with your information:
git config --global user.name "Your Name" git config --global user.email "your.email@example.com"
-
Set up SSH keys for GitHub:
ssh-keygen -t ed25519 -C "your.email@example.com"
To update your environment:
cd ~/git/dotfiles
git pull
make updateIf you encounter tap-related errors:
brew untap [problematic-tap]If mise shows trust warnings:
mise trust ~/.mise.tomlMIT