DEV Community

Cover image for AI Agent Memory Is Not a Vector Database: Design the Write Path First
Praveen VR
Praveen VR

Posted on

AI Agent Memory Is Not a Vector Database: Design the Write Path First

A vector database can retrieve stored information. It cannot decide what deserves to become memory, whether it is still true or who should be allowed to use it.

TL;DR

Production AI agent memory needs more than embeddings and similarity search.

A reliable memory system must define:

  • What the agent is allowed to remember
  • Where each memory came from
  • How long it remains valid
  • What happens when facts change
  • Who can access it
  • How it can be corrected or deleted
  • Whether it is safe to use during an action

Treat agent memory as governed, evolving application state—not an archive of chat transcripts.

The Common Memory Architecture Mistake

A typical AI agent memory demo looks like this:

  1. Save the conversation.
  2. Convert the text into embeddings.
  3. Store the embeddings in a vector database.
  4. Retrieve similar text during a later conversation.
  5. Add the retrieved text to the model context.

This can work for a prototype.

It is not a complete memory architecture.

The vector database solves an indexing and retrieval problem. It does not determine whether the stored information is accurate, current, relevant, private or malicious.

Suppose a customer says:

Our payment terms are now Net 45.

The agent stores that sentence.

Three months later, the customer changes the terms to Net 30. If both statements remain in the memory index, semantic search may retrieve either one.

The system remembered both conversations.

It failed to maintain the current truth.

Separate the Systems Developers Call “Memory”

Several technically different systems are often grouped under the word memory.

Layer Purpose Typical lifetime
Conversation context Maintain coherence during the current interaction Minutes or hours
Workflow state Track steps, tools, approvals and unfinished work Hours or days
Knowledge retrieval Retrieve documents and business information Until the source changes
Long-term agent memory Preserve useful facts, preferences and prior decisions Across sessions
Audit history Record what the agent saw, decided and changed Based on retention policy

These layers should not share identical storage, access or deletion rules.

LangChain’s current documentation similarly separates short-term memory scoped to a conversation thread from long-term memory that persists across different threads and sessions.

A failed tool call belongs in workflow state or an execution log. It does not automatically deserve to become long-term memory.

A user preference may belong in long-term memory. It does not need to occupy the full context window during every request.

Why Saving the Entire Transcript Fails

It stores noise as knowledge

Conversations contain guesses, corrections, incomplete ideas and temporary decisions. Saving everything gives transient statements the same status as confirmed facts.

It creates contradictions

A person, project or business process changes over time. Append-only memory stores the old state beside the new state unless the system supports revision and supersession.

It expands the attack surface

A malicious instruction hidden inside a document or conversation can be extracted as durable memory and influence future sessions.

Google’s Memory Bank documentation explicitly identifies memory poisoning as a risk: false or malicious information may be stored and later used by the agent.

It complicates privacy and deletion

Deleting a conversation does not necessarily remove extracted facts, summaries, embeddings, caches and derived records created from it.

It increases retrieval cost

More stored text does not automatically create better recall. It can increase irrelevant matches and consume context with duplicated information.

Design the Memory Write Path First

Before selecting a vector database, define how a candidate memory becomes trusted application state.

1. Extract a Candidate Memory

Do not store every message.

Identify information that may be useful beyond the current interaction, such as:

  • A stable user preference
  • A confirmed business rule
  • A project decision
  • A recurring constraint
  • A relationship between entities
  • The outcome of a completed workflow

The output at this stage is only a candidate. It is not yet trusted memory.

2. Store the Evidence

Every memory should retain its source.

Useful provenance fields include:

  • Source message or document
  • User or system that supplied it
  • Time observed
  • Extraction method
  • Related entity
  • Confidence
  • Approval status

Provenance makes it possible to explain why the agent believes something and to correct the memory later.

3. Classify the Memory

Different memory types require different behaviour.

A preference such as “send concise reports” may remain valid until changed.

An operational status such as “invoice pending” may expire within hours.

A contractual term may require human verification before it can influence an external action.

Classification should determine retention, permissions and how much evidence is required.

4. Apply Scope and Access Controls

