Monorepo for the amem agentic-memory stack — memories that evolve, not just accumulate. It uses Qdrant, local Transformers.js, and an LLM, with no Python required.
| Package | What it is | npm |
|---|---|---|
@amemhq/core |
Framework-agnostic A-MEM engine — note construction, evolution, hybrid (BM25 + dense) retrieval with graph expansion. Qdrant + Transformers.js. | @amemhq/core |
openclaw-amem |
OpenClaw memory-slot plugin — a thin wrapper around amem-core. |
openclaw-amem |
amem-api |
Thin single-writer service (HTTP + MCP) so multiple processes share one memory store. | coming soon |
📖 Documentation: amem.owo.lc · 📄 Paper: A-MEM (arXiv:2502.12110, NeurIPS 2025)
There are two tiers because the calls are not equally hard. The fast tier runs everything frequent:
extraction, link judgement, and the per-turn CRUD decision. The strong tier runs only merge
adjudication and contradiction classification.
| tier | env | plugin config |
|---|---|---|
| fast | AMEM_LLM_MODEL |
llmModel |
| strong | AMEM_LLM_STRONG_MODEL |
llmStrongModel |
strong is optional and falls back to fast field by field. If you set only
llmStrongModel, you keep the same provider and endpoint with a better model. If
you set all three llmStrong* fields, the tiers run on separate backends — a
local Ollama for fast, a hosted API for strong. If you set none, the system
behaves as a single-model install. There is no built-in strong default: an
upgrade never starts spending more on its own.
The split is worth the additional configuration because the gap is uneven. Extraction differs about 2 points between a cheap model and a strong one. Contradiction detection differs 17–21, and implicit contradictions collapse from 55% to 8.7%. For sources and the rest of the reasoning, see Design Rationale.
This is a pnpm workspace (Node 24).
pnpm install # first run: `pnpm approve-builds` to allow onnxruntime-node / sharp / esbuild
pnpm -r build # build every package
pnpm -r typecheck
pnpm -r test # vitest — integration tests need Qdrant on :6333 + ANTHROPIC_API_KEY
pnpm docs:dev # run the docs site locallyChangesets and GitHub Actions automate publishing.
MIT © heichaowo
