git clone https://github.com/abeisleem/dotfiles.git ~/repos/dotfiles
cd ~/repos/dotfiles
chmod +x install.sh
./install.shinstall.sh will:
- Install Homebrew (if needed) and all packages from
Brewfile - Create symlinks for all dotfiles
Copy the example file and add your secrets:
cp .zshrc.local.example ~/.zshrc.local
# Edit ~/.zshrc.local with your actual valuesThis file is automatically sourced by .zshrc if it exists and is never tracked by git.
OpenCode is installed with Homebrew and run as opencode. The oc shell alias also runs opencode.
brew install anomalyco/tap/opencode-v2.config/opencode/ contains the native configuration used by OpenCode. scripts/symlink.sh installs it at ~/.config/opencode.
dotfiles/
├── README.md
├── install.sh # Main installer (runs brew-install.sh + symlink.sh)
├── Brewfile # Homebrew packages
├── .gitignore
├── .zshrc
├── .zshrc.local.example # Template for secrets
├── .gitconfig
├── .gitignore
├── .tmux.conf
├── .agents/
│ └── skills/ # Skills installed from the `skills` npm CLI package
├── .config/
│ ├── opencode/ # Native OpenCode configuration
│ │ ├── commands/ # Custom OpenCode commands
│ │ └── skills/ # Custom handwritten OpenCode skills
└── scripts/
├── brew-install.sh # Installs Homebrew + packages
└── symlink.sh # Creates symlinks
~
├── .zshrc -> dotfiles/.zshrc
├── .gitconfig -> dotfiles/.gitconfig
├── .tmux.conf -> dotfiles/.tmux.conf
├── .config/
│ ├── opencode/
│ │ ├── opencode.json -> dotfiles/.config/opencode/opencode.json
│ │ ├── opencode-notifier.json -> dotfiles/.config/opencode/opencode-notifier.json
│ │ ├── commands/ -> dotfiles/.config/opencode/commands/
│ │ └── skills/ -> dotfiles/.config/opencode/skills/
│ └── zed/
│ └── settings.json -> dotfiles/.config/zed/settings.json
├── .agents/
│ └── skills/ -> dotfiles/.agents/skills/
└── .zshrc.local # Secrets (not in git)
.zshrc- Zsh configuration with Oh My Zsh, fnm, and custom functions.gitconfig- Git settings.tmux.conf- Tmux configuration.config/- App configurations (opencode, zed).agents/skills/- Skills installed from theskillsnpm command-line package.config/opencode/skills/- Custom handwritten OpenCode skills.config/opencode/commands/- Custom OpenCode slash commands