CtrlK
BlogDocsLog inGet started
Tessl Logo

pantheon-ai/chezmoi

Expert assistant for chezmoi dotfiles management. Use when: "add this file to chezmoi", "make this a template", "encrypt this secret", "apply on a new machine", "run script only once", "manage dotfiles across machines". Examples: - user: "Track my .zshrc with chezmoi" → chezmoi add ~/.zshrc - user: "Make my .gitconfig machine-specific" → convert to .tmpl, use {{ .chezmoi.hostname }} - user: "Run a script only on first apply" → once_ prefix - user: "Sync to a new laptop" → chezmoi init --apply $GITHUB_USERNAME - user: "Why isn't my file being applied?" → diagnose source attribute, diff, doctor

96

Quality

96%

Does it follow best practices?

Impact

Pending

No eval scenarios have been run

SecuritybySnyk

Advisory

Suggest reviewing before use

Overview
Quality
Evals
Security
Files

scenario-01.mdchezmoi-assistant/evals/

Scenario 01: Track a config file and make it machine-specific

User Prompt

I want to track my ~/.gitconfig with chezmoi. My work laptop uses alice@corp.com as the git email but my personal machine uses alice@personal.com. Make it work on both.

Expected Behavior

  1. Run chezmoi add ~/.gitconfig to start tracking the file
  2. Convert to a template with chezmoi chattr +template ~/.gitconfig (or chezmoi add --template ~/.gitconfig)
  3. Edit the source file (chezmoi edit ~/.gitconfig) and replace the hardcoded email with {{ .chezmoi.hostname }} or a custom data variable
  4. Show the user how to add machine-specific data in chezmoi.toml under [data]
  5. Verify with chezmoi cat ~/.gitconfig before applying
  6. Apply with chezmoi apply

Success Criteria

  • Tracks file with chezmoi add
  • Converts to template — source file has .tmpl suffix
  • Uses a template variable (.chezmoi.hostname, .chezmoi.os, or custom data) to differentiate machines
  • Shows chezmoi cat or chezmoi execute-template to preview before applying
  • Does NOT hardcode the email difference as two separate files

Failure Conditions

  • Suggests managing two separate dotfile repos for each machine
  • Hardcodes hostname comparison without explaining how to set custom data
  • Skips the preview step and goes straight to apply
  • Forgets to show how to commit and push the change to git

chezmoi-assistant

evals

scenario-01.md

scenario-02.md

scenario-03.md

SKILL.md

tile.json