My personal dotfiles
This setup is mainly intended for macOS, but should also work under Linux or Windows (WSL2).
Clone the repo into your home directory and run the install script.
git clone git@github.com:darthsoup/dotfiles.git ~/dotfiles
cd ~/dotfiles
bash install
Dotfiles are symlinked into $HOME, so any edits in the repo take effect immediately.
To also install all packages and apps from the Brewfile, pass --brew:
bash install --brew
To update Znap and all of your plugins/repos simultaneously, run
znap pullNeovim uses lazy.nvim for plugin management. Plugins are installed automatically on the first launch.
To update all plugins, run inside Neovim:
:Lazy updateDon't forget to add your .gitconfig.local file
[user]
name = 'Your Name'
email = 'your@email.com'Global Claude Code settings live in claude/settings.json and are symlinked to ~/.claude/settings.json. Edits in the repo take effect immediately. Per-machine overrides belong in ~/.claude/settings.local.json, which is intentionally not tracked.
The statusLine in claude/settings.json points at claude/statusline.sh (also symlinked into ~/.claude/). It renders a single line showing the model name, a context usage progress bar, git status, rate limit usage, and session duration. The script reads Claude Code's JSON payload on stdin and requires jq and git (both installed via the Brewfile).
Custom slash commands (claude/commands/) and skills (claude/skills/) are symlinked as whole directories into ~/.claude/commands and ~/.claude/skills, so anything added under them in the repo is picked up on the next launch.
See the bundled LICENSE file for details.