Skip to main content

Reference Map

This page answers two questions:

  • where do I change X?
  • what file actually drives it?

Paths are relative to the repo root. Hooks live under home/.chezmoiscripts/ and run in numeric order; helper scripts live under scripts/.

Chezmoi

ComponentSource path
Prompts / datahome/.chezmoi.toml.tmpl
Shared datahome/.chezmoidata/
Externalshome/.chezmoiexternal.toml
Ignore ruleshome/.chezmoiignore
Hookshome/.chezmoiscripts/

Provisioning hooks (first run)

HookSource path
Xcode CLTrun_once_before_00-install-xcode.sh
Homebrew installrun_once_after_01-install-brew.sh
Fish install + login shellrun_once_after_02-install-fish.sh
Pass managers setuprun_once_after_05-setup-pass-managers.fish.tmpl

Packages

Each registry has a declarative list plus the hook that converges it. See Packages.

RegistryList sourceConverge hook
Homebrewhome/.chezmoitemplates/brews/ (per-category, per-profile partials assembled into home/readonly_dot_Brewfile.tmpl)run_onchange_after_03-install-brew-packages.fish.tmpl
Fish pluginshome/dot_config/fish/readonly_fish_pluginsrun_onchange_after_04-update-fish-packages.fish.tmpl
mise runtimeshome/dot_config/mise/config.toml.tmplrun_onchange_after_05-install-mise-runtimes.sh.tmpl
Cargo crateshome/readonly_dot_default-cargo-cratesrun_onchange_after_05-update-cargo-crates.sh.tmpl
Go toolshome/readonly_dot_default-golang-pkgs.tmplrun_onchange_after_05-update-golang-pkgs.sh.tmpl
Ruby gemshome/readonly_dot_default-gemsrun_onchange_after_05-update-gems.sh.tmpl
Global yarnhome/readonly_dot_default-yarn-pkgsrun_onchange_after_05-update-yarn-pkgs.sh.tmpl
uv python versionshome/readonly_dot_python-versionrun_onchange_after_05-install-uv-versions.sh.tmpl
uv toolshome/readonly_dot_default-uv-tools.tmplrun_onchange_after_06-update-uv-tools.sh.tmpl
Custom packageshome/readonly_dot_default-custom-packages.tmplrun_onchange_after_05-install-custom-packages.sh.tmpl
GitHub CLI extensions(declared in hook)run_onchange_after_05-install-gh-extensions.fish.tmpl
llama.cpp GGUF modelshome/readonly_dot_default-llama-cpp-models.tmplrun_onchange_after_07-sync-llama-cpp-models.sh.tmpl

Shell

ComponentSource path
Fish main confighome/dot_config/fish/readonly_config.fish.tmpl
POSIX shellrc (alias)home/readonly_dot_shellrc
Zsh completionshome/dot_zsh/
Starship prompthome/dot_config/readonly_starship.toml
Shared ignores (fd/fzf)home/dot_config/readonly_ignore-globs

Git

ComponentSource path
Git main config templatehome/private_readonly_dot_gitconfig.tmpl
Work override gitconfighome/work/private_dot_gitconfig.tmpl
Allowed signers (SSH signing)home/private_dot_ssh/private_executable_allowed_signers.tmpl
gh picker work confighome/dot_config/exact_tmux/exact_scripts/pickers/github/readonly_gh-picker-work.yml
gh picker home confighome/dot_config/exact_tmux/exact_scripts/pickers/github/readonly_gh-picker-home.yml

Identity and keys

ComponentSource path
SSH config (1Password agent socket)home/private_dot_ssh/private_executable_config
1Password SSH agent confighome/dot_config/exact_private_1Password/exact_ssh/readonly_agent.toml.tmpl
Primary public key selectorhome/private_dot_ssh/readonly_primary_public_key.pub.tmpl
Secondary public key selectorhome/private_dot_ssh/readonly_secondary_public_key.pub.tmpl

Editor

ComponentSource path
Neovimhome/dot_config/exact_nvim/

Terminal + Multiplexing

ComponentSource path
tmuxhome/dot_config/exact_tmux/readonly_tmux.conf
Ghosttyhome/dot_config/exact_ghostty/readonly_config
bathome/dot_config/exact_bat/readonly_config
Yazi (file mgr)home/dot_config/yazi/
lazygithome/dot_config/exact_lazygit/config.yml
gituihome/dot_config/exact_gitui/
tighome/dot_config/exact_tig/readonly_config
btophome/dot_config/exact_btop/btop.conf
gh-dashhome/dot_config/exact_gh-dash/

macOS Automation

