Every Claude Code session starts blind. It greps the repo, reconstructs “where were we,” then forgets every decision the moment I close the session. On a real codebase that’s tens of thousands of tokens burned from zero, every single time. Run a second agent and it undoes what the first one did. So I built Cairn — a small append-only journal that lives in your repo’s .agent/ dir. Goals, decisions, tasks, and learnings land there as they happen. Next session Claude reads one ~1KB CONTEXT.md instead of re-scanning the repo. .agent/ is to AI memory what .git is to source code. What it gets you: One read to orient instead of a repo scan — orientation drops ~150× Survives sessions — close the laptop, come back next week, context is still there Shared across agents — Claude Code, Codex, Cursor all read/write the same journal (SQLite+WAL, concurrency-safe) Capture costs nothing — it reads your git commits, not your narration Setup is two lines and it wires into Claude Code’s memory automatically: npm i -g u/memxai/cairn cairn setup Open source (Apache 2.0): github.com/Abhishekxdg/cairn I built it for my own Claude Code workflow. How are you all handling cross-session memory today — just stuffing CLAUDE.md? Curious what’s working. submitted by /u/Antique-Willow-5841
Originally posted by u/Antique-Willow-5841 on r/ClaudeCode
