- Home
- Skills
- Tdhopper
- Dotfiles2.0
- Managing Work Dotfiles
managing-work-dotfiles_skill
- Shell
3
GitHub Stars
1
Bundled Files
2 months ago
Catalog Refreshed
4 months ago
First Indexed
Readme & install
Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.
Installation
Preview and clipboard use veilstrat where the catalogue uses aiagentskills.
npx veilstrat add skill tdhopper/dotfiles2.0 --skill managing-work-dotfiles- SKILL.md3.9 KB
Overview
This skill manages work-specific dotfiles stored in a separate bare Git repository and operated via a yadm-work wrapper. It keeps work configuration isolated from personal dotfiles, enabling safe pulls, commits, pushes, and conflict resolution against the Spotify GHE remote. Use it to inspect tracked files, update configs, and maintain the work dotfiles repository reliably.
How this skill works
yadm-work is a small wrapper that runs git with a dedicated --git-dir and --work-tree pointing at ~/.local/share/yadm-work/repo.git and your $HOME respectively. The skill exposes common operations: clone as a bare repo, checkout files into your home, list tracked files, inspect status/diffs, and perform add/commit/push and merge conflict workflows. It also documents repository-specific rules like keeping README updates for ~/.claude files.
When to use it
- Setting up work dotfiles on a new machine
- Pulling remote changes from Spotify GHE and handling merges
- Committing, staging, and pushing work dotfile edits
- Adding or stopping tracking of work-specific files
- Searching or listing work-tracked configuration files
Best practices
- Always use yadm-work (or git with the repo and work-tree flags) to avoid operating on the wrong repo
- Check both personal yadm and yadm-work lists before tracking a file to avoid duplicate tracking
- When adding items under ~/.claude/, update ~/.claude/README.md to document them
- Stage resolved files before finishing merges: yadm-work add <file> then yadm-work commit
- Use yadm-work stash for temporary edits and stash pop to restore
Example use cases
- Initialize work dotfiles on a fresh laptop: create ~/.local/share/yadm-work, clone the bare repo, then yadm-work checkout
- Update a work tool config: find file with yadm-work ls-files | grep, edit, yadm-work add, commit, and push
- Resolve a pull conflict: yadm-work pull, edit conflicted files shown by yadm-work status, stage resolved files, commit
- Stop tracking a machine-specific file without deleting it: yadm-work rm --cached <file> then commit and push
FAQ
Create ~/.local/share/yadm-work, clone the bare Spotify GHE repo into ~/.local/share/yadm-work/repo.git, then run yadm-work checkout to populate your home.
What if a file is tracked in both personal and work repos?
Never track the same file in both. Check with yadm ls-files and yadm-work ls-files before adding. Remove tracking from one repo using yadm rm --cached or yadm-work rm --cached as appropriate.