explaingit

atomicstrata/atomicmemory

7TypeScriptAudience · developerComplexity · 4/5ActiveLicenseSetup · moderate

TLDR

Portable memory layer for AI agents that stores messages and facts in Postgres with pgvector, with a TypeScript SDK, MCP server, and adapters for popular agent frameworks.

Mindmap

mindmap
  root((atomicmemory))
    Inputs
      Chat messages
      User scope
      Search queries
    Outputs
      Retrieved memories
      Context packages
      Mutation records
    Use Cases
      Long-term agent memory
      Cross-session recall
      Local privacy storage
    Tech Stack
      TypeScript
      Postgres
      pgvector
      Docker

Things people build with this

USE CASE 1

Give a Claude or GPT app long-term memory backed by your own Postgres

USE CASE 2

Add an MCP memory server to Claude Code or Cursor for agent recall

USE CASE 3

Plug AtomicMemory into Vercel AI SDK, LangChain, or Mastra via the framework adapters

USE CASE 4

Run a fully local memory store on a laptop for privacy-sensitive prototypes

Tech stack

TypeScriptPostgrespgvectorDockerMCP

Getting it running

Difficulty · moderate Time to first run · 30min

Core runs from Docker but needs Postgres with pgvector; embeddings and extraction add per-call latency on top of the local store.

Apache 2.0 lets you use, modify, and redistribute the code commercially with attribution and a patent grant.

In plain English

AtomicMemory is a memory layer for AI agents. When you build an app that talks to a chatbot like Claude or GPT, the chatbot has no built-in long-term memory of past conversations or facts about the user. AtomicMemory gives the app a place to save that context, search it later by meaning rather than by exact words, and feed the right bits back into the next AI call. The README describes it as portable and inspectable, in contrast to hosted memory services that act as a black box around the data. The project ships several pieces. The Core is a backend that stores memories in Postgres with the pgvector extension for semantic search, and runs from a Docker image. The TypeScript SDK is the main programming interface, with helper functions for capturing messages, searching by query, and packaging context. There are also a command-line tool, an MCP server (a protocol used by Claude and similar tools to call external services), framework adapters for Vercel AI SDK, OpenAI Agents SDK, LangChain, LangGraph, and Mastra, and plugins for agent hosts such as Claude Code, OpenClaw, Hermes, Codex, and Cursor. The README emphasises that memory is not just appending and recalling. The system supports supersession (newer facts replacing older ones), clarification, deletion, no-op decisions when nothing changes, and a record of how each fact was reached. The Core separates the pieces that handle embeddings, extraction, mutation, reranking, retrieval packaging, and evaluation, so the engine is not tied to one specific model version. It can run locally on a developer laptop for privacy-sensitive work, or against a hosted service. The README publishes benchmark numbers against industry tests called BEAM and LoCoMo10, claiming parity or better with named competitors at lower cost per query. The authors are careful to say these are scores under matched methodology rather than marketing claims, and that latency and recall claims need to be paired with the hardware, dataset, and date used to produce them. Performance is described as a design target of single-digit-millisecond local retrieval, not a guarantee. Getting started is shown as installing the npm packages, pointing a MemoryClient at a local Core instance, calling ingest to add messages, and calling search to retrieve them by query and user scope. The repository excludes the hosted service infrastructure, the Python SDK, and the raw benchmark research code. The license is Apache 2.0.

Copy-paste prompts

Prompt 1
Give me a 5-minute install guide for AtomicMemory Core via Docker plus the TypeScript SDK
Prompt 2
Show me how to point a MemoryClient at a local Core, ingest messages, and search by query and user scope
Prompt 3
Explain how AtomicMemory handles supersession, clarification, deletion, and no-op memory mutations
Prompt 4
Walk me through wiring the MCP server into Claude Code so the agent can read and write memories
Prompt 5
Compare AtomicMemory's BEAM and LoCoMo10 benchmark methodology against hosted memory services
Open on GitHub → Explain another repo

Generated 2026-05-22 · Model: sonnet-4-6 · Verify against the repo before relying on details.