MemoryRouter
AutoGen memory

AutoGen memory: a protocol, and the store you bring

AutoGen’s approach is refreshingly explicit: memory is an interface with add and query, and it participates in the model context through update_context.

Microsoft. Sources checked 2026-09-25.

How AutoGen handles memory today

The docs define a Memory protocol with add, query, update_context, clear, and close, plus a simple ListMemory implementation, and the core library exposes update_context as the hook that injects recalled content into the model context.

Interfaces are the right design for a framework and the wrong place to stop for a product. Real deployments need ranking, isolation per user, retention policy, and a store that survives a redeploy.

What AutoGen forgets

The protocol is stable. Everything behind it is your responsibility.

The fix with MemoryRouter

Implement the Memory protocol against MemoryRouter and the team keeps its interface while getting a store with search, per-user vaults, and time-aware queries.

  1. 1

    Create a vault per end user

    Vaults are provisioned in the dashboard or through the API, each with its own key. That is the isolation boundary, enforced by the platform rather than by your code.

  2. 2

    Implement query and add against the API

    query calls semantic search and returns memories; add stores new ones with metadata. update_context then injects what came back, exactly as the protocol expects.

    Endpoints to implement against

    # MemoryRouter exposes search and store endpoints behind your vault key
    # docs.memoryrouter.ai/api-reference
  3. 3

    Keep the default for tests

    ListMemory stays useful for unit tests, and production runs against the vault. Same interface, different backing store.

Start a MemoryRouter vault

Implement the protocol once, keep the interface, and get durable memory. 14-day free trial.

Related

AutoGen memory FAQ

Sources

Sources checked 2026-09-25. Tool behavior changes; check the vendor docs before relying on a detail.

Start free