Back to browse
DiffMem in production, Git-based AI memory

DiffMem in production, Git-based AI memory

by alexmrv·Mar 3, 2026·2 points·0 comments

AI Analysis

●●●BangerZero to OneBig BrainShip It

Git worktrees as memory backend for WhatsApp companion—genuinely novel approach to AI continuity.

Strengths
  • Architectural insight: orphan branches + worktrees per user solves multi-tenancy without vector DB—clever constraint forcing
  • Real production deployment (6 months, 3 users) with paying pricing ($15.99/mo) demonstrates more than PoC
  • End-to-end encryption + data export + no ads directly addresses privacy-first market gap vs. diary SaaS
Weaknesses
  • Only 3 users after 6 months suggests severe cold-start or distribution problem, not product problem
  • Comparison to market: grief journal + AI companions (Replika, Woebot) already exist; differentiation is 'Git-based' not UX
Category
Target Audience

Non-technical users seeking emotional support, family historians, creative writers

Similar To

Replika · Woebot · Day One (diary)

Post Description

Six months ago I shared DiffMem, a PoC that used git instead of vector databases for AI memory. 790 of you starred it and got a few questions on what I was building with it.

I built a memory companion called Annabelle. She runs on WhatsApp and Messenger, and she's been remembering 3 people's lives for 6 months using the same git-based memory you starred. This isn't an agent framework nor running on OpenClawd, it's one specific product built on one specific idea: that the hard problem in AI isn't intelligence, it's continuity.

Here's what changed between PoC and production:

Multi-tenancy via git worktrees

The PoC was single-user. Production uses orphan branches per user, each mounted as a worktree. Memories live in structured markdown under memories/{people,contexts,events}/. Every conversation is a commit.

Four retrieval depths

The context API supports four modes: basic (most recent/frequent files), wide (semantic search across the vault), deep (complete entity files), and temporal (files plus their git log showing how things changed over time). Temporal is still the thing that makes git better than vectors for this. "How has my project evolved?" needs diff history, not cosine similarity.

What this looks like in practice

I set up a sample repo where DiffMem reads Jekyll & Hyde chapter by chapter and you can watch its understanding evolve through the commits: https://github.com/Growth-Kinetics/diffmem_sample_memory/com...

You can see what changed in the entity files, what connections it drew, what it updated. It's not a black box embedding. It's markdown and git history you can read with your eyes.

Why I built this

I have a bad memory and a genetic risk for early-onset Alzheimer's. The original goal was an entity that could remember me when I can't remember myself.

DiffMem (MIT): https://github.com/Growth-Kinetics/DiffMem

Sample memory: https://github.com/Growth-Kinetics/diffmem_sample_memory

Annabelle: https://withanna.io

Similar Projects