Aletheia

claude-mem alternative: Aletheia compared with claude-mem

Aletheia (aletheia-mem) is a free, local memory and rules hub for AI coding tools, and a possible claude-mem alternative if you want one store shared by several hosts. This page compares it with claude-mem, the larger and older project, and says where each one is ahead. Aletheia is not affiliated with or endorsed by the claude-mem authors or Anthropic.

Short answer

claude-mem is the bigger, more mature project. It has a far larger community, more features and more integrations. Choose it if Claude Code is your main host and you want its live viewer, its file read gate, its cloud sync option or its community.

Aletheia is a small alpha project. Choose it if you want one SQLite store that several hosts read over MCP, REST or the CLI, rules written once and synced into each host's own instruction file, and facts that record when they were true. Both projects run on your machine and both are Apache-2.0.

The two can run side by side. You can also copy your claude-mem memories into Aletheia.

Facts about claude-mem, fetched 2026-10-29

These numbers come from GitHub and from claude-mem's own documentation. They change over time, so check the sources.

For scale, the Aletheia repository's first commit is dated 2026-10-26 and its first release, 0.1.0, is dated 2026-10-27 (CHANGELOG).

Where claude-mem is ahead

Every item below is stated in claude-mem's documentation. Aletheia's status for the same item is in the second half of each line.

Where Aletheia differs

Each point is backed by Aletheia's code or README.

Measured numbers

Retrieval only. The numbers show whether the evidence for a question is in the top five results. They are not answer accuracy, and answer accuracy is not measured.

On the LoCoMo dataset, 1,536 questions with gold evidence, raw dialogue turns stored as memories:

SystemRecall@5MRR
claude-mem 15.2.0, as shipped36.0%0.285
Aletheia, keyword search (BM25)55.3%0.482
Aletheia, keyword plus vectors (hybrid)57.4%0.497

All three rows are measured-by-us. Re-run the Aletheia rows with bun scripts/compare-bench.mjs. The command reads the JSON files in bench/results/2026-10-26/ and needs no network. The claude-mem row comes from the README table and from bench/claude-mem-baseline.mjs. Benchmarks has every command and the full table.

Read these numbers with five caveats.

  1. The claude-mem run used version 15.2.0. The latest release on 2026-10-29 is v15.6.0, and the number was not re-run on it.
  2. claude-mem is built to ingest through its language-model observer. The baseline saved raw turns through its save endpoint, which is the closest model-free equivalent. A run through the observer could score differently.
  3. claude-mem's docs say its semantic matching uses Chroma only when the index is running. The committed files do not record whether it was running. Source: https://docs.claude-mem.ai/usage/search-tools.md, 2026-10-29.
  4. The raw output of the claude-mem run is not committed in bench/results/. The README row records Recall@5, MRR and latency, and scripts/compare-bench.mjs does not print it.
  5. The Aletheia hybrid row needs the optional embeddings package. Latency numbers are not like for like. Aletheia's figure is the mean time of the in-process ranking call, and it leaves out the time to embed the question. claude-mem's figure is an HTTP request to its worker, with p50 1,699 ms and p95 2,824 ms over 40 idle queries.

Using both

Aletheia and claude-mem can run side by side. They use separate data directories, ~/.aletheia and ~/.claude-mem by default, and separate ports. Aletheia never writes to claude-mem's database. The importer opens it read-only with PRAGMA query_only ([src/hub/importers.mjs](https://github.com/mohamed-ashraf-elsaed/aletheia-mem/blob/main/src/hub/importers.mjs)).

claude-mem describes itself as injecting relevant context into future sessions (the repository description, 2026-10-29), and Aletheia's SessionStart hook for Claude Code prints a context block. If both are installed on one host, expect two context blocks. This page does not claim a tested combination. Run aletheia install claude-code without --write first to see every file it would change.

Migrating

To copy your claude-mem memories into Aletheia, run:

aletheia import claude-mem

The command reads observations, session summaries and prompts and adds them to the hub. Add --path <db> for a database in another place and --no-prompts to skip prompts. The step-by-step guide is Migrate from claude-mem.

Licence and attribution

Aletheia is Apache-2.0. A few files come from claude-mem 15.2.0, also Apache-2.0: the optional legacy viewer, two skill prompts, some scripts and one derived module. NOTICE.md lists each file and the change made.

Next steps