Personal macOS dotfiles for a new laptop setup.
| Path | Purpose |
|---|---|
.config/fish/config.fish |
Fish shell config — aliases, env vars, PATH, functions |
.config/fish/fish_plugins |
Fisher plugin list |
.config/fish/conf.d/rustup.fish |
Rust/cargo env sourcing |
.config/nvim/ |
Neovim config (kickstart-based) |
.tmux.conf |
tmux config with vim keybindings, TPM plugins, copy-mode fixes |
.gitconfig |
Git config — signing, push defaults, pager |
ai/pi/settings.json |
pi coding agent config — packages, model, powerline |
ai/pi/extensions/ |
pi extensions (cmux-notify, exit, uber-genai, etc.) |
ai/AGENTS.md |
Shared agent instructions for pi and Claude |
The pi status bar is driven by a personal fork of pi-powerline-footer on the personal branch. It adds:
user_hostsegment —user@hostformatcontext_barsegment — token count with progress bar- Chat/editor separator line
- vim-motions-pi compatibility (removed
setEditorComponentoverride) extension_statusesadded tocustompreset secondary line (shows TPS, MCP status, etc.)- Session name displayed on the top border of the input box when set via
/name
The fork lives at ~/Personal/pi-powerline-footer and is referenced by path in ai/pi/settings.json. See Install.md step 17 for setup.
See Install.md for the full new laptop setup guide.
- Fish functions (fzf.fish, nvm.fish, etc.) are managed by fisher — run
fisher updateto reinstall them. - tmux plugins are managed by tpm — press
prefix + Iinside tmux to install. - Neovim plugins are managed by lazy.nvim — they install automatically on first launch.
.gitconfigcontains some machine-specific[maintenance]repo paths — update or remove those on a new machine.