ComponentSource path
Defaults scriptshome/.osx.core, home/.osx.extra
Defaults hooksrun_onchange_after_05-osx.core.sh.tmpl, ...05-osx.extra...
Hammerspoonhome/dot_hammerspoon/
Karabinerhome/dot_config/exact_private_karabiner/
App icons mappinghome/app_icons/readonly_icon_mapping.yaml
App icons hookrun_onchange_after_05-apply-app-icons.sh.tmpl
Crontabrun_onchange_after_05-install-crontab.sh.tmpl

AI

Scripts (scripts/)

Helper scripts called by hooks and commands (stdlib-only by convention).

ScriptPurpose
chezmoi_lib.shShared shell library for merge/apply hooks (source selection, atomic writes, checksums, LiteLLM base)
verify_templates.pyRender every chezmoi *.tmpl via execute-template to catch errors early
verify_mermaids.pyCheck .mermaids/ file-census counts against the effective git file set (part of make check)
verify_bin_surface.pyCheck comma-command completions, docs tokens, catalog tokens, and library ownership
verify_docs_navigation.pyCheck docs/reference/ links and implementation coverage catalog rows
verify_agent_file_sizes.pyCheck agent skill reference markdown stays under the 20 KB harness view limit (SKILL.md exempt)
yaml_parser.pyMinimal dependency-free YAML parser for project data files
jsonc_dump.pyJSONC serializer matching OpenCode's trailing-comma config style
mcp_registry.pyRead/normalize the canonical MCP registry
generate_mcp_configs.pyGenerate tool-specific MCP configs from mcp_servers.yaml
inject_mcp_into_codex_toml.pyInject MCP servers into Codex TOML at a marker line
inject_mcp_into_opencode_jsonc.pyInject MCP servers into an OpenCode JSONC placeholder
merge_claude_mcp.pySurgically update only mcpServers in ~/.claude.json
merge_opencode_models.pyMerge LiteLLM/Azure models into OpenCode JSONC
merge_copilot_settings.pyTyped declared-over-live merge for Copilot settings.json (exact subagents.agents)
managed_config_manifest.pyDeclared-key manifests shared by the config merge hooks
generated_artifact_ledger.pyRecord/evaluate generated artifacts for semantic drift (backs ,doctor ai)
ai_models.pyParse the litellm_models / azure_models sections of ai_models.yaml
model_mirrors.pyGenerate/verify the committed model-mirror JSON + Go artifacts from the registry sources
model_mirror_consumer.pyStdlib fail-closed consumer views of the model mirror for deployed commands such as ,ai
model_capabilities.v1.jsonHand-verified harness capability snapshot consumed by model-mirror generation
generate_pi_models.pyBuild Pi models.json from the shared base plus LiteLLM/Azure providers
model_display.pyShared display-name formatting for LiteLLM model entries
probe_litellm_prompt_cache.pyProbe repeated-prompt and tool-schema cache signals across LiteLLM models
analyze_pi_session.pyReport privacy-safe token/cache/compaction/re-read metrics from one Pi v3 session
ai_kb.pyLocal markdown + SQLite FTS5/vector knowledge base for agent runs
embed.pyStdlib embedding-service abstraction: one-shot embed_runner.py runs plus connect-only resident dispatch via embed_client.py
embed_runner.pyIsolated PEP 723 fastembed runner (BAAI/bge-small-en-v1.5, 384-d)
embed_client.pyDeadline-bounded unix-socket client for the resident embed worker (ensure/ping/embed)
embed_worker.pyPEP 723 resident fastembed worker serving embeddings over a private unix socket
vec_runner.pyIsolated PEP 723 sqlite-vec KNN/pairs runner for the KB
agent_memory.pyInspect/wipe hook memory under /tmp/specs for the current workspace
worklog_queue.pyCrash-safe bounded per-session worklog event queue flushed into /tmp/specs topic worklogs
sync_llama_cpp_models.pyDownload missing GGUF files declared in the llama.cpp manifest
reconcile_golang_pkgs.pyReconcile Go binaries against the manifest (hook 05-update-golang-pkgs)
reconcile_custom_packages.pyReconcile source-installed custom package artifacts
yt_search.pyYouTube search backend (powers ,youtube-search)
tests/Python test suite (test_scripts.py, agent-hook tests)

Maintenance / cleanup hooks

Idempotent housekeeping that removes orphaned generated state on apply.

HookPurpose
run_onchange_after_08-cleanup-orphaned-tmux-pick_session.sh.tmplRemove stale tmux pick_session artifacts

Formatting

ComponentSource path
Format scriptbin/fmt
EditorConfig.editorconfig
Prettier config.prettierrc
Prettier ignore.prettierignore
StyLua config.stylua.toml
Ruff configruff.toml

Custom Commands

ComponentSource path
Commands sourcehome/exact_bin/
Command internalshome/exact_lib/