This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
Personal dotfiles repository managed with rcm (dotfile management). Uses Zsh with Prezto framework as the primary shell configuration.
This repo uses rcm for symlink management:
rcup- Install/update dotfile symlinksrcdn- Remove dotfile symlinkslsrc- List managed dotfiles
Platform-specific configs live in tag-osx/ and tag-linux/ directories. The rcrc file defines which tags to use and what to exclude.
Load order (zshrc):
zsh/environment.zsh- Environment variables and PATHzsh/osx.zsh- macOS-specific config (Darwin only)zsh/functions.zsh- Autoloaded functions fromzsh/functions/- Lazy-loaded rbenv and pyenv (wrapper functions defer init until first use)
- Prezto init (
zprezto/init.zsh) zsh/overrides.zsh- Post-Prezto overrideszsh/load_scripts.zsh- Additional script loadingzsh/aliases.zsh- Shell aliases
Prezto modules (zpreztorc): environment, helper, ssh, spectrum, utility, editor, history, history-substring-search, completion, ruby, node, syntax-highlighting, prompt, fasd, git-fixes, zsh-z
Git (gitconfig):
- Editor:
emacsclient -t - Aliases:
co,ci,st,br,lg,cleanup,cleanup-all - Default branch:
main
Tmux (tmux.conf):
- Prefix:
C-a(notC-b) - Base index: 1
- Mouse: on (toggle with
m/M) - Uses TPM plugin manager
Editors:
- Primary: Emacs (via emacsclient, Prelude-based config in
emacs.d/) - Secondary: Vim (spf13-based config, Vundle for plugins)
e / emacs -> emacsclient -t
mux -> tmuxinator
be -> bundle exec
pnt -> pnpm turbo run --no-daemon
k -> kubectl
reload -> source ~/.zshrc
zprezto- Prezto Zsh frameworkzprezto-contrib/zsh-z- Directory jumpingtmux/plugins/tpm- Tmux Plugin Managervim/bundle/vundle- Vim plugin manager
After cloning, run: git submodule update --init --recursive