Skip to content

Sync

PLUR can sync your engrams across machines using any git remote. There is no central PLUR cloud. You bring the storage.

~/.plur/ is structured as a git-friendly directory. Engrams are YAML, episodes are JSONL, the index is regenerable. plur sync initialises a repo inside ~/.plur/, commits the current state, and pushes to your remote.

Terminal window
plur sync --remote git@github.com:you/plur-memory.git

What this does:

  1. git init inside ~/.plur/ (if not already a repo).
  2. Adds the remote.
  3. Commits everything except index/ (regenerable) and any local secrets.
  4. Pushes the initial commit.
Terminal window
plur init # set up PLUR
plur sync --remote git@github.com:you/plur-memory.git
plur sync # pulls and merges

The second plur sync fetches, merges, and rebuilds the local index. Conflicts are surfaced as engram-level merge prompts — same engram changed on both sides → keep yours, keep theirs, or fork into two.

Terminal window
plur sync # pulls remote changes, pushes local changes

You can schedule it (cron / systemd / launchd) so syncs happen automatically. PLUR doesn’t push on every learn — that would chatter the remote — but a 10-minute cadence works well in practice.

  • Engrams (engrams.yaml or sharded directory)
  • Episodes (episodes.jsonl)
  • Config (config.yaml)
  • Packs (packs/registry.yaml)

Not synced:

  • The index (index/) — regenerated locally
  • Embedding model files
  • Lock files and temporary state

PLUR’s conflict model is last-write-wins by activation history, with a manual override. If two machines edit the same engram, the version with more recent access wins by default; the loser is preserved as a retired engram so nothing is lost.

For high-stakes engrams (commitment locked), conflicts always require manual resolution.

If you want multiple humans sharing the same memory — not the same human on multiple machines — use PLUR Enterprise. Enterprise gives you proper multi-tenancy, server-side permission enforcement, audit trail, and SCIM provisioning. Sync is for one person; Enterprise is for a team.

Next: Adapters →