Cross-machine sync
agentsync is deliberately single-machine. It manages one machine’s agents from one canonical directory. To carry that directory across machines, use a dotfile manager — chezmoi is the natural fit, but any will do.
chezmoi add ~/.agentsyncNow ~/.agentsync/ lives in your dotfiles repo and syncs like the rest of your
config.
What’s safe to sync, what isn’t
Section titled “What’s safe to sync, what isn’t”| Item | Sync it? | Why |
|---|---|---|
~/.agentsync/** (TOML, markdown, skills) | ✅ | Hand-editable source, no secrets in cleartext. |
secrets/secrets.age (the encrypted vault) | ✅ | Encrypted to your recipient; safe to commit. |
| The age identity (private key) | ❌ | Per-machine. Distribute via your existing secret-sharing flow. |
~/.agentsync/.state/ | ❌ (gitignored) | Machine-local bookkeeping; not portable as-is. |
State is portable
Section titled “State is portable”agentsync stores its last-applied hashes ${HOME}-relative rather than with
absolute paths, so the .state/targets.json bookkeeping is portable across
machines if you ever do choose to carry it. On a fresh machine, the first apply
simply re-establishes ownership of any pre-existing native files (backing them up
first).
Adopt a populated machine A step-by-step recipe for bringing a second machine — with its own existing config — under management.