How it works
Your assistant already wrote everything down. It just cannot read it back.
The transcripts already exist
Claude Code, Gemini CLI, Codex, OpenCode and Antigravity each write every session to disk, in their own format, in their own directory. None of them can read another's, and none of them search their own well. chat-recall indexes all of them into one place.
Three commands
npx chat-recall init # index what is already on disk, wire up MCP
chat-recall search "that auth bug"
chat-recall recent # what was I working on
Nothing else is required. There is no API key to obtain and no model to choose: full-text search works out of the box, and vector search is an upgrade you can add later.
The assistant searches its own history
The point is not that you get a search box. It is that the agent gets one. With the MCP server registered, Claude Code can ask what it did last month before it asks you — resuming prior work, checking whether a decision was already made, or noticing it has written this file before.
What it does with it
- Resume — rebuild the context of an unfinished session instead of re-explaining it.
- Recall decisions — a temporal knowledge graph records what was chosen and when it stopped being true.
- Avoid repeats — a prompt hook warns when you are about to redo work you already did.
- Find leaked keys — secrets are detected in your own history, and redacted before anything is uploaded.
Where your data lives
On a server you own, or on ours. The CLI keeps no database of its own; it reads the transcripts, masks credentials, and syncs. Running it yourself is free and full-featured for one person — see self-hosting.