Interlatch
Different agents. Knowledge that stays.
Shared memory for your coding agents. Claude Code, Codex, GitHub Copilot, IBM Bob and Google Antigravity sessions and your
claude.ai and ChatGPT chats, recorded on your own machine, and every lesson in them linked to the session it came from.
Quick start · Docs · Changelog · Roadmap · 日本語
Your coding agents solve problems all day, and then the lesson disappears: Claude Code deletes transcripts after 30 days, and what one agent worked out never reaches the next. Interlatch records what actually happened, every session from every agent, on your machine. It pulls out what was learned and gives it back to you in a dashboard and to all your agents through one MCP server. Each lesson stays latched to its source (the session, project and agent it came from) and earns trust as later work confirms it.
Interlatch was called Chronicle. The chronicle command still works, and an existing install moves over by itself
when you update (Moving from Chronicle).
A session on the demo data. Download the one-minute tour (MP4, 6 MB): Home, a session and its transcript, ⌘K search, the glossary Map and a weekly review.
What it gives you
Interlatch reads each finished session and writes down what is worth keeping. A real example, taken word for word from the demo data:
Gotcha · billing-api
Stripe webhook signatures need the raw request body
Webhook.construct_eventverifies the signature over the exact bytes Stripe sent. Parsing to JSON first, or postingjson=in tests, fails withSignatureVerificationError. Readawait request.body()and pass that.
From the session "Stop double charges when Stripe retries invoice.paid", extracted automatically.
- Every session, kept for good. Raw transcripts are archived, so nothing is lost when an agent cleans up.
- Knowledge, extracted automatically. Fixes, gotchas, decisions, commands, project facts and preferences, merged into a knowledge base per project and a playbook across all of them.
- Every lesson keeps its source. Each one links to the session, project and agent it came from, so you can open the transcript behind it, and it gains standing as later sessions confirm it.
- Every agent can ask. Through the MCP server, each agent searches the same memory: what Codex worked out yesterday is there for Claude Code today. "Have we hit this error before?", "why did we put idempotency in Postgres?" Claude Desktop, Cursor, Windsurf and Gemini CLI can connect too.
- A dashboard to browse it all. Sessions with their full transcripts, statistics, a glossary of your own vocabulary drawn as a mindmap, and a weekly review you can take in at a glance. ⌘K jumps anywhere.
- A map of your systems. Every project as a system with its parts (UI, API, database, CI, where it is deployed) and the links between projects, drawn from your manifests and what sessions did, each with the evidence behind it.
- What your agents made, in one place. The documents, pages, diagrams, decks, pull requests and commits from every session, each linked to the session that made it and marked when the file has changed or is gone.
- On your phone and your other computers. Open the dashboard on your phone through Tailscale, and keep every computer's sessions in one archive, analyzed once (Phone and other computers).
- In VS Code, next to your code. The extension lists the sessions behind the file you have open, and every file agents worked on in your workspace.
- Plain files too. An Obsidian-compatible Markdown vault and an
interlatchCLI. - A copy in Postgres, if you want one. Keep a copy of your archive in a Postgres database you choose, on this computer, in Docker or in the cloud, for SQL and BI tools (A copy in Postgres).
Quick start
You need macOS 13 or later and a logged-in Claude Code or Codex, which does the analysis.
-
Install.
uv tool install --python 3.13 interlatch # or: pipx install interlatch interlatch install
interlatch installfinds the coding agents on your Mac, asks which to record, imports their past sessions and asks whether to run Interlatch from login. For the app instead, download it from the latest release (Apple silicon) and choose Connect. -
Use your agents as usual. Each session is recorded when it ends and analyzed in the background.
-
Explore. Open the dashboard at http://127.0.0.1:11524/ (or
interlatch ui --open) and press ⌘K, or ask your agent what it learned last week.
Connect more agents later from Settings › Sources, interlatch connect <agent>, or by re-running
interlatch install. Install covers what each step sets up and how to remove it.
Supported agents
| Agent | Recorded from | Picked up | Search from the agent (MCP) |
|---|---|---|---|
| Claude Code | ~/.claude/projects transcripts |
as each session ends, plus every 15 min | ✅ |
| Codex | ~/.codex/sessions rollouts |
every 15 min, once idle | ✅ |
| Codex Cloud | tasks at chatgpt.com/codex (via the codex CLI: title, repo, diff) |
every 15 min | via Codex |
| GitHub Copilot | Copilot CLI and agent sessions; Copilot Chat logs in VS Code | every 15 min | ✅ VS Code and Copilot CLI |
| IBM Bob | ~/.bob/db/bob.db, read-only |
every 15 min | ✅ |
| Google Antigravity | ~/.gemini/antigravity conversation logs, read-only |
every 15 min | ✅ |
| claude.ai, ChatGPT | data export: interlatch import <zip> |
when you import it | – |
All of them share one dashboard, knowledge base, glossary and set of MCP tools; analysis runs through Claude Code or Codex, whichever you choose. Sources has the details for each.
A closer look
| Home. Active time, sessions, tokens and estimated cost, day by day. | Map. Your glossary as a mindmap; each term opens into the knowledge and sessions behind it. | ⌘K. One search over sessions, knowledge, projects, terms and commands. |
Screenshots use made-up demo data.
How it works
- A hook (or the 15-minute sync) hands each finished session to Interlatch, which archives the raw transcript and parses it: prompts, replies, tool calls, files, tokens and cost.
- Once the session is idle, a condensed digest with secrets redacted goes to Claude Code (
claude -p) or Codex (codex exec), whichever you chose, which returns a summary and knowledge items. The call runs sandboxed: no tools, hooks or MCP servers. - New knowledge is merged into the project's knowledge base, the glossary is refreshed, and each finished week gets a written review.
- Everything is served to you (dashboard, app, vault, CLI) and to your agents (MCP).
What leaves your machine: only that redacted digest, sent to Anthropic or OpenAI through your own Claude Code or Codex login. No telemetry, nothing sent to anyone else. Data and privacy lists what is stored where.
What it costs: analysis draws from your Claude or ChatGPT plan like any other use of the agent. With Claude, in
API terms it averages about $0.38 per session with Sonnet; interlatch analyze --pending --dry-run sizes a backlog before you spend
anything. How analysis works has the details.
FAQ
Will it slow down my agent? No. The session-end hook hands off to a detached process and returns in milliseconds; analysis runs later in the background.
Do I need Claude Code? No. Analysis runs through Claude Code, Codex or IBM Bob, or a model provider's API with your
own key: Anthropic, Amazon Bedrock, OpenAI, Azure OpenAI, OpenRouter, any OpenAI-compatible server, or Ollama on your own
computer. Pick one in Status › Analysis or with interlatch config set analysis.backend <name>
(Model providers). Recording and browsing work either way; with none set up,
sessions are archived and wait in the analysis queue.
Windows or Linux? The desktop app is macOS only. On Linux, interlatch install runs the sync and the dashboard
as systemd user units, so a Linux box can be the hub for your other computers. A
team's hub also runs in Docker.
Windows is not supported yet.
Can I keep a project or a session out? Add the project to sources.exclude_projects in the
configuration, or remove a session for good with interlatch forget <id>.
How do I remove it? interlatch uninstall removes the hooks, background agents and MCP registrations and keeps
your data; add --purge to delete the data too.
Something not working? See Troubleshooting.
Documentation
Install · Sources · Dashboard, glossary and Map · Command line · MCP server · VS Code extension · Phone and other computers · A hub in Docker · Joining your team's hub · A copy in Postgres · What gets recorded and how analysis works · Configuration · Data and privacy · Troubleshooting · Moving from Chronicle · Development
Contributing
Issues and pull requests are welcome. CONTRIBUTING.md explains how to run the tests and work on the dashboard with demo data instead of your own sessions.
License
MIT, except the ee/ directory: the features a company needs to run Interlatch across
its teams (single sign-on, policies, audit export) are under the Interlatch Enterprise License and
need a subscription in production. The interlatch package on PyPI is MIT only.
Metadata
Release files for interlatch 0.22.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| interlatch-0.22.0.tar.gz | 4.7 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| interlatch-0.22.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 6.0 MB
Release files / interlatch-0.22.0.tar.gz
| Download URL | interlatch-0.22.0.tar.gz |
|---|---|
| Size | 4.7 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f153becbed87cc10f3219ac074ed100c5eec4840f7a0e0ec5225611e4699af9f
|
|
BLAKE2b-256 checksum How to use checksums |
f79bdb2b3a169f5af9519e442fd0855fb9fe166e13d39083f8ee86d27657e78c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency logRelease files / interlatch-0.22.0-py3-none-any.whl
| Download URL | interlatch-0.22.0-py3-none-any.whl |
|---|---|
| Size | 1.3 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8fe509003d0f40377972f6f607354e9e0f77c839713a57b4fd39ef13639a67e9
|
|
BLAKE2b-256 checksum How to use checksums |
2ea0e150d2afe5c5a92d832edaeb5a1e9abfe4ece980005aaf96736d1b61a622
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 10, 2026.
Transparency log