A memory must be attached to a clear namespace:

  • User
  • Team
  • Customer
  • Project
  • Tenant
  • Agent
  • Workflow

An agent should never retrieve one customer’s memory while operating on another account.

Access filtering must happen before semantic similarity ranking, not after sensitive content has already entered the model context.

5. Define Update Semantics

The write path needs rules for conflicting information.

A new memory may:

  • Add a new fact
  • Reinforce an existing fact
  • Correct an earlier fact
  • Supersede an earlier state
  • Temporarily override a rule
  • Mark information as disputed
  • Remove information that is no longer valid

Recent research argues that long-term agent memory should support state-level operations such as ingestion, revision, forgetting and retrieval rather than treating memory as immutable stored records.

6. Set a Lifecycle Policy

Not every memory should remain forever.

A memory record may need:

  • A valid-from timestamp
  • An expiry time
  • A review date
  • A superseded status
  • A deletion mechanism
  • A sensitivity classification
  • A retention policy

Forgetting is not necessarily a system failure. In many applications, it is required for correctness, privacy and relevance.

7. Log the Memory Decision

Record why the system created, updated, rejected or deleted a memory.

This is especially important when an AI-generated interpretation becomes durable state that may influence later actions.

What Should a Memory Record Contain?

A practical record might include:

Field Purpose
Subject Person, project, customer or entity the memory describes
Memory type Preference, fact, event, rule, decision or status
Canonical statement The normalized information the agent may retrieve
Source evidence Original message, document or system record
Confidence Reliability of the extraction
Scope User, tenant, project or workflow boundary
Validity period When the memory should be considered true
Supersedes Previous memory replaced by this record
Sensitivity Access and handling requirements
Write authority Who or what approved the memory
Revision history How the memory has changed

The canonical statement supports efficient retrieval.

The evidence and revision history support trust.

Retrieval Comes After Governance

Only after the write path is defined should the system optimize retrieval.

The read path should generally:

  1. Identify the user, tenant and operational scope.
  2. Filter memories by permissions.
  3. Remove expired or superseded records.
  4. Retrieve semantically and lexically relevant candidates.
  5. Rank by relevance, recency and confidence.
  6. Return the memory with its evidence and status.
  7. Limit how much memory enters the model context.

Google’s agent architecture guidance distinguishes between persistent long-term knowledge, low-latency working context and a durable ledger for transactional auditing. Treating these as separate requirements produces a safer architecture than routing everything through one vector index.

Example: A Customer-Onboarding Agent

Imagine an agent coordinating enterprise customer onboarding.

It may need to remember:

  • The customer’s preferred deployment region
  • Security requirements
  • Named approvers
  • Contractual restrictions
  • Previous implementation decisions

It should not permanently remember:

  • An unconfirmed comment from an early sales call
  • A password pasted accidentally into a chat
  • A temporary implementation error
  • A prompt embedded inside an uploaded document
  • A preference belonging to a different customer

When an approver changes, the new record should supersede the previous one while preserving the audit history.

That is memory management.

Embedding both names and hoping similarity search retrieves the newer one is not.

Production Checklist

Before shipping persistent memory for an AI agent, confirm that:

  • Conversation history and durable memory are separate.
  • Raw transcripts are not automatically promoted into memory.
  • Every memory retains source evidence.
  • Facts can be updated, disputed and superseded.
  • Access is isolated by user and tenant.
  • Sensitive memory writes require stronger controls.
  • Expired information is excluded from retrieval.
  • Users or administrators can correct and delete memory.
  • Memory poisoning and prompt-injection scenarios are tested.
  • Agent actions remain recorded in a separate audit ledger.

Memory Is a Data-Governance Problem

The model is not the hardest part of long-term memory.

The difficult part is deciding which information becomes durable, how its truth changes and whether it is safe to use.

That makes AI agent memory a business data management problem as much as an LLM problem.

A useful next step is understanding why AI-ready data must go beyond dashboards.

For teams planning the wider architecture of an agentic or AI-native application, the AI-Native Product Playbook provides a practical framework from product concept through production design.

A vector database can help your agent find a memory.

Your architecture determines whether that memory deserves to be trusted.

Top comments (0)