GNU Stow-managed configuration. Each top-level directory is an independent stowable package.
stow, git, gh. Optional per package: oh-my-zsh (for zsh).
cd ~/dotfiles && stow <package>Stow is idempotent: re-run after a pull to pick up new files.
| Package | Stows to | Depends on | Notes |
|---|---|---|---|
claude |
~/.claude/ |
Claude Code | Global skills, agents, hooks, CLAUDE.md |
pi |
~/.pi/agent/ |
pi coding agent | Guardrail extension for interactive pi |
zsh |
~/.zshrc |
oh-my-zsh, starship, fastfetch |
Adds ~/.local/bin to $PATH |
git |
~/.gitconfig |
— | |
tmux |
~/.tmux.conf |
tmux |
|
kitty |
~/.config/kitty/ |
terminal of choice | |
herdr |
~/.config/herdr/ |
herdr |
ctrl+s prefix; runtime sockets/logs stay local. Reload live: herdr server reload-config |
starship |
~/.config/starship.toml |
starship |
|
hyprland, quickshell, waybar |
~/.config/<tool>/ |
Linux only | |
yazi |
~/.config/yazi/ |
yazi |
Archived packages live in archived/ and are no longer stowed: ghostty, nvim, ralph.
brew install stow gh # macOS; pacman/apt equivalents on Linux
git clone <this-repo> ~/dotfiles
cd ~/dotfiles
stow zsh git tmux # baseline shell
stow claude # Claude tooling