# Dotfiles

Manage ~/.zshrc and a chosen set of ~/.config/ directories (you name them in Config.md)...

- Repository: https://github.com/danielmiessler/LifeOS (19669 stars)
- Category: Security
- License: MIT
- Last updated: 2026-10-28
- Runs scripts: yes, review before use

## Install

Claude Code: `npx skills add danielmiessler/LifeOS --skill Dotfiles -g -a claude-code -y`
Codex: `npx skills add danielmiessler/LifeOS --skill Dotfiles -g -a codex -y`
Cursor: `npx skills add danielmiessler/LifeOS --skill Dotfiles -g -a cursor -y`
Gemini CLI: `npx skills add danielmiessler/LifeOS --skill Dotfiles -g -a gemini-cli -y`

## Description

Manage ~/.zshrc and a chosen set of ~/.config/ directories (you name them in Config.md) against a private GitHub dotfiles repo. Intents: Push (verify private remote, scan secrets), Pull (clone/diff), Sync, Restore (timestamped backup), Status, Backup (local timestamped copy). Security scan blocks .env, secrets, tokens before push. NEVER commits to public repos. USE WHEN dotfiles, push/pull/sync dotfiles, zshrc, restore config, backup config, new machine setup. NOT FOR app configs unrelated to shell/editor/terminal.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# System Dotfiles Management Skill

**Contents:** Ideal State · Intent Routing · Data & Config · Tool contract · Gotchas · Examples

Manages `~/.zshrc` and `~/.config/` against a private GitHub dotfiles repo; the directories under `~/.config` that Backup and Restore copy are the ones you list in `Config.md` (`DOTFILES_CONFIG_DIRS`). Push local config up, pull it down, sync two-way, restore from a timestamped backup, or check status, with a gitleaks content scan of the staged diff and of every unpushed commit that stops the push on any secret, or when gitleaks is not installed.

The working clone lives at `$DOTFILES_DIR` and tracks the private remote `$DOTFILES_REPO`. Push is the default intent; Pull, Sync and Status only compare, Restore is the one intent that overwrites local files, and Backup makes a local copy that never leaves the machine.

## Ideal State

The rest: https://github.com/danielmiessler/LifeOS/blob/HEAD/LifeOS/install/skills/Dotfiles/SKILL.md
