--- title: "Best AI Tools for Memory for AI Agents" type: "Ranking" url: "https://aidemos.com/best/ai-agent-memory-tools" description: "We tested five memory tools with the same multi-session prompts to see which ones can remember user style, client history, project direction, and delete/forget requests without leaking stale context." readTime: "15 min read" tested: "Hindsight vs Cognee vs Mem0 vs Zep vs Supermemory" category: "developer-tools" published: "2026-07-15T08:21:38.841153+00:00" updated: "2026-07-15T08:21:38.841153+00:00" evidenceCount: 104 verifiedCount: 0 coverage: "partial" --- # Best AI Tools for Memory for AI Agents `5 Tools Tested` · `Multi-session Memory` · `Update + Forget Tested` · `API / SDK` · `Scope Control` **Tested:** Hindsight vs Cognee vs Mem0 vs Zep vs Supermemory > We tested five memory tools with the same multi-session prompts to see which ones can remember user style, client history, project direction, and delete/forget requests without leaking stale context. ## How We Tested We ran the same four benchmark flows across each tested tool: a personal work-style memory flow, a client support memory flow with an update/correction and a second client for scope isolation, a project continuity / handoff flow with a separate unrelated project, and a delete/forget flow. We compared what each tool stored, what it retrieved later, whether the assistant used the memory correctly, and whether stale memory could be updated, forgotten, or isolated. **What we evaluated:** | Criterion | Description | | --- | --- | | Memory Capture Quality | Checks whether the tool stores useful durable context instead of noisy or temporary conversation details. | | Relevant Retrieval | Checks whether the tool retrieves the right memory for the current task and context. | | Correct Application | Checks whether the agent actually uses the retrieved memory correctly in its response. | | Update and Correction Handling | Checks whether the tool can replace or invalidate outdated memories when the user corrects them. | | Delete / Forget Support | Checks whether memory can be removed or retired and stop being used in later responses. | | Scope Control | Checks whether memory stays separated correctly across user, project, customer, workspace, or agent boundaries. | | Observability | Checks whether developers can see what was stored, retrieved, and used. | | Developer Integration | Checks whether the tool provides a clean API or SDK and usable docs for building agent apps. | | Dashboard / UI | Checks whether the tool provides an interface to inspect, edit, delete, or debug memories. | | Reliability Across Sessions | Checks whether memory works consistently over multiple sessions rather than only once. | ## Evidence (first-party, tested) *104 tested cells · 0/104 artifact-verified. Scores are out of 5. Cite a cell by its Evidence ID, e.g. `ev:cognee·client-relationship-memory·correct-application`.* | Tool | Criterion | Scenario | Verdict | Score | Tested | Proof | Evidence ID | | --- | --- | --- | --- | --- | --- | --- | --- | | Cognee | Correct application | Client Relationship Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/cognee-cognee-input2-session2-acme-deeper-sso-t-3afeeefe72f7.png) | `ev:cognee·client-relationship-memory·correct-application` | | Cognee | Correct Application | Personal Work Brain Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/cognee-cognee-input1-session3-formal-email-boun-242d65c30c25.png) | `ev:cognee·personal-work-brain-memory·correct-application` | | Cognee | Dashboard / UI | cross-scenario | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/cognee-memory-schema-view-e4ecfa51c87b.png) | `ev:cognee·cross·dashboard-ui` | | Cognee | Delete / Forget Support | Delete / Forget Memory Control | ✗ failed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/cognee-cognee-input4-session1-formal-tone-memor-e4a088d2b4fb.png) | `ev:cognee·delete-forget-memory-control·delete-forget-support` | | Cognee | Developer integration | cross-scenario | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/cognee-cognee-demo-walkthrough-2d27b783f9b3.mp4) | `ev:cognee·cross·developer-integration` | | Cognee | Memory capture quality | Delete / Forget Memory Control | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/cognee-cognee-input4-session1-formal-tone-memor-e4a088d2b4fb.png) | `ev:cognee·delete-forget-memory-control·memory-capture-quality` | | Cognee | Memory capture quality | Team Handoff / Project Continuity Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/cognee-cognee-input3-session1-project-context-g-d0e636fb3164.png) | `ev:cognee·team-handoff-project-continuity-memory·memory-capture-quality` | | Cognee | Memory Capture Quality | Personal Work Brain Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/cognee-cognee-input1-session1-working-style-mem-7bfd6578718b.png) | `ev:cognee·personal-work-brain-memory·memory-capture-quality` | | Cognee | Memory Capture Quality | Client Relationship Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/cognee-cognee-input2-session1-acme-context-grap-eaffd2ec04f5.png) | `ev:cognee·client-relationship-memory·memory-capture-quality` | | Cognee | Observability | cross-scenario | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/cognee-memory-schema-view-e4ecfa51c87b.png) | `ev:cognee·cross·observability` | | Cognee | Observability | Team Handoff / Project Continuity Memory | ◐ mixed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/cognee-cognee-input3-session1-project-context-g-d0e636fb3164.png) | `ev:cognee·team-handoff-project-continuity-memory·observability` | | Cognee | Observability | Delete / Forget Memory Control | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/cognee-cognee-input4-forced-retrieval-probe-mem-e18c5ff39109.png) | `ev:cognee·delete-forget-memory-control·observability` | | Cognee | Relevant retrieval | Team Handoff / Project Continuity Memory | ◐ mixed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/cognee-cognee-input3-session4-handoff-note-need-7674382dffa6.png) | `ev:cognee·team-handoff-project-continuity-memory·relevant-retrieval` | | Cognee | Relevant Retrieval | Client Relationship Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/cognee-cognee-input2-session2-acme-deeper-sso-t-3afeeefe72f7.png) | `ev:cognee·client-relationship-memory·relevant-retrieval` | | Cognee | Reliability Across Sessions | cross-scenario | ◐ mixed | — | — | — | `ev:cognee·cross·reliability-across-sessions` | | Cognee | Scope Control | Team Handoff / Project Continuity Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/cognee-cognee-input3-session5-unrelated-project-383c32601f17.png) | `ev:cognee·team-handoff-project-continuity-memory·scope-control` | | Cognee | Scope Control | Client Relationship Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/cognee-cognee-input2-session5-betacorp-scope-is-83a68ad5f357.png) | `ev:cognee·client-relationship-memory·scope-control` | | Cognee | Update and Correction Handling | Client Relationship Memory | ✗ failed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/cognee-cognee-input2-session3-acme-memory-updat-2d684845392f.png) | `ev:cognee·client-relationship-memory·update-and-correction-handling` | | Cognee | Update handling | Client Relationship Memory | ✗ failed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/cognee-cognee-input2-session3-acme-memory-updat-2d684845392f.png) | `ev:cognee·client-relationship-memory·update-handling` | | Hindsight | Correct application | Team Handoff / Project Continuity Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/hindsight-hindsight-input3-handoff-note-generated-ef0b99841217.png) | `ev:hindsight·team-handoff-project-continuity-memory·correct-application` | | Hindsight | Correct Application | Personal Work Brain Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/hindsight-hindsight-input1-formal-email-boundary-c-239af8501813.png) | `ev:hindsight·personal-work-brain-memory·correct-application` | | Hindsight | Correct Application | Client Relationship Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/hindsight-hindsight-input2-acme-sso-followup-no-re-205dd01f1a75.png) | `ev:hindsight·client-relationship-memory·correct-application` | | Hindsight | Dashboard / UI | cross-scenario | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/hindsight-hindsight-experience-graph-b0a30605da35.png) | `ev:hindsight·cross·dashboard-ui` | | Hindsight | Delete / Forget Support | Delete / Forget Memory Control | ◐ mixed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/hindsight-hindsight-input4-forget-request-submitte-8109cb97a1e2.png) | `ev:hindsight·delete-forget-memory-control·delete-forget-support` | | Hindsight | Developer Integration | cross-scenario | ✓ worked | — | — | — | `ev:hindsight·cross·developer-integration` | | Hindsight | Memory capture quality | Delete / Forget Memory Control | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/hindsight-hindsight-input4-formal-tone-memory-crea-4cb0175ddc49.png) | `ev:hindsight·delete-forget-memory-control·memory-capture-quality` | | Hindsight | Memory capture quality | Team Handoff / Project Continuity Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/hindsight-hindsight-input3-project-context-created-d08633418fc6.png) | `ev:hindsight·team-handoff-project-continuity-memory·memory-capture-quality` | | Hindsight | Memory capture quality | Client Relationship Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/hindsight-hindsight-input2-acme-client-memory-crea-6141d2a6a3ca.png) | `ev:hindsight·client-relationship-memory·memory-capture-quality` | | Hindsight | Memory Capture Quality | Personal Work Brain Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/hindsight-hindsight-input1-founder-work-preference-23e99e40f8f0.png) | `ev:hindsight·personal-work-brain-memory·memory-capture-quality` | | Hindsight | Observability | Client Relationship Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/hindsight-hindsight-input2-acme-update-handled-wit-e6d659eaba02.png) | `ev:hindsight·client-relationship-memory·observability` | | Hindsight | Observability | cross-scenario | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/hindsight-hindsight-input2-acme-update-handled-wit-e6d659eaba02.png) | `ev:hindsight·cross·observability` | | Hindsight | Relevant retrieval | Client Relationship Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/hindsight-hindsight-input2-acme-sso-followup-no-re-205dd01f1a75.png) | `ev:hindsight·client-relationship-memory·relevant-retrieval` | | Hindsight | Relevant Retrieval | Personal Work Brain Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/hindsight-hindsight-input1-internal-update-memory--1dc2911e7f3a.png) | `ev:hindsight·personal-work-brain-memory·relevant-retrieval` | | Hindsight | Reliability across sessions | cross-scenario | ◐ mixed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/hindsight-hindsight-input1-founder-work-preference-23e99e40f8f0.png) | `ev:hindsight·cross·reliability-across-sessions` | | Hindsight | Reliability Across Sessions | Personal Work Brain Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/hindsight-hindsight-input1-founder-work-preference-23e99e40f8f0.png) | `ev:hindsight·personal-work-brain-memory·reliability-across-sessions` | | Hindsight | Scope Control | Client Relationship Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/hindsight-hindsight-input2-betacorp-scope-isolatio-5008d90d2a2b.png) | `ev:hindsight·client-relationship-memory·scope-control` | | Hindsight | Scope Control | Team Handoff / Project Continuity Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/hindsight-hindsight-input3-unrelated-project-scope-413787ca4ea3.png) | `ev:hindsight·team-handoff-project-continuity-memory·scope-control` | | Hindsight | Update and Correction Handling | Client Relationship Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/hindsight-hindsight-input2-acme-memory-update-ackn-f37e5822de00.png) | `ev:hindsight·client-relationship-memory·update-and-correction-handling` | | Hindsight | Update handling | Team Handoff / Project Continuity Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/hindsight-hindsight-input3-project-direction-updat-3f60edff97dc.png) | `ev:hindsight·team-handoff-project-continuity-memory·update-handling` | | Hindsight | Update handling | Client Relationship Memory | ◐ mixed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/hindsight-hindsight-input2-acme-update-handled-wit-e6d659eaba02.png) | `ev:hindsight·client-relationship-memory·update-handling` | | Mem0 | Correct application | Team Handoff / Project Continuity Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/mem0-mem0-input3-handoff-note-generated-e5772d0e2e42.png) | `ev:mem0·team-handoff-project-continuity-memory·correct-application` | | Mem0 | Correct Application | Personal Work Brain Memory | ◐ mixed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/mem0-mem0-input1-internal-update-memory-retri-2f188d5c8964.png) | `ev:mem0·personal-work-brain-memory·correct-application` | | Mem0 | Correct Application | Delete / Forget Memory Control | ✗ failed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/mem0-mem0-input4-forgotten-memory-still-appli-5e00f6f33d31.png) | `ev:mem0·delete-forget-memory-control·correct-application` | | Mem0 | Dashboard / UI | cross-scenario | ◐ mixed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/mem0-mem0-graph-pro-plan-ac515c303ef0.png) | `ev:mem0·cross·dashboard-ui` | | Mem0 | Delete / Forget Support | Delete / Forget Memory Control | ✗ failed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/mem0-mem0-input4-forget-request-submitted-7c080beda200.png) | `ev:mem0·delete-forget-memory-control·delete-forget-support` | | Mem0 | Developer Integration | cross-scenario | ✓ worked | — | — | — | `ev:mem0·cross·developer-integration` | | Mem0 | Memory Capture Quality | Client Relationship Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/mem0-mem0-input2-acme-client-memory-created-54f6920860b3.png) | `ev:mem0·client-relationship-memory·memory-capture-quality` | | Mem0 | Memory Capture Quality | Personal Work Brain Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/mem0-mem0-input1-founder-work-preference-crea-35e7b82616e2.png) | `ev:mem0·personal-work-brain-memory·memory-capture-quality` | | Mem0 | Memory Capture Quality | Delete / Forget Memory Control | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/mem0-mem0-input4-formal-tone-memory-created-e1688320b97b.png) | `ev:mem0·delete-forget-memory-control·memory-capture-quality` | | Mem0 | Memory Capture Quality | Team Handoff / Project Continuity Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/mem0-mem0-input3-project-context-created-525d36a7efb2.png) | `ev:mem0·team-handoff-project-continuity-memory·memory-capture-quality` | | Mem0 | Observability | cross-scenario | ✓ worked | — | — | 🧾 [proof](https://t9014651757.p.clickup-attachments.com/t9014651757/9396fb3e-f06c-4b08-b7ff-7e7c0208dc36/image.png) | `ev:mem0·cross·observability` | | Mem0 | Relevant Retrieval | Client Relationship Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/mem0-mem0-input2-acme-sso-followup-memory-ret-94d99dd2da7d.png) | `ev:mem0·client-relationship-memory·relevant-retrieval` | | Mem0 | Relevant Retrieval | Personal Work Brain Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/mem0-mem0-input1-internal-update-memory-retri-2f188d5c8964.png) | `ev:mem0·personal-work-brain-memory·relevant-retrieval` | | Mem0 | Relevant Retrieval | Team Handoff / Project Continuity Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/mem0-mem0-input3-project-rules-retrieved-38e3415d3c47.png) | `ev:mem0·team-handoff-project-continuity-memory·relevant-retrieval` | | Mem0 | Reliability across sessions | Team Handoff / Project Continuity Memory | ◐ mixed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/mem0-mem0-input3-project-memory-retrieval-inc-fba295c7ab4f.png) | `ev:mem0·team-handoff-project-continuity-memory·reliability-across-sessions` | | Mem0 | Reliability Across Sessions | Client Relationship Memory | ◐ mixed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/mem0-mem0-input2-acme-sso-followup-memory-ret-94d99dd2da7d.png) | `ev:mem0·client-relationship-memory·reliability-across-sessions` | | Mem0 | Scope Control | Client Relationship Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/mem0-mem0-input2-betacorp-scope-isolation-4d43e1d65825.png) | `ev:mem0·client-relationship-memory·scope-control` | | Mem0 | Scope Control | Team Handoff / Project Continuity Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/mem0-mem0-input3-unrelated-project-scope-isol-b2593f270962.png) | `ev:mem0·team-handoff-project-continuity-memory·scope-control` | | Mem0 | Scope Control | Personal Work Brain Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/mem0-mem0-input1-formal-email-boundary-check-2aba66566fc0.png) | `ev:mem0·personal-work-brain-memory·scope-control` | | Mem0 | Update and Correction Handling | Client Relationship Memory | ✗ failed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/mem0-mem0-input2-acme-update-memory-stored-393afdeb968e.png) | `ev:mem0·client-relationship-memory·update-and-correction-handling` | | Mem0 | Update and Correction Handling | Team Handoff / Project Continuity Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/mem0-mem0-input3-project-direction-update-cap-2c4bd718a1cd.png) | `ev:mem0·team-handoff-project-continuity-memory·update-and-correction-handling` | | Mem0 | Update handling | Team Handoff / Project Continuity Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/mem0-mem0-input3-project-direction-update-cap-2c4bd718a1cd.png) | `ev:mem0·team-handoff-project-continuity-memory·update-handling` | | Mem0 | Update handling | Client Relationship Memory | ✗ failed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/mem0-mem0-input2-acme-update-memory-stored-393afdeb968e.png) | `ev:mem0·client-relationship-memory·update-handling` | | Supermemory | Correct application | Team Handoff / Project Continuity Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/supermemory-supermemory-input3-session4-handoff-note-9a6494fa40b7.png) | `ev:supermemory·team-handoff-project-continuity-memory·correct-application` | | Supermemory | Correct Application | Personal Work Brain Memory | ◐ mixed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/supermemory-supermemory-input1-session2-internal-upd-1de723d7dbfc.png) | `ev:supermemory·personal-work-brain-memory·correct-application` | | Supermemory | Dashboard / UI | cross-scenario | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/supermemory-supermemory-input4-memory-created-3d858ddf9417.png) | `ev:supermemory·cross·dashboard-ui` | | Supermemory | Delete / Forget Support | Delete / Forget Memory Control | ✗ failed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/supermemory-supermemory-input4-forget-request-fc37fed1e4d4.png) | `ev:supermemory·delete-forget-memory-control·delete-forget-support` | | Supermemory | Developer Integration | cross-scenario | ✓ worked | — | — | — | `ev:supermemory·cross·developer-integration` | | Supermemory | Memory Capture Quality | Personal Work Brain Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/supermemory-supermemory-input1-session1-working-styl-0f1fbd209476.png) | `ev:supermemory·personal-work-brain-memory·memory-capture-quality` | | Supermemory | Memory Capture Quality | Client Relationship Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/supermemory-supermemory-input2-session1-acme-initial-c4fc11c2c0da.png) | `ev:supermemory·client-relationship-memory·memory-capture-quality` | | Supermemory | Observability | cross-scenario | ◐ mixed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/supermemory-supermemory-input2-session3-acme-memory--fd8e39cbf155.png) | `ev:supermemory·cross·observability` | | Supermemory | Relevant Retrieval | Client Relationship Memory | ✗ failed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/supermemory-supermemory-input2-session2-acme-repeate-116a5c13e552.png) | `ev:supermemory·client-relationship-memory·relevant-retrieval` | | Supermemory | Relevant Retrieval | Team Handoff / Project Continuity Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/supermemory-supermemory-input3-session4-handoff-note-9a6494fa40b7.png) | `ev:supermemory·team-handoff-project-continuity-memory·relevant-retrieval` | | Supermemory | Relevant Retrieval | Personal Work Brain Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/supermemory-supermemory-input1-session2-internal-upd-1de723d7dbfc.png) | `ev:supermemory·personal-work-brain-memory·relevant-retrieval` | | Supermemory | Reliability Across Sessions | cross-scenario | ⚠ struggled | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/supermemory-supermemory-input2-session3-acme-memory--fd8e39cbf155.png) | `ev:supermemory·cross·reliability-across-sessions` | | Supermemory | Scope Control | Team Handoff / Project Continuity Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/supermemory-supermemory-input3-session5-unrelated-pr-a99632bb75a5.png) | `ev:supermemory·team-handoff-project-continuity-memory·scope-control` | | Supermemory | Scope Control | Personal Work Brain Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/supermemory-supermemory-input1-session3-formal-email-fcf68eb04d10.png) | `ev:supermemory·personal-work-brain-memory·scope-control` | | Supermemory | Scope Control | Client Relationship Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/supermemory-supermemory-input2-session5-betacorp-sco-bb3cb7769629.png) | `ev:supermemory·client-relationship-memory·scope-control` | | Supermemory | Update and Correction Handling | Client Relationship Memory | ◐ mixed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/supermemory-supermemory-input2-session3-acme-memory--fd8e39cbf155.png) | `ev:supermemory·client-relationship-memory·update-and-correction-handling` | | Supermemory | Update handling | Client Relationship Memory | ◐ mixed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/supermemory-supermemory-input2-session3-acme-memory--e4ded1fe7f36.png) | `ev:supermemory·client-relationship-memory·update-handling` | | Zep | Correct Application | Personal Work Brain Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/zep-zep-input1-formal-email-boundary-check-66413c771643.png) | `ev:zep·personal-work-brain-memory·correct-application` | | Zep | Correct Application | Delete / Forget Memory Control | ✗ failed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/zep-zep-input4-forgotten-memory-still-applie-640c7c6fe5db.png) | `ev:zep·delete-forget-memory-control·correct-application` | | Zep | Dashboard / UI | cross-scenario | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/zep-zep-entity-graph-e8a93e67f1ef.png) | `ev:zep·cross·dashboard-ui` | | Zep | Delete / Forget Support | Delete / Forget Memory Control | ✗ failed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/zep-zep-input4-forget-request-submitted-6585fe35cc59.png) | `ev:zep·delete-forget-memory-control·delete-forget-support` | | Zep | Developer Integration | cross-scenario | ✓ worked | — | — | — | `ev:zep·cross·developer-integration` | | Zep | Memory Capture Quality | Client Relationship Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/zep-zep-input2-acme-client-memory-created-fcc216c82aee.png) | `ev:zep·client-relationship-memory·memory-capture-quality` | | Zep | Memory Capture Quality | Delete / Forget Memory Control | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/zep-zep-input4-formal-tone-memory-created-a00abeb0131a.png) | `ev:zep·delete-forget-memory-control·memory-capture-quality` | | Zep | Memory Capture Quality | Team Handoff / Project Continuity Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/zep-zep-input3-project-context-created-9086ecd9183f.png) | `ev:zep·team-handoff-project-continuity-memory·memory-capture-quality` | | Zep | Memory Capture Quality | Personal Work Brain Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/zep-zep-input1-founder-work-preference-creat-83bebe96b8a3.png) | `ev:zep·personal-work-brain-memory·memory-capture-quality` | | Zep | Observability | Delete / Forget Memory Control | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/zep-zep-input4-forgotten-memory-still-applie-640c7c6fe5db.png) | `ev:zep·delete-forget-memory-control·observability` | | Zep | Observability | cross-scenario | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/zep-zep-entity-graph-e8a93e67f1ef.png) | `ev:zep·cross·observability` | | Zep | Observability | Client Relationship Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/zep-zep-input2-acme-memory-update-acknowledg-3b9d5bcbd3a3.png) | `ev:zep·client-relationship-memory·observability` | | Zep | Relevant Retrieval | Client Relationship Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/zep-zep-input2-acme-sso-followup-no-repeated-02858701fa17.png) | `ev:zep·client-relationship-memory·relevant-retrieval` | | Zep | Relevant Retrieval | Team Handoff / Project Continuity Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/zep-zep-input3-handoff-note-generated-e12b06c14c3e.png) | `ev:zep·team-handoff-project-continuity-memory·relevant-retrieval` | | Zep | Relevant Retrieval | Personal Work Brain Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/zep-zep-input1-internal-update-memory-applie-107498140287.png) | `ev:zep·personal-work-brain-memory·relevant-retrieval` | | Zep | Reliability across sessions | cross-scenario | ◐ mixed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/zep-zep-input2-acme-memory-update-acknowledg-3b9d5bcbd3a3.png) | `ev:zep·cross·reliability-across-sessions` | | Zep | Reliability Across Sessions | Team Handoff / Project Continuity Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/zep-zep-input3-project-context-created-9086ecd9183f.png) | `ev:zep·team-handoff-project-continuity-memory·reliability-across-sessions` | | Zep | Reliability Across Sessions | Personal Work Brain Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/zep-zep-input1-founder-work-preference-creat-83bebe96b8a3.png) | `ev:zep·personal-work-brain-memory·reliability-across-sessions` | | Zep | Scope Control | Team Handoff / Project Continuity Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/zep-zep-input3-unrelated-project-scope-isola-830b91ac67ea.png) | `ev:zep·team-handoff-project-continuity-memory·scope-control` | | Zep | Scope Control | Client Relationship Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/zep-zep-input2-betacorp-scope-isolation-1fdc416168e7.png) | `ev:zep·client-relationship-memory·scope-control` | | Zep | Update and Correction Handling | Client Relationship Memory | ✗ failed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/zep-zep-input2-acme-memory-update-acknowledg-3b9d5bcbd3a3.png) | `ev:zep·client-relationship-memory·update-and-correction-handling` | | Zep | Update and Correction Handling | Team Handoff / Project Continuity Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/zep-zep-input3-project-direction-updated-e2d8864deb8e.png) | `ev:zep·team-handoff-project-continuity-memory·update-and-correction-handling` | | Zep | Update handling | Client Relationship Memory | ✗ failed | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/zep-zep-input2-acme-memory-update-acknowledg-3b9d5bcbd3a3.png) | `ev:zep·client-relationship-memory·update-handling` | | Zep | Update handling | Team Handoff / Project Continuity Memory | ✓ worked | — | — | 🧾 [proof](https://d3epheqghktydj.cloudfront.net/zep-zep-input3-project-direction-updated-e2d8864deb8e.png) | `ev:zep·team-handoff-project-continuity-memory·update-handling` | > 🧾 = artifact-verified (proof captured) · 👁 = observed (noted, no artifact) · verdicts: worked / mixed / struggled / failed. ## The Ranking 5 tools tested head-to-head on the same input. ### 1. Hindsight — Best *Strong at keeping useful work context visible, with weaker true forgetting.* Strongest balance of selective retrieval, visible memory usage, scope isolation, and cross-session continuity. ### 2. Cognee — Usable *Strongest graph-based observability, but weak at retiring old context and forgetting it for real.* Promising for graph inspection and retrieval traceability, but one project-handoff result needs re-verification and delete handling is weak. ### 3. Mem0 — Usable *Strong at capturing useful memories and showing exactly what was used, but weak at retiring stale context once it changes.* Strong visibility and scope control, but stale context and broad retrieval kept it from the top spot. ### 4. Zep — Usable *Strong developer-first memory with good scoping and visibility, but stale-memory handling is the weak spot.* Good for workflow continuity and project memory, but stale facts survived update and forget requests. ### 5. Supermemory — Usable *Strong at capturing durable work context and keeping clients/projects separate, but weaker at updates, forgetting, and session-by-session reliability.* The weakest fit here because usage tags and retrieval panels contradicted each other, and stale-context behavior was hard to trust. ## Full Breakdown ### Hindsight Cloud API memory layer with visible memory types, selective retrieval, and a graph-based dashboard. > **Screenshot** — Founder work-style prompt — Session 1 stored the founder's working-style preference under founder_001. > **Screenshot** — Internal update prompt — Session 2 asked for a short internal update about memory-tool testing. > **Screenshot** — Formal email prompt — Session 3 checked whether the saved style would stay bounded to the right context. > **Screenshot** — ACME support prompt — Session 1 created the ACME client-support memory. > **Screenshot** — ACME follow-up prompt — Session 2 tested whether the assistant would skip repeated troubleshooting and move to the next useful step. > **Screenshot** — ACME memory update prompt — Session 3 corrected the client rollout context away from SSO. > **Screenshot** — ACME launch-testing prompt — Session 4 checked whether the corrected ACME context would still be respected. > **Screenshot** — BetaCorp prompt — Session 5 tested scope isolation against a new client. > **Screenshot** — Project context prompt — Session 1 established the project-level memory context. > **Screenshot** — Project rules prompt — Session 2 stored the proof-first evaluation rules. > **Screenshot** — Project direction prompt — Session 3 updated the project direction toward real workflows. > **Screenshot** — Handoff note prompt — Session 4 asked for a handoff note that preserves the project context and rules. > **Screenshot** — Unrelated project prompt — Session 5 tested project-level scope isolation against an unrelated sales-agent project. > **Screenshot** — Formal tone prompt — Session 1 stored the formal corporate tone preference. > **Screenshot** — Forget preference prompt — Session 2 tested whether the system would stop using the stored tone preference. > **Screenshot** — Memory-tool update prompt — Session 3 tested whether the forgotten preference still influenced the update. **What worked:** - Hindsight remembered the founder's style across sessions, respected the formal-email boundary, retained project continuity context, and handled ACME versus BetaCorp scope correctly. The memory panel made the retrieved context visible, and the graph views made the memory model easy to inspect. **Where it struggled:** - Old memories were still visible after the ACME update and the forget request, so update/retirement is not perfect. The tool handled delete/forget better than some peers, but the old preference did not fully disappear from visible context. **What came out:** ![Hindsight output showing Memory created](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-hindsight-input1-founder-work-preference-23e99e40f8f0.png) *Output — The tool recorded the founder's working-style preferences as memory and replied in a short, direct style that matched the request.* ![Hindsight output showing Applied memory output](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-hindsight-input1-internal-update-memory--1dc2911e7f3a.png) *Output — The saved work-style memory was applied to produce a practical internal update about memory-tool testing.* ![Hindsight output showing Formal email output](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-hindsight-input1-formal-email-boundary-c-239af8501813.png) *Output — The partner email stayed professional and did not over-apply the internal-update style to a formal outreach task.* ![Hindsight output showing Memory created](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-hindsight-input2-acme-client-memory-crea-6141d2a6a3ca.png) *Output — The ACME support memory captured the already-tried steps and the preference for clear next steps rather than repeated troubleshooting.* ![Hindsight output showing Client support reply](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-hindsight-input2-acme-sso-followup-no-re-205dd01f1a75.png) *Output — The follow-up reply moved beyond password reset and browser cache cleanup and focused on higher-value SSO/IdP diagnostics.* ![Hindsight output showing Memory update acknowledged](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-hindsight-input2-acme-memory-update-ackn-f37e5822de00.png) *Output — The client-memory update was accepted and the rollout context was changed away from active SSO troubleshooting.* ![Hindsight output showing Client support reply](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-hindsight-input2-acme-update-handled-wit-0acd0a998b24.png) *Output — After the rollout update, the reply mostly respected the newer email-password context and only mentioned SSO as a clarification point.* ![Hindsight output showing Scope-isolated reply](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-hindsight-input2-betacorp-scope-isolatio-5008d90d2a2b.png) *Output — BetaCorp was treated as a new client and did not inherit ACME's SSO history or troubleshooting steps.* ![Hindsight output showing Project context created](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-hindsight-input3-project-context-created-d08633418fc6.png) *Output — The project-level memory captured the Memory for AI Agents use case and its three core workflow areas.* ![Hindsight output showing Project rules retrieved](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-hindsight-input3-project-rules-retrieved-2adbc5e879dc.png) *Output — The project rules were visible in retrieval and reinforced proof-first, practical evaluation behavior.* ![Hindsight output showing Project direction updated](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-hindsight-input3-project-direction-updat-3f60edff97dc.png) *Output — The direction change away from QA-style inputs toward real workflows was captured and reflected in the memory state.* ![Hindsight output showing Project handoff note](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-hindsight-input3-handoff-note-generated-ef0b99841217.png) *Output — The handoff note preserved the use case, the current testing direction, the rules before observations, and the artifact requirements.* ![Hindsight output showing Scope-isolated reply](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-hindsight-input3-unrelated-project-scope-413787ca4ea3.png) *Output — The unrelated sales-agent project stayed separate and did not absorb the AI Demos memory-tool context.* ![Hindsight output showing Memory created](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-hindsight-input4-formal-tone-memory-crea-4cb0175ddc49.png) *Output — The formal corporate tone preference was stored and immediately reflected in the response style.* ![Hindsight output showing Forget request acknowledged](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-hindsight-input4-forget-request-submitte-8109cb97a1e2.png) *Output — The tool acknowledged the request to stop using the formal corporate tone.* ![Hindsight output showing Post-forget update](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-hindsight-input4-forgotten-memory-not-do-a8fad59c1542.png) *Output — The later update did not let the old formal-tone memory dominate the response, although the old memory was still visible in the panel.* ![Hindsight output showing Memory graph](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-hindsight-experience-graph-b0a30605da35.png) *Output — The Experience graph showed six memories and 52 links, giving a readable view into relationship structure.* ### Cognee Graph-backed memory with rich traceability and line-by-line evidence, but one handoff result needs re-verification and delete handling failed. > **Screenshot** — Founder work-style prompt — Session 1 stored the founder's work-style preference. > **Screenshot** — Internal update prompt — Session 2 asked for an internal update about memory testing. > **Screenshot** — Formal email prompt — Session 3 checked whether the stored style would stay bounded to the right context. > **Screenshot** — ACME support prompt — Session 1 created the ACME client memory. > **Screenshot** — ACME follow-up prompt — Session 2 tested whether the reply would avoid repeating the initial troubleshooting. > **Screenshot** — ACME memory update prompt — Session 3 changed the rollout context away from SSO. > **Screenshot** — ACME launch-testing prompt — Session 4 checked whether the update would suppress stale SSO context. > **Screenshot** — BetaCorp prompt — Session 5 tested scope isolation against a different client. > **Screenshot** — Project context prompt — Session 1 established the project context. > **Screenshot** — Project rules prompt — Session 2 stored the proof-first project rules. > **Screenshot** — Project direction prompt — Session 3 updated the project direction toward real workflows. > **Screenshot** — Handoff note prompt — Session 4 asked for a handoff note to preserve continuity. > **Screenshot** — Unrelated project prompt — Session 5 tested isolation against an unrelated sales-agent project. > **Screenshot** — Formal tone prompt — Session 1 stored the formal corporate tone preference. > **Screenshot** — Forget preference prompt — Session 2 tested the forget request. > **Screenshot** — Memory-tool update prompt — Session 3 tested whether the forgotten preference still influenced the update. **What worked:** - Cognee stored work-style, client, and project memory in a graph-backed system with rich provenance and recall evidence. The retrieval panels exposed document IDs, chunk IDs, and graph completions, which is valuable for debugging. **Where it struggled:** - The project-handoff note needs re-verification because part of its content did not clearly match the project's own stored sessions. Delete/forget handling also failed: the old formal-tone preference remained retrievable after the forget request. **What came out:** ![Cognee output showing Memory created](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-cognee-input1-session1-working-style-mem-7bfd6578718b.png) *Output — The founder's working-style preference was stored in graph-backed memory with traceable recall evidence.* ![Cognee output showing Applied memory output](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-cognee-input1-session2-internal-update-g-55d56096a007.png) *Output — The internal update combined the saved working style with the memory-use-case testing context.* ![Cognee output showing Formal email output](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-cognee-input1-session3-formal-email-boun-242d65c30c25.png) *Output — The formal partner email stayed professional and did not inherit the internal-update style.* ![Cognee output showing Memory created](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-cognee-input2-session1-acme-context-grap-eaffd2ec04f5.png) *Output — ACME's support history and preference for clear next steps were stored in graph memory.* ![Cognee output showing Client support reply](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-cognee-input2-session2-acme-deeper-sso-t-3afeeefe72f7.png) *Output — The ACME follow-up moved to deeper SSO diagnostics instead of repeating the already-tried basics.* ![Cognee output showing Memory update acknowledged](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-cognee-input2-session3-acme-memory-updat-2d684845392f.png) *Output — The rollout update away from SSO was acknowledged in the conversation.* ![Cognee output showing Stale-context reply](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-cognee-input2-session4-acme-stale-sso-co-bd2c65bebbab.png) *Output — The later ACME reply still surfaced SSO-specific troubleshooting after the rollout had changed.* ![Cognee output showing Scope-isolated reply](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-cognee-input2-session5-betacorp-scope-is-83a68ad5f357.png) *Output — BetaCorp was treated as a separate client and did not inherit ACME's memory.* ![Cognee output showing Project context acknowledgement](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-cognee-input3-session1-project-context-g-d0e636fb3164.png) *Output — The project context was accepted, but the visible response stayed generic rather than restating the stored details.* ![Cognee output showing Project rules acknowledgement](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-cognee-input3-session2-project-rules-gen-25f630bb6e1d.png) *Output — The proof-first project rules were acknowledged, though the visible reply remained generic.* ![Cognee output showing Direction-change acknowledgement](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-cognee-input3-session3-direction-change--60c6cdf94a71.png) *Output — The direction shift toward real workflows was acknowledged in the conversation.* ![Cognee output showing Handoff note needs re-verification](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-cognee-input3-session4-handoff-note-need-7674382dffa6.png) *Output — The handoff note looked complete, but part of its content needs re-verification because it did not cleanly match the project's own stored sessions.* ![Cognee output showing Scope-isolated reply](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-cognee-input3-session5-unrelated-project-383c32601f17.png) *Output — The unrelated sales-agent project stayed separate from the AI Demos project memory.* ![Cognee output showing Memory created](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-cognee-input4-session1-formal-tone-memor-e4a088d2b4fb.png) *Output — The formal tone preference was stored and acknowledged.* ![Cognee output showing Forget request acknowledged](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-cognee-input4-session2-forget-request-ac-c3c2a75adf07.png) *Output — The user’s request to stop using the formal tone was acknowledged.* ![Cognee output showing Post-forget update](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-cognee-input4-session3-internal-update-a-1319175dd2db.png) *Output — The internal update remained formal enough that the forgotten preference still appears active or only partially retired.* ![Cognee output showing Forced retrieval probe](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-cognee-input4-forced-retrieval-probe-mem-e18c5ff39109.png) *Output — The forced-retrieval probe confirmed the old formal-tone preference was still retrievable.* ![Cognee output showing Memory schema view](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-memory-schema-view-e4ecfa51c87b.png) *Output — The schema view showed a graph-like pipeline from documents to chunks, entities, types, and summaries.* ![Cognee output showing Mindmap edge detail](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-mindmap-overview-edge-detail-45550ec890a0.png) *Output — The mindmap edge detail panel exposed graph metadata such as source, target, type, and importance.* ![Cognee output showing Mindmap node connections](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-mindmap-node-connections-8faf3a36a035.png) *Output — The node connections view showed chunk provenance, relations, and raw text context for debugging.* ### Mem0 Memory cards and scores make it easy to inspect what was stored and retrieved. > **Screenshot** — Founder work-style prompt — Session 1 stored the founder's work-style preference. > **Screenshot** — Internal update prompt — Session 2 asked for a short internal update about memory-tool testing. > **Screenshot** — Formal email prompt — Session 3 checked boundary control between internal style memory and formal outreach. > **Screenshot** — ACME support prompt — Session 1 created ACME client memory. > **Screenshot** — ACME follow-up prompt — Session 2 tested whether the assistant would avoid repeating the earlier troubleshooting. > **Screenshot** — ACME memory update prompt — Session 3 changed the rollout context away from SSO. > **Screenshot** — ACME launch-testing prompt — Session 4 checked whether stale SSO context would still affect the reply. > **Screenshot** — BetaCorp prompt — Session 5 tested scope isolation against a new client. > **Screenshot** — Project context prompt — Session 1 established the project context. > **Screenshot** — Project rules prompt — Session 2 stored the evaluation rules. > **Screenshot** — Project direction prompt — Session 3 updated the project direction. > **Screenshot** — Handoff note prompt — Session 4 asked for a handoff note that preserves project continuity. > **Screenshot** — Unrelated project prompt — Session 5 tested project isolation with an unrelated sales-agent request. > **Screenshot** — Formal tone prompt — Session 1 stored the formal corporate tone preference. > **Screenshot** — Forget preference prompt — Session 2 tested whether the preference could be forgotten. > **Screenshot** — Memory-tool update prompt — Session 3 tested whether the forgotten preference would still influence the update. **What worked:** - Mem0 was easy to inspect. It captured preferences, support history, project context, and the forget request in a very visible way, and scope isolation between ACME and BetaCorp worked cleanly. **Where it struggled:** - It kept too much stale context active after the ACME update and the forget request, and the internal update still came back more polished than the user's preferred short/direct style. Retrieval also broadened as memory grew, which can increase noise. **What came out:** ![Mem0 output showing Memory created](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-mem0-input1-founder-work-preference-crea-35e7b82616e2.png) *Output — The founder's work preferences were stored as memory cards and made visible in the memory panel.* ![Mem0 output showing Internal update output](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-mem0-input1-internal-update-memory-retri-2f188d5c8964.png) *Output — The saved work-style memory was retrieved for the internal update, although the result was slightly more polished than requested.* ![Mem0 output showing Formal email output](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-mem0-input1-formal-email-boundary-check-2aba66566fc0.png) *Output — The formal partner email stayed professional and did not over-apply the rough internal style.* ![Mem0 output showing Memory created](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-mem0-input2-acme-client-memory-created-54f6920860b3.png) *Output — ACME's support history and preference for clear next steps were captured in memory.* ![Mem0 output showing Client support reply](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-mem0-input2-acme-sso-followup-memory-ret-94d99dd2da7d.png) *Output — The follow-up reply avoided restarting from scratch and moved to the next useful SSO-related step.* ![Mem0 output showing Memory updated](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-mem0-input2-acme-update-memory-stored-393afdeb968e.png) *Output — The ACME memory was updated to say SSO was no longer the active rollout path.* ![Mem0 output showing Stale-context reply](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-mem0-input2-acme-stale-sso-context-reuse-8b6c8f404b41.png) *Output — The later ACME reply still brought back SSO troubleshooting even after the rollout had moved to email-password login.* ![Mem0 output showing Scope-isolated reply](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-mem0-input2-betacorp-scope-isolation-4d43e1d65825.png) *Output — BetaCorp stayed isolated from ACME's history and received a fresh first-contact reply.* ![Mem0 output showing Project context created](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-mem0-input3-project-context-created-525d36a7efb2.png) *Output — The Memory for AI Agents project context was stored under the project container.* ![Mem0 output showing Project rules retrieved](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-mem0-input3-project-rules-retrieved-38e3415d3c47.png) *Output — The project rules were visible in retrieval and reinforced proof-first evaluation behavior.* ![Mem0 output showing Project direction updated](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-mem0-input3-project-direction-update-cap-2c4bd718a1cd.png) *Output — The project direction update toward real workflows was captured and used.* ![Mem0 output showing Project handoff note](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-mem0-input3-handoff-note-generated-e5772d0e2e42.png) *Output — The handoff note used the project context, updated direction, rules, and artifact requirements.* ![Mem0 output showing Scope-isolated reply](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-mem0-input3-unrelated-project-scope-isol-b2593f270962.png) *Output — The unrelated sales-agent project did not inherit the AI Demos memory-tool rules.* ![Mem0 output showing Memory created](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-mem0-input4-formal-tone-memory-created-e1688320b97b.png) *Output — The formal corporate tone preference was created and visible in stored memories.* ![Mem0 output showing Forget request acknowledged](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-mem0-input4-forget-request-submitted-7c080beda200.png) *Output — The tool acknowledged the request to stop using the formal corporate tone.* ![Mem0 output showing Post-forget update](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-mem0-input4-forgotten-memory-still-appli-5e00f6f33d31.png) *Output — The final update still sounded formal, showing the old preference remained influential.* ![Mem0 output showing Memory guidance output](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-image-7a7a1082a4bc.png) *Output — A memory-best-practices style output showed that Mem0 can surface broader guidance and retrieved context, but it also illustrates how large the visible context can become.* ### Zep Developer-led memory with strong continuity and a useful graph, but stale memory survived correction and forget requests. > **Screenshot** — Founder work-style prompt — Session 1 stored the founder's working-style preference. > **Screenshot** — Internal update prompt — Session 2 asked for a short internal update about the memory use case. > **Screenshot** — Formal email prompt — Session 3 checked boundary control for a formal outreach task. > **Screenshot** — ACME support prompt — Session 1 created the ACME support memory. > **Screenshot** — ACME follow-up prompt — Session 2 tested whether the reply would skip repeated troubleshooting. > **Screenshot** — ACME memory update prompt — Session 3 changed the client rollout context away from SSO. > **Screenshot** — ACME launch-testing prompt — Session 4 checked whether old SSO context would still be reused. > **Screenshot** — BetaCorp prompt — Session 5 tested scope isolation against a different client. > **Screenshot** — Project context prompt — Session 1 established the project context. > **Screenshot** — Project rules prompt — Session 2 stored the proof-first project rules. > **Screenshot** — Project direction prompt — Session 3 updated the project direction toward real workflows. > **Screenshot** — Handoff note prompt — Session 4 asked for a handoff note. > **Screenshot** — Unrelated project prompt — Session 5 tested separation from an unrelated project. > **Screenshot** — Formal tone prompt — Session 1 stored the formal tone preference. > **Screenshot** — Forget preference prompt — Session 2 tested the forget flow. > **Screenshot** — Memory-tool update prompt — Session 3 tested whether the old formal-tone memory would still affect the update. **What worked:** - Zep remembered the founder's style, handled the formal-email boundary well, preserved project continuity, and kept ACME and BetaCorp separated. The graph and node details made the memory structure inspectable. **Where it struggled:** - Update handling and delete/forget control were weak. ACME's stale SSO context came back after the rollout change, and the formal tone preference still affected the output after being forgotten. **What came out:** ![Zep output showing Memory created](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-zep-input1-founder-work-preference-creat-83bebe96b8a3.png) *Output — The founder's work-style preference was captured and acknowledged as durable memory.* ![Zep output showing Applied memory output](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-zep-input1-internal-update-memory-applie-107498140287.png) *Output — The internal update used the saved working style and stayed practical and direct.* ![Zep output showing Formal email output](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-zep-input1-formal-email-boundary-check-66413c771643.png) *Output — The formal partner email remained professional and did not inherit the rough internal-update style.* ![Zep output showing Memory created](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-zep-input2-acme-client-memory-created-fcc216c82aee.png) *Output — ACME's support history and preference for clear next steps were stored successfully.* ![Zep output showing Client support reply](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-zep-input2-acme-sso-followup-no-repeated-02858701fa17.png) *Output — The follow-up reply moved to diagnostic next steps instead of repeating password reset and cache cleanup.* ![Zep output showing Memory update acknowledged](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-zep-input2-acme-memory-update-acknowledg-5bef15e9a14d.png) *Output — The rollout update said SSO was no longer the active issue and should be set aside.* ![Zep output showing Stale-context reply](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-zep-input2-acme-update-handling-sso-cont-345b2b1ac056.png) *Output — The later ACME reply still returned to SSO troubleshooting even after the rollout had changed.* ![Zep output showing Scope-isolated reply](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-zep-input2-betacorp-scope-isolation-1fdc416168e7.png) *Output — BetaCorp was treated as a new client and did not inherit ACME's context.* ![Zep output showing Project context created](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-zep-input3-project-context-created-9086ecd9183f.png) *Output — The project memory captured the Memory for AI Agents use case and its three workflow areas.* ![Zep output showing Project rules captured](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-zep-input3-project-rules-captured-67e0bfc8015d.png) *Output — The proof-first project rules were stored and made visible.* ![Zep output showing Project direction updated](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-zep-input3-project-direction-updated-e2d8864deb8e.png) *Output — The direction update toward real workflows was captured in memory.* ![Zep output showing Project handoff note](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-zep-input3-handoff-note-generated-e12b06c14c3e.png) *Output — The handoff note preserved the use case, updated direction, rules, and artifact requirements.* ![Zep output showing Scope-isolated reply](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-zep-input3-unrelated-project-scope-isola-830b91ac67ea.png) *Output — The unrelated sales-agent project remained separate from the AI Demos memory context.* ![Zep output showing Memory created](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-zep-input4-formal-tone-memory-created-a00abeb0131a.png) *Output — The formal corporate tone preference was stored and reflected in the response.* ![Zep output showing Forget request submitted](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-zep-input4-forget-request-submitted-6585fe35cc59.png) *Output — The forget request was acknowledged at the conversation level.* ![Zep output showing Post-forget update](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-zep-input4-forgotten-memory-still-applie-640c7c6fe5db.png) *Output — The next internal update still used a formal style, showing the old preference remained influential.* ![Zep output showing Entity graph](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-zep-entity-graph-e8a93e67f1ef.png) *Output — The entity graph made the stored relationships visible and inspectable.* ![Zep output showing Node detail panel](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-zep-node-detail-panel-84175c085911.png) *Output — The node detail panel exposed node metadata, summary, and labels for debugging.* ### Supermemory Memory storage is present, but retrieval signals and update handling were hard to trust because the UI contradicted itself. > **Screenshot** — Founder work-style prompt — Session 1 stored the founder's working-style preference. > **Screenshot** — Internal update prompt — Session 2 asked for an internal update about the memory use case. > **Screenshot** — Formal email prompt — Session 3 checked whether the saved style would stay bounded to a formal outreach task. > **Screenshot** — ACME support prompt — Session 1 created the ACME support memory. > **Screenshot** — ACME follow-up prompt — Session 2 tested whether the reply would skip repeated troubleshooting. > **Screenshot** — ACME memory update prompt — Session 3 changed the rollout context away from SSO. > **Screenshot** — ACME launch-testing prompt — Session 4 checked whether stale SSO context would still be reused. > **Screenshot** — BetaCorp prompt — Session 5 tested scope isolation against a new client. > **Screenshot** — Project context prompt — Session 1 established the project context. > **Screenshot** — Project rules prompt — Session 2 stored the proof-first project rules. > **Screenshot** — Project direction prompt — Session 3 updated the project direction. > **Screenshot** — Handoff note prompt — Session 4 asked for a handoff note. > **Screenshot** — Unrelated project prompt — Session 5 tested project isolation against an unrelated project. > **Screenshot** — Formal tone prompt — Session 1 stored the formal corporate tone preference. > **Screenshot** — Forget preference prompt — Session 2 tested the forget flow. > **Screenshot** — Memory-tool update prompt — Session 3 tested whether the old formal tone would still be applied. **What worked:** - Supermemory did store useful preferences and kept BetaCorp separate from ACME. It also exposed some retrieved context in the UI and could support a handoff note when enough context had accumulated. **Where it struggled:** - Its retrieval signals were contradictory: several turns showed a '0 memory used' tag while the side panel suggested memory was retrieved, and the ACME follow-up still repeated already-tried troubleshooting. The delete/forget flow was also unreliable. **What came out:** ![Supermemory output showing Memory created](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-supermemory-input1-session1-working-styl-0f1fbd209476.png) *Output — The founder's work-style preference was stored as memory.* ![Supermemory output showing Internal update output](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-supermemory-input1-session2-internal-upd-1de723d7dbfc.png) *Output — The internal update used the saved context, but the output still read somewhat polished compared with the requested style.* ![Supermemory output showing Formal email output](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-supermemory-input1-session3-formal-email-fcf68eb04d10.png) *Output — The formal partner email stayed professional and did not over-apply the internal-update style.* ![Supermemory output showing Memory created](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-supermemory-input2-session1-acme-initial-c4fc11c2c0da.png) *Output — The ACME SSO support history was stored under the ACME account.* ![Supermemory output showing Client support reply](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-supermemory-input2-session2-acme-repeate-8c718f520f65.png) *Output — The follow-up reply still repeated a cache-clearing step, which ACME had already tried.* ![Supermemory output showing Memory update acknowledged](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-supermemory-input2-session3-acme-memory--5cc35a5dbd0a.png) *Output — The ACME rollout update was acknowledged, but the visible usage tag and retrieval panel did not clearly agree about memory use.* ![Supermemory output showing Client support reply](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-supermemory-input2-session4-acme-launch--dbb75949b8a8.png) *Output — The launch-testing reply still showed inconsistent memory behavior and continued to lean on the older support context.* ![Supermemory output showing Scope-isolated reply](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-supermemory-input2-session5-betacorp-sco-bb3cb7769629.png) *Output — BetaCorp was treated as a separate client and did not inherit ACME memory.* ![Supermemory output showing Project context output](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-supermemory-input3-session1-project-cont-39812fd361e8.png) *Output — The project response stayed generic and advisory rather than clearly surfacing a distilled stored memory.* ![Supermemory output showing Project rules output](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-supermemory-input3-session2-project-rule-9264cfa18e30.png) *Output — The project rules were referenced, but the chat-level usage tag said zero memory while the panel showed retrieval.* ![Supermemory output showing Direction-change output](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-supermemory-input3-session3-direction-ch-4c6f241f93e1.png) *Output — The direction-change reply again read as generic advice, with conflicting memory-usage signals in the UI.* ![Supermemory output showing Handoff note output](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-supermemory-input3-session4-handoff-note-9a6494fa40b7.png) *Output — The handoff note was genuinely synthesized from earlier project context even though the chat-level tag still said zero memory used.* ![Supermemory output showing Scope-isolated reply](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-supermemory-input3-session5-unrelated-pr-a99632bb75a5.png) *Output — The unrelated sales-agent project stayed separate from the AI Demos project memory.* ![Supermemory output showing Memory created](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-supermemory-input4-memory-created-3d858ddf9417.png) *Output — The formal tone preference was stored successfully.* ![Supermemory output showing Forget request](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-supermemory-input4-forget-request-fc37fed1e4d4.png) *Output — The system acknowledged the request to stop using the formal tone.* ![Supermemory output showing Post-forget failure](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-supermemory-input4-forced-retrieval-fail-48ed4e8476e7.png) *Output — The first forced-retrieval-style follow-up still surfaced the old formal-tone preference in practice.* ![Supermemory output showing Post-forget failure](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-supermemory-input4-forced-retrieval-fail-71a92054f644.png) *Output — The second follow-up again showed that the old tone preference remained available or influential.* ![Supermemory output showing Graph memory architecture](https://d3epheqghktydj.cloudfront.net/memory-for-ai-agents-supermemory-graph-memory-architecture-57f0be3c7e19.png) *Output — The memory graph view showed a node/connection architecture with status colors and a memory-status legend.* ## Final Take Hindsight is the overall winner. It is the strongest all-around choice in the scorecards because it combines top marks for memory capture, relevant retrieval, correct application, scope control, observability, developer integration, dashboard UI, and cross-session reliability. The main caveat is that true forgetting is still only middling: delete/forget support is 3/5, so it is better at keeping useful context visible than at retiring old context cleanly. If hard deletion or stale-context retirement is the key requirement, the evidence is weak across the board: Cognee, Mem0, Zep, and Supermemory are all at 1/5 for delete/forget support, and several also struggle with update handling. For a graph-heavy observability use case, Cognee is the specialist pick, but it is undermined by very weak update/correction handling and weaker reliability than Hindsight. Mem0 is strong when you want capture, retrieval, and explicit visibility into what was used, but its correct application is poor and stale-context handling is weak. Zep is the more developer-first option with good scoping and visibility plus solid reliability, but it still has the same stale-memory problem. Supermemory is the best fit when the priority is durable work context and keeping clients/projects separate, but it lags on updates, forgetting, and session reliability.