macOS dotfiles managed with GNU Stow. Most of it is my Claude Code setup β
CLAUDE.md, settings.json, custom skills, and subagents β plus the usual
zsh, Brewfile, and macOS defaults.
claude/for Claude Code global configuration (CLAUDE.md,settings.json,statusline.sh,skills/,agents/)codex/for Codex CLI configuration (AGENTS.mdβ symlink toCLAUDE.md)zsh/for shell configurationBrewfilefor package reproducibilitymacos-defaults.shfor common macOS preferences
Machine-specific secrets stay outside the repo:
~/.zshrc.local
Required:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew install stowOptional but recommended:
brew bundle --file Brewfile
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"The shell config is defensive now, so missing optional tools will not break shell startup.
./install.sh
source ~/.zshrcWhat install.sh does:
- stows tracked packages into
$HOME - detects recursive conflicts before linking
- backs up replaced files to
~/.dotfiles-backups/<timestamp>/ - creates
~/.zshrc.localwhen missing
Install packages from the tracked Homebrew bundle:
brew bundle --file BrewfileReview the script first, then run it manually if you want those defaults:
chmod +x macos-defaults.sh
./macos-defaults.shExample ~/.zshrc.local:
export GITHUB_TOKEN="your_token_here"
export OPENAI_API_KEY="your_key_here"claude/.claude/settings.json carries agent-hooks for the orca IDE,
which is installed separately (not by this repo). Each hook is guarded with -f/-r/-x, so it
no-ops on machines where orca is absent.
Installing or launching orca can replace the ~/.claude/settings.json stow symlink with a real
file (re-injecting its hooks). To restore the symlink:
rm ~/.claude/settings.json # if orca left a real file here
git checkout claude/.claude/settings.json # if it dirtied the tracked file
stow --restow --target="$HOME" claude # relink into $HOMEdotfiles/
βββ Brewfile
βββ CLAUDE.md # editing notes for coding agents working on this repo
βββ LICENSE
βββ claude/
β βββ .claude/
β βββ CLAUDE.md
β βββ settings.json
β βββ statusline.sh # custom 2-line status line (context + rate-limit gauges)
β βββ agents/
β β βββ aesthetic-critic.md # taste/craft critique of already-captured UI screenshots
β βββ skills/
β βββ hyper-autopilot/ # fire-and-forget autonomous-loop runner over hyperclaude's hyper-auto (scheduled/immediate; local, non-GitHub)
β βββ codex-image/ # codex image_generation skill (single/batch/parallel)
β βββ visual-review/ # Playwright MCP rendering critique (reads per-repo visual-review-app companion)
βββ codex/
β βββ .codex/
β βββ AGENTS.md -> ../../claude/.claude/CLAUDE.md
βββ install.sh
βββ macos-defaults.sh
βββ zsh/
β βββ .zshrc
β βββ .zshrc.local.example
βββ README.md