Agent memory for TypeScript

Local-first memory in your process

Extract facts, embed them, and recall scoped memories from your app process, with pluggable vector storage and framework adapters. npm install turbomem. No Python sidecar. No memory server.

INP

Input

addFacts()

EXT
v2

Extractor

LLM

EMB

Embed API

768-d vector

DED
v2

Dedup

cosine ≥ 0.92

STO

Storage

vector backend

SEA

Search

cosine KNN

RES

Result

scoped rank

Input

"User loves trail running in the mountains"

TypeScript

Native library

In-process

No HTTP hop

Apache-2.0

Open source

Semantic

LLM facts + vector search

Open source today. Cloud soon.

Self-host the full library now, or join the waitlist for managed turbomem Cloud.

Open source

Free · self-hosted

Apache-2.0 · full library access

  • PGlite, sqlite-vec, and Upstash storage adapters
  • LLM extraction, deduplication, and scoped search
  • Browser, Node, Bun, and edge runtimes

turbomem Cloud

Coming soon

Managed API, dashboard, and team features

  • Hosted memory API with SLAs
  • Usage analytics and observability
  • Enterprise-ready controls
Join waitlist

Built for embedded agent memory

Everything you need for durable agent memory, semantic recall, tenant scoping, and storage that fits your runtime.

Fully embedded

Runs inside your Node, Bun, or browser process. No sidecar server, no HTTP hop per memory call.

Semantic search

LLM fact extraction and embeddings, with cosine-ranked recall. Swap embedding providers without changing your app code.

Pluggable storage

PGlite + pgvector by default. Optional sqlite-vec for SQLite-native apps, or Upstash Vector for edge runtimes.

Adapter-based

Swap embeddings, storage, and framework adapters like Mastra, Vercel AI SDK, and more.

Type-safe

Strict TypeScript with Zod-validated inputs. Node 20+, Bun, browser, serverless.

Terminal CLI

Add, search, and manage memories from your shell with one-shot commands or a REPL.

Browser-ready

IndexedDB-backed PGlite in the browser, durable client-side memory with no remote database.

Edge-ready

Upstash Vector over HTTP on Cloudflare Workers and Vercel Edge. Same API, different backend.

Multi-tenant scoping

Tag memories with userId, agentId, sessionId. Search and list respect scope out of the box.

How it works

Conversations become facts. Facts become vectors. Queries return ranked memories, all in-process.

01

Extract

An LLM turns chat into discrete, third-person facts about the user.

02

Embed & store

Embeddings land in PGlite, sqlite-vec, or Upstash pick local Postgres, SQLite, or HTTP for the edge.

03

Retrieve

Semantic search returns scoped results with cosine similarity scores.

turbomem Cloud

Join the waitlist for managed agent memory

Hosted API, dashboard, and team features - without giving up the open-source library you can self-host today.

Join waitlist