Syncing your Claude Code memory across machines (and with a team) — how are you doing it? #5
manja316
started this conversation in
Show and tell
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Because this repo is just markdown files — no daemon, no vector DB, no cloud — your whole memory setup is a directory you already know how to version and move around. That makes one thing easy that a hosted-memory service makes hard: carrying your Claude Code memory across machines, and sharing the team-relevant parts.
Here's the workflow I've settled on. Curious how others handle it.
The setup is portable by construction
Everything lives under
~/.claude/:No state outside those files. So "sync my memory" reduces to "sync this folder" — a solved problem.
Personal sync across machines
Put
~/.claude/(or just thememory/dirs) under git and pull on each machine. The payoff that a vector store can't give you: every change is a readable diff. When Claude's behavior shifts after an edit,git log -p MEMORY.mdshows you exactly which fact changed — and you can revert a bad memory like any other commit. Opaque embeddings don't let you do that.Team-shareable vs. personal
Split by what's derivable vs. yours:
project+referencememories): architecture decisions, "auth rewrite is compliance-driven not tech-debt", "bug tracker is Linear project INGEST". New teammates get the why-context on clone.user+feedbackmemories): your role, your style, "don't mock the DB in tests". That's personal calibration, not shared truth.The frontmatter
type:field makes this split mechanical — you can greptype: projectto see exactly what's safe to share.The one rule that survives sync
Keep
MEMORY.mdunder 200 lines. It's the index that loads into every session, and past the limit it gets silently truncated — you lose the tail with no error. After a big sync/merge it's worth a quickwc -l MEMORY.md. Bigger memory ≠ better; a tight index that always loads in full beats a fat one that loses its bottom half.How are you doing it? Symlink into a dotfiles repo? Separate private repo for
~/.claude/? Commit project memories or keep everything local? Trade notes below.Repo: https://github.com/LuciferForge/claude-code-memory (free, MIT)
Beta Was this translation helpful? Give feedback.
All reactions