NewRelease 0.12.3 is out: Engine v0.12.3, Dashboard 0.5.2, Helm 0.12.3, the four SDKs, CLI 0.8.2 and MCP 0.12.3Release 0.12.3 is outSee what's new →

Self-hosted memoryfor AI agents

Dakera stores what your agents learn and recalls it by meaning, keyword or relationship. One Rust binary on your own servers, with no external APIs.

  • 88.2%Recall@20 on LoCoMo
  • 1.17 msp95 vector search
  • 1 binaryno external services
Dakera at the centre of an agent stack: your data (documents, code, conversations, APIs, databases) flows into the Dakera core, AI agents (Claude, Cursor, Windsurf, Agent Squad, custom) connect on top, and useful memory (vector search, BM25 full text, knowledge graph, reranking, intelligent decay) flows out. It deploys on premises, on Kubernetes or in any cloud as a single binary.Dakera at the centre of an agent stack: your data (documents, code, conversations, APIs, databases) flows into the Dakera core, AI agents (Claude, Cursor, Windsurf, Agent Squad, custom) connect on top, and useful memory (vector search, BM25 full text, knowledge graph, reranking, intelligent decay) flows out. It deploys on premises, on Kubernetes or in any cloud as a single binary.

Ask what your agent remembers

Real responses from Dakera 0.12.2, recorded on 15 sample support memories. Pick a question, or watch it run.

  • Recorded, not mocked. Scores, routing and timings are what the server returned.
  • Routed per question. A ticket number goes straight to keyword search; a question in plain words fuses vector and keyword scores, then a cross-encoder reranks.
Ask your own
Recall labsupport-bot15 memories
Why can't Acme's team log in?

4 results · cross-encoder rerank · embed 132 ms · search 1 ms

  1. Acme Logistics hit an SSO login loop after rotating their Okta signing certificate; re-uploading the IdP metadata fixed it.

    episodicimportance 0.70 · vector 1.000 · text 0.000

    smart score0.554
  2. For a chargeback never refund directly: open a dispute case and tag finance-ops.

    proceduralimportance 0.95 · vector 0.314 · text 0.000

    smart score0.463
  3. Acme Logistics renews in March and asked for a quote on 40 more seats.

    episodicimportance 0.58 · vector 0.348 · text 0.299

    smart score0.433

Recorded from Dakera 0.12.2 on 15 sample memoriesAsk your own in the Playground

A brass counter reading 1,847 sessions and 000000 memories, its key turned to reset.A brass counter reading 1,847 sessions and 000000 memories, its key turned to reset. The same counter lit up, reading 1,847 sessions and 041206 memories, its key turned to persist.The same counter lit up, reading 1,847 sessions and 041206 memories, its key turned to persist.

Illustration

A brass counter reading 1,847 sessions and 000000 memories, its key turned to reset.A brass counter reading 1,847 sessions and 000000 memories, its key turned to reset.

Without memory

Every session starts from zero. The agent learns the same context again, and you pay for it every time.

The same counter lit up, reading 1,847 sessions and 041206 memories, its key turned to persist.The same counter lit up, reading 1,847 sessions and 041206 memories, its key turned to persist.

With Dakera

Every session builds on the last, and what one agent learns, the others can recall.

Everything recall needs, in one process

Retrieval, memory types, decay and storage live in one engine, so a recall needs no other service to answer.

Vector, BM25 keyword and knowledge-graph signals flow into one Fusion and rerank unit, which returns a ranked Best match list.

Meaning, keywords and relationships

Vector, BM25 and knowledge-graph signals are fused into one score, and a cross-encoder reranks when it is confident.

A console with four memory modules labelled Episodic, Semantic, Procedural and Working, wired to one connector.

Four kinds of memory

Episodic, semantic, procedural and working memory, stored and recalled the way agents use them.

Memory cards along a Time axis whose importance bars shrink as they age, except one marked Recalled again, which rises.

Importance that decays

Memories an agent stops using fade. The ones it keeps coming back to stay on top.

Four separate services, Vector DB, Embeddings, Graph DB and Session store, streaming into one box labelled Dakera, One Rust binary.

One binary instead of four services

Vector store, embedding service, graph database and session store, in one Rust process. Embeddings run on your machine with ONNX.

Vector, BM25 keyword and knowledge-graph signals flow into one Fusion and rerank unit, which returns a ranked Best match list.
A console with four memory modules labelled Episodic, Semantic, Procedural and Working, wired to one connector.
Memory cards along a Time axis whose importance bars shrink as they age, except one marked Recalled again, which rises.
Four separate services, Vector DB, Embeddings, Graph DB and Session store, streaming into one box labelled Dakera, One Rust binary.

Three calls to a memory

Python, TypeScript, Go and Rust SDKs, a REST API for everything else, and an MCP server for Claude, Cursor and Windsurf.

First, store what the agent learns.

One POST per fact. The server embeds it with bge-large on your own machine; nothing is sent anywhere else.

Then recall it by what it means.

Vector and keyword scores are fused and weighted by importance, and a cross-encoder reranks when it is confident.

Next session, it wakes up knowing.

