Individual skill
Dotfiles
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.
LifeOS/install/skills/Dotfiles/SKILL.md
Source commit b7efec97d8c3885feee285bee468c35602fb0606
What was checked
- Matches the observed repository HEAD
- Yes
- Scanner rules are current
- Yes
- Repository scan complete
- No
- Skill scan complete
- No
- Observed behavior
- Network or broad shell
- Last checked
- Nov 2, 2026
These are observations at the recorded commit, not a guarantee of safety. Review the source before running it.
Install this skill
Choose an agent in your Stack or copy a command below. Commands fetch the pinned commit and copy only this skill directory. Existing destinations are refused. Copying a command does not install anything.
Standard SKILL.md format has not been attested at this commit. No installation command is available; inspect the source.
Repository context
- Repository stars (not skill ratings)
- 19,757
- Repository last updated
- Nov 5, 2026
- License
- MIT
Observed agent integration: No specific integration evidence. Standard SKILL.md installation does not imply verified compatibility.
- ai Repository topic
- augmentation Repository topic
- productivity Repository topic
- humans Repository topic
- ai-harness Repository topic
- intent-engineering Repository topic
- personal-ai Repository topic
- coding Repository topic
- lifeos Repository topic
- security Derived category
Files and excerpt
File metadata and permitted, redacted excerpts come from the recorded scan. Source links are pinned to that commit.
Browse files
Intents/Backup.mdruns · 4,500 bytesIntents/Pull.mdruns · 3,212 bytesIntents/Push.mdruns · 7,755 bytesIntents/Restore.mdruns · 7,566 bytesIntents/Status.mdruns · 4,119 bytesIntents/Sync.mdruns · 4,074 bytesSKILL.mdcore · 10,900 bytesSKILL.mdcore · 10,900 bytesSKILL.mdcore · 10,900 bytesSKILL.mdcore · 10,900 bytesSKILL.mdcore · 10,900 bytesSKILL.mdcore · 10,900 bytesSKILL.mdcore · 10,900 bytesSKILL.mdcore · 10,900 bytesSKILL.mdcore · 10,900 bytesSetup.mddoc · 3,822 bytesTools/Config.tsruns · 3,318 bytes
Read excerpt
# 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
- Every push lands only in `$DOTFILES_REPO`, after GitHub reported it private (`gh repo view --json isPrivate` printed `true`) both before any other Push step and again just before the push, and after gitleaks exited 0 on the staged diff and on every unpushed commit; any failed check, or gitleaks missing, stopped the run before a commit or push.
- Only configs enter the repo or a backup: Push copies and stages the files the repo already tracks, a new config enters by name, every local backup (Backup, and Restore's backup before it overwrites) copies the `DOTFILES_CONFIG_DIRS` directories with secret files excluded, and Restore's also copies every tracked `.config` file it will overwrite, and the whole `~/.config` is never copied or staged.
- Every comparison of local and repo (Pull, Sync, Status, and Restore's check after it copies) covers `.zshrc` and the files `git ls-files .config` lists, so a report names only real dotfile differences and a clean machine reports none.
- No local file is overwritten before a timestamped backup exists in `$DOTFILES_BACKUPS` and the user confirmed; Pull, Sync and Status leave every local file unchanged.