Skip to content

Latest commit

 

History

History
57 lines (39 loc) · 1.89 KB

File metadata and controls

57 lines (39 loc) · 1.89 KB

AI Agent Instructions

AI agent instructions for working with this repository.

Overview

Personal macOS and Linux dotfiles managed with chezmoi and Homebrew.

Commands

# Install pre-commit hooks for development
pre-commit install

# Apply chezmoi dotfiles (installs packages + applies config)
chezmoi apply

# Bootstrap from scratch
./install.sh

Architecture

Chezmoi (chezmoi/)

.chezmoiroot sets chezmoi/ as the source directory. Files use chezmoi naming conventions (private_dot_config/, dot_, symlink_, .tmpl). Templates get data from .chezmoi.toml.tmpl.

Key scripts:

  • run_once_before_rosetta.sh.tmpl — installs Rosetta 2 on Apple Silicon (runs once)
  • run_before_brew_install.sh.tmpl — installs Homebrew if missing, then installs all packages/casks
  • run_onchange_macos_defaults.sh.tmpl — applies macOS system settings
  • run_onchange_after_setup_claude.sh.tmpl — installs Claude Code plugins and local marketplace
  • run_onchange_after_setup_opencode.sh.tmpl — installs OpenCode and agent skills
  • run_onchange_after_agent_plugins.sh.tmpl — installs agent plugins (opencode)
  • run_after_update_agent_skills.sh.tmpl — updates agent skills

CI (.github/workflows/)

  • ci.yml — Tests chezmoi install
  • pr.yml — MegaLinter on PRs
  • ossf.yml — OpenSSF Scorecard security scan
  • scans.yml — Additional security scans
  • automerge.yml — Auto-merges passing Renovate/Dependabot PRs

Dependency management

  • Renovate auto-updates pre-commit hooks and GitHub Actions (configured in renovate.json)
  • Dependabot as secondary updater

Conventions

  • Shell scripts exclude .zsh files from shellcheck/shfmt (zsh-specific syntax)
  • Pre-commit hooks enforce formatting on commit; CI verifies no uncommitted formatting changes
  • Commits follow conventional commits style (see git log)