Roadmap
Vision
Section titled “Vision”ENGRAM is the memory substrate for AI agents: the layer that lets agents store what they learn and recall it by meaning so they get more capable over time. The roadmap is sequenced so the cognitive memory core works end-to-end before we add the human-facing dashboard and broader platform features.
Where we are
Section titled “Where we are”The foundation is built: the NestJS MCP server, Postgres and Prisma, Postgres-backed short-term and long-term memory, an embeddings package, a pgvector vector-store package, health checks, and memory CRUD MCP tools.
The vector lifecycle is wired end-to-end: embeddings are generated, indexed in
pgvector, and served through the semantic recall path.
Delivery waves
Section titled “Delivery waves”Each wave maps to a GitHub milestone and a set of epics. Track work through the
epic:* labels on each issue.
| Wave | Milestone | Epics |
|---|---|---|
| 1. Recall that works | v0.1 — Semantic Recall | Semantic Memory Engine (#98), Retrieval Quality & Evaluation (#102) |
| 2. Memory that thinks | v0.2 — Memory Intelligence | Memory Intelligence (#99), Agent Ergonomics & SDK (#100) |
| 3. Multi-tenant and portable | v0.3 — Multi-tenant & SDK | Auth & Multi-tenancy (#101), Agent SDK (#100) |
| 4. Production and dashboard | v1.0 — Production & Dashboard | Admin API & Dashboard (#103), Production Readiness (#104) |
Epic summary
Section titled “Epic summary”| Epic | Focus |
|---|---|
| #98 | Wire the vector lifecycle, add semantic recall, hybrid search, and ranking |
| #99 | Consolidation, decay, deduplication, contradiction reconciliation, and insights |
| #100 | High-level remember/recall/forget/reflect tools, scoping, and a client SDK |
| #101 | OAuth, JWT, organizations, API keys, and strict per-tenant isolation |
| #102 | Relevance and latency evaluation harness with CI regression gates |
| #103 | tRPC API and web dashboard to browse, search, and monitor memories |
| #104 | Security hardening, observability, deployment, backups, and load testing |
Near-term sequence
Section titled “Near-term sequence”- Define the vector-store abstraction over pgvector (#105).
- Wire vector upsert and delete into the long-term memory lifecycle (#107).
- Implement semantic kNN search and the
recallMCP tool (#108, #109). - Stand up the relevance evaluation harness to keep recall quality honest (#113).
- Add hybrid search and relevance ranking (#110, #111).
Quality gates
Section titled “Quality gates”Run these checks before opening a pull request when the touched area supports them:
pnpm docs:checkpnpm buildpnpm lintpnpm typecheckpnpm testFor the MCP server specifically:
pnpm --filter mcp-server lintpnpm --filter mcp-server testWorking agreements
Section titled “Working agreements”- Start from a feature branch, not
main. - Keep changes tied to the issue or request in front of you.
- Prefer existing workspace packages and framework CLIs.
- Update the README and setup docs when startup commands change.
- Keep detailed implementation notes in focused docs rather than expanding the root README.