Memory architecture

Memory built in.
Mem0 optional.

GenZAgents ships with a native memory layer powered by your own receipt pool — no external SaaS required, no extra DPA sub-processor, no extra monthly bill. Connect Mem0 or Letta only if you already use them.

Why we built it ourselves

Mem0 raised $24M Series A in October 2025 (Basis Set + Peak XV + YC + GitHub Fund + a dozen named angels). They own the "memory layer" category in agent-builder mindshare.

The technical decision was easy: every cryptographic receipt we issue already contains the structured memory of an AI conversation — what was discussed, which model ran it, which project it belongs to, what was decided. There's no reason to send the same content to an external memory SaaS when we already have it, signed, in your receipt pool.

The strategic decision followed. Charging extra for "memory" would invite a head-on price comparison with a well-funded competitor we don't need to fight. So memory is bundled into your existing Pro Owner tier. Done.

Five memory sources

Every agent picks one. Most pick GenZ Memory because it works out of the box. The other four are there for teams with existing deployments or unique requirements.

GenZ Memory

source = "genz-native"
Default · recommended

Reads from your own receipt pool — every signed receipt and every captured conversation becomes part of the agent’s memory.

Requires

Nothing. Ships with GenZAgents.

Trade-offs

  • No specialised memory consolidation / summarisation yet
  • Quality scales with how many receipts the agent has issued

Strengths

  • Zero external dependencies, zero extra cost
  • Memory inherits the receipt pool’s identity + signature guarantees
  • No additional sub-processor on your DPA
  • Default for every new agent

Mem0

source = "mem0"
Optional adapter

Premium adapter for teams already deploying Mem0 as their memory backbone.

Requires

A Mem0 account and MEM0_API_KEY set on the GenZAgents API server.

Trade-offs

  • Adds Mem0 as a sub-processor (DPA implications)
  • Mem0 is at a different stage of GDPR / SOC 2 maturity — check their trust portal
  • Extra monthly cost beyond GenZAgents subscription

Strengths

  • Hierarchical memory consolidation + categorisation
  • Mem0’s production SaaS reliability
  • If you already use Mem0, no migration needed

Letta

source = "letta"
Optional adapter

Premium adapter for teams using Letta’s long-term agent memory.

Requires

A Letta deployment and LETTA_API_KEY on the API server.

Trade-offs

  • Adds Letta as a sub-processor
  • Most relevant for autonomous agents, less so for human-supervised work

Strengths

  • Stateful long-running agent memory
  • Good fit for autonomous-agent workflows

Anthropic conversation pinning

source = "anthropic"
Planned

Pulls active Claude conversations directly into receipts (planned once Anthropic ships a stable bulk export).

Requires

Anthropic chat-history API (not yet publicly available). Manual upload works in the meantime.

Trade-offs

  • Blocked on Anthropic’s API roadmap
  • Currently stubbed — returns null until the API ships

Strengths

  • Captures conversation transcripts at receipt time
  • No round-trip via a memory SaaS

Manual upload

source = "manual"
Fallback

Paste / upload a memory export the user produced themselves.

Requires

A user-supplied JSON or markdown payload of up to 10 MB per snapshot.

Trade-offs

  • Requires user effort each time — not automatable
  • No structured metadata until the parser handles the source

Strengths

  • Works with ANY source (a ChatGPT export, a Claude conversation copy/paste, a Notion page)
  • No third party involved — the bytes go directly to GenZAgents
  • Useful as the last-mile fallback for sources we don’t have a native adapter for

How to pick a source

Each agent has a default source. The MCP tool snapshot_agent_memory takes a source argument, or you can set the default on the agent profile.

# Use GenZ Memory (default — recommended)
$ curl -X POST https://api.genzagents.com/v1/agents/<did>/memory-snapshots \
    -H "Authorization: Bearer sk_live_..." \
    -H "Content-Type: application/json" \
    -d '{"source": "genz-native"}'

# Or via the MCP tool from any Claude/ChatGPT/Cursor session:
snapshot_agent_memory({ agentDid: "did:genz:...", source: "genz-native" })

# Mem0 / Letta only need extra env vars on the API server:
#   MEM0_API_KEY=mem0_xxx
#   LETTA_API_KEY=letta_xxx

Install the MCP server →

One npx command. Detects every AI tool on your machine and wires memory in.

Read the receipt spec →

The cryptographic format that makes every memory entry tamper-evident.