chezmoi

Automate dotfile management and synchronization across machines with declarative state.

9|Updated Feb 15, 2026
One-click install
npx skills add https://github.com/gwenwindflower/dotfiles --skill chezmoi-gwenwindflower
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: chezmoi
Source: https://github.com/gwenwindflower/dotfiles/tree/main/dot_agents/exact_skills/chezmoi
Command: npx skills add https://github.com/gwenwindflower/dotfiles --skill chezmoi-gwenwindflower

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Manage and synchronize your dotfiles across machines by maintaining a versioned source of truth and applying it to your home directory with deterministic state.

Core Features & Use Cases

  • Declarative state: source, destination, and target states for dotfiles and templates.
  • Attribute-driven management: supports dot_, private_, executable_, and .tmpl to control file behavior and templating.
  • Workflow and hooks: supports application order, before/after scripts, and chezmoi's script/model for extensibility.
  • Use Case: initialize a dotfiles repo, add files, and apply changes to ensure your home directory matches the declared state.

Quick Start

Initialize your chezmoi repository and start managing your dotfiles with a single setup command.

Frequently Asked Questions about chezmoi

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I automate dotfile management across multiple machines?

Use a declarative source-of-truth to manage dotfiles by defining source, destination, and target states. This approach enforces a deterministic workflow with hooks and script ordering to ensure reproducible home-directory deployments.

How do I keep my home directory configuration reproducible when switching computers?

Initialize a dotfiles repository, add your configuration files, and apply changes to ensure your home directory matches the declared state. This single setup workflow makes your configuration reproducible when switching computers.

Can I use templates to control configuration file behavior during synchronization?

Yes, you can use templates to control configuration file behavior by applying attributes like dot_, private_, executable_, and .tmpl. These attributes drive file handling and templating to ensure predictable home-directory configuration.

What is the best way to manage private and executable dotfiles declaratively?

Manage private and executable dotfiles declaratively by using attribute-driven file handling with private_ and executable_ attributes. This method enforces a deterministic workflow ensuring predictable home-directory configuration across machines.

Do I need to run scripts before or after applying dotfile state changes?

You can run scripts before or after applying dotfile state changes using the workflow and hooks system. This supports application order and before/after scripts to ensure reproducible deployments and extensibility.

Why use a declarative source-of-truth for dotfile synchronization?

Use a declarative source-of-truth for dotfile synchronization to ensure your home directory matches a declared state. This approach enforces a deterministic workflow with hooks, script ordering, and templates to guarantee reproducible deployments across machines.