The wake-up call returns the agent's most important and most used memories, ready for its system prompt.

POST /v1/memory/store

{
  "agent_id": "support-bot",
  "content": "Hooli moved their weekly summary to Mondays starting next month.",
  "importance": 0.6,
  "memory_type": "episodic"
}

200 embedded on this server in 145 ms

id mem_18df0788b5ad877e · tags hooli, preferences

POST /v1/memory/recall

{ "agent_id": "support-bot", "top_k": 3,
  "query": "When should we send Hooli's summary?" }

200 3 results · cross-encoder rerank · search 2 ms

  1. 0.867Hooli moved their weekly summary to Mondays starting next month.
  2. 0.701Priya at Hooli prefers email over calls and wants weekly summaries on Fridays.
  3. 0.470Hooli hit 429s during their Black Friday import; their rate limit was raised to 600 requests per minute for the week.

GET /v1/agents/support-bot/wake-up

200 15 memories, most important and most used first

  1. 0.95proceduralFor a chargeback never refund directly: open a dispute case and tag finance-ops.
  2. 0.80proceduralWhen a customer reports missing data, check the audit log for a bulk delete before escalating.
  3. 0.74proceduralRefunds over $500 need approval from a team lead in the billing channel.
  4. 0.72episodicEscalated SUP-4907 to engineering: CSV exports over 50,000 rows time out after 30 seconds.
docker run -p 3000:3000 -e DAKERA_ROOT_API_KEY=dk-your-key ghcr.io/dakera-ai/dakera:0.12.3

88.2%Recall@20 on LoCoMo

1,536 questions over 10 long conversations, scored by evidence match. No LLM in the retrieval path and no LLM judge.

0.87 msp50 vector search
1.17 msp95 vector search
0.998recall@10

Recall measured with Dakera v0.11.107 in September 2026; latency on BEIR Quora with 50,000 vectors. Temporal questions are the weakest category. Methodology

A brass-rimmed gauge reading 88.2% Recall@20 on LoCoMo.A brass-rimmed gauge reading 88.2% Recall@20 on LoCoMo.
Single-hop86.9%282 questions
Multi-hop85.4%321 questions
Temporal73.9%92 questions
Open-domain91.0%841 questions

See what your agents remember

The Dakera Dashboard shows the health of your memory layer, lets you browse and recall memories, and maps what your agents know.

Explore the Dashboard
The Dakera Dashboard 0.5.2 overview: an attention banner for an exceeded quota, then agent memories, stored records, agents, storage, recall latency and cache hit rate, with the largest namespaces and live agents listed below.
The Agents page for a support agent: its memory count, average importance and sessions, then its memories with type, tags and importance, including chunks of imported documents, and tabs for sessions, consolidation, wake-up, feedback and adding a memory.
The Documents page: an import form for pasting text, Markdown or HTML or uploading a file, the agent's imported documents with format, chunk count and size, and an open refund policy listing its four chunks by section heading and character range.
The Recall lab running a question against a support agent: the top result is a chunk of an imported refund policy, cited with its document title, section and chunk number, and every result shows its rank score, relevance, vector and text similarity, importance and timings.
The Knowledge graph of a support agent: a force-directed network of memory nodes linked by related-memory connections, with decay, diff and time-travel controls.
The cross-agent memory network: five agents drawn as rows of memories, with lines showing shared concepts between agents, and network statistics at the side.
The Analytics page with vector queries, average and p99 latency, storage, a query latency histogram and a throughput chart.
01 / 07

See the health of your memory layer the moment you sign in.

Plugs into the agent you already have

Framework integrations, and an MCP server with 14 core tools that Claude, Cursor and Windsurf load from one config block.

Framework integrations (LangChain, LlamaIndex, CrewAI, AutoGen, Strands, Vercel AI SDK, PraisonAI, Agent Squad, Dify and MCP) wired into the Dakera core.Framework integrations (LangChain, LlamaIndex, CrewAI, AutoGen, Strands, Vercel AI SDK, PraisonAI, Agent Squad, Dify and MCP) wired into the Dakera core.

The last three releases

Every component ships together, and every release documents its upgrade and rollback path.

Read the changelog

0.12.3, Oct 22: Documents become memory; recall you can sort on

  • Retrieval

    Document import: PDF, DOCX, HTML, Markdown and plain text become searchable, citable memory chunks with heading breadcrumbs and page ranges.

  • Sessions

    Recall results carry rank_score, which follows their order; asking for more results never reorders the first ten; neighborhood_mode puts session context inline, in its own list or nowhere.

  • Engine

    event_time on stores: imported and replayed histories reason about time from their own dates.

  • Retrieval

    Faster ingest and reranked recall with lower peak memory: one model worker per physical core, an exact rerank score cache and a fair rerank queue.

  • Engine

    A busy server answers 429 with Retry-After instead of 503, and the REST port reports progress during crash recovery.

  • Engine

    Signed images with SBOM and provenance, a smaller CPU image without curl (new dakera healthcheck) and a non-root GPU image on CUDA 13.

