Memory (Einstein)
Einstein is AiHummer’s long-term memory. It turns conversations into durable
facts, but it does so carefully: nothing becomes memory without evidence and a
human in the loop, and recall is wrapped so it can never act as a back door for
prompt injection. Memory is administered under /v1/admin/memory/*.
This page explains the claim → review → promote pipeline, how recall is protected, and what is configurable. For the packaged memory service, see the Einstein plugin.
Claims, evidence and review
Memory is not written silently. As conversations happen, candidate facts are extracted as claims, each carrying the evidence it was drawn from. Claims go to review, where a human can accept or reject them, and only accepted claims are promoted into long-term memory.
conversation ─▶ claim (+ evidence) ─▶ human REVIEW ─▶ PROMOTED to memory
[!NOTE] Promotion is human-reviewed. The system indexes and proposes, but it never silently rewrites memory. This is what keeps long-term memory trustworthy enough to ground real answers.
Canonical Markdown is the source of truth
The authoritative store of memory is canonical Markdown. The system indexes it and proposes additions and changes, but the Markdown remains the source of truth — it is never silently overwritten. That makes memory human-readable, reviewable and portable, rather than an opaque blob.
Data-fenced recall
When memory is recalled into a turn, it arrives as a tool result wrapped in a data-fence. The data-fence marks recalled content as data, not instructions, so text stored in memory cannot hijack the agent — this is the defence against indirect prompt injection (where a malicious instruction is smuggled in via remembered content).
[!WARNING] Recalled memory is data, never commands. The data-fence is what enforces this. Do not disable it: it is the boundary that stops a poisoned memory from steering an agent.
What you can configure
Memory behaviour is tunable from the admin UI (settings group “Memory”) and the admin API:
| Setting | Options / purpose |
|---|---|
| Memory mode | auto (extract and promote on the configured policy), review (human gate), or off |
| Retrieval | Full-text and/or embedding-based recall |
| Dream / consolidation | A periodic interval that consolidates memory |
| Contradictions | Detect and surface conflicting facts |
| Embeddings | Embedding model used for semantic recall |
[!TIP] Start with review mode in production so a human approves what becomes long-term memory, then move to auto only once you trust the extraction for a given workspace.
By default, recall can run on an in-memory store with a hash embedder. For
production-quality semantic recall, point AiHummer at a real vector store and
embedder with AIHUMMER_QDRANT_URL and AIHUMMER_EMBEDDER_URL.
Admin API
| Resource | Purpose |
|---|---|
/v1/admin/memory | Memory configuration and management |
/v1/admin/memory/.../facts | Review claims, promote or reject facts |
Where to next
- See the packaged service in the Einstein plugin.
- Ground answers in documents with Knowledge / RAG.
- Configure the agents that use memory in Agents & personas.