Cempoalxochitl

"Twenty flowers" — the marigold, bridge between the living and Mictlán

Skip to main content
Nahual

You face the South, Huitztlampa, land of thorns and flowers. Huitzilopochtli watches over what grows. The scene takes on turquoise tones of Xiuhtecuhtli mosaic.

← Back to projects

Synapse

A continuous AI memory across three machines.

The lived problem

In 2026, I use Claude Code daily on three machines: my personal setup at home, the one on mission at LR Technologies, a backup laptop. Each machine manages its own memory (user preferences, project context, validated feedback). Result: I repeat the same explanations to Claude on each machine, or worse, I manually copy memory files between machines with conflict risks. The "multiple assistants that don't know each other" pattern quickly becomes counterproductive.

Architecture chosen

Synapse is a plugin that bootstraps a Git-versioned memory structure, with automatic background sync on every significant change. Memory is typed: feedback (learned work rules), project (active project context), user (user profile), reference (pointers to external sources). Each entry has explicit YAML frontmatter, a short description, a type. A `[[name]]` linking system weaves entries together like a mini knowledge graph.

Technical choices

Node.js + TypeScript for cross-platform. Native Claude Code hooks (SessionStart, SessionEnd, UserPromptSubmit) to intercept key moments without monkey-patching. Background Git sync via non-blocking `child_process`. Smart local cache to avoid unnecessary network round-trips. Sync collision detection: two machines write at the same time, Synapse attempts automatic per-entry merge, alerts the user on conflict.

Quality as obligation

283 tests from the first public release, green CI, coverage > 80%. Why this rigor for a personal plugin? Because memory is precious — a bug that silently overwrites an entry is context lost that I won't recover. TDD here isn't dogma but a guarantee that memory doesn't corrupt itself.

Community opening

Published open-source from the first commit on github.com/smaurier/claude-synapse. Careful documentation, concrete examples, ADR (Architecture Decision Records) to trace choices. Ambition: that other multi-machine Claude Code users can bootstrap their own system. No business model, no premium — a tool solving a real problem for those who have it.

View the code → (new window)