{{- if ne .chezmoi.os "darwin" }}
Library
.terminfo
.1password
.config/karabiner
# macOS-only: the ping wrapper drives /sbin/ping6 and dscacheutil, and ping4
# is a symlink to /sbin/ping. Linux ping picks a family itself and takes -4.
.local/bin/ping
.local/bin/ping4
{{- end }}
{{- if eq .chezmoi.os "darwin" }}
# Linux-only: macOS ping rejects -4, so there ping4 is ~/.local/bin/ping4.
.config/fish/functions/ping4.fish
{{- end }}
.config/karabiner/automatic_backups
.config/scripts/__pycache__

# pi: keep config, never commit secrets/sessions
.pi/agent/auth.json
.pi/agent/sessions

# agent CLIs: configs are tracked file by file, but never credentials, session
# logs or local state. Belt and braces in case a directory is ever added whole.
.claude/.credentials.json
.claude/projects
.claude/history.jsonl
.claude/file-history
.claude/telemetry
.claude/session-env
.claude/shell-snapshots
.codex/secrets.env
.codex/auth.json
.codex/accounts
.codex/*.bak
.codex/*.bak-*
.codex/*.bak.*
.codex/sessions
.codex/archived_sessions
.codex/logs*
.codex/*.sqlite*
.grok/auth.json*
.grok/projects
.grok/sessions
.kimi/credentials
.kimi/sessions
.kimi-code/oauth
.kimi-code/sessions
.reasonix/.env
.reasonix/sessions
.reasonix/projects
# config.json is local state: a generated dashboard token, its port and UI
# flags. The portable config is config.toml, which names keys via api_key_env.
.reasonix/config.json
.reasonix/*.bak
.config/opencode/secrets
.config/opencode/*.bak
.config/opencode/*.bak.*
.config/opencode/*backup*
.config/opencode/node_modules
.config/opencode/bun.lock
.config/opencode/package-lock.json

# kitty: the light/dark mode is per-machine, and the *-theme.auto.conf files
# are generated from it plus .config/kitty/themes. Tracking them would make
# every machine flag the others' mode. run_after_kitty-theme-mode.sh
# regenerates them after apply.
.config/kitty/theme-mode
.config/kitty/dark-theme.auto.conf
.config/kitty/light-theme.auto.conf
.config/kitty/no-preference-theme.auto.conf
