Build Embedded AI Agents on Memory That End Users Actually Own
Agents embedded in end-user products handle private user data. User trust requires they actually own that memory — export it, delete it, control it. MemoryLake provides exportable, deletable, portable memory for agents that live inside consumer products.
Build Embedded AI Agents on Memory That End Users Actually Own
Get Started FreeFree forever · No credit card required
The problem: most embedded agent memory isn't user-owned
The user typed personal data into the agent. The vendor holds the memory and decides retention. When the user wants their data out, the vendor offers a CSV export of partial data. The "memory" was always the vendor's, not the user's.
How MemoryLake delivers user-owned memory
Encryption such that the vendor can't read
AES-256 with three-party encryption.
One-click full export
User downloads structured memory, not partial CSVs.
Permanent deletion with no backup retention
Real right-to-delete.
Portable to other products
Memory format compatible with future products user chooses.
Free forever · No credit card required
How it works for user-owned embedded agent memory
- Connect — Embedded SDK with user-keyed encryption.
- Structure — All memory writes encrypted client-side.
- Reuse — User can export and delete at any time.
Before vs. after: embedded agent memory ownership
| DIY embedded memory | MemoryLake | |
|---|---|---|
| User can read vendor cannot | Rarely | Yes |
| Full structured export | Partial CSVs | Complete |
| Permanent deletion | Soft-delete usually | Permanent, no backups |
| Memory portability | None | Native |
Who this is for
Product teams building consumer AI products — assistants, journals, coaching apps, productivity tools — where user trust depends on memory ownership being real, not aspirational.
Try this use case on your own account
A wellness app with an AI coach inside it. Six users have told the coach 30 things about themselves, stored three ways: one pool with the owner in metadata, the same pool with the owner's name in each fact, and one scope per user. Each user asks the coach one question through MemoryRouter.
What you will see
- One pool, owner in
metadata.user_id: the owner does not travel with the memory. Omar is told about Dana's peanut allergy, Sam to mind Dana's knee. 9 of 42 answers right over 7 runs - The owner's name written into each fact does not fix it: the name is in what was attached and the model still uses it. 22 of 42
- One actor and one boundary per user (
boundary create --human-actor): 42 of 42. A checker (Claude copying out what it was given) shows 0 other users' lines attached, against 134 in the pool - The user owns it: export is
fact list --actors, forgetting Dana is deleting the facts on her actor (her boundary then attaches nothing); in the pool both mean scanning everyone's memory. Plusmemory,ask, and a local web UI
You need: a MemoryLake API key · the memorylake CLI · Python 3.9+
Run it
git clone https://github.com/memorylake-ai/memorylake-usecases.git cd memorylake-usecases/user-owned-memory export MEMORYLAKE_API_KEY=sk-… python3 demo.py # or: python3 web/server.py
Watch it run · real, unedited recordings
Frequently asked questions
What does "user-owned" mean technically?
What does "user-owned" mean technically?
End-to-end encryption with user-held keys; vendor and MemoryLake cannot decrypt.
Right-to-delete coverage?
Right-to-delete coverage?
GDPR and CCPA aligned, with permanent deletion and no backup retention.
Self-host?
Self-host?
Yes — enterprise tier deploys in your VPC.