Using several AI coding tools without losing the thread
You install a second tool just to try it, keep it around for the one thing it does better, and six months later your reasoning is split across two tools that can't read each other.
Why people end up with more than one
Each tool is genuinely better at something. One handles a long refactor without losing the thread. One is faster on a single, well-specified file. One is already installed on whatever machine you're ssh'd into right now. None of that is a reason to consolidate down to one — it's a reason to keep using all of them.
The real cost shows up somewhere else. Every one of them writes a complete transcript of your session to disk, in its own format, in its own folder, and none of them ever reads another's. So the decision you argued through on Tuesday in one tool is completely invisible on Wednesday in another.
What you actually lose
Not the code — the code is safe in git. What goes missing is the part that was never committed in the first place:
- the approach you tried first, rejected, and the reason why
- the one command that finally worked, after six that didn't
- which of two libraries you picked, and what actually made the difference
- the half-finished thing you meant to circle back to
That material only ever exists in the transcript. It's also exactly the material you'd have to re-explain to a new tool from memory, badly.
The setup
Index what's already sitting on disk, and register the MCP server in each tool's own config:
$ npx chat-recall init finds every tool you have installed and wires each one up
Nothing gets migrated and nothing gets converted. Every tool keeps writing exactly what it always wrote; the index just reads those files.
What changes day to day
The search box matters less than who's actually holding it. The assistant gets one, and uses it inside the conversation while it works, on its own.
| Starting where you stopped | "Continue where we left off" resolves to the real prior session, including which files it touched and what it left unfinished, instead of some summary you had to write by hand. |
| Asking across tools | "Have we hit this error before?" gets answered from every session in every tool, including the ones you've stopped using entirely. |
| Trying a fourth tool | Its first run isn't day one anymore. It queries the same memory as the others, so trying it out actually tests the tool, not your patience for re-explaining the codebase. |
| Not redoing work | A prompt hook warns you when the thing you're about to ask for has already been done somewhere you'd forgotten about. |
Two habits worth picking up
Say what you decided, out loud, in the session. A decision written as "we're going with the pooler because prepared statements break in transaction mode" is recoverable later. The same decision left implicit in a diff isn't. The classifier only picks up explicit phrasing, nothing else.
Reference credentials by variable name. Paste a key into a prompt and it's sitting in the transcript, on disk, for as long as that file exists, whether or not you delete the chat afterward. Say $OPENAI_API_KEY instead. Sessions do get scanned for credentials, and live ones get verified against the issuing service, but not leaking it in the first place is a lot cheaper than rotating it after.
Where the data actually sits
On your own server, or on ours. Running it yourself is free and fully featured for one person, with no licence key and no telemetry. If the work falls under someone else's NDA, run it yourself — the self-hosted build is the whole product, not a trimmed-down version. See self-hosting.
Questions
| Can I use several AI coding tools on the same project? | Yes, and each is genuinely better at something. The cost is not the code, which is in git. It is that every tool writes its own transcript in its own format and none of them reads another's. |
| Why does my assistant forget everything when I switch tools? | Because the decision you argued through in one tool lives in that tool's transcript folder, and the next tool has no way to read it. Nothing is lost from disk; nothing is shared either. |
| What exactly goes missing? | The approach you tried first and rejected, the reason why, the command that worked after six that did not, which of two libraries you picked, and the half-finished thing you meant to return to. None of that is committed anywhere. |
| Do I have to migrate or convert my history? | No. Every tool keeps writing exactly what it wrote before. npx chat-recall init finds the tools you have installed, indexes the files already on disk, and registers the MCP server in each tool's own config. |
| What changes day to day? | The assistant holds the search rather than you. Continue where we left off resolves to the real prior session and the files it touched, and a question like have we hit this error before is answered from every tool, including ones you stopped using. |
More notes
| What claude --continue does not do | claude --continue resumes one session, in one tool, in one directory. What to use when the thing you need is older than that, or was not in Claude Code at all. |
| Where every AI coding tool stores your sessions on disk | Exact paths and formats for every AI coding tool chat-recall reads: and the retention period that quietly deletes them. |
| Does Claude Code remember previous sessions? | Partly, and the part it forgets is the expensive one. What CLAUDE.md, auto memory and --continue each carry across, and what none of them carry. |