Where your data lives
Everything is local. Nothing ever leaves your machine.
Source of truth (read-only to Recall)
~/.claude/projects/<encoded-path>/<session-uuid>.jsonl— Claude Code's own session files. We read these; we never modify them.
Our own data
~/.recall/db.sqlite— the indexed database (projects, sessions, messages, FTS5 search index, aliases, notes)~/.recall/aliases.json— plain-text mirror of every alias (with full edit history). Automatically rewritten on every alias change~/.recall/notes/<session-uuid>.md— one plain-markdown file per note. You can edit these in your favorite editor~/.recall/daemon.pid— running daemon metadata~/.recall/daemon.log— daemon logs (troubleshooting)
Back up
Everything Recall owns lives under ~/.recall/. Tar it up:
tar czf recall-backup.tgz ~/.recall/To restore on a new machine: untar into the new ~/.recall/, then run recall start. Your aliases, notes, pins all return.
Reset without data loss
Want to rebuild the SQLite index from scratch?
recall stop
rm ~/.recall/db.sqlite*
recall start
recall indexYour aliases survive because ~/.recall/aliases.json mirrors them. Same for notes (each sits in its own .md file). Tree stays intact.
Never-delete guarantee
Claude Recall never deletes user-created data. Every rename archives the prior value. Every note save keeps the previous version. If you "clear" something, you get an empty value with the history still readable.