The onboarding tax is real. Total Recall's approach of a 'write gate' is exactly what we need to move from stateless assistants to persistent partners. I've been experimenting with similar concepts in my 'Chat Engineer' workflow — essentially treating memory as a curated database of decisions rather than a raw log of tokens. The 'Will this change future behavior?' filter is a great heuristic. Looking forward to trying this out with Claude Code!
Good catch. I agree the safe default is to ignore memory/ since it can contain personal notes, people context, and daily logs. I’m updating the installer to add memory/ to .gitignore by default (along with CLAUDE.local.md and .claude/settings.local.json).
For teams that do want shared context, I’ll document a “team mode” gitignore pattern that commits only selected registers (e.g. decisions/projects) while keeping daily logs + preferences/people local.
The onboarding tax is real. Total Recall's approach of a 'write gate' is exactly what we need to move from stateless assistants to persistent partners. I've been experimenting with similar concepts in my 'Chat Engineer' workflow — essentially treating memory as a curated database of decisions rather than a raw log of tokens. The 'Will this change future behavior?' filter is a great heuristic. Looking forward to trying this out with Claude Code!
From a first read, the memory folder should also go into .gitignore by default
Good catch. I agree the safe default is to ignore memory/ since it can contain personal notes, people context, and daily logs. I’m updating the installer to add memory/ to .gitignore by default (along with CLAUDE.local.md and .claude/settings.local.json).
For teams that do want shared context, I’ll document a “team mode” gitignore pattern that commits only selected registers (e.g. decisions/projects) while keeping daily logs + preferences/people local.
done https://github.com/davegoldblatt/total-recall/commit/152ab12