0.12.2, Oct 8: Scoped keys, server-side agents and sessions that close themselves

  • Engine

    Updates no longer fail with 503 "changed during each of 5 attempts": every JSON store returns records bit-for-bit as written.

  • Security

    Key grants take prefix patterns (team-*), keys are edited in place (PATCH), rotation has a grace period, and GET /v1/auth/whoami shows what a key can reach.

  • Agents

    POST /v1/agents creates an agent before its first memory.

  • Sessions

    Idle sessions end after 4 h by default; POST /v1/sessions/{id}/touch keeps a quiet one open.

  • Engine

    Graph View and memory lists serve an opt-in content preview (content_preview_chars).

0.12.1, Oct 5: Upgrades need fewer steps; the Dashboard signs operators in

  • Security

    Full-text indexes built by v0.11 answer keyword queries again, re-analysed in the background.

  • Retrieval

    Changing DAKERA_MODEL re-embeds the store by itself while recall stays correct.

  • Sessions

    Memory, session and agent counts agree across endpoints and no longer read every record.

  • Dashboard

    Dashboard 0.5.0: six-area navigation, an Operations hub, analytics and metrics; the Helm chart now deploys it with sign-in instead of handing it the root key.

Dakera Cloud is next

Self-hosting is free and stays free. Cloud adds managed hosting, an SLA and team monitoring. Join the waitlist for founder pricing.

No spam. We write once, before launch.

You're on the list. We'll write before launch.

  • The SDKs, CLI and MCP server are MIT-licensed.
  • Self-hosted deployments have no usage fees, commercial use included.
The Dakera core under a column of light, with managed hosting, SLA and team monitoring.The Dakera core under a column of light, with managed hosting, SLA and team monitoring.

Common questions

  • No. Dakera is a memory engine for AI agents. It gives your agents persistent, session-aware, cross-agent memory with importance decay. The retrieval engine underneath (HNSW, BM25 and hybrid search) is how memories are recalled; the product is agents that remember, not a database you query.
  • No. Text is embedded on the server at store and query time with ONNX Runtime. The default model, bge-large, ships in the Docker image; bge-m3 (multilingual), MiniLM, E5 and other models can be selected with DAKERA_MODEL. No external API calls and no per-call cost.
  • The engine includes write-ahead-log durability, snapshots and backups, AES-256-GCM encryption at rest, scoped API keys, rate limiting, Prometheus metrics and OpenTelemetry tracing. The product is in public alpha on the 0.12 release line, so APIs can still change between releases; each release documents its upgrade and rollback path.
  • Yes. The Dakera MCP server (dakera-mcp) exposes 14 core tools (100+ available via profiles). Add it to the Claude Desktop, Cursor or Windsurf configuration and your assistant keeps its memory across sessions. No code changes are required.
  • Dakera replaces the memory layer of a typical stack: vector store, embedding service, knowledge graph and session store, in one binary. There are no external API keys and no separate services to operate.
  • A single node is the simplest deployment. For high availability, Dakera runs as a multi-node cluster: nodes discover each other over gossip, elect a leader, and replicate every write with versioned merges, so each node holds a full copy of the data. See high availability.
  • Native SDKs for Python, TypeScript, Go and Rust, and a REST API (JSON) for any other language. A gRPC service (Protobuf) covers vector operations, and the MCP server connects AI tools.
  • Open core, not fully open source. The integration layer (SDKs for Python, TypeScript, Go and Rust, the CLI and the MCP server) is MIT-licensed and on GitHub. The memory engine is proprietary: you self-host the binary on your own infrastructure and own your data, but the engine source is not public. Self-hosted deployments have no usage fees, including commercial use. Full breakdown.
  • Yes. Dakera ships as a single binary or Docker image and needs no external services. Your data stays on your infrastructure. Pull the image, set DAKERA_ROOT_API_KEY and start it on any Linux server or Kubernetes cluster; the image includes its default models, so it is ready in seconds without network access.
  • Dakera is available now as a public alpha. You can deploy the self-hosted binary today: pull the Docker image, set an API key and start it. Dakera Cloud (managed hosting, SLA, team monitoring) is next; join the waitlist on this page to lock in founder pricing.
  • The self-hosted binary is free to run on your own infrastructure, with no usage fees. Memory contents never leave your infrastructure. By default the engine sends product telemetry: lifecycle events and a 6-hourly heartbeat with version, platform, configuration and rounded usage counts, never memory content, ids, names, secrets or paths. Telemetry includes the machine's hostname, and the analytics provider records the connecting IP address for a coarse location. Turn it off with DAKERA_TELEMETRY=0 or DO_NOT_TRACK=1; see the telemetry page. Dakera Cloud (managed hosting, SLA, team monitoring) will be priced separately; join the waitlist to lock in founder pricing before launch.
  • Yes. The Dakera MCP server loads 14 core tools by default: store, recall, semantic, hybrid and full-text search, sessions, knowledge graph, entity extraction and forget, plus two tools that discover and load the rest on demand. Set DAKERA_MCP_PROFILE=power or all to expose more of the 100+ tools. Connect it to Claude Desktop, Cursor or Windsurf with one config block. All memory stays on your infrastructure.
Self-hosting is free. No account required.