Continuity for CLI agents

Give Claude Code a persistent memory.

Claude Code forgets everything between two sessions, two worktrees, two accounts. Tramya indexes its local history and recalls it on demand, so every new session picks up exactly where the last one left off — no re-briefing, no re-pasting files, without your code ever leaving your machine.

The problem

Every Claude Code session starts from zero.

Claude Code writes each conversation to ~/.claude/projects/<slug>/*.jsonl, but it never reads the files from previous sessions. Every time you launch claude, the agent rediscovers the repo, asks again for the conventions, and re-runs the same searches. Decisions you already settled resurface because nobody remembers the “why”.

The problem gets worse the moment you use Git worktrees (each worktree has its own Claude project folder), juggle Claude Code and Codex, or hand a branch to a teammate. The history exists, it is on disk, it is readable — but no agent consults it on its own. Context is lost by default, not by accident.

The Tramya answer

An MCP server that hands context back to Claude Code.

Tramya is a local companion that continuously indexes Claude Code's *.jsonl files, extracts the decisions you flagged, the files you touched and the commands you ran, then exposes all of it through an MCP (Model Context Protocol) server that Claude Code calls natively. Concretely, as soon as a new session starts, Claude Code queries get_project_context with the topic at hand and receives a condensed summary: active decisions, the last errors hit, the repo conventions.

Nothing leaves the machine. The SQLite index lives in ~/.tramya/, the signed macOS app handles reading the sources, and a single line in your global CLAUDE.md is enough for the agent to use the server with no per-project configuration.

How it works

Five steps, and the next session inherits the context.

1. Install the Tramya app

Download the signed, notarized macOS .dmg (Windows and Linux too) from tramya.com. On first launch, Tramya starts a local companion on 127.0.0.1:4317 and offers to index the existing JSONL files in ~/.claude/projects/.

2. Register the MCP server

From the Tramya dashboard, under Settings, click “Install in my agents”. Tramya writes the mcpServers entry into ~/.claude/settings.json. Claude Code detects the server on its next launch.

3. Index the past

Tramya scans ~/.claude/projects/, parses each JSONL, and extracts entities, decisions and code blocks. The initial indexing runs in the background and takes a few dozen seconds depending on corpus size.

4. Consume the context

Add one line to your global CLAUDE.md: “at the start of any non-trivial task, call get_project_context with the active project and a short query”. Claude Code follows the instruction and pulls the relevant context in a single local MCP round trip.

5. Save durable decisions

Before a session ends, the agent calls save_memory with a structuring decision (an architecture choice, an API contract, a validated workaround). The next session — even in another worktree or from Codex — will find it again.

Use cases

Three profiles that stop paying the re-context tax.

Multi-project indie dev

You juggle five side projects and one main client. Without memory, every switch costs ten minutes of “where was I”. With Tramya, opening Claude Code in the repo is enough: recent decisions, flagged TODOs and the last bug in progress are recalled automatically.

Dev agency

Every new batch for a client starts with 30 minutes of re-explaining conventions, stack and legacy quirks. By sharing an encrypted Tramya vault across the team, project context is available to any dev who joins the repo.

In-house product team

A team of six engineers alternates Claude Code, Codex and Cursor by task. Tramya unifies the histories: a decision made in Codex is found again in Claude Code the next day, with no manual copy-paste between agents.

Frequently asked questions about Claude Code memory

How do I install Tramya memory for Claude Code?

Download the Tramya macOS app, launch it, then open the dashboard at http://127.0.0.1:4317. From Settings, click “Install in my agents”: Tramya adds the mcpServers entry to ~/.claude/settings.json. Claude Code will then call get_project_context and save_memory with no extra configuration.

How much does persistent Claude Code memory cost?

The Free tier is free forever on one machine. Local Lifetime at 49 € one-time unlocks every connector. Pro at 69 €/year (or 7.90 €/month) adds up to three devices and remote control. Cloud at 119 €/year (or 12.90 €/month) adds the device-side encrypted vault and multi-machine restore.

How is it different from mem0 or other cloud memories?

mem0 stores embeddings on its servers and bills per token. Tramya is local-first: the SQLite index stays on your machine, no message leaves for a third party, and search works offline. Cloud sync is optional and encrypted device-side.

Is Tramya safe for proprietary code?

Yes. Claude Code histories (~/.claude/projects/*.jsonl) and flagged decisions live locally on your disk. Nothing leaves unless you explicitly enable Cloud sync, in which case the vault is encrypted device-side (AES-256-GCM, key derived from a passphrase with scrypt) before anything is sent.

Does it work offline, on a train or a plane?

Yes for memory: search, context recall and save_memory work with no network. Only the call to the Anthropic model needs a connection, which is independent of Tramya.