<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Agent Memory Leaderboard</title>
    <description>The latest articles on DEV Community by Agent Memory Leaderboard (@aml-).</description>
    <link>https://dev.to/aml-</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4070825%2F2c5893cf-057f-49c1-ba0c-959116f0df53.png</url>
      <title>DEV Community: Agent Memory Leaderboard</title>
      <link>https://dev.to/aml-</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/aml-"/>
    <language>en</language>
    <item>
      <title>From Storing Context to Building Experience: What 50+ Teams Tell Us About Agent Memory</title>
      <dc:creator>Agent Memory Leaderboard</dc:creator>
      <pubDate>Wed, 23 Sep 2026 09:27:49 +0000</pubDate>
      <link>https://dev.to/aml-/from-storing-context-to-building-experience-what-50-teams-tell-us-about-agent-memory-2blb</link>
      <guid>https://dev.to/aml-/from-storing-context-to-building-experience-what-50-teams-tell-us-about-agent-memory-2blb</guid>
      <description>&lt;p&gt;More than &lt;strong&gt;50 teams&lt;/strong&gt; have registered for the second Agent Memory Challenge shortly after the cycle opened.&lt;/p&gt;

&lt;p&gt;They come from different backgrounds: universities, open-source projects, independent developers, and commercial teams. They are building different kinds of memory systems, using different engineering approaches, and targeting different agent workflows.&lt;/p&gt;

&lt;p&gt;This number does not tell us which system is the best.&lt;/p&gt;

&lt;p&gt;It does tell us something important: Agent Memory is becoming a serious research and engineering problem.&lt;/p&gt;

&lt;h2&gt;
  
  
  Memory is moving beyond chat history
&lt;/h2&gt;

&lt;p&gt;Early discussions around AI memory often focused on a simple question:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Can an agent remember what happened earlier?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That question is still useful, but it is no longer sufficient for long-running agents.&lt;/p&gt;

&lt;p&gt;A production agent may need to work across days or weeks. It may interact with multiple users, repositories, documents, tools, and task states. During that time, facts can change, decisions can be revised, and previous solutions can become invalid.&lt;/p&gt;

&lt;p&gt;A useful memory system therefore needs to do more than store additional context. It needs to help an agent:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;retrieve evidence from previous interactions;&lt;/li&gt;
&lt;li&gt;connect related facts across multiple sessions;&lt;/li&gt;
&lt;li&gt;understand when information is relevant to the current task;&lt;/li&gt;
&lt;li&gt;recognize when an earlier decision has been superseded;&lt;/li&gt;
&lt;li&gt;avoid relying on stale or conflicting context;&lt;/li&gt;
&lt;li&gt;reuse previous experience without blindly copying it.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In other words, the goal is not simply to make an agent remember more.&lt;/p&gt;

&lt;p&gt;The goal is to help an agent use the right experience at the right time.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why interest in Agent Memory is growing
&lt;/h2&gt;

&lt;p&gt;The rapid growth of agentic systems has changed the role of memory.&lt;/p&gt;

&lt;p&gt;For a one-shot question-answering system, the context window may be enough. But for an agent that maintains a project, debugs software, manages a workflow, or collaborates with a user over a long period, the context window is only one part of the problem.&lt;/p&gt;

&lt;p&gt;The agent must also decide:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;what should be remembered;&lt;/li&gt;
&lt;li&gt;what should be ignored;&lt;/li&gt;
&lt;li&gt;what should be updated;&lt;/li&gt;
&lt;li&gt;what should be retrieved later;&lt;/li&gt;
&lt;li&gt;which evidence is still valid;&lt;/li&gt;
&lt;li&gt;and how much historical context should be passed into the next task.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This creates a broad design space.&lt;/p&gt;

&lt;p&gt;Some systems focus on structured facts. Others build episodic or procedural memory. Some use graphs, timelines, summaries, or topic documents. Others attempt to learn memory policies or evolve their own internal representations.&lt;/p&gt;

&lt;p&gt;The diversity of approaches is valuable, but it also creates a comparability problem.&lt;/p&gt;

&lt;h2&gt;
  
  
  The evaluation problem
&lt;/h2&gt;

&lt;p&gt;Different memory systems are often evaluated with different datasets, answer models, prompts, retrieval methods, and scoring rules.&lt;/p&gt;

&lt;p&gt;As a result, two systems may report impressive results while answering fundamentally different questions.&lt;/p&gt;

&lt;p&gt;One system may be optimized for factual recall. Another may focus on multi-hop reasoning. A third may target coding history or multimodal evidence. Without a shared evaluation boundary, it is difficult to understand what the scores actually mean.&lt;/p&gt;

&lt;p&gt;This is the problem that Agent Memory Leaderboard is trying to address.&lt;/p&gt;

&lt;p&gt;AML separates the memory layer from the downstream answer and evaluation process:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Participants provide an &lt;code&gt;Add&lt;/code&gt; interface for writing and updating memory.&lt;/li&gt;
&lt;li&gt;Participants provide a &lt;code&gt;Search&lt;/code&gt; interface for retrieving relevant memory evidence.&lt;/li&gt;
&lt;li&gt;AML standardizes the downstream &lt;code&gt;Answer&lt;/code&gt; and &lt;code&gt;Eval&lt;/code&gt; pipeline.&lt;/li&gt;
&lt;li&gt;Results are reviewed and published by track, division, submitted version, and evaluation cycle.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This does not create one universal definition of memory.&lt;/p&gt;

&lt;p&gt;Instead, it creates a common environment where different approaches can be compared more transparently.&lt;/p&gt;

&lt;h2&gt;
  
  
  What 50+ registrations may indicate
&lt;/h2&gt;

&lt;p&gt;The early response to Cycle 2 should not be interpreted as proof that the field has already converged on a single architecture.&lt;/p&gt;

&lt;p&gt;In fact, the opposite may be true.&lt;/p&gt;

&lt;p&gt;The number of participating teams suggests that the field is still exploring several important questions:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Memory is becoming a system-level capability
&lt;/h3&gt;

&lt;p&gt;Many teams are no longer treating memory as a small feature added to an agent framework. They are designing dedicated systems for storing, organizing, updating, and retrieving experience.&lt;/p&gt;

&lt;p&gt;This reflects a shift from prompt-level context management to memory infrastructure.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Different agents need different forms of memory
&lt;/h3&gt;

&lt;p&gt;A conversational agent may need user preferences, personal facts, and temporal events.&lt;/p&gt;

&lt;p&gt;A coding agent may need repository history, debugging traces, failed approaches, design decisions, and testing evidence.&lt;/p&gt;

&lt;p&gt;A multimodal agent may need to connect text with images, captions, visual events, and ordered context.&lt;/p&gt;

&lt;p&gt;These requirements cannot always be solved by the same retrieval strategy.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Freshness is as important as recall
&lt;/h3&gt;

&lt;p&gt;A memory system can retrieve a fact correctly and still produce the wrong result if that fact is outdated.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;a project decision may have been changed;&lt;/li&gt;
&lt;li&gt;a user preference may no longer apply;&lt;/li&gt;
&lt;li&gt;a dependency may have been upgraded;&lt;/li&gt;
&lt;li&gt;a previous debugging hypothesis may have been disproven.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This means future memory evaluations need to test not only whether a system can retrieve historical information, but also whether it can identify current and valid evidence.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Agent Memory needs reproducible benchmarks
&lt;/h3&gt;

&lt;p&gt;As more teams build memory systems, informal demos become less sufficient.&lt;/p&gt;

&lt;p&gt;A demo can show that a system works in one scenario. A benchmark can help reveal how it behaves across different tasks, histories, updates, noise conditions, and evidence requirements.&lt;/p&gt;

&lt;p&gt;The field needs both: practical demonstrations and controlled evaluation.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Cycle 2 evaluates
&lt;/h2&gt;

&lt;p&gt;The second Agent Memory Challenge includes three tracks.&lt;/p&gt;

&lt;h3&gt;
  
  
  Textual Memory
&lt;/h3&gt;

&lt;p&gt;The Textual Memory track evaluates long conversations and cross-session history, including:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;explicit fact retrieval;&lt;/li&gt;
&lt;li&gt;multi-hop relationships;&lt;/li&gt;
&lt;li&gt;temporal events;&lt;/li&gt;
&lt;li&gt;personalization;&lt;/li&gt;
&lt;li&gt;rule and workflow following;&lt;/li&gt;
&lt;li&gt;memory governance;&lt;/li&gt;
&lt;li&gt;safety and privacy boundaries.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Cycle 2 also includes streaming memory settings, where Add and Search operations occur as events unfold. This tests whether a system can use information available at the correct point in time, rather than relying only on a static archive.&lt;/p&gt;

&lt;h3&gt;
  
  
  Coding Memory
&lt;/h3&gt;

&lt;p&gt;The Coding Memory track focuses on long-running software engineering tasks.&lt;/p&gt;

&lt;p&gt;It evaluates whether an agent can use historical development experience, including:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;repository context;&lt;/li&gt;
&lt;li&gt;implementation decisions;&lt;/li&gt;
&lt;li&gt;debugging trails;&lt;/li&gt;
&lt;li&gt;failed approaches;&lt;/li&gt;
&lt;li&gt;module relationships;&lt;/li&gt;
&lt;li&gt;testing evidence;&lt;/li&gt;
&lt;li&gt;previously validated fixes.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The formal coding evaluation includes 150 software engineering tasks under both relevant-history and noisy-history conditions.&lt;/p&gt;

&lt;h3&gt;
  
  
  Multimodal Memory
&lt;/h3&gt;

&lt;p&gt;The Multimodal Memory track evaluates how systems write, retrieve, and use memory involving text and images.&lt;/p&gt;

&lt;p&gt;Participants may process original images, captions, or both, but must correctly handle ordered multimodal content and disclose which media types their systems use.&lt;/p&gt;

&lt;h2&gt;
  
  
  What happens next
&lt;/h2&gt;

&lt;p&gt;The early participation in Cycle 2 is encouraging, but the more important work is still ahead.&lt;/p&gt;

&lt;p&gt;The field now needs to move toward clearer definitions and stronger evaluation questions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;How should memory systems represent changing facts?&lt;/li&gt;
&lt;li&gt;How should they handle conflicting evidence?&lt;/li&gt;
&lt;li&gt;How can provenance be preserved?&lt;/li&gt;
&lt;li&gt;When should a memory be updated, decayed, or deleted?&lt;/li&gt;
&lt;li&gt;How should we measure stale retrieval?&lt;/li&gt;
&lt;li&gt;How can we evaluate memory under noisy or adversarial histories?&lt;/li&gt;
&lt;li&gt;What should a coding agent remember from a previous task?&lt;/li&gt;
&lt;li&gt;How should multimodal evidence be linked to later decisions?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These are not only benchmark questions. They are design questions for the next generation of agents.&lt;/p&gt;

&lt;h2&gt;
  
  
  Join the benchmark
&lt;/h2&gt;

&lt;p&gt;Agent Memory Challenge Cycle 2 is now open to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;universities and research institutions;&lt;/li&gt;
&lt;li&gt;open-source maintainers;&lt;/li&gt;
&lt;li&gt;independent research teams;&lt;/li&gt;
&lt;li&gt;commercial product teams;&lt;/li&gt;
&lt;li&gt;individual developers;&lt;/li&gt;
&lt;li&gt;cross-organization teams.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Participation is free. The challenge includes separate Open-source Methods and Commercial Products divisions across the three tracks.&lt;/p&gt;

&lt;p&gt;The goal is not to declare one universal winner.&lt;/p&gt;

&lt;p&gt;The goal is to make long-term Agent Memory more measurable, more comparable, and easier to improve.&lt;/p&gt;

&lt;p&gt;More than 50 teams have already registered. We hope to see more researchers and developers contribute systems, feedback, benchmarks, and ideas to this growing area.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Agent Memory Challenge 2026 Cycle 2&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Website:&lt;br&gt;&lt;br&gt;
&lt;a href="https://agentmemoryleaderboard.ai/" rel="noopener noreferrer"&gt;https://agentmemoryleaderboard.ai/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Evaluation:&lt;br&gt;&lt;br&gt;
&lt;a href="https://agentmemoryleaderboard.ai/evaluation" rel="noopener noreferrer"&gt;https://agentmemoryleaderboard.ai/evaluation&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Rules:&lt;br&gt;&lt;br&gt;
&lt;a href="https://agentmemoryleaderboard.ai/rules" rel="noopener noreferrer"&gt;https://agentmemoryleaderboard.ai/rules&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;GitHub:&lt;br&gt;&lt;br&gt;
&lt;a href="https://github.com/AML-memory/agent-memory-leaderboard" rel="noopener noreferrer"&gt;https://github.com/AML-memory/agent-memory-leaderboard&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Twitter Official Link:&lt;br&gt;
&lt;a href="https://x.com/AgentMemoryL" rel="noopener noreferrer"&gt;https://x.com/AgentMemoryL&lt;/a&gt;&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>opensource</category>
      <category>machinelearning</category>
      <category>ai</category>
    </item>
    <item>
      <title>Evaluating Long-Term Memory for AI Agents: Agent Memory Challenge Cycle 2 Is Now Open</title>
      <dc:creator>Agent Memory Leaderboard</dc:creator>
      <pubDate>Mon, 21 Sep 2026 03:16:27 +0000</pubDate>
      <link>https://dev.to/aml-/evaluating-long-term-memory-for-ai-agents-agent-memory-challenge-cycle-2-is-now-open-2opl</link>
      <guid>https://dev.to/aml-/evaluating-long-term-memory-for-ai-agents-agent-memory-challenge-cycle-2-is-now-open-2opl</guid>
      <description>&lt;p&gt;&lt;em&gt;Long-term Agent Memory is not only about retaining more history. It is about retrieving evidence that remains useful when facts, decisions, and tasks change.&lt;/em&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Agent Memory Challenge 2026 — Cycle 2 is now open.&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Textual Memory · Coding Memory · Multimodal Memory&lt;br&gt;&lt;br&gt;
Open-source Methods · Commercial Products&lt;br&gt;&lt;br&gt;
&lt;a href="https://agentmemoryleaderboard.ai/evaluation" rel="noopener noreferrer"&gt;Join the evaluation&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ft8jxlb6jxet8c31b8puu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ft8jxlb6jxet8c31b8puu.png" alt=" " width="800" height="340"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Everyone agrees that AI agents need memory.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;But “memory” can mean very different things in practice.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;One system may preserve raw conversation history. Another may summarize it into structured facts. A third may retrieve repository traces, prior debugging attempts, or images from earlier sessions. Some systems use dense retrieval; others use graphs, databases, rerankers, or generative memory consolidation.&lt;/p&gt;

&lt;p&gt;The difficult question is not whether an Agent can store information.&lt;/p&gt;

&lt;p&gt;The difficult question is whether it can retrieve the information that should govern its &lt;strong&gt;next action&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;A memory system can retrieve a highly similar statement from the past and still mislead an agent if that statement has since been corrected. It can return every related record and still fail if the agent cannot distinguish a current decision from an obsolete one.&lt;/p&gt;

&lt;p&gt;That is the problem Agent Memory Challenge 2026 Cycle 2 is designed to examine.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is the Agent Memory Challenge?
&lt;/h2&gt;

&lt;p&gt;The Agent Memory Challenge is the public evaluation program of the &lt;a href="https://agentmemoryleaderboard.ai/" rel="noopener noreferrer"&gt;Agent Memory Leaderboard (AML)&lt;/a&gt;, an open benchmark for long-term Agent Memory.&lt;/p&gt;

&lt;p&gt;Participants provide the memory layer through two interfaces:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Add&lt;/strong&gt; — receives content that the system should store, organize, index, update, or consolidate.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Search&lt;/strong&gt; — returns relevant memory evidence for a later query and user scope.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;AML then runs the shared downstream workflow:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Answer&lt;/strong&gt; — generates task responses from retrieved evidence.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Eval&lt;/strong&gt; — scores results under a standardized protocol.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Review&lt;/strong&gt; — verifies submitted versions, evaluation conditions, and compliance before publication.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This separation matters.&lt;/p&gt;

&lt;p&gt;In many public comparisons, different systems use different answer models, prompts, datasets, scoring methods, and evaluation procedures. It can become difficult to tell whether a result reflects a better memory system, a stronger answer model, or simply a different test setup.&lt;/p&gt;

&lt;p&gt;AML creates a clearer evaluation boundary:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Participants build the memory layer.&lt;br&gt;&lt;br&gt;
AML standardizes the downstream Answer and Eval process.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The goal is not to claim that one architecture is universally the “best” memory system. It is to make different approaches more comparable under a shared, reproducible evaluation flow.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why “current evidence” matters
&lt;/h2&gt;

&lt;p&gt;Long-running agents do not operate in a static world.&lt;/p&gt;

&lt;p&gt;A release date changes. A preference is corrected. A debugging hypothesis is disproven. A repository evolves. A previous decision becomes invalid after new evidence appears.&lt;/p&gt;

&lt;p&gt;In these situations, retrieving the most similar old memory is not enough.&lt;/p&gt;

&lt;p&gt;A useful memory system should help an agent answer questions such as:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What was previously believed?&lt;/li&gt;
&lt;li&gt;What changed later?&lt;/li&gt;
&lt;li&gt;Which source supports the current state?&lt;/li&gt;
&lt;li&gt;Which older information remains historically relevant?&lt;/li&gt;
&lt;li&gt;Which information should no longer influence the next task?&lt;/li&gt;
&lt;li&gt;Can the returned evidence be traced back to its source?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is why Agent Memory should not be evaluated only as a search problem.&lt;/p&gt;

&lt;p&gt;It is also a problem of temporal reasoning, provenance, relevance, scope, and decision support.&lt;/p&gt;

&lt;h2&gt;
  
  
  Three tracks in Cycle 2
&lt;/h2&gt;

&lt;p&gt;Cycle 2 expands the evaluation across three independent tracks.&lt;/p&gt;

&lt;h3&gt;
  
  
  Textual Memory
&lt;/h3&gt;

&lt;p&gt;The Textual Memory track evaluates long conversations and cross-session history.&lt;/p&gt;

&lt;p&gt;It includes capabilities such as:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Explicit fact recall&lt;/li&gt;
&lt;li&gt;Multi-hop relations and reasoning&lt;/li&gt;
&lt;li&gt;Temporal events and changing states&lt;/li&gt;
&lt;li&gt;User personalization&lt;/li&gt;
&lt;li&gt;Rule and workflow following&lt;/li&gt;
&lt;li&gt;Memory governance and safety boundaries&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Cycle 2 also includes &lt;strong&gt;Streaming Memory&lt;/strong&gt; conditions, where Add and Search calls occur as events unfold. This tests whether a system can use the right information at the right time, rather than relying only on a static archive of the full conversation.&lt;/p&gt;

&lt;h3&gt;
  
  
  Coding Memory
&lt;/h3&gt;

&lt;p&gt;Coding agents accumulate a different kind of history.&lt;/p&gt;

&lt;p&gt;Past implementation decisions, repository conventions, failed debugging attempts, test results, error messages, module relationships, and development trajectories can all matter to a later task.&lt;/p&gt;

&lt;p&gt;The Coding Memory track evaluates whether historical engineering experience can help an agent solve subsequent software-engineering tasks.&lt;/p&gt;

&lt;p&gt;The formal evaluation contains &lt;strong&gt;150 software-engineering tasks&lt;/strong&gt;, tested under both relevant-history and noisy-history settings—for &lt;strong&gt;300 task-condition units&lt;/strong&gt; in total.&lt;/p&gt;

&lt;p&gt;The question is not simply whether a system can find a file path or a past error message.&lt;/p&gt;

&lt;p&gt;It is whether it can retrieve useful engineering evidence without overwhelming the agent with irrelevant historical noise.&lt;/p&gt;

&lt;h3&gt;
  
  
  Multimodal Memory
&lt;/h3&gt;

&lt;p&gt;Agents increasingly work across text, images, screenshots, documents, and other visual context.&lt;/p&gt;

&lt;p&gt;The Multimodal Memory track evaluates how systems write, retrieve, and use text-and-image memory. It tests whether a system can preserve ordered multimodal context, connect evidence across modalities, and retrieve the information needed for a later task.&lt;/p&gt;

&lt;p&gt;Participants may use original images, captions, or both, while disclosing the media types their systems actually process.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1ao865eo4rkhiuqapdrp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1ao865eo4rkhiuqapdrp.png" alt=" " width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Core principles of the evaluation
&lt;/h2&gt;

&lt;p&gt;The benchmark is built around a few practical rules.&lt;/p&gt;

&lt;h3&gt;
  
  
  Search returns evidence, not a disguised final answer
&lt;/h3&gt;

&lt;p&gt;The participant’s Search API should return memory evidence relevant to the query. AML handles downstream answer generation and scoring.&lt;/p&gt;

&lt;p&gt;This keeps the memory layer distinct from the final response model.&lt;/p&gt;

&lt;h3&gt;
  
  
  User isolation is a strict boundary
&lt;/h3&gt;

&lt;p&gt;Memory from one &lt;code&gt;user_id&lt;/code&gt;, task, sample, team, or evaluation run must not leak into another.&lt;/p&gt;

&lt;p&gt;Long-term memory is useful only if it is also appropriately scoped.&lt;/p&gt;

&lt;h3&gt;
  
  
  A successful write must be searchable
&lt;/h3&gt;

&lt;p&gt;A synchronous Add request should return success only after the content has been persisted and can be retrieved through Search.&lt;/p&gt;

&lt;h3&gt;
  
  
  Retries should not create duplicate memories
&lt;/h3&gt;

&lt;p&gt;Systems should handle &lt;code&gt;request_id&lt;/code&gt; idempotently, so a network retry does not write the same memory multiple times.&lt;/p&gt;

&lt;h3&gt;
  
  
  Formal evaluations use a fixed system version
&lt;/h3&gt;

&lt;p&gt;Once a Full evaluation begins, the submitted code, image, endpoint, authentication method, and operating conditions must remain stable.&lt;/p&gt;

&lt;p&gt;Results are published in the context of the corresponding track, division, system version, evaluation suite, and cycle.&lt;/p&gt;

&lt;h2&gt;
  
  
  Cycle 1: a shared evaluation is already attracting attention
&lt;/h2&gt;

&lt;p&gt;AML published its first leaderboard cycle on August 12, 2026.&lt;/p&gt;

&lt;p&gt;During the first cycle:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;136 teams&lt;/strong&gt; submitted applications&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;67 representative memory systems&lt;/strong&gt; completed official evaluation&lt;/li&gt;
&lt;li&gt;The AML website received more than &lt;strong&gt;300,000 cumulative visits&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;AML’s Hugging Face Space reached the top of the Spaces trending list during the first cycle&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These figures reflect participation and community interest in Cycle 1. They do not imply that any single system is universally superior outside its submitted version, track, and evaluation conditions.&lt;/p&gt;

&lt;p&gt;What they do show is that the Agent Memory community is actively looking for more transparent ways to compare systems.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fvobeoii7a11v7qskm51o.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fvobeoii7a11v7qskm51o.png" alt=" " width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Who can participate?
&lt;/h2&gt;

&lt;p&gt;Cycle 2 is open globally to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Universities and research institutions&lt;/li&gt;
&lt;li&gt;Open-source maintainers&lt;/li&gt;
&lt;li&gt;Independent research teams&lt;/li&gt;
&lt;li&gt;Commercial product teams&lt;/li&gt;
&lt;li&gt;Individual developers&lt;/li&gt;
&lt;li&gt;Cross-organization teams&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Each track includes two separate divisions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Open-source Methods&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Commercial Products&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Participants may enter multiple tracks, while rankings remain separate by track and division.&lt;/p&gt;

&lt;p&gt;Participation is free. Participants operate their own APIs, databases, bandwidth, and compute resources; AML provides the standardized evaluation orchestration, downstream Answer and Eval process, result review, and leaderboard publication.&lt;/p&gt;

&lt;h2&gt;
  
  
  Key dates
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;September 20, 2026, 00:00 UTC+8&lt;/strong&gt; — Cycle 2 opens&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;September 20–October 31&lt;/strong&gt; — Registration, integration, Smoke tests, Full evaluations, and review&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;October 31, 2026, 23:59 UTC+8&lt;/strong&gt; — Submission-material deadline&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;November 4, 2026, 23:59 UTC+8&lt;/strong&gt; — Evaluation closes&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Mid-November 2026&lt;/strong&gt; — Official results planned for release&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Teams should submit stable APIs early. A Full evaluation typically takes approximately 0.5–2 days, depending on the implementation and evaluation scale.&lt;/p&gt;

&lt;h2&gt;
  
  
  Open-source awards
&lt;/h2&gt;

&lt;p&gt;Cycle 2 provides a total prize pool of &lt;strong&gt;approximately USD 22,400&lt;/strong&gt; for eligible Open-source Methods teams across the three tracks.&lt;/p&gt;

&lt;p&gt;Each track includes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;First Prize — &lt;strong&gt;approximately USD 2,980&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Two Second Prizes — &lt;strong&gt;approximately USD 1,190 each&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Three Third Prizes — &lt;strong&gt;approximately USD 450 each&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Best Technical Innovation Award — &lt;strong&gt;approximately USD 750&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;Awards are denominated and paid in RMB. USD figures are approximate and may vary with the exchange rate.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Commercial Products are ranked in a separate division and are not eligible for the prize pool.&lt;/p&gt;

&lt;h2&gt;
  
  
  Explore AML and participate
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://agentmemoryleaderboard.ai/" rel="noopener noreferrer"&gt;Official website&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://agentmemoryleaderboard.ai/evaluation" rel="noopener noreferrer"&gt;Evaluation and registration&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://agentmemoryleaderboard.ai/rules" rel="noopener noreferrer"&gt;Participation rules&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://agentmemoryleaderboard.ai/api-guide" rel="noopener noreferrer"&gt;API integration guide&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/AML-memory/agent-memory-leaderboard" rel="noopener noreferrer"&gt;GitHub repository&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Long-term Agent Memory should be more than a growing context window.&lt;/p&gt;

&lt;p&gt;It should help an agent retrieve the evidence that is relevant now, understand what has changed, and act on a record that can be inspected and verified.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Make memory measurable. Make progress verifiable.&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>opensource</category>
      <category>machinelearning</category>
      <category>testing</category>
    </item>
    <item>
      <title>From “Storing” to “Staying Current”: Why Agent Memory Needs a Shared Evaluation</title>
      <dc:creator>Agent Memory Leaderboard</dc:creator>
      <pubDate>Sat, 19 Sep 2026 14:06:32 +0000</pubDate>
      <link>https://dev.to/aml-/from-storing-to-staying-current-why-agent-memory-needs-a-shared-evaluation-4ik1</link>
      <guid>https://dev.to/aml-/from-storing-to-staying-current-why-agent-memory-needs-a-shared-evaluation-4ik1</guid>
      <description>&lt;p&gt;&lt;em&gt;Agent Memory Challenge 2026 Cycle 2 opens September 20 across Textual, Coding, and Multimodal Memory.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Long-term Agent Memory is not about keeping more history.&lt;/p&gt;

&lt;p&gt;It is about retrieving the right evidence from long-running experience, recognizing when a fact or decision has changed, avoiding stale context, and using that evidence reliably in the next task.&lt;/p&gt;

&lt;p&gt;That is the question behind the Agent Memory Challenge, the public evaluation program of the Agent Memory Leaderboard (AML).&lt;/p&gt;

&lt;p&gt;Cycle 2 opens on &lt;strong&gt;September 20, 2026, at 00:00 UTC+8&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://agentmemoryleaderboard.ai/" rel="noopener noreferrer"&gt;Join or learn more at agentmemoryleaderboard.ai&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Why memory needs to be evaluated differently
&lt;/h2&gt;

&lt;p&gt;As AI agents move beyond one-off chats toward long-running work, memory becomes a core capability.&lt;/p&gt;

&lt;p&gt;An agent may need to retain context across conversations, software repositories, documents, images, and evolving tasks. It may need to remember a user preference expressed weeks ago, recover a debugging path from an earlier development session, or distinguish a superseded project decision from the current one.&lt;/p&gt;

&lt;p&gt;But “remembering” is not enough.&lt;/p&gt;

&lt;p&gt;Retrieving yesterday’s decision after it has been corrected can be worse than retrieving nothing. Returning a familiar but outdated fact can quietly derail a later task. A memory system needs to preserve evidence while also helping an agent understand what remains current.&lt;/p&gt;

&lt;p&gt;This makes public comparisons difficult. Different memory systems are often tested with different datasets, answer models, prompts, scoring rules, and evaluation procedures. A score may reflect not only the memory layer, but also everything surrounding it.&lt;/p&gt;

&lt;p&gt;AML creates a clearer boundary.&lt;/p&gt;

&lt;p&gt;Participants provide the memory layer through &lt;strong&gt;Add&lt;/strong&gt; and &lt;strong&gt;Search&lt;/strong&gt; APIs. AML standardizes the downstream &lt;strong&gt;Answer&lt;/strong&gt;, &lt;strong&gt;Eval&lt;/strong&gt;, result review, and leaderboard-publication process.&lt;/p&gt;

&lt;p&gt;The goal is not to declare one universal “best memory system.” It is to create a more open, reproducible way to compare different approaches under a shared evaluation flow.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Cycle 1 established
&lt;/h2&gt;

&lt;p&gt;AML published its first leaderboard cycle on August 12, 2026.&lt;/p&gt;

&lt;p&gt;The first cycle received &lt;strong&gt;136 team applications&lt;/strong&gt;, and &lt;strong&gt;67 representative memory systems&lt;/strong&gt; completed official evaluation. AML’s official website has since received more than &lt;strong&gt;300,000 cumulative visits&lt;/strong&gt;, while its Hugging Face Space reached &lt;strong&gt;#1 on the Spaces trending list&lt;/strong&gt; during the cycle.&lt;/p&gt;

&lt;p&gt;Those numbers reflect participation and community interest—not a claim that any individual system is universally superior outside its submitted version, track, suite, and evaluation conditions.&lt;/p&gt;

&lt;p&gt;What they do show is that Agent Memory has become a shared technical question: how should systems store experience, retrieve useful evidence, handle change, and prove that the evidence returned to an agent is actually reliable?&lt;/p&gt;

&lt;p&gt;Cycle 2 expands that question across three distinct settings.&lt;/p&gt;

&lt;h2&gt;
  
  
  Three tracks, one evaluation boundary
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Textual Memory
&lt;/h3&gt;

&lt;p&gt;The Textual Memory track evaluates long conversations and cross-session history.&lt;/p&gt;

&lt;p&gt;It includes explicit fact recall, multi-hop relations, temporal events, personalization, rule following, and memory governance. The track asks whether a system can retrieve relevant evidence without confusing historical statements with current state.&lt;/p&gt;

&lt;p&gt;Cycle 2 also introduces &lt;strong&gt;Streaming Memory&lt;/strong&gt;. Here, Add and Search calls may occur as events unfold. The challenge is not simply to search a completed archive, but to use information that was available at the right point in time.&lt;/p&gt;

&lt;h3&gt;
  
  
  Coding Memory
&lt;/h3&gt;

&lt;p&gt;The Coding Memory track asks a more practical question: can historical engineering experience help an agent solve a later software task?&lt;/p&gt;

&lt;p&gt;Systems may need to retrieve and filter repository history such as implementation context, debugging trails, failure cases, module relationships, testing evidence, and prior development decisions.&lt;/p&gt;

&lt;p&gt;The formal Coding evaluation includes &lt;strong&gt;150 software-engineering tasks&lt;/strong&gt;, each tested under both relevant-history and noisy-history conditions—&lt;strong&gt;300 task-condition units&lt;/strong&gt; in total.&lt;/p&gt;

&lt;p&gt;The distinction matters. A useful coding memory system should not only find old information. It should help an agent identify which past experience is relevant, which context is distracting, and which evidence can support the next implementation or debugging decision.&lt;/p&gt;

&lt;h3&gt;
  
  
  Multimodal Memory
&lt;/h3&gt;

&lt;p&gt;The Multimodal Memory track evaluates how systems write, retrieve, and use text-and-image memory.&lt;/p&gt;

&lt;p&gt;Participants may process original images, captions, or both. They must correctly handle ordered multimodal content arrays and clearly disclose which media types their systems actually use.&lt;/p&gt;

&lt;p&gt;As agents work increasingly across screenshots, product documents, visual references, and written instructions, memory can no longer be treated as text alone. The question is whether a system can preserve and retrieve the connections between visual and textual evidence.&lt;/p&gt;

&lt;h2&gt;
  
  
  How AML evaluates memory systems
&lt;/h2&gt;

&lt;p&gt;The evaluation boundary is deliberately simple:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Add&lt;/strong&gt; receives historical content that a system should remember.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Search&lt;/strong&gt; retrieves relevant memory evidence for a later query and user scope.&lt;/li&gt;
&lt;li&gt;AML then runs the downstream &lt;strong&gt;Answer&lt;/strong&gt; and &lt;strong&gt;Eval&lt;/strong&gt; process under a standardized protocol.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Search is not expected to generate the final answer or return a disguised answer key. Its job is to return useful, traceable memory evidence.&lt;/p&gt;

&lt;p&gt;The workflow is:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Choose a track and division.&lt;/li&gt;
&lt;li&gt;Deploy stable, publicly reachable Add and Search APIs.&lt;/li&gt;
&lt;li&gt;Submit a fixed system version.&lt;/li&gt;
&lt;li&gt;Pass a per-track Smoke test.&lt;/li&gt;
&lt;li&gt;Start a formal Full evaluation.&lt;/li&gt;
&lt;li&gt;Keep the submitted version, endpoints, authentication, and operating conditions stable.&lt;/li&gt;
&lt;li&gt;AML reviews result validity, version consistency, and compliance status before leaderboard publication.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This separation makes a meaningful comparison possible. Different systems can make different architectural choices—raw-history retrieval, summaries, structured facts, graphs, hybrid retrieval, temporal reasoning, or learned memory policies—while being evaluated through the same downstream Answer and Eval flow.&lt;/p&gt;

&lt;h2&gt;
  
  
  Technical principles that protect comparability
&lt;/h2&gt;

&lt;p&gt;A benchmark is only useful if the evaluation contract is clear.&lt;/p&gt;

&lt;p&gt;Cycle 2 therefore requires several core principles:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Search returns evidence, not a final answer.&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;code&gt;user_id&lt;/code&gt; is a strict isolation boundary.&lt;/strong&gt; Evaluation memory must not be shared across users, tasks, samples, teams, or runs.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Synchronous Add must persist content before returning success.&lt;/strong&gt; Newly written memory must be immediately searchable.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;code&gt;request_id&lt;/code&gt; should be idempotent.&lt;/strong&gt; Network retries should not create duplicate memory.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Full evaluations use a fixed version and contract.&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Scores and rankings apply only to the corresponding submitted version, track, suite, and rules.&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These constraints are not intended to prescribe a single memory architecture. They make it possible to inspect what a system actually did, reproduce its operating conditions, and interpret its result within a defined scope.&lt;/p&gt;

&lt;h2&gt;
  
  
  Who can participate
&lt;/h2&gt;

&lt;p&gt;Cycle 2 is open globally to universities and research institutions, open-source maintainers, independent research teams, commercial product teams, individual developers, and cross-organization teams.&lt;/p&gt;

&lt;p&gt;Each track has two separate divisions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Open-source Methods&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Commercial Products&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Participants may enter multiple tracks, but each submission selects one division. Rankings are published separately by track and division.&lt;/p&gt;

&lt;p&gt;Participation is free. Teams operate their own APIs, databases, bandwidth, and compute resources; AML runs the standardized evaluation orchestration, Answer, Eval, result review, and leaderboard publication process.&lt;/p&gt;

&lt;p&gt;Eligible Open-source Methods teams will compete for a total &lt;strong&gt;RMB 150,000 prize pool&lt;/strong&gt; across the three tracks. Commercial Products are ranked in a separate division and are not eligible for the prize pool.&lt;/p&gt;

&lt;h2&gt;
  
  
  Key dates
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;September 20, 2026, 00:00 UTC+8:&lt;/strong&gt; Cycle 2 opens
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;September 20–October 31:&lt;/strong&gt; Registration, API integration, Smoke tests, Full evaluations, and result review
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;October 31, 2026, 23:59 UTC+8:&lt;/strong&gt; Materials submission deadline
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;November 4, 2026, 23:59 UTC+8:&lt;/strong&gt; Evaluation closes
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Mid-November 2026:&lt;/strong&gt; Official results planned for release
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Teams should submit stable APIs early. Formal evaluation involves resource scheduling, execution, and necessary follow-up review; stable endpoints and operating conditions are essential throughout the process.&lt;/p&gt;

&lt;h2&gt;
  
  
  From storing history to using experience
&lt;/h2&gt;

&lt;p&gt;Agent Memory is not a single capability.&lt;/p&gt;

&lt;p&gt;It includes how a system writes information, organizes it, retrieves it, handles conflict and change, respects isolation boundaries, and supplies evidence that a downstream agent can actually use.&lt;/p&gt;

&lt;p&gt;Cycle 2 is an invitation to test these approaches under a common evaluation boundary—across conversations, codebases, and multimodal context.&lt;/p&gt;

&lt;p&gt;The benchmark will not settle every question about long-term memory. But it can make the questions sharper, the results more comparable, and technical progress easier to verify.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Agent Memory Challenge 2026 Cycle 2 opens September 20.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://agentmemoryleaderboard.ai/" rel="noopener noreferrer"&gt;Official website&lt;/a&gt; · &lt;a href="https://agentmemoryleaderboard.ai/evaluation" rel="noopener noreferrer"&gt;Evaluation entry&lt;/a&gt; · &lt;a href="https://agentmemoryleaderboard.ai/rules" rel="noopener noreferrer"&gt;Participation guide&lt;/a&gt; · &lt;a href="https://agentmemoryleaderboard.ai/api-guide" rel="noopener noreferrer"&gt;API guide&lt;/a&gt; · &lt;a href="https://github.com/AML-memory/agent-memory-leaderboard" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Final eligibility, result review, awards, and scheduling are subject to the latest official rules and organizer announcements.&lt;/em&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>From “Remembering Code” to “Solving Tasks”: How Coding Memory Helps Agents Reuse Engineering Experie</title>
      <dc:creator>Agent Memory Leaderboard</dc:creator>
      <pubDate>Thu, 17 Sep 2026 04:14:49 +0000</pubDate>
      <link>https://dev.to/aml-/from-remembering-code-to-solving-tasks-how-coding-memory-helps-agents-reuse-engineering-experie-25c6</link>
      <guid>https://dev.to/aml-/from-remembering-code-to-solving-tasks-how-coding-memory-helps-agents-reuse-engineering-experie-25c6</guid>
      <description>&lt;p&gt;Compared with textual memory, Coding Memory asks a more direct question:&lt;/p&gt;

&lt;p&gt;Can experience accumulated during past software development actually help an Agent complete the next software-engineering task?&lt;/p&gt;

&lt;p&gt;This is the question behind the first Agent Memory Leaderboard (AML) Coding Memory evaluation.&lt;/p&gt;

&lt;p&gt;A Coding Agent does not work in an empty repository.&lt;/p&gt;

&lt;p&gt;It enters a codebase with a history:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;previous feature implementations;&lt;/li&gt;
&lt;li&gt;old bug reports;&lt;/li&gt;
&lt;li&gt;rejected approaches;&lt;/li&gt;
&lt;li&gt;commit messages;&lt;/li&gt;
&lt;li&gt;test failures;&lt;/li&gt;
&lt;li&gt;error traces;&lt;/li&gt;
&lt;li&gt;code-review discussions;&lt;/li&gt;
&lt;li&gt;file paths;&lt;/li&gt;
&lt;li&gt;function names;&lt;/li&gt;
&lt;li&gt;and development sessions that may contain clues about how the project actually works.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Some of this history is useful. Some of it is outdated. Some of it is highly relevant but difficult to find. Some of it may lead an Agent in the wrong direction if retrieved without context.&lt;/p&gt;

&lt;p&gt;The purpose of Coding Memory is not simply to store this history.&lt;/p&gt;

&lt;p&gt;It is to help an Agent use the right part of it at the right moment.&lt;/p&gt;

&lt;p&gt;The first AML Coding Memory benchmark was built from &lt;strong&gt;12 real code repositories&lt;/strong&gt;. It organized &lt;strong&gt;1,290 annotated historical engineering tasks&lt;/strong&gt; and evaluated systems on &lt;strong&gt;150 held-out tasks&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;51 New Feature tasks&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;99 Bug Fix tasks&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The memory system writes and retrieves relevant historical information. A standardized Coding Agent then uses the retrieved context to solve the current task.&lt;/p&gt;

&lt;p&gt;That design makes the final metric unusually concrete.&lt;/p&gt;

&lt;p&gt;The question is not only:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Did the system retrieve relevant historical content?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;It is:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Did that historical content help the Agent complete the software-engineering task?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The first leaderboard results show two very different states.&lt;/p&gt;

&lt;p&gt;In the industry ranking, a visible gap has already appeared at the top.&lt;/p&gt;

&lt;p&gt;In the open-source ranking, leading methods remain tightly clustered.&lt;/p&gt;

&lt;p&gt;Together, these results suggest that Coding Memory is beginning to develop distinct technical routes—but no single architecture has yet become the final answer.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Coding Memory Is Not Just Textual Memory Applied to Code
&lt;/h2&gt;

&lt;p&gt;Textual memory is often framed as a retrieval problem.&lt;/p&gt;

&lt;p&gt;A user asks a question. The system retrieves relevant past conversation. An answer model reasons over the returned context.&lt;/p&gt;

&lt;p&gt;Coding Memory has to operate under a more demanding version of this pattern.&lt;/p&gt;

&lt;p&gt;The information an Agent needs may not appear in one clean natural-language sentence.&lt;/p&gt;

&lt;p&gt;It may be distributed across:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;an issue describing an earlier failure;&lt;/li&gt;
&lt;li&gt;a pull request that introduced a similar feature;&lt;/li&gt;
&lt;li&gt;a commit that explains why a particular workaround exists;&lt;/li&gt;
&lt;li&gt;an error log showing the actual failure mode;&lt;/li&gt;
&lt;li&gt;a test that captures the intended behavior;&lt;/li&gt;
&lt;li&gt;and a later code review explaining why the first solution was rejected.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A coding task may also require multiple forms of reasoning at once.&lt;/p&gt;

&lt;p&gt;The Agent may need to understand:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;repository structure;&lt;/li&gt;
&lt;li&gt;dependencies between modules;&lt;/li&gt;
&lt;li&gt;naming conventions;&lt;/li&gt;
&lt;li&gt;historical implementation patterns;&lt;/li&gt;
&lt;li&gt;current test expectations;&lt;/li&gt;
&lt;li&gt;and the difference between a previous fix and the current failure.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This means a Coding Memory system cannot be evaluated only by whether it retrieves similar-looking text.&lt;/p&gt;

&lt;p&gt;It must help the Agent make a better engineering decision.&lt;/p&gt;

&lt;p&gt;The history must eventually influence the outcome of a real task:&lt;/p&gt;

&lt;p&gt;a feature is implemented correctly, a bug is fixed, tests pass, and the patch fits the existing project.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. What AML Measures in Coding Memory
&lt;/h2&gt;

&lt;p&gt;The AML Coding Memory benchmark separates the memory layer from the Coding Agent.&lt;/p&gt;

&lt;p&gt;The memory system is responsible for two broad jobs:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;writing historical development information;&lt;/li&gt;
&lt;li&gt;retrieving relevant information for a new task.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The downstream Coding Agent is responsible for the final implementation work.&lt;/p&gt;

&lt;p&gt;This separation matters.&lt;/p&gt;

&lt;p&gt;A memory system may retrieve a large amount of accurate history but still fail to help the Agent if the returned context is too broad, too noisy, too old, or not actionable.&lt;/p&gt;

&lt;p&gt;Likewise, an Agent may occasionally solve a task without useful historical memory—but that does not prove the memory system is strong.&lt;/p&gt;

&lt;p&gt;AML therefore evaluates the result at the task level.&lt;/p&gt;

&lt;p&gt;The central metric is &lt;strong&gt;Task Solve&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;This moves Coding Memory evaluation beyond questions such as:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;How many memories were stored?&lt;/p&gt;

&lt;p&gt;How high was Recall@K?&lt;/p&gt;

&lt;p&gt;How similar was the retrieved content to the query?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Those signals can still be useful for diagnosis. But they are not the final goal.&lt;/p&gt;

&lt;p&gt;The final question is whether history improves the Agent’s ability to complete the work.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. The First Results: Two Different Leaderboard Shapes
&lt;/h2&gt;

&lt;p&gt;The first Coding Memory results reveal a sharp contrast between industry systems and open-source methods.&lt;/p&gt;

&lt;p&gt;The industrial ranking already has a clear leading system.&lt;/p&gt;

&lt;p&gt;The open-source ranking has a large group of systems separated by less than one percentage point.&lt;/p&gt;

&lt;p&gt;This does not mean the industrial systems all use one shared method, or that open-source systems are technically identical.&lt;/p&gt;

&lt;p&gt;Instead, it suggests that the two groups are at different stages of differentiation.&lt;/p&gt;

&lt;p&gt;Industrial systems are beginning to show more visible product-level separation.&lt;/p&gt;

&lt;p&gt;Open-source systems are still exploring a broad design space in which several very different architectures can achieve nearly the same overall result.&lt;/p&gt;

&lt;p&gt;That makes the leaderboard more interesting than a simple list of scores.&lt;/p&gt;

&lt;p&gt;The central question becomes:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;What kinds of memory are different systems trying to build for Coding Agents?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  4. Industry Ranking: MemoraX Leads by Ten Points
&lt;/h2&gt;

&lt;p&gt;In the industry ranking, &lt;strong&gt;MemoraX&lt;/strong&gt; achieved the highest overall result.&lt;/p&gt;

&lt;p&gt;Its Task Solve rate was &lt;strong&gt;62.00%&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Its task-type results were:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;New Feature: &lt;strong&gt;70.59%&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Bug Fix: &lt;strong&gt;57.58%&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The next group—&lt;strong&gt;claude-mem&lt;/strong&gt;, &lt;strong&gt;hs&lt;/strong&gt;, and &lt;strong&gt;MemOS&lt;/strong&gt;—each achieved &lt;strong&gt;52.00%&lt;/strong&gt; overall Task Solve.&lt;/p&gt;

&lt;p&gt;This creates a ten-percentage-point gap between MemoraX and the second tier.&lt;/p&gt;

&lt;p&gt;For a benchmark built around real software-engineering tasks, this is a meaningful difference.&lt;/p&gt;

&lt;p&gt;It suggests that the way a system selects, updates, and reuses historical experience can matter materially—not only for retrieval quality, but for whether the downstream Agent completes the task.&lt;/p&gt;

&lt;p&gt;The public materials behind the leading systems also reveal different product philosophies.&lt;/p&gt;

&lt;p&gt;Some systems emphasize preserving an Agent’s development trajectory and restoring it when needed.&lt;/p&gt;

&lt;p&gt;Others try to identify which experiences from long-running development work are worth reusing in future tasks.&lt;/p&gt;

&lt;h2&gt;
  
  
  5. MemoraX: Memory as Reusable Engineering Experience
&lt;/h2&gt;

&lt;p&gt;Public materials indicate that MemoraX Code does not treat Memory as only a “store and retrieve” layer.&lt;/p&gt;

&lt;p&gt;It also considers:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;which information is worth writing;&lt;/li&gt;
&lt;li&gt;which memory should be updated;&lt;/li&gt;
&lt;li&gt;when memory should be recalled;&lt;/li&gt;
&lt;li&gt;and how prior engineering work can become useful in a later task.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;MemoraX Code combines local repository memory with long-term memory.&lt;/p&gt;

&lt;p&gt;Its Memory Model learns mechanisms for memory filtering, updating, and recall.&lt;/p&gt;

&lt;p&gt;But the more distinctive part of the approach is what happens on top of historical development trajectories.&lt;/p&gt;

&lt;p&gt;The system extracts &lt;strong&gt;Procedure Memory&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Procedure Memory is not simply a record of what happened in the past.&lt;/p&gt;

&lt;p&gt;It aims to capture reusable engineering experience:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;how a similar problem was analyzed;&lt;/li&gt;
&lt;li&gt;which files or modules were inspected;&lt;/li&gt;
&lt;li&gt;what implementation path was chosen;&lt;/li&gt;
&lt;li&gt;what alternatives failed;&lt;/li&gt;
&lt;li&gt;how the result was verified;&lt;/li&gt;
&lt;li&gt;and which workflow may be useful again.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In one public experiment, MemoraX distilled &lt;strong&gt;15 engineering experiences from 123 historical task segments&lt;/strong&gt;, then organized them into &lt;strong&gt;four categories of Procedure Memory&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;This introduces a different question for Coding Memory.&lt;/p&gt;

&lt;p&gt;Instead of asking only:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;What happened in the past?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;the system asks:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Which past engineering experience should influence the next task?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That distinction matters.&lt;/p&gt;

&lt;p&gt;A raw historical record can tell an Agent that a bug happened before.&lt;/p&gt;

&lt;p&gt;A reusable procedure may help it decide where to begin, what to check, and how to verify the fix.&lt;/p&gt;

&lt;h2&gt;
  
  
  6. From Event History to Procedure Memory
&lt;/h2&gt;

&lt;p&gt;Consider a simplified example.&lt;/p&gt;

&lt;p&gt;A previous task involved an API timeout.&lt;/p&gt;

&lt;p&gt;The development trajectory may have included:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;a bug report about transient failures;&lt;/li&gt;
&lt;li&gt;inspection of a network client;&lt;/li&gt;
&lt;li&gt;an unsuccessful first retry implementation;&lt;/li&gt;
&lt;li&gt;a revised retry strategy;&lt;/li&gt;
&lt;li&gt;added error handling;&lt;/li&gt;
&lt;li&gt;and new regression tests.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A conventional memory system may store each event independently.&lt;/p&gt;

&lt;p&gt;It can later retrieve the issue, the relevant commit, or the test file.&lt;/p&gt;

&lt;p&gt;That can be useful.&lt;/p&gt;

&lt;p&gt;But a procedure-oriented memory system attempts to preserve something more general:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;When this project encounters transient API failures, inspect the client boundary, distinguish retryable errors from permanent errors, use the established retry pattern, and validate the behavior with the existing test conventions.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The goal is not to replace raw evidence with an unsupported summary.&lt;/p&gt;

&lt;p&gt;It is to make past engineering experience easier to reuse when a new task is structurally similar.&lt;/p&gt;

&lt;p&gt;This is especially relevant for long-running repositories.&lt;/p&gt;

&lt;p&gt;As development history grows, repeatedly rediscovering the same debugging and implementation patterns becomes expensive.&lt;/p&gt;

&lt;p&gt;A Coding Agent that can reuse verified procedures may spend less time repeating exploratory work.&lt;/p&gt;

&lt;h2&gt;
  
  
  7. claude-mem: Preserve the Development Trail
&lt;/h2&gt;

&lt;p&gt;claude-mem emphasizes another important form of Coding Memory.&lt;/p&gt;

&lt;p&gt;It continuously records the development activity of a Coding Agent.&lt;/p&gt;

&lt;p&gt;This can include tool calls, observations, and other traces created while an Agent works through a task.&lt;/p&gt;

&lt;p&gt;Those records are organized into more compact semantic entries and persist across sessions.&lt;/p&gt;

&lt;p&gt;When a new session begins, the Agent does not need to load all historical activity into its context window.&lt;/p&gt;

&lt;p&gt;Instead, it can:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;search relevant records;&lt;/li&gt;
&lt;li&gt;inspect a timeline around a promising result;&lt;/li&gt;
&lt;li&gt;recover detailed content only when the current task requires it.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This is a layered-retrieval approach to coding history.&lt;/p&gt;

&lt;p&gt;It tries to avoid two opposite failure modes.&lt;/p&gt;

&lt;p&gt;The first is loading too much past history into context at once.&lt;/p&gt;

&lt;p&gt;The second is compressing history so aggressively that the Agent cannot recover the original reasoning trail when it needs more detail.&lt;/p&gt;

&lt;p&gt;By preserving a searchable semantic record and a timeline that can expand into fuller context, claude-mem aims to make development sessions resumable.&lt;/p&gt;

&lt;p&gt;Its first AML result was:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Overall Task Solve: &lt;strong&gt;52.00%&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;New Feature: &lt;strong&gt;56.86%&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Bug Fix: &lt;strong&gt;49.49%&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This illustrates a different Coding Memory thesis:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;A useful Agent does not always need a distilled procedure. Sometimes it needs to resume the actual trail of work.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  8. Persistent Development History Is Also a Product Capability
&lt;/h2&gt;

&lt;p&gt;Development work often unfolds across multiple sessions.&lt;/p&gt;

&lt;p&gt;An Agent may inspect a repository today, identify a likely cause, make a partial change, encounter a failed test, and continue later.&lt;/p&gt;

&lt;p&gt;Without memory, the next session may need to rediscover:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;which files were relevant;&lt;/li&gt;
&lt;li&gt;which commands were already run;&lt;/li&gt;
&lt;li&gt;which hypothesis had been rejected;&lt;/li&gt;
&lt;li&gt;what error output was observed;&lt;/li&gt;
&lt;li&gt;and why a particular implementation path was chosen.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is not only a retrieval problem.&lt;/p&gt;

&lt;p&gt;It is a continuity problem.&lt;/p&gt;

&lt;p&gt;A timeline-oriented memory system treats the Agent’s work itself as part of the memory.&lt;/p&gt;

&lt;p&gt;The history is not limited to the user’s request or the final patch.&lt;/p&gt;

&lt;p&gt;It also includes the path through the repository.&lt;/p&gt;

&lt;p&gt;This can be useful when the next task is not identical to the previous one but touches the same modules, architectural decisions, or unfinished investigation.&lt;/p&gt;

&lt;p&gt;The broader implication is that Coding Memory can preserve more than facts about a codebase.&lt;/p&gt;

&lt;p&gt;It can preserve the development process that produced those facts.&lt;/p&gt;

&lt;h2&gt;
  
  
  9. Industry Systems Are Beginning to Diverge
&lt;/h2&gt;

&lt;p&gt;The first industrial leaderboard suggests that Coding Memory is no longer one generic product category.&lt;/p&gt;

&lt;p&gt;Different systems are beginning to emphasize different kinds of value.&lt;/p&gt;

&lt;p&gt;One route focuses on continuous capture and recovery of an Agent’s development trajectory.&lt;/p&gt;

&lt;p&gt;Another focuses on filtering and distilling long-term work into reusable engineering procedures.&lt;/p&gt;

&lt;p&gt;Both approaches address the same underlying problem:&lt;/p&gt;

&lt;p&gt;How can an Agent use past development work without repeatedly loading, reading, and rediscovering everything?&lt;/p&gt;

&lt;p&gt;But they make different choices about what memory should look like.&lt;/p&gt;

&lt;p&gt;Should memory preserve the sequence of work?&lt;/p&gt;

&lt;p&gt;Should it extract generalized experience?&lt;/p&gt;

&lt;p&gt;Should it do both?&lt;/p&gt;

&lt;p&gt;The first leaderboard does not settle these questions.&lt;/p&gt;

&lt;p&gt;But it shows that these design choices are starting to appear in final software-engineering outcomes.&lt;/p&gt;

&lt;h2&gt;
  
  
  10. Open Source: Eight Methods Tied for First
&lt;/h2&gt;

&lt;p&gt;The open-source ranking looks very different.&lt;/p&gt;

&lt;p&gt;Eight methods tied for first with an overall &lt;strong&gt;52.67% Task Solve&lt;/strong&gt; rate:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;AM-Link&lt;/li&gt;
&lt;li&gt;AMC-Memory&lt;/li&gt;
&lt;li&gt;aml-memory-baseline&lt;/li&gt;
&lt;li&gt;aml-memory-mvp&lt;/li&gt;
&lt;li&gt;causal-memory&lt;/li&gt;
&lt;li&gt;Hybrid Episodic Memory&lt;/li&gt;
&lt;li&gt;Memoria&lt;/li&gt;
&lt;li&gt;nano-memory&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Immediately behind them, &lt;strong&gt;agent-memory&lt;/strong&gt;, &lt;strong&gt;ChronoHybridMem&lt;/strong&gt;, &lt;strong&gt;mem0-BQE&lt;/strong&gt;, and &lt;strong&gt;MemoryBear&lt;/strong&gt; each achieved &lt;strong&gt;52.00%&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Across more than a dozen leading open-source systems, the difference in final task success is less than one percentage point.&lt;/p&gt;

&lt;p&gt;At this stage, ranking systems strictly as first, second, or third is less revealing.&lt;/p&gt;

&lt;p&gt;The more interesting question is:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;How can different memory architectures produce nearly identical task-level results?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The answer appears to be that Coding Memory still has multiple viable routes.&lt;/p&gt;

&lt;p&gt;Some systems preserve raw history.&lt;/p&gt;

&lt;p&gt;Some rely on lexical and semantic hybrid retrieval.&lt;/p&gt;

&lt;p&gt;Some add code-specific retrieval signals.&lt;/p&gt;

&lt;p&gt;Some create more structured memory representations.&lt;/p&gt;

&lt;p&gt;The first AML results do not show that one route has already won.&lt;/p&gt;

&lt;h2&gt;
  
  
  11. causal-memory: Preserve History, Then Retrieve It Well
&lt;/h2&gt;

&lt;p&gt;The causal-memory submission primarily preserves original historical information.&lt;/p&gt;

&lt;p&gt;At retrieval time, it combines lexical matching with semantic retrieval. Different signals are fused to rank historical content relevant to the current task.&lt;/p&gt;

&lt;p&gt;The overall idea is direct:&lt;/p&gt;

&lt;p&gt;Do not impose heavy abstraction on the history before storage.&lt;/p&gt;

&lt;p&gt;Preserve the original engineering record, then make retrieval effective.&lt;/p&gt;

&lt;p&gt;Its results were:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Overall Task Solve: &lt;strong&gt;52.67%&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;New Feature: &lt;strong&gt;62.75%&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Bug Fix: &lt;strong&gt;47.47%&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is important because it challenges a common assumption.&lt;/p&gt;

&lt;p&gt;It is tempting to believe that Coding Memory must first convert development history into increasingly sophisticated summaries, entities, graphs, or abstractions.&lt;/p&gt;

&lt;p&gt;But the first results suggest that this is not necessarily required for a competitive system.&lt;/p&gt;

&lt;p&gt;Raw history can remain valuable.&lt;/p&gt;

&lt;p&gt;If the system can retrieve the right issue, commit, code change, error trace, or discussion at the right time, the original record may be more useful than a more aggressively transformed representation.&lt;/p&gt;

&lt;h2&gt;
  
  
  12. Why Raw History Can Matter in Code
&lt;/h2&gt;

&lt;p&gt;Software-engineering context is often highly specific.&lt;/p&gt;

&lt;p&gt;A file path can matter.&lt;/p&gt;

&lt;p&gt;A function name can matter.&lt;/p&gt;

&lt;p&gt;A single error string can matter.&lt;/p&gt;

&lt;p&gt;A note in a previous pull request can matter.&lt;/p&gt;

&lt;p&gt;A summary may preserve the broad idea of a previous change while losing the precise information needed to make the next patch.&lt;/p&gt;

&lt;p&gt;For example, a summary may say:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;The API client was updated to handle transient failures.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;But the original engineering record may reveal:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;which exception types were retryable;&lt;/li&gt;
&lt;li&gt;which function was modified;&lt;/li&gt;
&lt;li&gt;where retries were intentionally capped;&lt;/li&gt;
&lt;li&gt;which test exposed the failure;&lt;/li&gt;
&lt;li&gt;and why another implementation was rejected.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The broad summary is useful for orientation.&lt;/p&gt;

&lt;p&gt;The raw record may be necessary for correct implementation.&lt;/p&gt;

&lt;p&gt;A Raw-First approach does not eliminate the need for structure.&lt;/p&gt;

&lt;p&gt;It simply treats the original historical record as something that should remain available rather than being replaced completely.&lt;/p&gt;

&lt;h2&gt;
  
  
  13. Memoria: Hybrid Retrieval Optimized for Code
&lt;/h2&gt;

&lt;p&gt;Memoria also uses hybrid retrieval, but adapts it more directly to the details of software engineering.&lt;/p&gt;

&lt;p&gt;In addition to semantic retrieval and full-text keyword search, it considers signals such as:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;function names;&lt;/li&gt;
&lt;li&gt;file paths;&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;snake_case&lt;/code&gt;;&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;CamelCase&lt;/code&gt;;&lt;/li&gt;
&lt;li&gt;exception messages;&lt;/li&gt;
&lt;li&gt;code tokens;&lt;/li&gt;
&lt;li&gt;and historical messages near retrieved records.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is a practical response to the fact that code is not ordinary prose.&lt;/p&gt;

&lt;p&gt;A developer—or a Coding Agent—may search using an error string, a function name, a package path, or a specific identifier that has little meaning outside one repository.&lt;/p&gt;

&lt;p&gt;Natural-language semantic similarity alone may not capture these signals reliably.&lt;/p&gt;

&lt;p&gt;Memoria’s code-aware retrieval design gives these concrete engineering details a direct role in search.&lt;/p&gt;

&lt;p&gt;Its results were:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Overall Task Solve: &lt;strong&gt;52.67%&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;New Feature: &lt;strong&gt;60.78%&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Bug Fix: &lt;strong&gt;48.48%&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The system illustrates a broader point:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Coding Memory should reflect how software projects are actually named, navigated, debugged, and changed.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  14. Code Tokens Are Not Noise
&lt;/h2&gt;

&lt;p&gt;In some memory tasks, highly specific tokens may look like clutter.&lt;/p&gt;

&lt;p&gt;In coding tasks, they are often the most valuable part of the context.&lt;/p&gt;

&lt;p&gt;Consider the following kinds of information:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;fetchWithRetry&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;api/client.ts&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ECONNRESET&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;NullPointerException&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;get_user_profile&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;src/services/auth&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Retry-After&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;test_rate_limit_timeout&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A purely semantic retriever may recognize that a query involves an API failure.&lt;/p&gt;

&lt;p&gt;But it may not know which historical record contains the exact function, error signature, or test convention that matters.&lt;/p&gt;

&lt;p&gt;Code-aware retrieval can treat these terms as first-class evidence.&lt;/p&gt;

&lt;p&gt;It can also use surrounding historical messages to restore context around a matching record.&lt;/p&gt;

&lt;p&gt;This is especially useful because software engineering often involves local patterns.&lt;/p&gt;

&lt;p&gt;The same repository may use one naming convention, one folder structure, one error-handling pattern, and one test style that differ from another project.&lt;/p&gt;

&lt;p&gt;A useful Coding Memory system should help the Agent retrieve repository-specific knowledge rather than relying only on general programming knowledge.&lt;/p&gt;

&lt;h2&gt;
  
  
  15. agent-memory: A Direct Raw-First Alternative
&lt;/h2&gt;

&lt;p&gt;agent-memory adopts a more direct Raw-First approach.&lt;/p&gt;

&lt;p&gt;Historical messages are not first converted into new LLM-generated memory summaries.&lt;/p&gt;

&lt;p&gt;They are stored as original records.&lt;/p&gt;

&lt;p&gt;At retrieval time, the system combines BM25 and local dense retrieval, then fuses the results.&lt;/p&gt;

&lt;p&gt;Its first AML scores were:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Overall Task Solve: &lt;strong&gt;52.00%&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;New Feature: &lt;strong&gt;50.98%&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Bug Fix: &lt;strong&gt;52.53%&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This result reinforces the observation from causal-memory.&lt;/p&gt;

&lt;p&gt;More complex pre-storage abstraction is not a prerequisite for useful Coding Memory.&lt;/p&gt;

&lt;p&gt;A system can preserve raw engineering records, combine lexical and dense retrieval, and still remain competitive in task-level results.&lt;/p&gt;

&lt;p&gt;The question is not whether raw history or abstraction is always better.&lt;/p&gt;

&lt;p&gt;The question is whether the representation helps the Agent retrieve information that is actionable for the current task.&lt;/p&gt;

&lt;h2&gt;
  
  
  16. Different Routes, Similar Overall Results
&lt;/h2&gt;

&lt;p&gt;The open-source leaderboard contains several systems with similar overall scores but different design choices.&lt;/p&gt;

&lt;p&gt;causal-memory emphasizes original historical information plus hybrid retrieval.&lt;/p&gt;

&lt;p&gt;Memoria adds code-specific signals such as paths, identifiers, and exception messages.&lt;/p&gt;

&lt;p&gt;agent-memory retains raw messages and fuses BM25 with local dense retrieval.&lt;/p&gt;

&lt;p&gt;Their close overall results show that a high-level score can hide meaningful architectural differences.&lt;/p&gt;

&lt;p&gt;This is why Coding Memory should not be reduced to one broad label.&lt;/p&gt;

&lt;p&gt;Two systems may both claim to “retrieve relevant history,” while one is optimized for exact engineering tokens, another for semantic similarity, and another for preserving the raw development record.&lt;/p&gt;

&lt;p&gt;These differences may become more visible as benchmarks expand, repositories become larger, and task types become more diverse.&lt;/p&gt;

&lt;h2&gt;
  
  
  17. New Features and Bug Fixes May Need Different Memories
&lt;/h2&gt;

&lt;p&gt;The split between New Feature and Bug Fix tasks is particularly revealing.&lt;/p&gt;

&lt;p&gt;Consider three representative open-source results:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;System&lt;/th&gt;
&lt;th&gt;New Feature&lt;/th&gt;
&lt;th&gt;Bug Fix&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;causal-memory&lt;/td&gt;
&lt;td&gt;62.75%&lt;/td&gt;
&lt;td&gt;47.47%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Memoria&lt;/td&gt;
&lt;td&gt;60.78%&lt;/td&gt;
&lt;td&gt;48.48%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;agent-memory&lt;/td&gt;
&lt;td&gt;50.98%&lt;/td&gt;
&lt;td&gt;52.53%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;These numbers do not prove that one memory architecture is inherently better for one class of task.&lt;/p&gt;

&lt;p&gt;The benchmark is not yet large enough to support such a universal conclusion.&lt;/p&gt;

&lt;p&gt;But the pattern suggests an important possibility:&lt;/p&gt;

&lt;p&gt;New Feature development and Bug Fix work may benefit from different kinds of historical memory.&lt;/p&gt;

&lt;h2&gt;
  
  
  18. What New Feature Tasks May Need
&lt;/h2&gt;

&lt;p&gt;When implementing a new feature, an Agent may need to understand how the repository prefers to build things.&lt;/p&gt;

&lt;p&gt;Useful historical context may include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;similar feature implementations;&lt;/li&gt;
&lt;li&gt;module boundaries;&lt;/li&gt;
&lt;li&gt;architectural patterns;&lt;/li&gt;
&lt;li&gt;data-flow conventions;&lt;/li&gt;
&lt;li&gt;interface design;&lt;/li&gt;
&lt;li&gt;project-specific abstractions;&lt;/li&gt;
&lt;li&gt;and tests that show how new behavior is normally introduced.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The key question may be:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;How has this project solved a structurally similar problem before?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;In this setting, a previous implementation pattern can be more useful than an isolated error message.&lt;/p&gt;

&lt;p&gt;A system that can retrieve related modules, prior feature work, and established project conventions may provide a stronger starting point for the Agent.&lt;/p&gt;

&lt;h2&gt;
  
  
  19. What Bug Fix Tasks May Need
&lt;/h2&gt;

&lt;p&gt;Bug Fix work often asks for another kind of history.&lt;/p&gt;

&lt;p&gt;The useful evidence may include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;error messages;&lt;/li&gt;
&lt;li&gt;failing tests;&lt;/li&gt;
&lt;li&gt;stack traces;&lt;/li&gt;
&lt;li&gt;affected files;&lt;/li&gt;
&lt;li&gt;prior failed attempts;&lt;/li&gt;
&lt;li&gt;earlier bug reports;&lt;/li&gt;
&lt;li&gt;previous fixes;&lt;/li&gt;
&lt;li&gt;and the verification process that confirmed a repair.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The question is often not:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;How should this repository generally implement a feature?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;It is:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Where has this failure appeared before, what did people try, and which path actually worked?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;A Bug Fix memory system may therefore benefit from more precise retrieval of diagnostics and local change history.&lt;/p&gt;

&lt;p&gt;It may need to find the relevant function, exception signature, test failure, or prior patch with much higher specificity.&lt;/p&gt;

&lt;p&gt;This may help explain why systems with similar overall Task Solve rates can differ noticeably when New Feature and Bug Fix tasks are separated.&lt;/p&gt;

&lt;h2&gt;
  
  
  20. Coding Memory Is Task-Conditioned Memory
&lt;/h2&gt;

&lt;p&gt;This leads to a broader conclusion.&lt;/p&gt;

&lt;p&gt;There may not be one universally optimal Coding Memory.&lt;/p&gt;

&lt;p&gt;The right retrieval strategy may depend on the task.&lt;/p&gt;

&lt;p&gt;A New Feature task may need:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;architectural context;&lt;/li&gt;
&lt;li&gt;reusable patterns;&lt;/li&gt;
&lt;li&gt;related implementation examples;&lt;/li&gt;
&lt;li&gt;and project conventions.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A Bug Fix task may need:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;diagnostic evidence;&lt;/li&gt;
&lt;li&gt;error-specific history;&lt;/li&gt;
&lt;li&gt;local modifications;&lt;/li&gt;
&lt;li&gt;failed attempts;&lt;/li&gt;
&lt;li&gt;and validation traces.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A general-purpose Coding Memory system may eventually need to recognize which kind of task it is facing before deciding:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;what to retrieve;&lt;/li&gt;
&lt;li&gt;how much context to return;&lt;/li&gt;
&lt;li&gt;whether to prioritize broad architectural examples or narrow failure evidence;&lt;/li&gt;
&lt;li&gt;and whether a reusable procedure is more valuable than a raw historical record.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is a harder problem than simply searching a repository history.&lt;/p&gt;

&lt;p&gt;It is a problem of matching the shape of memory to the shape of work.&lt;/p&gt;

&lt;h2&gt;
  
  
  21. From Retrieval Quality to Engineering Outcomes
&lt;/h2&gt;

&lt;p&gt;The first AML Coding Memory leaderboard moves memory evaluation forward in an important way.&lt;/p&gt;

&lt;p&gt;It does not stop at asking whether an Agent can remember the past.&lt;/p&gt;

&lt;p&gt;It asks whether the past changes what the Agent can accomplish.&lt;/p&gt;

&lt;p&gt;A memory system may look impressive if it stores rich trajectories, builds structured records, or retrieves semantically similar text.&lt;/p&gt;

&lt;p&gt;But these capabilities matter only if they improve the next engineering decision.&lt;/p&gt;

&lt;p&gt;Can the Agent locate the correct part of the repository more quickly?&lt;/p&gt;

&lt;p&gt;Can it avoid repeating a failed attempt?&lt;/p&gt;

&lt;p&gt;Can it reuse an implementation pattern that was already validated?&lt;/p&gt;

&lt;p&gt;Can it understand why a previous fix worked?&lt;/p&gt;

&lt;p&gt;Can it add the right tests?&lt;/p&gt;

&lt;p&gt;Can it solve the current task with fewer unnecessary steps?&lt;/p&gt;

&lt;p&gt;These are the questions that turn memory from a context store into engineering infrastructure.&lt;/p&gt;

&lt;h2&gt;
  
  
  22. From “Remembering the Past” to “Reducing Repeated Trial and Error”
&lt;/h2&gt;

&lt;p&gt;The first Coding Memory results do not yet show that one technical route has become the definitive answer.&lt;/p&gt;

&lt;p&gt;The leading industry score was &lt;strong&gt;62.00%&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;The leading open-source tier reached &lt;strong&gt;52.67%&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Both commercial and open-source systems have substantial room to improve.&lt;/p&gt;

&lt;p&gt;But the field has already moved beyond a narrower view of memory.&lt;/p&gt;

&lt;p&gt;Memory is no longer only about preserving prior interactions.&lt;/p&gt;

&lt;p&gt;It is becoming a way to reduce repeated trial and error.&lt;/p&gt;

&lt;p&gt;A useful Coding Memory system should not merely tell an Agent:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Here is something related that happened before.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;It should help the Agent understand:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Here is the past experience that matters for this task.&lt;br&gt;&lt;br&gt;
Here is the relevant implementation, failure, or procedure.&lt;br&gt;&lt;br&gt;
Here is the context needed to use it correctly.&lt;br&gt;&lt;br&gt;
And here is the evidence that allows you to verify it.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  23. The Second Agent Memory Challenge Opens Soon
&lt;/h2&gt;

&lt;p&gt;The first AML Coding Memory results showed both meaningful progress and major open questions.&lt;/p&gt;

&lt;p&gt;Industrial systems have begun to show a visible separation at the top of the ranking.&lt;/p&gt;

&lt;p&gt;Open-source methods remain highly competitive, but the leading systems are still closely grouped.&lt;/p&gt;

&lt;p&gt;Raw-history retrieval, code-aware hybrid search, session restoration, and reusable procedure memory are all active directions.&lt;/p&gt;

&lt;p&gt;The next question is not simply:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Which system can retrieve more history?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;It is:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Can Agent Memory become more task-aware, more reusable, and more reliable across real long-term engineering work?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The &lt;strong&gt;Second Agent Memory Challenge&lt;/strong&gt; opens on &lt;strong&gt;September 20, 2026&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;This cycle includes three tracks:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Textual Memory&lt;/strong&gt; — long-horizon conversation retrieval, temporal reasoning, and user-profile alignment&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Coding Memory&lt;/strong&gt; — development-context retrieval for real software-engineering tasks&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Multimodal Memory&lt;/strong&gt; — cross-modal memory association across text, images, audio, and video&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Each track includes both an &lt;strong&gt;Open-Source Methods Ranking&lt;/strong&gt; and an &lt;strong&gt;Industry Systems Ranking&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;The challenge is globally open to universities, research institutions, companies, open-source teams, and individual developers. There is no registration fee.&lt;/p&gt;

&lt;p&gt;The open-source ranking includes a total prize pool of &lt;strong&gt;RMB 150,000&lt;/strong&gt;, with awards including:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;First Prize: RMB 20,000&lt;/li&gt;
&lt;li&gt;Second Prize: RMB 8,000&lt;/li&gt;
&lt;li&gt;Third Prize: RMB 3,000&lt;/li&gt;
&lt;li&gt;Best Technical Innovation Award: RMB 5,000&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Important dates:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Registration and submission entry opens: &lt;strong&gt;September 20, 2026, 00:00&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Rolling evaluation period: &lt;strong&gt;September 20 – October 31&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Submission deadline: &lt;strong&gt;October 31, 2026, 23:59&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Evaluation queue closes: &lt;strong&gt;November 4, 2026, 23:59&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Results planned for release: &lt;strong&gt;mid-November 2026&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Each participant may initiate up to two full official evaluations.&lt;/p&gt;

&lt;p&gt;Once evaluation begins, the submitted version is frozen. The platform then evaluates the system automatically through the standardized Add/Search interface.&lt;/p&gt;

&lt;p&gt;Whether you are building a memory layer for conversational Agents, Coding Agents, or multimodal systems, the second AML cycle is an opportunity to test what your architecture can contribute under a shared and reproducible evaluation setting.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Registration opens on September 20. We look forward to seeing what the next generation of Agent Memory systems can do.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;More information:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://mp.weixin.qq.com/s?__biz=MzcwOTM5MjU5OA==&amp;amp;mid=2247483788&amp;amp;idx=1&amp;amp;sn=05b1e0c52ab185fe3330361aacbef351&amp;amp;scene=21#wechat_redirect" rel="noopener noreferrer"&gt;https://mp.weixin.qq.com/s?__biz=MzcwOTM5MjU5OA==&amp;amp;mid=2247483788&amp;amp;idx=1&amp;amp;sn=05b1e0c52ab185fe3330361aacbef351&amp;amp;scene=21#wechat_redirect&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  AML
&lt;/h2&gt;

&lt;p&gt;Agent Memory Leaderboard&lt;br&gt;&lt;br&gt;
&lt;a href="https://agentmemoryleaderboard.ai/" rel="noopener noreferrer"&gt;https://agentmemoryleaderboard.ai/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Leaderboard&lt;br&gt;&lt;br&gt;
&lt;a href="https://huggingface.co/spaces/agent-memory-leaderboard/leaderboard" rel="noopener noreferrer"&gt;https://huggingface.co/spaces/agent-memory-leaderboard/leaderboard&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Content Notice
&lt;/h2&gt;

&lt;p&gt;This article is based on publicly available system materials and the first-cycle AML Coding Memory leaderboard results. It reflects an analytical interpretation of the systems discussed and does not represent an official technical recommendation from AML.&lt;/p&gt;

&lt;p&gt;Scores apply only to the referenced evaluation cycle, track, submitted system version, and official leaderboard release. They should not be interpreted as guarantees of performance in every software-engineering scenario.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>programming</category>
      <category>devops</category>
      <category>opensource</category>
    </item>
    <item>
      <title>From “Deciding” to “Retrieving”: How FlowGrid Turns Project History into Agent Memory Evidence</title>
      <dc:creator>Agent Memory Leaderboard</dc:creator>
      <pubDate>Wed, 16 Sep 2026 03:27:44 +0000</pubDate>
      <link>https://dev.to/aml-/from-deciding-to-retrieving-how-flowgrid-turns-project-history-into-agent-memory-evidence-5eid</link>
      <guid>https://dev.to/aml-/from-deciding-to-retrieving-how-flowgrid-turns-project-history-into-agent-memory-evidence-5eid</guid>
      <description>&lt;p&gt;FlowGrid AML Retriever ranked #8 on the first AML Open Leaderboard with an Overall Score of 43.98.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;But what makes its approach interesting?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Many Agent Memory systems begin with a familiar question:&lt;/p&gt;

&lt;p&gt;Given the current query, how can an Agent retrieve the most relevant past information?&lt;/p&gt;

&lt;p&gt;FlowGrid begins one step earlier.&lt;/p&gt;

&lt;p&gt;Before a system can retrieve useful memory, someone needs to decide what counts as a decision, what changed afterward, what remains unresolved, and where the supporting evidence came from.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Its original form was not a vector database or a memory API.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;It was a Markdown decision log written for people.&lt;/p&gt;

&lt;p&gt;That starting point shaped the system’s core idea:&lt;/p&gt;

&lt;p&gt;Agent Memory should not only preserve what was said. It should preserve how project judgments were made, what evidence supported them, and how those judgments changed over time.&lt;/p&gt;

&lt;p&gt;In its v1.0 submission to the first Agent Memory Challenge, FlowGrid AML Retriever turned this philosophy into a lightweight Add/Search memory service.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;It preserved original messages, created multiple retrieval views, combined deterministic retrieval signals, and returned traceable evidence rather than final answers.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The result was a deliberately constrained system:&lt;/p&gt;

&lt;p&gt;The retriever should find evidence.&lt;br&gt;&lt;br&gt;
The answer model should reason over evidence.&lt;br&gt;&lt;br&gt;
Neither should silently replace the historical record.&lt;/p&gt;

&lt;p&gt;After the competition, the project continued as FlowGrid Agent Memory, where the original retrieval foundation became part of a broader system for memory states, authorization, replacement, deletion, and minimal-context compilation.&lt;/p&gt;

&lt;p&gt;But the competition entry remains useful as a focused case study:&lt;/p&gt;

&lt;p&gt;What happens when a human-readable project decision log becomes an Agent Memory retriever?&lt;/p&gt;

&lt;h2&gt;
  
  
  1. The Core Idea: Memory Is More Than Stored Facts
&lt;/h2&gt;

&lt;p&gt;Consider a familiar project scenario.&lt;/p&gt;

&lt;p&gt;A team first records:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;The release date is August 10.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;A few days later, a new note says:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;The release date has moved to August 14 because testing needs four more days.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Later, an Agent is asked:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;What is the current release date?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;A basic memory system may retrieve one date.&lt;/p&gt;

&lt;p&gt;A stronger system may retrieve both dates.&lt;/p&gt;

&lt;p&gt;But a useful project-memory system also needs to preserve:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;which statement came later;&lt;/li&gt;
&lt;li&gt;whether the later statement was actually an update;&lt;/li&gt;
&lt;li&gt;why the change happened;&lt;/li&gt;
&lt;li&gt;where both statements came from;&lt;/li&gt;
&lt;li&gt;and whether the older record should remain available for audit.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is the distinction FlowGrid starts from.&lt;/p&gt;

&lt;p&gt;Its memory system is not designed only to retrieve a sentence that looks relevant.&lt;/p&gt;

&lt;p&gt;It is designed to return historical evidence that can still be inspected when a project decision needs to be understood, challenged, or revised.&lt;/p&gt;

&lt;p&gt;Instead of asking:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“What should the system remember?”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;FlowGrid asks:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“What record would let a person or an Agent understand why the current project state exists?”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  2. The Starting Point: A Markdown Decision Log
&lt;/h2&gt;

&lt;p&gt;Before FlowGrid became an AML submission, it was a Markdown decision log.&lt;/p&gt;

&lt;p&gt;The log recorded project judgments in a human-readable format:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;decision status;&lt;/li&gt;
&lt;li&gt;project stage;&lt;/li&gt;
&lt;li&gt;background;&lt;/li&gt;
&lt;li&gt;core question;&lt;/li&gt;
&lt;li&gt;candidate options;&lt;/li&gt;
&lt;li&gt;final choice;&lt;/li&gt;
&lt;li&gt;reasons for rejecting alternatives;&lt;/li&gt;
&lt;li&gt;risk assessment;&lt;/li&gt;
&lt;li&gt;follow-up validation;&lt;/li&gt;
&lt;li&gt;and review entry points.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This mattered for a simple reason.&lt;/p&gt;

&lt;p&gt;A project is not only a collection of facts.&lt;/p&gt;

&lt;p&gt;It is a sequence of choices made under uncertainty.&lt;/p&gt;

&lt;p&gt;A Markdown file can be opened by a human, reviewed in Git, compared across commits, and read even when no Agent is available.&lt;/p&gt;

&lt;p&gt;Someone can see what the team decided, which alternatives existed, why a direction was chosen, and what conditions would trigger reconsideration.&lt;/p&gt;

&lt;p&gt;As projects and Agent collaboration expanded, this single-file approach encountered predictable limits.&lt;/p&gt;

&lt;p&gt;Decisions became distributed across messages, sessions, and files.&lt;/p&gt;

&lt;p&gt;Older states could remain in context after new information appeared.&lt;/p&gt;

&lt;p&gt;New evidence could fail to reach the task that needed it.&lt;/p&gt;

&lt;p&gt;FlowGrid gradually added source tracing, temporal states, conflict preservation, and retrieval.&lt;/p&gt;

&lt;p&gt;The AML branch then reduced this broader system into the competition’s required Add and Search interfaces.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. From Human Decision Records to an AML Retriever
&lt;/h2&gt;

&lt;p&gt;AML separates memory retrieval from answer generation.&lt;/p&gt;

&lt;p&gt;The memory system receives conversation history through Add.&lt;/p&gt;

&lt;p&gt;Later, it receives a query through Search.&lt;/p&gt;

&lt;p&gt;The system returns retrieved memory evidence.&lt;/p&gt;

&lt;p&gt;A standardized answer model then uses that evidence to generate the final answer.&lt;/p&gt;

&lt;p&gt;FlowGrid AML Retriever operates within exactly that boundary.&lt;/p&gt;

&lt;p&gt;It does not generate the final answer.&lt;/p&gt;

&lt;p&gt;It does not claim that a derived summary is more authoritative than the original conversation.&lt;/p&gt;

&lt;p&gt;It stores historical messages, retrieves relevant evidence, and returns enough metadata for the next stage to understand where the evidence came from.&lt;/p&gt;

&lt;p&gt;This separation allows three different questions to be evaluated independently:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Was the memory written correctly?&lt;/li&gt;
&lt;li&gt;Was the right historical evidence retrieved?&lt;/li&gt;
&lt;li&gt;Did the answer model reason correctly over that evidence?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For FlowGrid, this boundary is not just an evaluation requirement.&lt;/p&gt;

&lt;p&gt;It is part of the system’s reliability model.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Add and Search: A Small API with Strict Guarantees
&lt;/h2&gt;

&lt;p&gt;FlowGrid AML Retriever exposes two core operations.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;Add&lt;/code&gt; receives user, session, and message data.&lt;/p&gt;

&lt;p&gt;The system returns success only after synchronous persistence is complete. Once the request succeeds, the newly written message is already searchable.&lt;/p&gt;

&lt;p&gt;Repeated requests with the same &lt;code&gt;request_id&lt;/code&gt; and &lt;code&gt;user_id&lt;/code&gt; are handled idempotently. This prevents a network retry from writing the same memory twice.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;Search&lt;/code&gt; is always restricted to one exact &lt;code&gt;user_id&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;It returns memory evidence ranked by relevance.&lt;/p&gt;

&lt;p&gt;The official platform then performs Answer and Eval.&lt;/p&gt;

&lt;p&gt;These details may sound operational rather than algorithmic. But memory reliability depends on them.&lt;/p&gt;

&lt;p&gt;A system needs to answer more than:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Did I retrieve useful information?”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;It also needs to answer:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Did I retrieve it from the correct user?”&lt;br&gt;&lt;br&gt;
“Was the message already committed when I said it was stored?”&lt;br&gt;&lt;br&gt;
“Did a retry create duplicate memory?”&lt;br&gt;&lt;br&gt;
“Can the returned result be traced back to a source?”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;For FlowGrid, these are part of the same evidence story.&lt;/p&gt;

&lt;h2&gt;
  
  
  5. Preserve the Original Message
&lt;/h2&gt;

&lt;p&gt;Long conversations rarely arrive in a retrieval-friendly form.&lt;/p&gt;

&lt;p&gt;Some questions need one direct fact.&lt;/p&gt;

&lt;p&gt;Some require two or three adjacent turns.&lt;/p&gt;

&lt;p&gt;Others depend on seeing conditions, actions, and outcomes together.&lt;/p&gt;

&lt;p&gt;If a system only retrieves isolated messages, pronouns, causal explanations, and time conditions may become detached from the statement they qualify.&lt;/p&gt;

&lt;p&gt;If it stores only large summaries, names, numbers, dates, and exact phrasing can be diluted.&lt;/p&gt;

&lt;p&gt;FlowGrid therefore preserves every original message.&lt;/p&gt;

&lt;p&gt;The original record remains the source of evidence.&lt;/p&gt;

&lt;p&gt;Derived retrieval views may make the record easier to find. They do not replace it.&lt;/p&gt;

&lt;p&gt;This produces a basic rule:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Retrieval representations can change. Historical evidence should remain recoverable.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  6. Three Retrieval Views, One Evidence Source
&lt;/h2&gt;

&lt;p&gt;FlowGrid creates three retrieval views from the same conversation history.&lt;/p&gt;

&lt;h3&gt;
  
  
  Single-message view
&lt;/h3&gt;

&lt;p&gt;This view helps locate direct statements, names, numbers, and dates.&lt;/p&gt;

&lt;p&gt;It is useful when the answer is explicitly stated in one message.&lt;/p&gt;

&lt;h3&gt;
  
  
  Sliding-window view
&lt;/h3&gt;

&lt;p&gt;This view includes adjacent dialogue turns.&lt;/p&gt;

&lt;p&gt;It helps restore references, conditions, and supplementary information that a single message may not contain on its own.&lt;/p&gt;

&lt;h3&gt;
  
  
  Session-segment view
&lt;/h3&gt;

&lt;p&gt;This view preserves a larger local event structure.&lt;/p&gt;

&lt;p&gt;It is useful when a question depends on seeing a sequence of related statements within the same conversation segment.&lt;/p&gt;

&lt;p&gt;The important point is that these views change retrieval granularity, not evidence ownership.&lt;/p&gt;

&lt;p&gt;Each derived view retains &lt;code&gt;source_message_ids&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;The system can always return from a window or session segment to the original messages that created it.&lt;/p&gt;

&lt;p&gt;Conceptually:&lt;/p&gt;

&lt;p&gt;Original Message&lt;br&gt;&lt;br&gt;
↓&lt;br&gt;&lt;br&gt;
Single Message / Sliding Window / Session Segment&lt;br&gt;&lt;br&gt;
↓&lt;br&gt;&lt;br&gt;
Retrieved Candidate&lt;br&gt;&lt;br&gt;
↓&lt;br&gt;&lt;br&gt;
Source Message IDs&lt;br&gt;&lt;br&gt;
↓&lt;br&gt;&lt;br&gt;
Original Evidence&lt;/p&gt;

&lt;p&gt;This avoids a common memory-system failure mode:&lt;/p&gt;

&lt;p&gt;Derived representations become easy to retrieve but difficult to verify.&lt;/p&gt;

&lt;h2&gt;
  
  
  7. Why Multiple Views Matter
&lt;/h2&gt;

&lt;p&gt;Suppose a user says:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Maya is planning the launch.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Later:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;She wants the release moved because the final test is incomplete.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;And later still:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;What changed about the launch schedule?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;A single-message search may find the release change.&lt;/p&gt;

&lt;p&gt;But it may not clearly resolve who “she” refers to.&lt;/p&gt;

&lt;p&gt;A larger session segment may preserve the identity, the proposed change, and the reason together.&lt;/p&gt;

&lt;p&gt;At the same time, a broad segment can be less precise than a single message when the question asks for a date, a number, or a direct statement.&lt;/p&gt;

&lt;p&gt;No one retrieval granularity works for every question.&lt;/p&gt;

&lt;p&gt;FlowGrid’s answer is not to choose one universal memory unit.&lt;/p&gt;

&lt;p&gt;It is to keep several views available while binding them all to the same underlying historical record.&lt;/p&gt;

&lt;h2&gt;
  
  
  8. Deterministic Hybrid Retrieval
&lt;/h2&gt;

&lt;p&gt;FlowGrid v1.0’s default retrieval path does not use embeddings or external LLM calls.&lt;/p&gt;

&lt;p&gt;It relies on Python’s standard library, SQLite, and FTS5.&lt;/p&gt;

&lt;p&gt;The system combines several interpretable signals to address common failures in long-conversation retrieval.&lt;/p&gt;

&lt;p&gt;SQLite FTS5 provides the lexical retrieval foundation.&lt;/p&gt;

&lt;p&gt;English, numbers, and dates are handled as lexical units.&lt;/p&gt;

&lt;p&gt;For Chinese text, character unigrams and bigrams help compensate for the limitations of word segmentation.&lt;/p&gt;

&lt;p&gt;A lexical approach has clear limits.&lt;/p&gt;

&lt;p&gt;It struggles with paraphrases that are semantically similar but use very different wording.&lt;/p&gt;

&lt;p&gt;But it remains strong for proper nouns, dates, numbers, direct quotations, and exact terms from the original conversation.&lt;/p&gt;

&lt;p&gt;For many project-memory tasks, those details matter.&lt;/p&gt;

&lt;h2&gt;
  
  
  9. Retrieval Signals Beyond Keywords
&lt;/h2&gt;

&lt;p&gt;After initial candidate retrieval, FlowGrid calculates additional deterministic signals.&lt;/p&gt;

&lt;p&gt;These include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;original-text substring matches;&lt;/li&gt;
&lt;li&gt;term coverage;&lt;/li&gt;
&lt;li&gt;named entities;&lt;/li&gt;
&lt;li&gt;numbers;&lt;/li&gt;
&lt;li&gt;dates;&lt;/li&gt;
&lt;li&gt;answer options;&lt;/li&gt;
&lt;li&gt;temporal signals;&lt;/li&gt;
&lt;li&gt;and adjacent-context signals.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For multiple-choice queries, the answer options can also participate in retrieval.&lt;/p&gt;

&lt;p&gt;This gives the system extra clues for people, locations, and candidate facts.&lt;/p&gt;

&lt;p&gt;The point is not to claim that every signal is universally useful.&lt;/p&gt;

&lt;p&gt;The point is to reduce dependence on one signal alone.&lt;/p&gt;

&lt;p&gt;A keyword match may locate a date.&lt;/p&gt;

&lt;p&gt;An entity signal may recover a person.&lt;/p&gt;

&lt;p&gt;A window view may restore the condition surrounding that person.&lt;/p&gt;

&lt;p&gt;A temporal signal may help distinguish an older statement from a later one.&lt;/p&gt;

&lt;h2&gt;
  
  
  10. Fusion at the Rank Level
&lt;/h2&gt;

&lt;p&gt;Different retrieval methods produce scores on different scales.&lt;/p&gt;

&lt;p&gt;A BM25 score is not directly comparable to a custom entity-match score or a temporal feature score.&lt;/p&gt;

&lt;p&gt;FlowGrid avoids treating these values as if they meant the same thing.&lt;/p&gt;

&lt;p&gt;Instead, BM25 ranking and deterministic feature ranking enter weighted Reciprocal Rank Fusion.&lt;/p&gt;

&lt;p&gt;The fusion happens at the ranking level.&lt;/p&gt;

&lt;p&gt;This makes it possible to combine multiple retrieval paths without forcing their raw scores into a shared meaning they do not naturally have.&lt;/p&gt;

&lt;p&gt;After fusion, duplicate views and evidence completely covered by stronger results can be removed.&lt;/p&gt;

&lt;p&gt;This creates space for more independent sources in the final evidence set.&lt;/p&gt;

&lt;p&gt;The downstream model receives not a single opaque score, but a ranked collection of traceable historical records.&lt;/p&gt;

&lt;h2&gt;
  
  
  11. The Competition Result
&lt;/h2&gt;

&lt;p&gt;In the first Agent Memory Leaderboard academic textual-memory ranking, FlowGrid_AML_Retriever v1.0 achieved:&lt;/p&gt;

&lt;p&gt;Rank #8&lt;br&gt;&lt;br&gt;
Overall Score: 43.98&lt;/p&gt;

&lt;p&gt;The first-place score was 45.06.&lt;/p&gt;

&lt;p&gt;The gap was 1.08 points.&lt;/p&gt;

&lt;p&gt;FlowGrid did not rank first in any individual category.&lt;/p&gt;

&lt;p&gt;Its scores included:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Explicit fact recall: 55.59&lt;/li&gt;
&lt;li&gt;Relational and multi-hop compositional reasoning: 45.19&lt;/li&gt;
&lt;li&gt;Personalization and care: 51.29&lt;/li&gt;
&lt;li&gt;Temporal and event-sequence reasoning: 21.13&lt;/li&gt;
&lt;li&gt;Memory governance: 27.86&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The latter two were the system’s relative weaknesses.&lt;/p&gt;

&lt;p&gt;This result is interesting because the default submission did not rely on an external model call or a heavyweight retrieval stack.&lt;/p&gt;

&lt;p&gt;Its competitiveness came from preserving evidence, using multiple views, combining complementary signals, and keeping every derivation connected to source messages.&lt;/p&gt;

&lt;h2&gt;
  
  
  12. A State Update Is Not Just a Later Timestamp
&lt;/h2&gt;

&lt;p&gt;Temporal memory is one of the hardest parts of long-term Agent Memory.&lt;/p&gt;

&lt;p&gt;Return to the release-date example.&lt;/p&gt;

&lt;p&gt;The system can find both August 10 and August 14.&lt;/p&gt;

&lt;p&gt;But a later message is not automatically a replacement for an earlier one.&lt;/p&gt;

&lt;p&gt;A newer message about the same project may be unrelated.&lt;/p&gt;

&lt;p&gt;It may mention a date in a different context.&lt;/p&gt;

&lt;p&gt;It may discuss a possible plan rather than confirm an update.&lt;/p&gt;

&lt;p&gt;A naive strategy such as “always down-rank old values” can improve some temporal questions while damaging others.&lt;/p&gt;

&lt;p&gt;FlowGrid’s post-competition experiments showed exactly this.&lt;/p&gt;

&lt;p&gt;A more aggressive old-value penalty improved part of the temporal behavior but reduced overall MRR.&lt;/p&gt;

&lt;p&gt;The reason was concrete:&lt;/p&gt;

&lt;p&gt;Topic similarity plus recency was not enough to prove a state update.&lt;/p&gt;

&lt;h2&gt;
  
  
  13. Protected State-Update Reranking
&lt;/h2&gt;

&lt;p&gt;FlowGrid v1.1 introduced a narrower post-competition mechanism: protected state-update reranking.&lt;/p&gt;

&lt;p&gt;The system adjusts ranking only when three conditions hold:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;the query has temporal intent;&lt;/li&gt;
&lt;li&gt;the old and new evidence are highly related;&lt;/li&gt;
&lt;li&gt;the newer message contains explicit update, correction, delay, or invalidation semantics.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Only then does the system slightly promote the newer evidence and lower the older one.&lt;/p&gt;

&lt;p&gt;The older record is not deleted.&lt;/p&gt;

&lt;p&gt;It remains preserved and retrievable.&lt;/p&gt;

&lt;p&gt;This design reflects a broader principle:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;A system should not infer a new state merely because a similar statement appeared later.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The mechanism is intentionally limited.&lt;/p&gt;

&lt;p&gt;When the evidence is insufficient, the system keeps the original ranking.&lt;/p&gt;

&lt;h2&gt;
  
  
  14. Governance for Humans and Governance for Models
&lt;/h2&gt;

&lt;p&gt;FlowGrid’s original governance problem was larger than an AML retrieval benchmark.&lt;/p&gt;

&lt;p&gt;A project owner may need to know:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Which state is currently adopted?&lt;/li&gt;
&lt;li&gt;Who changed it?&lt;/li&gt;
&lt;li&gt;When did it change?&lt;/li&gt;
&lt;li&gt;Why was the previous state preserved?&lt;/li&gt;
&lt;li&gt;Is a conflict resolved?&lt;/li&gt;
&lt;li&gt;Can the team recover context if the current judgment turns out to be wrong?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A standardized answer model has a narrower need.&lt;/p&gt;

&lt;p&gt;If it sees both old and new timestamped evidence, it may be able to infer the current state.&lt;/p&gt;

&lt;p&gt;But a leaderboard result raises an important question:&lt;/p&gt;

&lt;p&gt;Does storing more governance metadata actually improve the evidence returned to the answer model?&lt;/p&gt;

&lt;p&gt;Not always.&lt;/p&gt;

&lt;p&gt;A system may have many internal state labels while still returning weak evidence.&lt;/p&gt;

&lt;p&gt;An outdated value may remain influential as long as it appears in Top K.&lt;/p&gt;

&lt;p&gt;FlowGrid’s post-competition response is to treat governance mechanisms as testable interventions rather than automatic improvements.&lt;/p&gt;

&lt;p&gt;A mechanism should enter the default path only if it can show:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;what error class it repairs;&lt;/li&gt;
&lt;li&gt;what other queries it might harm;&lt;/li&gt;
&lt;li&gt;and whether it meaningfully changes the returned evidence set.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  15. Official Results and Local Experiments Are Different Evidence
&lt;/h2&gt;

&lt;p&gt;The official AML score of 43.98 and the #8 rank apply to FlowGrid_AML_Retriever v1.0.&lt;/p&gt;

&lt;p&gt;They do not apply automatically to subsequent versions.&lt;/p&gt;

&lt;p&gt;The public FlowGrid Agent Memory repository includes an AML Add/Search adaptation layer at v1.1.0, including protected state-update reranking.&lt;/p&gt;

&lt;p&gt;That newer mechanism does not yet have a new official AML leaderboard result.&lt;/p&gt;

&lt;p&gt;Its metrics come from deterministic synthetic experiments designed for local version comparison.&lt;/p&gt;

&lt;p&gt;They should not be presented as a new AML overall score.&lt;/p&gt;

&lt;p&gt;In local paired experiments using classic, medium, and mixed settings, three fixed seeds, and &lt;code&gt;top_k 100&lt;/code&gt;, the v1.0 baseline achieved:&lt;/p&gt;

&lt;p&gt;Recall@20: 0.9948&lt;br&gt;&lt;br&gt;
Recall@100: 1.0000&lt;br&gt;&lt;br&gt;
MRR: 0.6728&lt;/p&gt;

&lt;p&gt;With protected state updates, v1.1 maintained the same Recall@20 and Recall@100 while increasing MRR to 0.6948.&lt;/p&gt;

&lt;p&gt;A more aggressive temporal strategy could raise MRR to around 0.7040.&lt;/p&gt;

&lt;p&gt;However, it reduced Recall@20 in one seed from 0.9870 to 0.9844.&lt;/p&gt;

&lt;p&gt;FlowGrid did not choose that setting.&lt;/p&gt;

&lt;p&gt;The system prioritizes stable high recall rather than exchanging recall robustness for a small increase near the top of the ranking.&lt;/p&gt;

&lt;h2&gt;
  
  
  16. What the Local Experiments Actually Show
&lt;/h2&gt;

&lt;p&gt;The local experiments support a limited conclusion.&lt;/p&gt;

&lt;p&gt;Under the current synthetic evaluation protocol, explicit update semantics can reduce errors introduced by blunt temporal reranking.&lt;/p&gt;

&lt;p&gt;They do not prove that the same gain will appear on AML’s hidden data.&lt;/p&gt;

&lt;p&gt;This distinction is important.&lt;/p&gt;

&lt;p&gt;A good Agent Memory research process should separate:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;official leaderboard validation;&lt;/li&gt;
&lt;li&gt;local paired experiments;&lt;/li&gt;
&lt;li&gt;diagnostic experiments;&lt;/li&gt;
&lt;li&gt;and product-engineering acceptance checks.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These forms of evidence answer different questions.&lt;/p&gt;

&lt;p&gt;The leaderboard tests a submitted version under a shared evaluation contract.&lt;/p&gt;

&lt;p&gt;Local experiments compare alternative mechanisms under controlled conditions.&lt;/p&gt;

&lt;p&gt;Diagnostic experiments identify why a specific behavior occurs.&lt;/p&gt;

&lt;p&gt;Engineering checks determine whether a feature is stable enough for a product path.&lt;/p&gt;

&lt;p&gt;Conflating them makes memory research less trustworthy, not more.&lt;/p&gt;

&lt;h2&gt;
  
  
  17. Where Rank #8 Came From
&lt;/h2&gt;

&lt;p&gt;FlowGrid’s result did not come from a single decisive model component.&lt;/p&gt;

&lt;p&gt;It reduced several common failure modes at once.&lt;/p&gt;

&lt;p&gt;Original messages were preserved, so writing did not lose detail through summarization or fact extraction.&lt;/p&gt;

&lt;p&gt;Single messages, windows, and session segments provided multiple retrieval scales.&lt;/p&gt;

&lt;p&gt;Chinese character fragments, entities, dates, numbers, and answer options supplemented baseline lexical retrieval.&lt;/p&gt;

&lt;p&gt;Derived views remained bound to original messages.&lt;/p&gt;

&lt;p&gt;Results could be verified and deleted at the user level.&lt;/p&gt;

&lt;p&gt;The default path used no third-party Python dependency and no external model call.&lt;/p&gt;

&lt;p&gt;Add, Search, idempotency, user isolation, and write-then-search behavior could all be reproduced deterministically.&lt;/p&gt;

&lt;p&gt;This is not a claim that lightweight lexical retrieval solves Agent Memory.&lt;/p&gt;

&lt;p&gt;It is a demonstration that evidence-first retrieval can remain competitive without making every stage dependent on external models.&lt;/p&gt;

&lt;h2&gt;
  
  
  18. The Trade-Offs Are Real
&lt;/h2&gt;

&lt;p&gt;FlowGrid’s limitations are as clear as its strengths.&lt;/p&gt;

&lt;p&gt;A mostly lexical system has limited ability to recover paraphrases with large semantic distance from the original statement.&lt;/p&gt;

&lt;p&gt;Temporal paraphrases can be especially difficult.&lt;/p&gt;

&lt;p&gt;SQLite is well suited to a lightweight single-node implementation, but it is not itself a distributed memory-service architecture.&lt;/p&gt;

&lt;p&gt;Soft reranking can improve evidence ordering, but it cannot replace complete state resolution.&lt;/p&gt;

&lt;p&gt;The system can preserve conflicting history.&lt;/p&gt;

&lt;p&gt;It cannot automatically decide every real-world conflict without a stronger policy, additional evidence, or human authorization.&lt;/p&gt;

&lt;p&gt;Rank #8 shows that the approach was competitive in the first AML leaderboard.&lt;/p&gt;

&lt;p&gt;It does not show that long-term memory governance is finished.&lt;/p&gt;

&lt;h2&gt;
  
  
  19. After AML: FlowGrid Agent Memory
&lt;/h2&gt;

&lt;p&gt;After the competition, the project’s main direction shifted toward FlowGrid Agent Memory.&lt;/p&gt;

&lt;p&gt;The AML Add/Search interface remains as a compatibility and evaluation layer.&lt;/p&gt;

&lt;p&gt;The broader product core separates memory into three layers.&lt;/p&gt;

&lt;h3&gt;
  
  
  Raw events
&lt;/h3&gt;

&lt;p&gt;Immutable records of what happened and where the information came from.&lt;/p&gt;

&lt;h3&gt;
  
  
  Candidate memories
&lt;/h3&gt;

&lt;p&gt;Memories proposed by rules or models.&lt;/p&gt;

&lt;p&gt;Candidate, inferred, and unknown states do not automatically become user-confirmed facts.&lt;/p&gt;

&lt;h3&gt;
  
  
  Confirmed current state
&lt;/h3&gt;

&lt;p&gt;Information accepted by a user, project owner, or authorized policy.&lt;/p&gt;

&lt;p&gt;Superseded, rejected, and deleted information does not return to ordinary Agent continuation context.&lt;/p&gt;

&lt;p&gt;However, it can remain available in an authorized audit mode.&lt;/p&gt;

&lt;h2&gt;
  
  
  20. Current State Resolver and Context Compiler
&lt;/h2&gt;

&lt;p&gt;The general-purpose system introduces two core components.&lt;/p&gt;

&lt;p&gt;The Current State Resolver determines what is currently valid.&lt;/p&gt;

&lt;p&gt;The Context Compiler creates the smallest appropriate memory package for a task, based on scope, permissions, and token budget.&lt;/p&gt;

&lt;p&gt;This is a significant shift from a competition retriever.&lt;/p&gt;

&lt;p&gt;A benchmark often asks:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Can the system return relevant evidence?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;A real long-term Agent also needs to ask:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Is this evidence currently active?&lt;br&gt;&lt;br&gt;
Is it authorized for this task?&lt;br&gt;&lt;br&gt;
Does the Agent need raw history, a confirmed state, or both?&lt;br&gt;&lt;br&gt;
How much context should be included?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Models can help extract potential memory.&lt;/p&gt;

&lt;p&gt;But FlowGrid keeps a source-anchor requirement and limits model output to the &lt;code&gt;candidate&lt;/code&gt; stage.&lt;/p&gt;

&lt;p&gt;A model can propose a memory.&lt;/p&gt;

&lt;p&gt;It cannot silently promote its own proposal into confirmed project state.&lt;/p&gt;

&lt;h2&gt;
  
  
  21. From Benchmark Adapter to General Memory Infrastructure
&lt;/h2&gt;

&lt;p&gt;This distinction protects the general-purpose product from becoming a collection of benchmark-specific rules.&lt;/p&gt;

&lt;p&gt;The competition interface belongs in adapters and evaluation configuration.&lt;/p&gt;

&lt;p&gt;The governance core should remain applicable to real projects where memory is not only a retrieval task.&lt;/p&gt;

&lt;p&gt;The next evidence target is therefore not merely another leaderboard score.&lt;/p&gt;

&lt;p&gt;It is whether memory improves continuation across long-running real tasks.&lt;/p&gt;

&lt;p&gt;Can an Agent resume work with less repeated explanation?&lt;/p&gt;

&lt;p&gt;Can it distinguish active project decisions from rejected alternatives?&lt;/p&gt;

&lt;p&gt;Can it retrieve relevant history without reintroducing invalidated context?&lt;/p&gt;

&lt;p&gt;Can a human understand why a memory appeared?&lt;/p&gt;

&lt;p&gt;These are harder questions than retrieving one correct sentence.&lt;/p&gt;

&lt;p&gt;They are also closer to the problems persistent Agents will face in real work.&lt;/p&gt;

&lt;h2&gt;
  
  
  22. From Decision Logs to Evidence Systems
&lt;/h2&gt;

&lt;p&gt;FlowGrid began with a simple human need:&lt;/p&gt;

&lt;p&gt;Keep a readable record of why a project chose one direction over another.&lt;/p&gt;

&lt;p&gt;That led to a Markdown decision log.&lt;/p&gt;

&lt;p&gt;The log then developed source tracing, temporal state, conflict preservation, and retrieval.&lt;/p&gt;

&lt;p&gt;AML Retriever adapted the approach to Add and Search.&lt;/p&gt;

&lt;p&gt;FlowGrid Agent Memory extends the same foundation into raw events, candidate memories, confirmed states, authorization, and minimal context.&lt;/p&gt;

&lt;p&gt;Across these stages, the core principle remains consistent:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Interpretation can evolve. Evidence should remain traceable.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  23. What FlowGrid Adds to the AML Landscape
&lt;/h2&gt;

&lt;p&gt;The first AML leaderboard includes systems that make different architectural choices.&lt;/p&gt;

&lt;p&gt;Some emphasize learned representations.&lt;/p&gt;

&lt;p&gt;Some prioritize structured memory.&lt;/p&gt;

&lt;p&gt;Some focus on retrieval pipelines.&lt;/p&gt;

&lt;p&gt;Some use models heavily during write or search.&lt;/p&gt;

&lt;p&gt;FlowGrid represents a different point in the design space:&lt;/p&gt;

&lt;p&gt;Preserve the original history.&lt;br&gt;&lt;br&gt;
Create multiple retrieval views.&lt;br&gt;&lt;br&gt;
Use deterministic signals where possible.&lt;br&gt;&lt;br&gt;
Return evidence that can be checked.&lt;br&gt;&lt;br&gt;
Keep state updates narrow until they are supported by evaluation.&lt;/p&gt;

&lt;p&gt;Its #8 result does not claim that this is the only correct design.&lt;/p&gt;

&lt;p&gt;It shows that a lightweight, evidence-first retrieval system can compete under a shared benchmark.&lt;/p&gt;

&lt;p&gt;The more interesting contribution may be its path from human-readable decision records to model-facing evidence retrieval.&lt;/p&gt;

&lt;h2&gt;
  
  
  24. The Broader Question for Agent Memory
&lt;/h2&gt;

&lt;p&gt;When an Agent says:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“I remember this.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;What should it mean?&lt;/p&gt;

&lt;p&gt;Should it mean:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“I generated a plausible summary of the past”?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Or should it mean:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Here is the historical evidence I found, where it came from, what changed afterward, and why this record is relevant now”?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;FlowGrid argues for the second interpretation.&lt;/p&gt;

&lt;p&gt;Memory should not become a hidden layer that quietly influences an Agent’s decisions.&lt;/p&gt;

&lt;p&gt;It should become an evidence layer between an Agent’s current reasoning and its historical context.&lt;/p&gt;

&lt;p&gt;That becomes increasingly important as Agents move from short conversations toward long-running projects, persistent collaboration, and decisions with real consequences.&lt;/p&gt;

&lt;h2&gt;
  
  
  25. From “I Remember” to “Here Is the Record”
&lt;/h2&gt;

&lt;p&gt;FlowGrid’s central contribution is not a claim that every project decision can be automatically resolved.&lt;/p&gt;

&lt;p&gt;It is a commitment to keep the record available.&lt;/p&gt;

&lt;p&gt;What was said.&lt;/p&gt;

&lt;p&gt;Where it came from.&lt;/p&gt;

&lt;p&gt;What changed later.&lt;/p&gt;

&lt;p&gt;Which state is currently adopted.&lt;/p&gt;

&lt;p&gt;Why a current judgment should be trusted.&lt;/p&gt;

&lt;p&gt;The first AML result showed that this evidence-retrieval foundation could be competitive.&lt;/p&gt;

&lt;p&gt;The post-competition product direction recognizes that retrieval alone is not enough.&lt;/p&gt;

&lt;p&gt;Long-term Agent Memory also requires state, authority, context control, and the ability for people to inspect the path from history to action.&lt;/p&gt;

&lt;p&gt;A useful Agent Memory system may need to do more than say:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“I remember this.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;It may need to say:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Here is the evidence.”&lt;br&gt;&lt;br&gt;
“Here is where it came from.”&lt;br&gt;&lt;br&gt;
“Here is what changed afterward.”&lt;br&gt;&lt;br&gt;
“And here is why this is the current record.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Thanks to the FlowGrid Team
&lt;/h2&gt;

&lt;p&gt;We would like to thank the FlowGrid team for sharing its system design, post-competition experiments, and broader product direction with the AML technical deep dive series.&lt;/p&gt;

&lt;p&gt;Their work highlights an important dimension of Agent Memory:&lt;/p&gt;

&lt;p&gt;Long-term memory is not only about retrieval quality. It is also about whether the historical path behind a decision remains readable, inspectable, and recoverable.&lt;/p&gt;

&lt;p&gt;The goal of the AML Solution Spotlight series is to make top-performing memory systems easier to understand—not only through leaderboard scores, but through their technical ideas, engineering choices, trade-offs, and unresolved questions.&lt;/p&gt;

&lt;p&gt;More technical deep dives into the first AML leaderboard are coming soon.&lt;/p&gt;

&lt;h2&gt;
  
  
  FlowGrid AML Retriever
&lt;/h2&gt;

&lt;p&gt;Team: Artificial Idiot Research Institute&lt;br&gt;&lt;br&gt;
Project Lead: Lingxiao Du&lt;br&gt;&lt;br&gt;
GitHub: &lt;a href="https://github.com/dlxeva/flowgrid-aml-retriever" rel="noopener noreferrer"&gt;https://github.com/dlxeva/flowgrid-aml-retriever&lt;/a&gt;&lt;br&gt;&lt;br&gt;
Post-competition general product: &lt;a href="https://github.com/dlxeva/flowgrid-agent-memory" rel="noopener noreferrer"&gt;https://github.com/dlxeva/flowgrid-agent-memory&lt;/a&gt;&lt;br&gt;&lt;br&gt;
Website: &lt;a href="https://aizhiz.com/" rel="noopener noreferrer"&gt;https://aizhiz.com/&lt;/a&gt;&lt;br&gt;&lt;br&gt;
X: &lt;a href="https://x.com/dlxeva" rel="noopener noreferrer"&gt;https://x.com/dlxeva&lt;/a&gt;  &lt;/p&gt;

&lt;p&gt;The Second Agent Memory Challenge opens on September 20, 2026.&lt;/p&gt;

&lt;p&gt;This cycle includes three tracks:&lt;/p&gt;

&lt;p&gt;Textual Memory — long-horizon conversation retrieval, temporal reasoning, and user-profile alignment&lt;/p&gt;

&lt;p&gt;Coding Memory — development-context retrieval for real software-engineering tasks&lt;/p&gt;

&lt;p&gt;Multimodal Memory — cross-modal memory association across text, images, audio, and video&lt;/p&gt;

&lt;p&gt;Each track includes both an Open-Source Methods Ranking and an Industry Systems Ranking.&lt;/p&gt;

&lt;p&gt;The challenge is globally open to universities, research institutions, companies, open-source teams, and individual developers. There is no registration fee.&lt;/p&gt;

&lt;p&gt;The open-source ranking includes a total prize pool of RMB 150,000, with awards including:&lt;/p&gt;

&lt;p&gt;First Prize: RMB 20,000&lt;/p&gt;

&lt;p&gt;Second Prize: RMB 8,000&lt;/p&gt;

&lt;p&gt;Third Prize: RMB 3,000&lt;/p&gt;

&lt;p&gt;Best Technical Innovation Award: RMB 5,000&lt;/p&gt;

&lt;p&gt;Important dates:&lt;/p&gt;

&lt;p&gt;Registration and submission entry opens: September 20, 2026, 00:00&lt;/p&gt;

&lt;p&gt;Rolling evaluation period: September 20 – October 31&lt;/p&gt;

&lt;p&gt;Submission deadline: October 31, 2026, 23:59&lt;/p&gt;

&lt;p&gt;Evaluation queue closes: November 4, 2026, 23:59&lt;/p&gt;

&lt;p&gt;Results planned for release: mid-November 2026&lt;/p&gt;

&lt;p&gt;Each participant may initiate up to two full official evaluations.&lt;/p&gt;

&lt;p&gt;Once evaluation begins, the submitted version is frozen. The platform then evaluates the system automatically through the standardized Add/Search interface.&lt;/p&gt;

&lt;p&gt;Whether you are building a memory layer for conversational Agents, Coding Agents, or multimodal systems, the second AML cycle is an opportunity to test what your architecture can contribute under a shared and reproducible evaluation setting.&lt;/p&gt;

&lt;p&gt;Registration opens on September 20. We look forward to seeing what the next generation of Agent Memory systems can do.&lt;/p&gt;

&lt;p&gt;AML&lt;br&gt;
Agent Memory Leaderboard&lt;br&gt;
&lt;a href="https://agentmemoryleaderboard.ai/" rel="noopener noreferrer"&gt;https://agentmemoryleaderboard.ai/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Leaderboard&lt;br&gt;
&lt;a href="https://huggingface.co/spaces/agent-memory-leaderboard/leaderboard" rel="noopener noreferrer"&gt;https://huggingface.co/spaces/agent-memory-leaderboard/leaderboard&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Content Notice&lt;/p&gt;

&lt;p&gt;This article is based on publicly available system materials and the first-cycle AML Coding Memory leaderboard results. It reflects an analytical interpretation of the systems discussed and does not represent an official technical recommendation from AML.&lt;/p&gt;

&lt;p&gt;Scores apply only to the referenced evaluation cycle, track, submitted system version, and official leaderboard release. They should not be interpreted as guarantees of performance in every software-engineering scenario.&lt;/p&gt;

</description>
      <category>agents</category>
      <category>ai</category>
      <category>llm</category>
      <category>rag</category>
    </item>
    <item>
      <title>From “Retrieving” to “Verifying”: How ChronoHybridMem Turns Agent Memory into Evidence</title>
      <dc:creator>Agent Memory Leaderboard</dc:creator>
      <pubDate>Mon, 07 Sep 2026 06:24:52 +0000</pubDate>
      <link>https://dev.to/aml-/from-retrieving-to-verifying-how-chronohybridmem-turns-agent-memory-into-evidence-545j</link>
      <guid>https://dev.to/aml-/from-retrieving-to-verifying-how-chronohybridmem-turns-agent-memory-into-evidence-545j</guid>
      <description>&lt;p&gt;&lt;strong&gt;ChronoHybridMem ranked #5 on the first AML Open Leaderboard with an Overall Score of 44.33.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;But what makes its approach interesting?&lt;/p&gt;

&lt;p&gt;Long-term memory retrieval for an AI agent is often framed as a search problem:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Given the current query, find the most relevant memories.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;But finding a relevant piece of information is only part of the problem.&lt;/p&gt;

&lt;p&gt;An agent may retrieve something that looks relevant but lacks context. A structured fact may be useful but difficult to verify. A generated summary may contain the right information but provide no clear path back to the original conversation.&lt;/p&gt;

&lt;p&gt;This raises a deeper question:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;When an Agent retrieves a memory, can it also explain where that memory came from?&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;ChronoHybridMem approaches this problem from a different angle.&lt;/p&gt;

&lt;p&gt;Instead of treating memory as a collection of isolated summaries, it treats memory as a collection of &lt;strong&gt;verifiable evidence&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Its core idea is simple:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Agent memory should return not just relevant information, but evidence that can be traced back to its source.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;In its v0.2.0 submission to the first Agent Memory Challenge, ChronoHybridMem combined &lt;strong&gt;raw message preservation, source-bound structured facts, SQLite FTS5 dual-path retrieval, and constrained candidate reranking&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;The result was a system designed around a clear boundary:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;The model can choose among existing evidence. It should not be allowed to invent the evidence itself.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;After the competition, the team continued experimenting with query planning, collection-aware reranking, evidence graphs, recall-failure diagnosis, and selective gating.&lt;/p&gt;

&lt;p&gt;Some of these ideas improved the local baseline.&lt;/p&gt;

&lt;p&gt;Others did not.&lt;/p&gt;

&lt;p&gt;That distinction is important because the team's post-competition work treats both positive and negative results as part of the engineering process.&lt;/p&gt;




&lt;h1&gt;
  
  
  1. The Core Idea: An Agent Needs Evidence, Not Just Similar Text
&lt;/h1&gt;

&lt;p&gt;Consider a simple example.&lt;/p&gt;

&lt;p&gt;Suppose a conversation history contains two statements:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Yutu gave a bag of cookies to Tutu.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;and later:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Yutu works at the court.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Now the user asks:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;“Where does the person who gave the cookies work?”&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The answer cannot be obtained reliably by retrieving only one of these messages.&lt;/p&gt;

&lt;p&gt;The system first needs to identify that the person who gave the cookies was &lt;strong&gt;Yutu&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;It then needs to retrieve the information about Yutu's workplace.&lt;/p&gt;

&lt;p&gt;More importantly, the resulting answer should be supported by evidence from the original conversation.&lt;/p&gt;

&lt;p&gt;This illustrates three requirements for long-term Agent Memory:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Original conversations should not be replaced entirely by opaque summaries.&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Retrieval should support both raw textual details and structured representations.&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The model should select and rank evidence rather than freely generate new memories.&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;ChronoHybridMem is designed around these principles.&lt;/p&gt;

&lt;p&gt;Instead of asking:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“What should the memory system remember?”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;it focuses on another question:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;“When the Agent needs to remember something, what evidence can the system provide?”&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h1&gt;
  
  
  2. From Conversation to Verifiable Memory Evidence
&lt;/h1&gt;

&lt;p&gt;At a high level, the ChronoHybridMem v0.2.0 pipeline looks like:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conversation&lt;/strong&gt;&lt;br&gt;
↓&lt;br&gt;
&lt;strong&gt;RAW + FACT Storage&lt;/strong&gt;&lt;br&gt;
↓&lt;br&gt;
&lt;strong&gt;Dual-path FTS5 Retrieval&lt;/strong&gt;&lt;br&gt;
↓&lt;br&gt;
&lt;strong&gt;Candidate Merge &amp;amp; Deduplication&lt;/strong&gt;&lt;br&gt;
↓&lt;br&gt;
&lt;strong&gt;Constrained Reranking&lt;/strong&gt;&lt;br&gt;
↓&lt;br&gt;
&lt;strong&gt;Evidence Set&lt;/strong&gt;&lt;br&gt;
↓&lt;br&gt;
&lt;strong&gt;Answer&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The system separates the responsibilities of different components.&lt;/p&gt;

&lt;p&gt;During the Add stage, the original conversation is preserved.&lt;/p&gt;

&lt;p&gt;The system can also extract structured facts from the conversation.&lt;/p&gt;

&lt;p&gt;During Search, the query enters two retrieval paths:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;raw-message retrieval;&lt;/li&gt;
&lt;li&gt;fact-level retrieval.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The candidates are then merged and deduplicated.&lt;/p&gt;

&lt;p&gt;A language model is used only to rank the candidates.&lt;/p&gt;

&lt;p&gt;Finally, the system returns the selected evidence together with its source information.&lt;/p&gt;

&lt;p&gt;This creates an explicit separation between:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;retrieving evidence&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;and&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;generating an answer from evidence.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The final answer is produced through AML's standardized answer process rather than directly by ChronoHybridMem.&lt;/p&gt;

&lt;p&gt;This separation allows the memory component itself to be evaluated independently.&lt;/p&gt;




&lt;h1&gt;
  
  
  3. RAW + FACT: Keep the Original Evidence, Add Structure on Top
&lt;/h1&gt;

&lt;p&gt;One of the central design choices in ChronoHybridMem is that &lt;strong&gt;structured facts do not replace the original conversation&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;When a message is written, the original message is first persisted as a RAW record.&lt;/p&gt;

&lt;p&gt;In model mode, the system can additionally extract structured FACT representations.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;RAW&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Yutu works at the court.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;FACT&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Yutu works at the court.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The important difference is that the FACT is not treated as an independent piece of truth.&lt;/p&gt;

&lt;p&gt;Each structured fact contains a:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;source_message_id&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;that points back to the original message.&lt;/p&gt;

&lt;p&gt;This creates two complementary representations.&lt;/p&gt;

&lt;h3&gt;
  
  
  RAW preserves context
&lt;/h3&gt;

&lt;p&gt;The original message retains:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;exact wording;&lt;/li&gt;
&lt;li&gt;relationships between people;&lt;/li&gt;
&lt;li&gt;temporal clues;&lt;/li&gt;
&lt;li&gt;surrounding context;&lt;/li&gt;
&lt;li&gt;details that may be lost during compression.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  FACT improves retrieval
&lt;/h3&gt;

&lt;p&gt;Structured facts provide a more compact representation that can be easier to search.&lt;/p&gt;

&lt;p&gt;They can help the system locate information that may be difficult to match directly against the original wording.&lt;/p&gt;

&lt;h3&gt;
  
  
  The source link connects the two
&lt;/h3&gt;

&lt;p&gt;Because every FACT can point back to its source message, the structured representation does not become an isolated summary.&lt;/p&gt;

&lt;p&gt;The system can move from:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;FACT → source_message_id → RAW&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;when verification is needed.&lt;/p&gt;

&lt;p&gt;This is an important distinction.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Structure is used to improve retrieval, while the original record remains the source of evidence.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h1&gt;
  
  
  4. SQLite FTS5 Dual-Path Retrieval
&lt;/h1&gt;

&lt;p&gt;ChronoHybridMem does not rely on a single retrieval representation.&lt;/p&gt;

&lt;p&gt;The Search stage runs two parallel FTS5 retrieval paths.&lt;/p&gt;

&lt;h3&gt;
  
  
  Path 1: Raw Message Search
&lt;/h3&gt;

&lt;p&gt;The system searches the original conversation records.&lt;/p&gt;

&lt;p&gt;This path is useful when the answer depends on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;exact wording;&lt;/li&gt;
&lt;li&gt;relationships;&lt;/li&gt;
&lt;li&gt;contextual clues;&lt;/li&gt;
&lt;li&gt;or details that may not survive structured extraction.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Path 2: Fact Search
&lt;/h3&gt;

&lt;p&gt;The system separately searches the structured FACT records.&lt;/p&gt;

&lt;p&gt;This path provides a more compact representation for direct fact retrieval.&lt;/p&gt;

&lt;p&gt;The two candidate sets are then merged and deduplicated.&lt;/p&gt;

&lt;p&gt;Conceptually:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Query&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;↓&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Raw Message FTS5&lt;/strong&gt; → Raw Candidates&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Fact FTS5&lt;/strong&gt; → Fact Candidates&lt;/p&gt;

&lt;p&gt;↓&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Merge + Deduplicate&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;↓&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Candidate Pool&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The goal is not to decide that one representation is universally better.&lt;/p&gt;

&lt;p&gt;Instead:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;The two retrieval paths compensate for each other's weaknesses.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Raw messages preserve context.&lt;/p&gt;

&lt;p&gt;Facts provide compact retrieval targets.&lt;/p&gt;

&lt;p&gt;Using both reduces the risk that the entire retrieval process becomes dependent on a single representation of memory.&lt;/p&gt;

&lt;p&gt;The Search request also carries an exact &lt;strong&gt;user_id boundary&lt;/strong&gt;, ensuring that retrieved records remain within the correct user's memory space.&lt;/p&gt;




&lt;h1&gt;
  
  
  5. Constrained Reranking: Let the Model Choose, Not Invent
&lt;/h1&gt;

&lt;p&gt;After candidate retrieval, ChronoHybridMem uses a language model to rank the candidates.&lt;/p&gt;

&lt;p&gt;But the model operates under strict constraints.&lt;/p&gt;

&lt;p&gt;It receives:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;the current query;&lt;/li&gt;
&lt;li&gt;the retrieved candidate set.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It can then return the IDs of candidates that should be ranked higher.&lt;/p&gt;

&lt;p&gt;It cannot:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;create a new memory;&lt;/li&gt;
&lt;li&gt;invent a candidate;&lt;/li&gt;
&lt;li&gt;return an arbitrary ID;&lt;/li&gt;
&lt;li&gt;access another user's records;&lt;/li&gt;
&lt;li&gt;or replace the evidence with a generated memory.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The system subsequently validates:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;whether the returned candidate ID actually exists;&lt;/li&gt;
&lt;li&gt;whether it belongs to the current user;&lt;/li&gt;
&lt;li&gt;whether a FACT has a valid source message;&lt;/li&gt;
&lt;li&gt;and whether the source relationship is legitimate.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This establishes a clear division of responsibility:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;The model decides which evidence is useful.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The storage and retrieval layer decides what evidence actually exists.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This distinction becomes particularly important when using LLMs inside memory systems.&lt;/p&gt;

&lt;p&gt;A model may be excellent at reasoning over information.&lt;/p&gt;

&lt;p&gt;But reasoning ability should not automatically give it permission to create the information it is supposed to retrieve.&lt;/p&gt;

&lt;p&gt;ChronoHybridMem therefore treats the model as a &lt;strong&gt;candidate selector&lt;/strong&gt;, rather than the source of truth.&lt;/p&gt;




&lt;h1&gt;
  
  
  6. Why Verifiability Matters
&lt;/h1&gt;

&lt;p&gt;The purpose of this architecture is not simply to increase the number of retrieved memories.&lt;/p&gt;

&lt;p&gt;It is to shorten the distance between:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;the answer an Agent wants to produce&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;and&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;the historical evidence supporting that answer.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Return to the earlier example.&lt;/p&gt;

&lt;p&gt;The Agent needs to answer:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Where does the person who gave the cookies work?”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;A useful evidence set might contain:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;the original message identifying who gave the cookies;&lt;/li&gt;
&lt;li&gt;the structured fact describing that person's workplace;&lt;/li&gt;
&lt;li&gt;the source message associated with that fact.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The downstream answer model can then reason over these pieces of evidence.&lt;/p&gt;

&lt;p&gt;If necessary, it can trace the structured fact back to the original conversation.&lt;/p&gt;

&lt;p&gt;This makes memory more inspectable.&lt;/p&gt;

&lt;p&gt;Instead of simply returning:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“The person works at the court.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;the system can provide the evidence chain behind that statement.&lt;/p&gt;

&lt;p&gt;This leads to a broader design principle:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;A reliable memory system should make it possible to inspect why a memory was retrieved, not merely what was retrieved.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h1&gt;
  
  
  7. Engineering Boundaries Matter Too
&lt;/h1&gt;

&lt;p&gt;ChronoHybridMem's emphasis on evidence is not limited to retrieval.&lt;/p&gt;

&lt;p&gt;The team also treats several engineering boundaries as part of memory reliability.&lt;/p&gt;

&lt;h3&gt;
  
  
  Idempotent writes
&lt;/h3&gt;

&lt;p&gt;The Add operation is designed to be idempotent, reducing the risk of duplicate memory pollution.&lt;/p&gt;

&lt;h3&gt;
  
  
  Persistent storage
&lt;/h3&gt;

&lt;p&gt;SQLite WAL is used to support stable persistent reads and writes.&lt;/p&gt;

&lt;h3&gt;
  
  
  User isolation
&lt;/h3&gt;

&lt;p&gt;Both API and SQL-level operations use &lt;code&gt;user_id&lt;/code&gt; as an isolation boundary.&lt;/p&gt;

&lt;h3&gt;
  
  
  Explicit failure
&lt;/h3&gt;

&lt;p&gt;If required configuration for model mode is missing, the system fails explicitly rather than silently switching to unknown behavior.&lt;/p&gt;

&lt;p&gt;These details may appear less interesting than a new retrieval algorithm.&lt;/p&gt;

&lt;p&gt;But they matter when memory systems move from benchmark demonstrations toward actual Agent infrastructure.&lt;/p&gt;

&lt;p&gt;A memory system needs to answer not only:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Did I retrieve the right information?”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;but also:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Did I retrieve it from the right user?”&lt;/p&gt;

&lt;p&gt;“Can I trace it back to its source?”&lt;/p&gt;

&lt;p&gt;“Can I reproduce the same behavior?”&lt;/p&gt;

&lt;p&gt;“What happens when part of the system fails?”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;For ChronoHybridMem, these are part of the same reliability story.&lt;/p&gt;




&lt;h1&gt;
  
  
  8. Official Result vs. Post-Competition Research
&lt;/h1&gt;

&lt;p&gt;An important distinction in the ChronoHybridMem team's work is between its &lt;strong&gt;official AML result&lt;/strong&gt; and its later local experiments.&lt;/p&gt;

&lt;p&gt;The result reported on the AML leaderboard corresponds to:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;ChronoHybridMem v0.2.0&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Rank #5&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Overall Score: 44.33&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The experiments described below were conducted &lt;strong&gt;after the official evaluation&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;They primarily use the public LoCoMo dataset and a local Qwen3-4B proxy model to investigate retrieval mechanisms and engineering hypotheses.&lt;/p&gt;

&lt;p&gt;They are &lt;strong&gt;not new AML leaderboard scores&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;This distinction matters.&lt;/p&gt;

&lt;p&gt;The team uses a layered evidence protocol:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;official leaderboard results demonstrate performance validated by AML;&lt;/li&gt;
&lt;li&gt;full 1,977-question local runs compare methods under the same local evaluation setup;&lt;/li&gt;
&lt;li&gt;smaller fixed sets are used for diagnostics, mechanical checks, and upgrade gates.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Only paired comparisons using the same data, model, query plan, and call budget are used to discuss method-level improvements.&lt;/p&gt;

&lt;p&gt;This allows the post-competition work to function as research rather than as an attempt to reinterpret the official leaderboard result.&lt;/p&gt;




&lt;h1&gt;
  
  
  9. After v0.2.0: Turning Memory Research into Falsifiable Experiments
&lt;/h1&gt;

&lt;p&gt;The post-competition development did not simply add more models or retrieval modules.&lt;/p&gt;

&lt;p&gt;Instead, the team framed each stage around a falsifiable question:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;What failure mode are we trying to solve?&lt;/p&gt;

&lt;p&gt;Does the proposed mechanism actually improve it?&lt;/p&gt;

&lt;p&gt;Does it introduce additional model calls?&lt;/p&gt;

&lt;p&gt;Can its evidence still be traced?&lt;/p&gt;

&lt;p&gt;Can the module be safely disabled if it causes regression?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This produced a sequence of experiments from &lt;strong&gt;P1 to P5&lt;/strong&gt;, preceded by two additional local milestones.&lt;/p&gt;




&lt;h1&gt;
  
  
  10. research-v0.3.0: Lexical + Dense Retrieval
&lt;/h1&gt;

&lt;p&gt;The first post-competition milestone, &lt;strong&gt;research-v0.3.0&lt;/strong&gt;, explored hybrid retrieval.&lt;/p&gt;

&lt;p&gt;It retained the existing Add/Search API and original evidence-return contract.&lt;/p&gt;

&lt;p&gt;During Search, the system combined:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Porter-normalized BM25 retrieval;&lt;/li&gt;
&lt;li&gt;BAAI/bge-large-en-v1.5 dense retrieval.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The scores from the two candidate sets were normalized and fused.&lt;/p&gt;

&lt;p&gt;The top five fused candidates were then reranked using:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;answerai-colbert-small-v1&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The important constraint remained unchanged:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;The reranker could only reorder existing candidates.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;It did not generate new evidence or replace the original messages.&lt;/p&gt;

&lt;p&gt;On the full 1,977-question LoCoMo local evaluation, v0.3.0 achieved:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Hit@1: 0.4355&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Hit@3: 0.6186&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Hit@10: 0.7577&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;MRR: 0.5183&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Compared with the corresponding lexical baseline, Hit@1 increased from &lt;strong&gt;0.3359 to 0.4355&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;The team also tested different reranking pool sizes.&lt;/p&gt;

&lt;p&gt;Interestingly, increasing the ColBERT reranking pool did not automatically improve the top-ranked result.&lt;/p&gt;

&lt;p&gt;On the fixed 200-question experiment, &lt;strong&gt;Top-5&lt;/strong&gt; performed better than Top-10 and Top-20 for the final ranking objective.&lt;/p&gt;

&lt;p&gt;The team therefore froze the reranking pool at Top-5.&lt;/p&gt;

&lt;p&gt;This is an example of an important engineering principle:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;A larger candidate pool is not automatically a better candidate pool.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h1&gt;
  
  
  11. research-v0.4.0: Time-Aware Retrieval + Dedicated Reranking
&lt;/h1&gt;

&lt;p&gt;The next milestone shifted the focus from retrieval coverage toward ranking quality.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;research-v0.4.0&lt;/strong&gt; added a time-aware dense representation and a dedicated local Qwen reranker.&lt;/p&gt;

&lt;p&gt;The reranker used:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Qwen3-Reranker-4B&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;with a yes/no relevance formulation.&lt;/p&gt;

&lt;p&gt;The model returned a relevance probability over existing evidence rather than generating new memory.&lt;/p&gt;

&lt;p&gt;The system also introduced a controlled temporal key, adding message date information to the retrieval representation.&lt;/p&gt;

&lt;p&gt;An interesting result emerged:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;The temporal signal alone did not improve Hit@1 on the full dataset.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;However, it increased Top-10 candidate coverage.&lt;/p&gt;

&lt;p&gt;When combined with the dedicated Qwen reranker, those additional candidates could sometimes be converted into better top-ranked evidence.&lt;/p&gt;

&lt;p&gt;The final local result for v0.4.0 was:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Hit@1: 0.5225&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Hit@3: 0.6808&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Hit@10: 0.7653&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;MRR: 0.5856&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Compared with v0.3.0:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Hit@1 increased by &lt;strong&gt;0.0870&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;MRR increased by &lt;strong&gt;0.0673&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Again, these are &lt;strong&gt;post-competition local research results&lt;/strong&gt;, not AML leaderboard scores.&lt;/p&gt;




&lt;h1&gt;
  
  
  12. P1: Structured Query Planning
&lt;/h1&gt;

&lt;p&gt;After the two model-side milestones, the research shifted toward a more fundamental question:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Is retrieval failing because the system does not understand what the query actually needs?&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;P1 introduced structured query planning.&lt;/p&gt;

&lt;p&gt;Instead of treating the query as a flat string, the planner decomposes it into:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;intent;&lt;/li&gt;
&lt;li&gt;core terms;&lt;/li&gt;
&lt;li&gt;expansions;&lt;/li&gt;
&lt;li&gt;entities;&lt;/li&gt;
&lt;li&gt;temporal cues;&lt;/li&gt;
&lt;li&gt;up to four evidence needs.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Different fields can then be used by different retrieval paths.&lt;/p&gt;

&lt;p&gt;The evidence needs also become reusable signals for later experiments.&lt;/p&gt;

&lt;p&gt;Importantly, P1 does not add another model call during Search and does not change the Add/Search API.&lt;/p&gt;

&lt;p&gt;If the planner output is incomplete, the system falls back to a safer first-stage retrieval path.&lt;/p&gt;

&lt;p&gt;On a fixed 200-question local screening set:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Hit@1:&lt;/strong&gt; 0.545 → 0.565&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;MRR:&lt;/strong&gt; 0.6145 → 0.6292&lt;/p&gt;

&lt;p&gt;Hit@10 remained at 0.740.&lt;/p&gt;

&lt;p&gt;On the full 1,977-question local evaluation:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Hit@1: 0.5761&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Hit@3: 0.7157&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Hit@10: 0.7618&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;MRR: 0.6479&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The result suggested that better understanding of the information need could provide more stable gains than simply adding more retrieval models.&lt;/p&gt;




&lt;h1&gt;
  
  
  13. P2: More Coverage Does Not Necessarily Mean Better Ranking
&lt;/h1&gt;

&lt;p&gt;P2 explored &lt;strong&gt;collection-aware reranking&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Multi-hop questions often require multiple complementary pieces of evidence.&lt;/p&gt;

&lt;p&gt;A conventional ranking system, however, may place several highly similar records at the top while pushing complementary evidence lower.&lt;/p&gt;

&lt;p&gt;P2 therefore attempted to select candidates based partly on how much additional evidence they covered.&lt;/p&gt;

&lt;p&gt;The idea sounds intuitive:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;If a candidate covers a new evidence need, shouldn't it become more valuable?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Not necessarily.&lt;/p&gt;

&lt;p&gt;On a fixed 20-question experiment, P2 kept Hit@1 unchanged while improving Hit@3 and MRR.&lt;/p&gt;

&lt;p&gt;But on a frozen 35-case synthetic stratification:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Hit@1 fell from 1.00 to 0.8571&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;and&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;MRR fell from 1.00 to 0.9286.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Why?&lt;/p&gt;

&lt;p&gt;Because:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Covering more query requirements does not necessarily mean that a candidate is the best first piece of evidence.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;P2 was therefore rejected from the default path.&lt;/p&gt;

&lt;p&gt;The code remains available for reproduction and failure analysis.&lt;/p&gt;

&lt;p&gt;This negative result changed the team's research direction.&lt;/p&gt;

&lt;p&gt;Instead of continuing to optimize diversity in the top-ranked candidates, the team began asking:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Where exactly is the correct evidence being lost?&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h1&gt;
  
  
  14. P3: Evidence Graphs Need Evidence Too
&lt;/h1&gt;

&lt;p&gt;P3 explored another attractive idea for memory systems:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Can an evidence graph help connect people, places, organizations, relationships, and temporal updates?&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The team constructed graph representations for entities and relations.&lt;/p&gt;

&lt;p&gt;But it imposed a strict rule:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Every entity mention and every relationship edge must be independently supported by an original message.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The reason is straightforward.&lt;/p&gt;

&lt;p&gt;A graph generated by an LLM can look highly structured while still containing unsupported relationships.&lt;/p&gt;

&lt;p&gt;For a memory system centered on verifiability, that would simply move the trust problem somewhere else.&lt;/p&gt;

&lt;p&gt;Under the strict evidence constraint, the graph became surprisingly sparse.&lt;/p&gt;

&lt;p&gt;On a fixed set of 419 original messages, the strict relation graph produced only &lt;strong&gt;3 independently witnessed relationship edges&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;A second experiment, P3-B1, used source-local entity mention anchors.&lt;/p&gt;

&lt;p&gt;This achieved coverage across:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;363 / 419 messages (86.63%)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;But on the fixed 20-question test:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Hit@1 fell from 0.40 to 0.35&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;and&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Hit@10 fell from 0.55 to 0.50.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;P3 therefore did not become a global default retrieval channel.&lt;/p&gt;

&lt;p&gt;The experiment left an important lesson:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;A memory structure should not be considered useful simply because it is structured, interpretable, or highly covered.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Its value still has to be demonstrated through paired retrieval gains and source-level auditing.&lt;/p&gt;




&lt;h1&gt;
  
  
  15. P4: Diagnose the Recall Failure Before Fixing It
&lt;/h1&gt;

&lt;p&gt;P4 was arguably the most important shift in the post-competition research.&lt;/p&gt;

&lt;p&gt;Instead of asking:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“What new retrieval module should we add?”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;the team first asked:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;“Why are we failing to retrieve the correct evidence?”&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;A fixed 100-question audit identified &lt;strong&gt;30 Top-10 retrieval failures&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;They were divided into three categories:&lt;/p&gt;

&lt;h3&gt;
  
  
  Fusion miss
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;20 cases&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The relevant evidence had been found by at least one retrieval channel but was lost during candidate fusion.&lt;/p&gt;

&lt;h3&gt;
  
  
  Channel miss
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;8 cases&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;None of the lexical retrieval channels found the relevant evidence.&lt;/p&gt;

&lt;h3&gt;
  
  
  Reranker drop
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;2 cases&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The correct evidence was retrieved but subsequently ranked too low.&lt;/p&gt;

&lt;p&gt;This distribution was revealing.&lt;/p&gt;

&lt;p&gt;The dominant problem was not:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“The reranker cannot recognize the correct candidate.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;It was:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;“The correct candidate often never survives into the reranking pool.”&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This changed the optimization target.&lt;/p&gt;




&lt;h1&gt;
  
  
  16. P4-A: Turn Evidence Needs into Retrieval Channels
&lt;/h1&gt;

&lt;p&gt;To address the largest failure bucket — fusion misses — P4-A reused the evidence needs already generated by P1.&lt;/p&gt;

&lt;p&gt;Each evidence need became an independent, bounded retrieval channel.&lt;/p&gt;

&lt;p&gt;Each channel was given a fixed number of candidate positions.&lt;/p&gt;

&lt;p&gt;These candidates were then merged with the existing retrieval results and passed into the original reranking pipeline.&lt;/p&gt;

&lt;p&gt;Crucially:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;no new evidence was generated;&lt;/li&gt;
&lt;li&gt;the existing query planner was reused;&lt;/li&gt;
&lt;li&gt;Search did not require an additional model call.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The goal was simple:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Give important evidence needs a guaranteed opportunity to enter the candidate pool.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;On the full 1,977-question local evaluation, &lt;strong&gt;P4-A q2&lt;/strong&gt; became the strongest post-competition local proxy baseline.&lt;/p&gt;

&lt;p&gt;Compared with P1, it recovered &lt;strong&gt;8 questions&lt;/strong&gt; whose relevant evidence had previously fallen outside Top-10.&lt;/p&gt;

&lt;p&gt;Four of those recovered cases moved directly into Top-1.&lt;/p&gt;

&lt;p&gt;Hit@1, Hit@3, Hit@10, and MRR all improved modestly.&lt;/p&gt;

&lt;p&gt;Again, this is a &lt;strong&gt;local proxy result&lt;/strong&gt;, not a new official AML score.&lt;/p&gt;

&lt;p&gt;But the experiment provided a useful diagnosis:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Improving recall before reranking can matter more than making the reranker itself more sophisticated.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h1&gt;
  
  
  17. P5: When Should the System Override Its Top Result?
&lt;/h1&gt;

&lt;p&gt;P5 explored a different problem.&lt;/p&gt;

&lt;p&gt;P4-A showed that candidate replacement could rescue some queries.&lt;/p&gt;

&lt;p&gt;But the same mechanism could also replace an already-correct Top-1 result.&lt;/p&gt;

&lt;p&gt;The team therefore asked:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Can we identify the cases where a candidate swap is actually beneficial?&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Several signals were tested:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;channel count;&lt;/li&gt;
&lt;li&gt;query-token overlap;&lt;/li&gt;
&lt;li&gt;temporal/correction strata;&lt;/li&gt;
&lt;li&gt;model-reported confidence.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;None passed the predefined fixed-200-question threshold.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;channel count: Hit@1 change &lt;strong&gt;-0.005&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;query overlap: &lt;strong&gt;-0.035&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;strata narrowing: &lt;strong&gt;-0.010&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;confidence gating: did not trigger reliably&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;More importantly, asking the local model to provide an explicit confidence signal itself reduced Hit@1 by &lt;strong&gt;0.045&lt;/strong&gt; in the tested setup.&lt;/p&gt;

&lt;p&gt;The conclusion was therefore not that selective gating is impossible.&lt;/p&gt;

&lt;p&gt;Rather:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;These simple signals are not reliable enough to determine when an evidence swap should occur.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;P5 was kept as default-off ablation code, and the team stopped tuning this direction.&lt;/p&gt;

&lt;p&gt;Again, a negative result became useful evidence.&lt;/p&gt;




&lt;h1&gt;
  
  
  18. What These Experiments Suggest About Agent Memory
&lt;/h1&gt;

&lt;p&gt;Taken together, the ChronoHybridMem experiments suggest several broader observations.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Query understanding can matter more than retrieval complexity
&lt;/h3&gt;

&lt;p&gt;P1 produced stable gains by making the information need more explicit.&lt;/p&gt;

&lt;p&gt;Simply adding another retrieval mechanism is not guaranteed to produce the same effect.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. More structure does not automatically mean better memory
&lt;/h3&gt;

&lt;p&gt;P2 and P3 both explored more structured candidate selection.&lt;/p&gt;

&lt;p&gt;Both demonstrated that additional structure can introduce new failure modes.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Recall and ranking are different problems
&lt;/h3&gt;

&lt;p&gt;P4's failure audit showed that many apparent “ranking failures” were actually retrieval failures.&lt;/p&gt;

&lt;p&gt;If the correct evidence never enters the candidate pool, a better reranker cannot recover it.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Negative results can improve system design
&lt;/h3&gt;

&lt;p&gt;P2, P3, and P5 did not enter the default path.&lt;/p&gt;

&lt;p&gt;That is not necessarily wasted work.&lt;/p&gt;

&lt;p&gt;By explicitly measuring their failures, the team narrowed the space of plausible design choices.&lt;/p&gt;

&lt;p&gt;This is perhaps one of the most interesting aspects of the project:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;The system is being developed not by accumulating modules, but by eliminating unsupported assumptions.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h1&gt;
  
  
  19. The Next Challenge: When Lexical Retrieval Cannot Find the Connection
&lt;/h1&gt;

&lt;p&gt;The current architecture works well when useful evidence can be brought into the candidate pool.&lt;/p&gt;

&lt;p&gt;But an important class of problems remains.&lt;/p&gt;

&lt;p&gt;Consider a user saying:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“I'm thinking about adopting a cat.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Months earlier, they had said:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“I have a lot of lilies at home.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The historical statement may be highly relevant to the current decision.&lt;/p&gt;

&lt;p&gt;But the connection is not obvious from the query itself.&lt;/p&gt;

&lt;p&gt;A retrieval system searching for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;cat;&lt;/li&gt;
&lt;li&gt;adoption;&lt;/li&gt;
&lt;li&gt;pet;&lt;/li&gt;
&lt;li&gt;breed;&lt;/li&gt;
&lt;li&gt;food;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;may never search for:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;lilies&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The problem is no longer simply:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Can the system rank the correct evidence?”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;It becomes:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;“Can the system discover that this seemingly unrelated memory matters?”&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This is a harder problem for query-conditioned retrieval.&lt;/p&gt;

&lt;p&gt;If the relevant memory never enters the candidate pool, even a powerful reranker cannot recover it.&lt;/p&gt;

&lt;p&gt;This is one reason the ChronoHybridMem team is now investigating &lt;strong&gt;channel-miss&lt;/strong&gt; cases more closely.&lt;/p&gt;




&lt;h1&gt;
  
  
  20. Toward Source-Constrained Multi-Hop Retrieval
&lt;/h1&gt;

&lt;p&gt;The next stage of the team's research focuses on cases involving:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;abstract relationships;&lt;/li&gt;
&lt;li&gt;identity;&lt;/li&gt;
&lt;li&gt;personality;&lt;/li&gt;
&lt;li&gt;decisions;&lt;/li&gt;
&lt;li&gt;multi-hop reasoning;&lt;/li&gt;
&lt;li&gt;and implicit connections.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The goal is to explore &lt;strong&gt;source-constrained bridging retrieval&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Instead of allowing an LLM to freely invent relationships, the system could:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;locate relevant entities or messages;&lt;/li&gt;
&lt;li&gt;identify source-supported relationships;&lt;/li&gt;
&lt;li&gt;perform a limited expansion;&lt;/li&gt;
&lt;li&gt;retrieve additional evidence from the same user, session, or explicitly witnessed relationship.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The expansion would remain tightly bounded.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;fixed candidate limits;&lt;/li&gt;
&lt;li&gt;limited traversal depth;&lt;/li&gt;
&lt;li&gt;deterministic tie-breaking;&lt;/li&gt;
&lt;li&gt;strict user isolation;&lt;/li&gt;
&lt;li&gt;no model-generated relationship treated as ground truth.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The principle remains unchanged:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Expand the search space without expanding the set of unsupported facts.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h1&gt;
  
  
  21. Temporal State and Corrections
&lt;/h1&gt;

&lt;p&gt;Another important direction is temporal memory.&lt;/p&gt;

&lt;p&gt;Long conversations are not static.&lt;/p&gt;

&lt;p&gt;Users change their plans.&lt;/p&gt;

&lt;p&gt;They correct names.&lt;/p&gt;

&lt;p&gt;They update schedules.&lt;/p&gt;

&lt;p&gt;They revise preferences.&lt;/p&gt;

&lt;p&gt;They add exceptions.&lt;/p&gt;

&lt;p&gt;Consider:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“I'm moving to Shanghai next month.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;followed later by:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Actually, the move has been postponed.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;A memory system should not simply retrieve both statements and leave the downstream model to guess.&lt;/p&gt;

&lt;p&gt;The next research direction is therefore to represent state changes as an auditable chain:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Original Statement&lt;/strong&gt;&lt;br&gt;
↓&lt;br&gt;
&lt;strong&gt;Update / Correction&lt;/strong&gt;&lt;br&gt;
↓&lt;br&gt;
&lt;strong&gt;Currently Valid State&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;But the original evidence should remain available.&lt;/p&gt;

&lt;p&gt;The goal is not to delete old memories.&lt;/p&gt;

&lt;p&gt;It is to make the current state explainable:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Which earlier information changed?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What evidence caused the update?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why is this the currently valid state?&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This is another extension of the same principle behind RAW + FACT:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Interpretation can evolve, but evidence should remain traceable.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h1&gt;
  
  
  22. Toward a More Complete Memory Evaluation Framework
&lt;/h1&gt;

&lt;p&gt;ChronoHybridMem's research also points to a broader question for Agent Memory evaluation.&lt;/p&gt;

&lt;p&gt;Memory quality should not be measured only through:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Hit@K;&lt;/li&gt;
&lt;li&gt;MRR;&lt;/li&gt;
&lt;li&gt;answer accuracy.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Future evaluations may also need to track:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;evidence recall;&lt;/li&gt;
&lt;li&gt;candidate-source distribution;&lt;/li&gt;
&lt;li&gt;model call count;&lt;/li&gt;
&lt;li&gt;fallback behavior;&lt;/li&gt;
&lt;li&gt;user isolation;&lt;/li&gt;
&lt;li&gt;retrieval stability;&lt;/li&gt;
&lt;li&gt;database state;&lt;/li&gt;
&lt;li&gt;runtime cost;&lt;/li&gt;
&lt;li&gt;and source completeness.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A memory system that achieves higher recall by dramatically increasing inference cost may represent a different engineering trade-off from one that achieves similar performance with a smaller budget.&lt;/p&gt;

&lt;p&gt;Likewise, a system that retrieves an answer but cannot identify its source presents a different reliability profile from one that returns a fully traceable evidence chain.&lt;/p&gt;

&lt;p&gt;This suggests a broader direction for memory evaluation:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Measure not only whether the Agent remembers, but how it remembers, what it costs, and whether the memory can be verified.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h1&gt;
  
  
  23. From Memory Retrieval to Evidence Systems
&lt;/h1&gt;

&lt;p&gt;ChronoHybridMem began with a relatively simple architectural choice:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Keep the original conversation.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Add structure where useful.&lt;/p&gt;

&lt;p&gt;Retrieve through multiple paths.&lt;/p&gt;

&lt;p&gt;Let the model rank existing candidates.&lt;/p&gt;

&lt;p&gt;Return evidence with its source.&lt;/p&gt;

&lt;p&gt;The subsequent P1–P5 experiments made the picture more nuanced.&lt;/p&gt;

&lt;p&gt;They showed that:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;structured query planning can provide meaningful gains;&lt;/li&gt;
&lt;li&gt;more candidate diversity does not automatically improve ranking;&lt;/li&gt;
&lt;li&gt;graph structure requires strict evidence constraints;&lt;/li&gt;
&lt;li&gt;recall failures can dominate reranking failures;&lt;/li&gt;
&lt;li&gt;and simple confidence-based gating is not necessarily reliable.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Together, these results suggest that Agent Memory may be moving toward something broader than conventional retrieval.&lt;/p&gt;

&lt;p&gt;A memory system is not simply a database.&lt;/p&gt;

&lt;p&gt;It is not simply a vector store.&lt;/p&gt;

&lt;p&gt;It is not simply a summarization layer.&lt;/p&gt;

&lt;p&gt;It is increasingly becoming an &lt;strong&gt;evidence system&lt;/strong&gt; between an Agent and its history.&lt;/p&gt;

&lt;p&gt;The central question becomes:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;When an Agent remembers something, can we understand where that memory came from and why it should be trusted?&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h1&gt;
  
  
  24. What ChronoHybridMem Adds to the AML Landscape
&lt;/h1&gt;

&lt;p&gt;The first AML leaderboard contains systems that make different architectural choices.&lt;/p&gt;

&lt;p&gt;Some emphasize structured memory.&lt;/p&gt;

&lt;p&gt;Some emphasize retrieval.&lt;/p&gt;

&lt;p&gt;Some rely heavily on learned representations.&lt;/p&gt;

&lt;p&gt;ChronoHybridMem represents another point in this design space:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Preserve evidence first, then add controlled structure and retrieval mechanisms around it.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Its Rank #5 result — &lt;strong&gt;44.33 Overall&lt;/strong&gt; — demonstrates that this evidence-oriented architecture is competitive under the first AML evaluation.&lt;/p&gt;

&lt;p&gt;But the more interesting contribution may be the research process that followed.&lt;/p&gt;

&lt;p&gt;Rather than assuming that every additional module improves memory, the team explicitly tested hypotheses and removed those that failed.&lt;/p&gt;

&lt;p&gt;This makes the project useful not only as a leaderboard entry, but also as a case study in how Agent Memory systems can be iterated.&lt;/p&gt;




&lt;h1&gt;
  
  
  25. The Broader Question for Agent Memory
&lt;/h1&gt;

&lt;p&gt;ChronoHybridMem ultimately asks a simple question:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;When an Agent remembers something, should it be able to show its work?&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;A useful memory system may need to do more than return:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“I remember this.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;It may need to provide:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;“Here is what I found.”&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;“Here is where it came from.”&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;“Here is why this evidence was selected.”&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;“And here is the original record if you want to verify it.”&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This changes the role of memory.&lt;/p&gt;

&lt;p&gt;Instead of treating memory as a hidden layer that produces an opaque answer, we can treat it as an evidence layer that connects an Agent's current reasoning to its historical context.&lt;/p&gt;

&lt;p&gt;That may become increasingly important as Agents move from short-lived interactions toward long-term relationships, persistent tasks, and autonomous decision-making.&lt;/p&gt;




&lt;h1&gt;
  
  
  Thanks to the ChronoHybridMem Team
&lt;/h1&gt;

&lt;p&gt;We'd like to thank the &lt;strong&gt;ChronoHybridMem team&lt;/strong&gt; for sharing their system design and post-competition research with the AML technical deep dive series.&lt;/p&gt;

&lt;p&gt;Their work illustrates an important aspect of Agent Memory research:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Progress does not always mean adding another module. Sometimes it means finding out which modules should not be there.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The goal of the AML solution spotlight series is to make top-performing memory systems easier to understand — not only through leaderboard scores, but through the technical ideas, engineering choices, trade-offs, and failures behind those scores.&lt;/p&gt;

&lt;p&gt;More technical deep dives into the first AML leaderboard are coming soon.&lt;/p&gt;




&lt;h3&gt;
  
  
  ChronoHybridMem
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Team:&lt;/strong&gt; ChronoHybridMem&lt;br&gt;
&lt;strong&gt;Team Lead:&lt;/strong&gt; Haoxuan Meng&lt;br&gt;
&lt;strong&gt;GitHub:&lt;/strong&gt; &lt;a href="https://github.com/Tin11Mn/chrono-hybrid-mem" rel="noopener noreferrer"&gt;https://github.com/Tin11Mn/chrono-hybrid-mem&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  AML
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Agent Memory Leaderboard&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://agentmemoryleaderboard.ai/" rel="noopener noreferrer"&gt;https://agentmemoryleaderboard.ai/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Leaderboard:&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://huggingface.co/spaces/agent-memory-leaderboard/leaderboard" rel="noopener noreferrer"&gt;https://huggingface.co/spaces/agent-memory-leaderboard/leaderboard&lt;/a&gt;&lt;/p&gt;

</description>
      <category>agents</category>
      <category>ai</category>
      <category>llm</category>
      <category>rag</category>
    </item>
    <item>
      <title>From “Managing” to “Preserving”: How ActiveMemoryIndex Keeps Memory Simple</title>
      <dc:creator>Agent Memory Leaderboard</dc:creator>
      <pubDate>Wed, 26 Aug 2026 03:43:25 +0000</pubDate>
      <link>https://dev.to/aml-/from-managing-to-preserving-how-activememoryindex-keeps-memory-simple-23g</link>
      <guid>https://dev.to/aml-/from-managing-to-preserving-how-activememoryindex-keeps-memory-simple-23g</guid>
      <description>&lt;h3&gt;
  
  
  How ActiveMemoryIndex Ranks #3 Without Memory Governance
&lt;/h3&gt;

&lt;p&gt;AI memory systems often try to make memory smarter.&lt;/p&gt;

&lt;p&gt;They summarize conversations, extract facts, resolve conflicts, update old values, build hierarchies, and decide which memories should remain active.&lt;/p&gt;

&lt;p&gt;But what if a memory system did almost none of that?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;ActiveMemoryIndex takes a surprisingly different approach: preserve more, process less, and let the answer model decide.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In the first AML Open Leaderboard, ActiveMemoryIndex ranked &lt;strong&gt;#3 on the Open-Source Text track with a score of 44.84&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;More interestingly, it ranked &lt;strong&gt;#1 on “new value overrides and current state” (54.50)&lt;/strong&gt; and &lt;strong&gt;#1 on “contradiction detection and conflict resolution” (24.79)&lt;/strong&gt; — despite having no explicit memory governance mechanism.&lt;/p&gt;

&lt;p&gt;So how does it work?&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fazi1i4fvyst02gncgtnb.png" alt=" " width="768" height="624"&gt;
&lt;/h2&gt;

&lt;h2&gt;
  
  
  1. A Memory System That Doesn't “Manage” Memory
&lt;/h2&gt;

&lt;p&gt;ActiveMemoryIndex has only two storage operations:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;CREATE&lt;/strong&gt; and &lt;strong&gt;INSERT OR REPLACE&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;There is no UPDATE.&lt;/p&gt;

&lt;p&gt;There is no DELETE.&lt;/p&gt;

&lt;p&gt;It does not merge memories, invalidate old memories, detect contradictions, or explicitly resolve conflicts.&lt;/p&gt;

&lt;p&gt;Every stored record remains available.&lt;/p&gt;

&lt;p&gt;Instead of deciding during the write stage which information is still valid, the system preserves the original evidence — including timestamps — and lets the reading model determine what matters.&lt;/p&gt;

&lt;p&gt;This leads to a simple principle:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Don't decide too early what the agent will need later.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The approach trades sophisticated memory governance for &lt;strong&gt;information preservation&lt;/strong&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  2. Two Copies: Raw Messages + Atomic Facts
&lt;/h2&gt;

&lt;p&gt;For every Add request, ActiveMemoryIndex stores two versions of the information.&lt;/p&gt;

&lt;h3&gt;
  
  
  Raw conversation
&lt;/h3&gt;

&lt;p&gt;The original message is preserved verbatim, with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;timestamp&lt;/li&gt;
&lt;li&gt;speaker role&lt;/li&gt;
&lt;li&gt;original wording&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Extracted facts
&lt;/h3&gt;

&lt;p&gt;A second representation is generated by GPT-4o-mini as first-person atomic facts.&lt;/p&gt;

&lt;p&gt;Both are embedded and stored in the same SQLite table.&lt;/p&gt;

&lt;p&gt;The raw version preserves information fidelity.&lt;/p&gt;

&lt;p&gt;The fact version provides a more compact representation that can improve retrieval.&lt;/p&gt;

&lt;p&gt;But the system does not assume that the extracted version is always better.&lt;/p&gt;

&lt;p&gt;In fact, its own ablation experiments suggest that extraction contributes only modestly.&lt;/p&gt;

&lt;p&gt;This reflects a broader design choice:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;An imperfect summary should never become the only copy of the memory.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  3. Retrieval: Make the Query Speak the Same Language as the Memory
&lt;/h2&gt;

&lt;p&gt;There is another interesting problem.&lt;/p&gt;

&lt;p&gt;The stored conversations are written from the user's perspective:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“I want to move to London.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;But the benchmark question might ask:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Where does John want to move?”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;These two expressions may refer to the same information while living in different linguistic frames.&lt;/p&gt;

&lt;p&gt;ActiveMemoryIndex therefore rewrites the query into a first-person memory-oriented question.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Did I mention where John wanted to move?”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The rewritten query is then combined with the original query for retrieval.&lt;/p&gt;

&lt;p&gt;Conceptually:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Original Query&lt;/strong&gt;&lt;br&gt;
↓&lt;br&gt;
&lt;strong&gt;Memory-oriented Query Rewrite&lt;/strong&gt;&lt;br&gt;
↓&lt;br&gt;
&lt;strong&gt;Embedding Retrieval&lt;/strong&gt;&lt;br&gt;
↓&lt;br&gt;
&lt;strong&gt;Combined Ranking&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The authors note that this is closely related to &lt;strong&gt;HyDE&lt;/strong&gt;, except that the generated representation is a memory-oriented question rather than a hypothetical answer.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxg6phz2zyp3n5gp049ii.png" alt=" " width="768" height="624"&gt;
&lt;/h2&gt;

&lt;h2&gt;
  
  
  4. Why Return Raw Evidence First?
&lt;/h2&gt;

&lt;p&gt;After retrieval, ActiveMemoryIndex returns up to 100 pieces of evidence.&lt;/p&gt;

&lt;p&gt;But the ordering matters.&lt;/p&gt;

&lt;p&gt;The system places:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Raw messages first → Extracted facts second&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The collection itself is not changed.&lt;/p&gt;

&lt;p&gt;Only the ordering changes.&lt;/p&gt;

&lt;p&gt;Why?&lt;/p&gt;

&lt;p&gt;Because the raw message has not gone through another lossy transformation.&lt;/p&gt;

&lt;p&gt;Consider two retrieved pieces:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“I decided to move to London because my company is opening a new office there.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;and:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“John plans to move to London.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The second is easier to process, but the first contains the actual evidence and context.&lt;/p&gt;

&lt;p&gt;If the answer model only receives a compressed representation, information that seemed irrelevant during extraction may already be gone.&lt;/p&gt;

&lt;p&gt;So ActiveMemoryIndex takes a conservative approach:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Preserve the evidence. Let the model interpret it later.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  5. The Counterintuitive Result: Governance Isn't Always Better
&lt;/h2&gt;

&lt;p&gt;This is perhaps the most interesting finding from the system.&lt;/p&gt;

&lt;p&gt;Memory governance sounds inherently useful.&lt;/p&gt;

&lt;p&gt;A system could:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;detect contradictions;&lt;/li&gt;
&lt;li&gt;downgrade stale information;&lt;/li&gt;
&lt;li&gt;delete outdated memories;&lt;/li&gt;
&lt;li&gt;merge related facts;&lt;/li&gt;
&lt;li&gt;maintain a “current state.”&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But ActiveMemoryIndex does none of these.&lt;/p&gt;

&lt;p&gt;And yet it ranked &lt;strong&gt;#1 on the AML state-update and conflict-resolution dimensions&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;The authors propose a possible explanation:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Governance only helps if it actually improves what reaches the answer model.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;For example, a system might detect that an old value conflicts with a new value and reduce its ranking.&lt;/p&gt;

&lt;p&gt;But the old value may still enter the model's context.&lt;/p&gt;

&lt;p&gt;The model still has to decide what is current.&lt;/p&gt;

&lt;p&gt;By contrast, preserving complete, timestamped evidence may give the reading model enough information to make the decision itself.&lt;/p&gt;

&lt;p&gt;This is an important distinction:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Changing the ranking of evidence is not necessarily the same as resolving the conflict.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The authors present this as a hypothesis rather than a universal conclusion.&lt;/p&gt;




&lt;h2&gt;
  
  
  6. A Surprising Lesson About Context Size
&lt;/h2&gt;

&lt;p&gt;The ActiveMemoryIndex experiments also reveal an interesting benchmark-level issue.&lt;/p&gt;

&lt;p&gt;The authors tested returning a larger “parent block” around retrieved messages.&lt;/p&gt;

&lt;p&gt;It initially appeared to improve performance significantly.&lt;/p&gt;

&lt;p&gt;But when the comparison was controlled for the amount of text returned, the advantage largely disappeared.&lt;/p&gt;

&lt;p&gt;In other words:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;More context can look like better memory simply because the model was allowed to read more.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This exposes a potential limitation of evaluation setups based primarily on the number of retrieved items.&lt;/p&gt;

&lt;p&gt;If one system returns 100 short messages while another returns 100 large blocks, the two systems are technically respecting the same item limit but giving the answer model very different amounts of information.&lt;/p&gt;

&lt;p&gt;The authors therefore suggest that future benchmarks could consider reporting:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;tokens/query + accuracy&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;rather than relying only on a fixed number of retrieved items.&lt;/p&gt;

&lt;p&gt;This is an important question for memory evaluation more broadly:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Are we measuring memory quality, or how much context the system is allowed to spend?&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  7. What ActiveMemoryIndex Doesn't Do
&lt;/h2&gt;

&lt;p&gt;The simplicity of the architecture is also its limitation.&lt;/p&gt;

&lt;p&gt;ActiveMemoryIndex does not currently use:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;knowledge graphs&lt;/li&gt;
&lt;li&gt;hierarchical summaries&lt;/li&gt;
&lt;li&gt;entity disambiguation&lt;/li&gt;
&lt;li&gt;explicit memory governance&lt;/li&gt;
&lt;li&gt;sophisticated state management&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Instead, it relies heavily on:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;preserving raw evidence + retrieval + answer-model reasoning&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This makes the approach lightweight, but it also leaves some difficult problems unresolved.&lt;/p&gt;

&lt;p&gt;The weakest capability in the current submission was &lt;strong&gt;temporal reasoning&lt;/strong&gt;, where the system scored &lt;strong&gt;18.35&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;The authors identify this as a major area for future work.&lt;/p&gt;




&lt;h2&gt;
  
  
  8. What's Next: From Retrieval to Temporal Memory
&lt;/h2&gt;

&lt;p&gt;The next direction is not simply “more retrieval.”&lt;/p&gt;

&lt;p&gt;The team is exploring how to represent temporal information more explicitly.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“I moved last week.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;A memory system should ideally convert that relative expression into an anchored date.&lt;/p&gt;

&lt;p&gt;Similarly, if a user's state changes over time:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“I live in Beijing.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;followed later by:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“I moved to Shanghai.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;the system should understand the relationship between the two states rather than treating them as two unrelated facts.&lt;/p&gt;

&lt;p&gt;This suggests a possible next step:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Raw evidence → temporal anchoring → versioned facts → better state reasoning&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Interestingly, this moves ActiveMemoryIndex closer to the memory-governance layer it deliberately avoided in its current version.&lt;/p&gt;




&lt;h2&gt;
  
  
  9. What Can We Learn From ActiveMemoryIndex?
&lt;/h2&gt;

&lt;p&gt;ActiveMemoryIndex offers a different perspective on Agent Memory.&lt;/p&gt;

&lt;p&gt;Instead of asking:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;How should we organize and govern memory?&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;it asks:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;How much information should we preserve and let the model reason over later?&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Its current results suggest that a lightweight system can remain highly competitive when it:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;preserves original evidence;&lt;/li&gt;
&lt;li&gt;avoids premature information loss;&lt;/li&gt;
&lt;li&gt;improves retrieval through query rewriting;&lt;/li&gt;
&lt;li&gt;gives the answer model enough context to reason about state and conflicts.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But the approach also exposes an important boundary.&lt;/p&gt;

&lt;p&gt;Preserving everything does not automatically mean understanding everything.&lt;/p&gt;

&lt;p&gt;As memory tasks become more temporal, stateful, and long-running, systems may eventually need to decide &lt;strong&gt;what should be remembered, what should expire, and how different versions of the same fact relate to one another.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That makes the trade-off between &lt;strong&gt;preservation and governance&lt;/strong&gt; an interesting direction for future Agent Memory research.&lt;/p&gt;




&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;ActiveMemoryIndex shows that a memory system does not necessarily need a complicated memory-management layer to be competitive.&lt;/p&gt;

&lt;p&gt;Sometimes, the better strategy may be surprisingly simple:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Keep the evidence. Retrieve it well. Let the model reason.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Its &lt;strong&gt;#3 ranking on the first AML Open Leaderboard&lt;/strong&gt; makes this approach particularly interesting — not because it proves that “less governance is better,” but because it raises a deeper question:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;When should a memory system make decisions for the model, and when should it preserve information and let the model decide?&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That is one of the trade-offs we hope to explore through the AML technical deep dive series.&lt;/p&gt;




&lt;h3&gt;
  
  
  Learn More
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;ActiveMemoryIndex GitHub:&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://github.com/linxuhao/ActiveMemoryIndex" rel="noopener noreferrer"&gt;https://github.com/linxuhao/ActiveMemoryIndex&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Underlying research:&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;An Index, Not a Store: The Model Does Remember — It Just Needs Its Notebook&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;HyDE:&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://arxiv.org/abs/2212.10496" rel="noopener noreferrer"&gt;https://arxiv.org/abs/2212.10496&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  About AML
&lt;/h3&gt;

&lt;p&gt;The &lt;strong&gt;Agent Memory Leaderboard (AML)&lt;/strong&gt; is an open evaluation platform for AI Agent Memory systems.&lt;/p&gt;

&lt;p&gt;Through technical deep dives like this one, we aim to look beyond leaderboard scores and understand the &lt;strong&gt;architectures, engineering choices, trade-offs, and limitations&lt;/strong&gt; behind different memory systems.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;One Benchmark. Real Memory.&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>opensource</category>
      <category>discuss</category>
      <category>llm</category>
    </item>
    <item>
      <title>What If AI Agents Didn’t Need Memory? They Could Just Search Their Past</title>
      <dc:creator>Agent Memory Leaderboard</dc:creator>
      <pubDate>Fri, 21 Aug 2026 06:56:06 +0000</pubDate>
      <link>https://dev.to/aml-/what-if-ai-agents-didnt-need-memory-they-could-just-search-their-past-30ed</link>
      <guid>https://dev.to/aml-/what-if-ai-agents-didnt-need-memory-they-could-just-search-their-past-30ed</guid>
      <description>&lt;h1&gt;
  
  
  From Remembering to Searching: How ReFind Challenges AI Agent Memory
&lt;/h1&gt;

&lt;p&gt;Everyone is building AI memory systems.&lt;/p&gt;

&lt;p&gt;But a fundamental question remains:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How should an AI agent actually remember?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;As agents move from simple conversations to long-term collaboration, memory becomes a critical capability.&lt;/p&gt;

&lt;p&gt;However, building memory is not just about storing more information.&lt;/p&gt;

&lt;p&gt;The harder problem is:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;When an agent needs something from the past, how can it find the right information?&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Many memory systems try to solve this by creating structured memories in advance:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;summarizing conversations;&lt;/li&gt;
&lt;li&gt;extracting facts;&lt;/li&gt;
&lt;li&gt;building knowledge structures;&lt;/li&gt;
&lt;li&gt;maintaining memory entries.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But this creates a difficult trade-off:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Before knowing what the user will ask in the future, how can a system know what information will matter?&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This leads to another possible direction:&lt;/p&gt;

&lt;p&gt;Instead of trying to remember everything beforehand, what if an agent could search its own history when needed?&lt;/p&gt;

&lt;p&gt;This is the idea behind &lt;strong&gt;ReFind&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;In the first &lt;strong&gt;Agent Memory Leaderboard (AML) Open Leaderboard&lt;/strong&gt;, ReFind achieved a score of &lt;strong&gt;44.97&lt;/strong&gt;, ranking &lt;strong&gt;#2 among open-source memory systems&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Rather than pre-building complex memory representations, ReFind keeps raw conversation history and lets agents actively search for relevant evidence.&lt;/p&gt;




&lt;h1&gt;
  
  
  The Core Idea: Let Agents Search Their Own History
&lt;/h1&gt;

&lt;p&gt;Humans do not perfectly remember every conversation.&lt;/p&gt;

&lt;p&gt;When we forget something from an old chat, we usually do not reconstruct the entire conversation from memory.&lt;/p&gt;

&lt;p&gt;We search.&lt;/p&gt;

&lt;p&gt;We open the conversation.&lt;/p&gt;

&lt;p&gt;We try keywords.&lt;/p&gt;

&lt;p&gt;We check surrounding messages.&lt;/p&gt;

&lt;p&gt;If necessary, we search again.&lt;/p&gt;

&lt;p&gt;ReFind takes inspiration from this behavior.&lt;/p&gt;

&lt;p&gt;Instead of deciding during the write stage what information will be important, ReFind keeps the original conversation records and allows the agent to explore them when a query arrives.&lt;/p&gt;

&lt;p&gt;The goal changes from:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Build the perfect memory beforehand.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;to:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Find the right evidence when it is needed.”&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h1&gt;
  
  
  How ReFind Works
&lt;/h1&gt;

&lt;p&gt;ReFind combines several mechanisms to simulate human-like search behavior:&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Multi-turn Search
&lt;/h2&gt;

&lt;p&gt;Traditional retrieval often follows:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Query → Retrieve → Answer&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;But real information search is usually iterative.&lt;/p&gt;

&lt;p&gt;A user may search one keyword, inspect results, refine the query, and search again.&lt;/p&gt;

&lt;p&gt;ReFind allows the retrieval agent to decide:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;what to search;&lt;/li&gt;
&lt;li&gt;whether more searching is needed;&lt;/li&gt;
&lt;li&gt;which evidence should be kept.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This turns retrieval from a one-shot operation into an exploration process.&lt;/p&gt;




&lt;h2&gt;
  
  
  2. Context Browsing
&lt;/h2&gt;

&lt;p&gt;A retrieved message is not always enough.&lt;/p&gt;

&lt;p&gt;A single sentence may depend on surrounding conversation:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;previous decisions;&lt;/li&gt;
&lt;li&gt;explanations;&lt;/li&gt;
&lt;li&gt;conditions;&lt;/li&gt;
&lt;li&gt;follow-up results.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Let’s use the previous approach.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Without context, the sentence has little meaning.&lt;/p&gt;

&lt;p&gt;ReFind therefore allows the agent to inspect surrounding messages instead of treating retrieved memories as isolated fragments.&lt;/p&gt;

&lt;p&gt;The key idea:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Useful memory is not always one matching sentence. Sometimes it is the context around it.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  3. Moving Computation from Write Time to Query Time
&lt;/h2&gt;

&lt;p&gt;One of ReFind's most important design choices is where computation happens.&lt;/p&gt;

&lt;p&gt;Traditional memory systems often process information when it is created:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Conversation
↓
Extract / Summarize
↓
Structured Memory
↓
Retrieve
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;ReFind takes another approach:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Conversation
↓
Keep Raw Records
↓
Search When Needed
↓
Retrieve Evidence
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This creates a clear trade-off.&lt;/p&gt;

&lt;p&gt;Pre-built memory can make future retrieval faster, but requires the system to decide early what information should be preserved.&lt;/p&gt;

&lt;p&gt;ReFind delays this decision.&lt;/p&gt;

&lt;p&gt;Instead of paying the cost for every conversation, it spends more computation only when a query actually requires deeper search.&lt;/p&gt;




&lt;h1&gt;
  
  
  The Limitation: Search Is Not Always Enough
&lt;/h1&gt;

&lt;p&gt;ReFind shows that active search can be a powerful memory strategy.&lt;/p&gt;

&lt;p&gt;But it also reveals a deeper challenge.&lt;/p&gt;

&lt;p&gt;A search system still needs a connection between the current query and the memory it should retrieve.&lt;/p&gt;

&lt;p&gt;Consider:&lt;/p&gt;

&lt;p&gt;Current question:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“I want to adopt a cat.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Historical memory:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“I have many lilies at home.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;These two statements may have little semantic similarity.&lt;/p&gt;

&lt;p&gt;A retrieval system may search for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;cats;&lt;/li&gt;
&lt;li&gt;pets;&lt;/li&gt;
&lt;li&gt;adoption.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But it may never find the information about lilies.&lt;/p&gt;

&lt;p&gt;However, that memory could be critical because lilies can be dangerous for cats.&lt;/p&gt;

&lt;p&gt;The problem is not reasoning.&lt;/p&gt;

&lt;p&gt;The problem is:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;The agent never retrieved the memory it needed.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h1&gt;
  
  
  Beyond Retrieval: The Future of Agent Memory
&lt;/h1&gt;

&lt;p&gt;This challenge is explored by the ReFind team's additional benchmark, &lt;strong&gt;InMind&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;ReFind and InMind represent two different questions:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;ReFind:&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;How can agents search their history better?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;InMind:&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;What if the important memory cannot be found through similarity alone?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Together, they highlight a broader challenge for Agent Memory:&lt;/p&gt;

&lt;p&gt;Future systems may need not only better retrieval, but also better understanding of:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;when a past event matters;&lt;/li&gt;
&lt;li&gt;which memories should be recalled;&lt;/li&gt;
&lt;li&gt;and how hidden connections between memories should be discovered.&lt;/li&gt;
&lt;/ul&gt;




&lt;h1&gt;
  
  
  Conclusion
&lt;/h1&gt;

&lt;p&gt;ReFind starts from a simple idea:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Agents may not need to remember everything. They need the ability to find what matters.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;By preserving raw conversation history and enabling active search, ReFind provides an alternative direction for building AI memory systems.&lt;/p&gt;

&lt;p&gt;The first AML results show that search-based memory can be highly competitive.&lt;/p&gt;

&lt;p&gt;At the same time, they raise a bigger question:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Should agents only retrieve memories when asked — or should they also know when something from the past matters?&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h1&gt;
  
  
  Thanks to the ReFind Team
&lt;/h1&gt;

&lt;p&gt;We would like to thank the &lt;strong&gt;ReFind team&lt;/strong&gt; for sharing their approach and contributing to the AML Technical Deep Dive series.&lt;/p&gt;

&lt;p&gt;The goal of this series is to make different memory systems easier to understand, compare, and learn from — not only through leaderboard scores, but also through the ideas and engineering choices behind them.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;This is the second technical deep dive in the AML series. More breakdowns of top-performing memory systems are coming soon.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;ReFind GitHub Repository&lt;br&gt;
&lt;a href="https://github.com/imlrz/ReFind" rel="noopener noreferrer"&gt;https://github.com/imlrz/ReFind&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;InMind Benchmark&lt;br&gt;
Keep It InMind: Benchmarking the Implicit-Association Blind Spot in Agent Memory&lt;br&gt;
&lt;a href="https://arxiv.org/abs/2607.24368" rel="noopener noreferrer"&gt;https://arxiv.org/abs/2607.24368&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;InMind GitHub Repository&lt;br&gt;
&lt;a href="https://github.com/imlrz/InMind" rel="noopener noreferrer"&gt;https://github.com/imlrz/InMind&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Agent Memory Leaderboard (AML)&lt;br&gt;
&lt;a href="https://huggingface.co/spaces/agent-memory-leaderboard/leaderboard" rel="noopener noreferrer"&gt;https://huggingface.co/spaces/agent-memory-leaderboard/leaderboard&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>opensource</category>
      <category>machinelearning</category>
      <category>llm</category>
    </item>
    <item>
      <title>AML Technical Deep Dive #1: From “Similarity” to “Completeness” — How InvMem Retrieves Useful Long-Term Memory</title>
      <dc:creator>Agent Memory Leaderboard</dc:creator>
      <pubDate>Thu, 20 Aug 2026 03:33:05 +0000</pubDate>
      <link>https://dev.to/aml-/aml-technical-deep-dive-1-from-similarity-to-completeness-how-invmem-retrieves-useful-55ag</link>
      <guid>https://dev.to/aml-/aml-technical-deep-dive-1-from-similarity-to-completeness-how-invmem-retrieves-useful-55ag</guid>
      <description>&lt;p&gt;Retrieving memory for an AI agent sounds simple:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Given the current query, find the most relevant memories.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;In practice, however, semantic similarity is not always enough.&lt;/p&gt;

&lt;p&gt;A retrieved memory may be highly similar to the query while still missing the surrounding context needed for the agent to make the right decision.&lt;/p&gt;

&lt;p&gt;This is the problem InvMem approaches from a different angle:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Memory retrieval should not only find similar information. It should recover enough relevant context to reconstruct a useful memory.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  1. Fine-grained Chunking: Breaking Memory into Smaller Units
&lt;/h2&gt;

&lt;p&gt;One part of InvMem's approach is &lt;strong&gt;fine-grained chunking&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Instead of treating a long piece of historical information as one indivisible memory unit, InvMem breaks it down into smaller pieces.&lt;/p&gt;

&lt;p&gt;This gives the retrieval system more flexibility:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;different parts of the same historical interaction can be retrieved independently;&lt;/li&gt;
&lt;li&gt;more precise information can be matched against the current query;&lt;/li&gt;
&lt;li&gt;irrelevant parts of a long memory are less likely to dominate retrieval.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But finer-grained retrieval also creates a new problem:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What if the most relevant chunk does not contain enough context on its own?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This leads to the next part of the design.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Hybrid Retrieval: Dense Retrieval + BM25
&lt;/h2&gt;

&lt;p&gt;InvMem combines &lt;strong&gt;dense retrieval&lt;/strong&gt; with &lt;strong&gt;BM25&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;These two retrieval approaches capture different types of relevance.&lt;/p&gt;

&lt;p&gt;Dense retrieval is useful for semantic similarity. It can identify memories that express similar concepts even when the wording is different.&lt;/p&gt;

&lt;p&gt;BM25, on the other hand, is particularly useful for lexical matching and exact terms.&lt;/p&gt;

&lt;p&gt;For memory retrieval, combining the two provides a broader retrieval signal than relying on either method alone.&lt;/p&gt;

&lt;p&gt;The goal is not simply to find:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Which memory looks most similar?”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;but rather:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Which memories are most likely to contain useful evidence for the current query?”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  3. Weighted RRF: Combining Different Retrieval Signals
&lt;/h2&gt;

&lt;p&gt;After obtaining candidates from different retrieval methods, InvMem uses &lt;strong&gt;Weighted Reciprocal Rank Fusion (Weighted RRF)&lt;/strong&gt; to combine their rankings.&lt;/p&gt;

&lt;p&gt;This allows the system to integrate signals from dense retrieval and BM25 rather than choosing one retrieval method over the other.&lt;/p&gt;

&lt;p&gt;Conceptually, the pipeline becomes:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Query → Dense Retrieval&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;Query → BM25&lt;/strong&gt;&lt;br&gt;
↓&lt;br&gt;
&lt;strong&gt;Weighted RRF&lt;/strong&gt;&lt;br&gt;
↓&lt;br&gt;
&lt;strong&gt;Unified candidate ranking&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This matters because memory relevance is rarely one-dimensional.&lt;/p&gt;

&lt;p&gt;A memory can be semantically relevant while lacking an important keyword, or contain an exact keyword while being less relevant to the overall meaning of the query.&lt;/p&gt;

&lt;p&gt;Combining the two signals helps balance these cases.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Same-session Adjacency Expansion: Recovering Context
&lt;/h2&gt;

&lt;p&gt;This is one of the more interesting parts of InvMem's approach.&lt;/p&gt;

&lt;p&gt;A highly relevant memory chunk does not necessarily contain the entire context needed by the agent.&lt;/p&gt;

&lt;p&gt;Historical conversations often contain information that is distributed across neighboring turns.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Turn A: The user describes a problem.&lt;br&gt;
Turn B: The agent proposes a solution.&lt;br&gt;
Turn C: The user confirms what worked.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;If retrieval only returns Turn B, the agent may know the solution but not fully understand &lt;strong&gt;why it was proposed or whether it was actually validated&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;InvMem therefore performs &lt;strong&gt;same-session adjacency expansion&lt;/strong&gt; after retrieval.&lt;/p&gt;

&lt;p&gt;The retrieved chunk can bring in neighboring information from the same session, helping reconstruct a more complete context.&lt;/p&gt;

&lt;p&gt;This reflects an important distinction:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;The most similar chunk is not necessarily the most useful memory.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Sometimes the useful memory is the &lt;strong&gt;retrieved chunk plus the context surrounding it&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  5. From Similarity to Completeness
&lt;/h2&gt;

&lt;p&gt;Putting these components together, InvMem's retrieval pipeline can be understood as:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Fine-grained Chunking&lt;/strong&gt;&lt;br&gt;
↓&lt;br&gt;
&lt;strong&gt;Dense Retrieval + BM25&lt;/strong&gt;&lt;br&gt;
↓&lt;br&gt;
&lt;strong&gt;Weighted RRF&lt;/strong&gt;&lt;br&gt;
↓&lt;br&gt;
&lt;strong&gt;Same-session Adjacency Expansion&lt;/strong&gt;&lt;br&gt;
↓&lt;br&gt;
&lt;strong&gt;More complete memory context&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The key idea is not to maximize the amount of memory retrieved.&lt;/p&gt;

&lt;p&gt;It is to improve the chance that the retrieved information contains the &lt;strong&gt;complete evidence needed by the agent&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;This leads to a broader question for AI memory systems:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Should memory retrieval be optimized for similarity, or for usefulness?&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;InvMem's approach suggests that these two objectives are not always the same.&lt;/p&gt;




&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fyml253atte8xm33p8hj0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fyml253atte8xm33p8hj0.png" alt=" " width="800" height="289"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Why This Matters for Agent Memory
&lt;/h2&gt;

&lt;p&gt;Long-term memory is becoming an increasingly important component of agent systems.&lt;/p&gt;

&lt;p&gt;But as memory systems become more sophisticated, the retrieval problem becomes more than a standard vector-search problem.&lt;/p&gt;

&lt;p&gt;An agent may need:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;a specific fact;&lt;/li&gt;
&lt;li&gt;a previous decision;&lt;/li&gt;
&lt;li&gt;the reasoning behind that decision;&lt;/li&gt;
&lt;li&gt;evidence that a solution worked;&lt;/li&gt;
&lt;li&gt;or the surrounding context needed to interpret a retrieved memory correctly.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This makes &lt;strong&gt;memory completeness&lt;/strong&gt; an important dimension to consider alongside retrieval relevance.&lt;/p&gt;

&lt;p&gt;The InvMem result is therefore interesting not only because it achieved &lt;strong&gt;Rank #1 with 45.06 on the first AML Open Leaderboard&lt;/strong&gt;, but also because it illustrates one possible direction for moving beyond simple similarity-based retrieval.&lt;/p&gt;




&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fubmyvr5t9pmu771hh0j5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fubmyvr5t9pmu771hh0j5.png" alt=" " width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Thanks to the InvMem Team
&lt;/h3&gt;

&lt;p&gt;We’d like to thank the &lt;strong&gt;InvMem team&lt;/strong&gt; for sharing their approach and contributing to the AML technical deep dive series.&lt;/p&gt;

&lt;p&gt;The goal of this series is to make different memory systems easier to understand, compare, and learn from — not just through leaderboard scores, but through the ideas and engineering decisions behind them.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;This is the first deep dive in the series. More technical breakdowns are coming soon.&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>programming</category>
      <category>machinelearning</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Beyond Retrieval: What We Learned From the First Agent Memory Leaderboard</title>
      <dc:creator>Agent Memory Leaderboard</dc:creator>
      <pubDate>Mon, 17 Aug 2026 06:40:15 +0000</pubDate>
      <link>https://dev.to/aml-/beyond-retrieval-what-we-learned-from-the-first-agent-memory-leaderboard-33oh</link>
      <guid>https://dev.to/aml-/beyond-retrieval-what-we-learned-from-the-first-agent-memory-leaderboard-33oh</guid>
      <description>&lt;p&gt;AI memory is becoming an increasingly important part of agent infrastructure.&lt;/p&gt;

&lt;p&gt;But there is still a basic problem:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How should we actually measure memory?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;It is easy to demonstrate that an agent can remember something.&lt;/p&gt;

&lt;p&gt;It is much harder to determine whether one memory architecture is genuinely better than another.&lt;/p&gt;

&lt;p&gt;Different memory systems can use different datasets, models, prompts, retrieval strategies, and evaluation pipelines.&lt;/p&gt;

&lt;p&gt;That makes many existing comparisons difficult to interpret.&lt;/p&gt;

&lt;p&gt;The first season of the** Agent Memory Leaderboard (AML)** was designed around this problem.&lt;/p&gt;

&lt;p&gt;After evaluating &lt;strong&gt;69 representative memory systems from 136 registered teams&lt;/strong&gt;, we want to share some of the technical observations from the first season.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. The Problem With Evaluating Memory&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Consider a simple agent:&lt;/p&gt;

&lt;p&gt;Conversation History&lt;br&gt;
        ↓&lt;br&gt;
   Memory System&lt;br&gt;
        ↓&lt;br&gt;
 Retrieved Memories&lt;br&gt;
        ↓&lt;br&gt;
   Answer Model&lt;br&gt;
        ↓&lt;br&gt;
     Evaluation&lt;/p&gt;

&lt;p&gt;If the agent gives the correct answer, which component deserves the credit?&lt;/p&gt;

&lt;p&gt;The memory system may have retrieved excellent evidence.&lt;/p&gt;

&lt;p&gt;But the answer model may also be stronger.&lt;/p&gt;

&lt;p&gt;The prompt may be better.&lt;/p&gt;

&lt;p&gt;The judge may use a different rubric.&lt;/p&gt;

&lt;p&gt;Even the underlying dataset may favor one architecture over another.&lt;/p&gt;

&lt;p&gt;This creates a fundamental attribution problem.&lt;/p&gt;

&lt;p&gt;A memory benchmark therefore needs to control as many variables as possible outside the memory layer.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fabkzhvnht94p9i844ub9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fabkzhvnht94p9i844ub9.png" alt=" " width="768" height="512"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Separating Memory From the Rest of the Agent&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;AML uses a clearer system boundary.&lt;/p&gt;

&lt;p&gt;The participating memory system is responsible for:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Add → Search&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The benchmark platform handles:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Answer → Eval&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The idea is straightforward.&lt;/p&gt;

&lt;p&gt;If different systems are evaluated with the same downstream answering and evaluation pipeline, differences in the final results can be more meaningfully attributed to the memory layer.&lt;/p&gt;

&lt;p&gt;This does not make every source of bias disappear.&lt;/p&gt;

&lt;p&gt;A benchmark still needs to consider dataset composition, judge calibration, private test sets, system versions, and other factors.&lt;/p&gt;

&lt;p&gt;But establishing a clear evaluation contract is an important starting point.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fuehwqj3n6mtk00qmzqce.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fuehwqj3n6mtk00qmzqce.png" alt=" " width="768" height="512"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Why Retrieval Alone Is Not Enough&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;One of the most important lessons from the first season is that AI memory is not simply a retrieval problem.&lt;/p&gt;

&lt;p&gt;Imagine an agent remembers:&lt;/p&gt;

&lt;p&gt;&lt;u&gt;&lt;em&gt;“The project uses PostgreSQL.”&lt;/em&gt;&lt;/u&gt;&lt;/p&gt;

&lt;p&gt;Three months later, the architecture changes to:&lt;/p&gt;

&lt;p&gt;&lt;u&gt;&lt;em&gt;“The project migrated to MySQL.”&lt;/em&gt;&lt;/u&gt;&lt;/p&gt;

&lt;p&gt;A useful memory system needs more than semantic similarity.&lt;/p&gt;

&lt;p&gt;It needs to understand that the newer information changes the state of the previous memory.&lt;/p&gt;

&lt;p&gt;The same problem appears with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;changing user preferences&lt;/li&gt;
&lt;li&gt;outdated instructions&lt;/li&gt;
&lt;li&gt;conflicting facts&lt;/li&gt;
&lt;li&gt;evolving project requirements&lt;/li&gt;
&lt;li&gt;previous decisions and rejected alternatives&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is why future memory systems will need stronger mechanisms for:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;formation → organization → retrieval → updating → forgetting&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Memory management becomes part of the intelligence of the agent.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fkoqh093cbyr14ugoi6w5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fkoqh093cbyr14ugoi6w5.png" alt=" " width="768" height="512"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Measuring Multiple Memory Capabilities&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;AML evaluates memory across multiple dimensions rather than reducing everything to retrieval.&lt;/p&gt;

&lt;p&gt;The first evaluation includes dimensions such as:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Fact Recall&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Can the system recover information that appeared previously?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Compositional Reasoning&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Can the agent connect multiple pieces of historical information?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Temporal Reasoning&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Can the system understand changes and relationships across time?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Personalization&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Can it maintain an accurate representation of a user's preferences and characteristics?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Memory Governance&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Can the system manage memory appropriately?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Rule &amp;amp; Workflow Execution&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Can historical information help the agent follow established rules and workflows?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Safety &amp;amp; Privacy&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Can memory remain useful without introducing unwanted information or interference?&lt;/p&gt;

&lt;p&gt;These dimensions matter because memory systems can have very different capability profiles.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;5. What Did the First Leaderboard Show?&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;Commercial Products&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The first Commercial Products — Text Memory ranking was:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Rank    System             Score&lt;/strong&gt;&lt;br&gt;
1     MemoraX            58.02&lt;br&gt;
2     MemOS                  45.89&lt;br&gt;
3     NTES-MEMORY-SMART  44.21&lt;/p&gt;

&lt;p&gt;The gap between the top systems illustrates one of the benefits of having a unified evaluation environment.&lt;/p&gt;

&lt;p&gt;Rather than comparing isolated benchmark claims from different projects, the systems are evaluated under the same framework.&lt;/p&gt;

&lt;p&gt;But the overall score is only part of the story.&lt;/p&gt;

&lt;p&gt;A system's capability profile can reveal much more about its underlying strengths and weaknesses.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;6. Open-source Methods Show a Different Pattern&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The open-source ranking was considerably tighter:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Rank    System           Score&lt;/strong&gt;&lt;br&gt;
1     InvMem           45.10&lt;br&gt;
2     ReFind           45.00&lt;br&gt;
3   ActiveMemoryIndex       44.80&lt;/p&gt;

&lt;p&gt;The difference between the top three is relatively small.&lt;/p&gt;

&lt;p&gt;This suggests that there is no single dominant approach to memory yet.&lt;/p&gt;

&lt;p&gt;Different systems are exploring different combinations of retrieval, indexing, reasoning, memory organization, and query processing.&lt;/p&gt;

&lt;p&gt;That diversity is valuable for a young research area.&lt;/p&gt;

&lt;p&gt;A benchmark should not only identify winners.&lt;/p&gt;

&lt;p&gt;It should help researchers understand &lt;strong&gt;which approaches work, under which capabilities, and where the remaining gaps are.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;7. Long Context Does Not Equal Long-Term Memory&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The rapid expansion of context windows raises another important question.&lt;/p&gt;

&lt;p&gt;If a model can process millions of tokens, why do we need a separate memory layer?&lt;/p&gt;

&lt;p&gt;Because context and memory solve different problems.&lt;/p&gt;

&lt;p&gt;A context window answers:&lt;/p&gt;

&lt;p&gt;&lt;u&gt;&lt;em&gt;What information can the model access right now?&lt;/em&gt;&lt;/u&gt;&lt;/p&gt;

&lt;p&gt;Memory asks:&lt;/p&gt;

&lt;p&gt;&lt;u&gt;&lt;em&gt;What information should the agent retain and reuse over time?&lt;/em&gt;&lt;/u&gt;&lt;/p&gt;

&lt;p&gt;For a long-running agent, simply keeping more information in context is not necessarily a scalable solution.&lt;/p&gt;

&lt;p&gt;The system still needs to determine:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;what is important,&lt;/li&gt;
&lt;li&gt;what is outdated,&lt;/li&gt;
&lt;li&gt;what is relevant to the current task,&lt;/li&gt;
&lt;li&gt;and what should influence future behavior.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The memory layer therefore becomes a mechanism for managing persistent state rather than simply extending the prompt.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;8. The Next Challenge: Memory for Long-Running Agents&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The hardest memory problems are likely to appear when agents operate continuously.&lt;/p&gt;

&lt;p&gt;Consider a coding agent working on the same repository for weeks.&lt;/p&gt;

&lt;p&gt;It may need to remember:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;architectural decisions&lt;/li&gt;
&lt;li&gt;coding conventions&lt;/li&gt;
&lt;li&gt;previous debugging attempts&lt;/li&gt;
&lt;li&gt;dependencies&lt;/li&gt;
&lt;li&gt;user preferences&lt;/li&gt;
&lt;li&gt;rejected approaches&lt;/li&gt;
&lt;li&gt;known failure modes&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Without persistent memory, the agent repeatedly rediscovers this information.&lt;/p&gt;

&lt;p&gt;With poor memory, it may retrieve outdated or contradictory information.&lt;/p&gt;

&lt;p&gt;This makes &lt;strong&gt;coding agents&lt;/strong&gt; an especially interesting environment for studying long-term memory.&lt;/p&gt;

&lt;p&gt;The problem becomes:&lt;/p&gt;

&lt;p&gt;&lt;u&gt;&lt;em&gt;How can an agent accumulate useful experience without accumulating noise?&lt;/em&gt;&lt;/u&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;9. What a Future Memory Benchmark Should Measure&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The first season also raises questions for future evaluation.&lt;/p&gt;

&lt;p&gt;A more complete benchmark may need to examine:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Memory quality&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Does the system retrieve the right information?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Memory evolution&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Can it update outdated information?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conflict resolution&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;What happens when memories contradict each other?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Abstention&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Can the system recognize when something is not known?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Efficiency&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;What are the storage, latency, and inference costs?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Long-horizon stability&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Does performance degrade as memory accumulates?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Version consistency&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Does a commercial memory API behave consistently as the underlying system evolves?&lt;/p&gt;

&lt;p&gt;These are difficult problems, but they are increasingly important as memory moves from research prototypes into production agents.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;10. The First Season Is Only a Starting Point&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The goal of AML is not to declare a permanent winner.&lt;/p&gt;

&lt;p&gt;AI memory is still evolving rapidly.&lt;/p&gt;

&lt;p&gt;The first season gives us a common starting point for comparing systems and identifying where different approaches succeed or struggle.&lt;/p&gt;

&lt;p&gt;Future seasons will need to become more comprehensive as agents become more capable and more autonomous.&lt;/p&gt;

&lt;p&gt;We hope AML can provide an open environment where researchers and developers can:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;evaluate new memory architectures&lt;/li&gt;
&lt;li&gt;compare different approaches&lt;/li&gt;
&lt;li&gt;reproduce results&lt;/li&gt;
&lt;li&gt;identify weaknesses&lt;/li&gt;
&lt;li&gt;and build better long-term agents&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The field needs more systems, more experiments, and better evaluation.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;The first leaderboard is only the beginning.&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Explore the First AML Season&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Leaderboard:&lt;br&gt;
&lt;a href="https://agentmemoryleaderboard.ai/leaderboard/academic/textual?utm_source=chatgpt.com" rel="noopener noreferrer"&gt;Agent Memory Leaderboard&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;GitHub:&lt;br&gt;
&lt;a href="https://github.com/AML-memory/agent-memory-leaderboard?utm_source=chatgpt.com" rel="noopener noreferrer"&gt;AML GitHub&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Hugging Face:&lt;br&gt;
&lt;a href="https://huggingface.co/agent-memory-leaderboard?utm_source=chatgpt.com" rel="noopener noreferrer"&gt;AML on Hugging Face&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>agents</category>
      <category>machinelearning</category>
      <category>llm</category>
    </item>
    <item>
      <title>Building a Fair Benchmark for AI Agent Memory Systems</title>
      <dc:creator>Agent Memory Leaderboard</dc:creator>
      <pubDate>Thu, 13 Aug 2026 02:51:12 +0000</pubDate>
      <link>https://dev.to/aml-/building-a-fair-benchmark-for-ai-agent-memory-systems-1i1i</link>
      <guid>https://dev.to/aml-/building-a-fair-benchmark-for-ai-agent-memory-systems-1i1i</guid>
      <description>&lt;p&gt;Everyone is building AI memory systems.&lt;/p&gt;

&lt;p&gt;But how do we know which ones actually work?&lt;/p&gt;

&lt;p&gt;As AI agents move from one-off interactions toward long-term collaboration, memory is becoming a core capability. Yet evaluating memory systems fairly is surprisingly difficult.&lt;/p&gt;

&lt;p&gt;Different systems often use different datasets, answer models, prompts, and evaluation methods. When the final score changes, it can be hard to tell whether the difference comes from the memory system itself or from the evaluation setup.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;That's why we built Agent Memory Leaderboard (AML).&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why Do We Need a Memory Benchmark?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Memory is more than storing conversation history.&lt;/p&gt;

&lt;p&gt;A useful memory system needs to retrieve relevant information, connect information across time, handle changing states, and provide useful context for an agent's current task.&lt;/p&gt;

&lt;p&gt;But there hasn't been a common evaluation environment where different memory approaches can be compared under the same conditions.&lt;/p&gt;

&lt;p&gt;AML was created to provide that common ground.&lt;/p&gt;

&lt;p&gt;The first edition was jointly initiated by nearly 30 universities and research institutions and covers two evaluation tracks:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Open-source Methods — Text Memory&lt;/li&gt;
&lt;li&gt;Commercial Products — Text Memory&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;As of August 12, 2026:&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;strong&gt;136 teams&lt;/strong&gt; registered for the competition&lt;br&gt;
&lt;strong&gt;67 representative memory frameworks&lt;/strong&gt; successfully completed the first evaluation&lt;br&gt;
The AML website surpassed &lt;strong&gt;200,000 clicks&lt;/strong&gt;&lt;br&gt;
The website passed &lt;strong&gt;100,000 clicks&lt;/strong&gt; within the first 10 days&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The first leaderboard results are now live.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Making Memory Systems More Comparable&lt;/p&gt;

&lt;p&gt;One of the main challenges we wanted to address was evaluation consistency.&lt;/p&gt;

&lt;p&gt;In a typical setup, a memory system may be evaluated together with a particular answer model, prompt, or judge.&lt;/p&gt;

&lt;p&gt;That makes direct comparison difficult.&lt;/p&gt;

&lt;p&gt;A higher score could come from a better memory system — but it could also come from a stronger downstream model or a different evaluation setup.&lt;/p&gt;

&lt;p&gt;AML tries to separate these components.&lt;/p&gt;

&lt;p&gt;The core interface for participating memory systems is:&lt;/p&gt;

&lt;p&gt;Memory System&lt;br&gt;
&lt;em&gt;Add → Search&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;The memory system receives long-term history through Add, and returns relevant memories through Search.&lt;/p&gt;

&lt;p&gt;Then AML handles:&lt;/p&gt;

&lt;p&gt;AML Evaluation Platform&lt;br&gt;
&lt;em&gt;Answer → Eval&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Answer generation and evaluation are completed by the benchmark platform under the same evaluation process.&lt;/p&gt;

&lt;p&gt;This helps reduce the impact of different answer models, prompts, judges, and scoring conventions.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fa0tk0g3io5ftz216n26w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fa0tk0g3io5ftz216n26w.png" alt=" " width="800" height="640"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The goal is simple:&lt;/p&gt;

&lt;p&gt;Compare memory systems under the same conditions as much as possible.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Memory Is More Than Retrieval&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A memory system shouldn't be judged only by whether it can retrieve something that looks similar. Memory quality is not only about retrieving similar information, but about understanding relevance, context, time, and task requirements.&lt;/p&gt;

&lt;p&gt;For text memory, AML evaluates multiple capabilities, including:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Factual recall&lt;/li&gt;
&lt;li&gt;Relational and multi-hop reasoning&lt;/li&gt;
&lt;li&gt;Temporal and event understanding&lt;/li&gt;
&lt;li&gt;Memory governance&lt;/li&gt;
&lt;li&gt;Personalization and care&lt;/li&gt;
&lt;li&gt;Rules and workflow execution&lt;/li&gt;
&lt;li&gt;Epistemic safety and privacy&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This matters because real-world agent memory is not just a search problem.&lt;/p&gt;

&lt;p&gt;An agent may need to understand:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What happened before?&lt;/li&gt;
&lt;li&gt;When did it happen?&lt;/li&gt;
&lt;li&gt;What changed afterward?&lt;/li&gt;
&lt;li&gt;Which previous experience is relevant now?&lt;/li&gt;
&lt;li&gt;Which information should be trusted?&lt;/li&gt;
&lt;li&gt;How should that memory affect the current task?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A useful memory system needs to handle these questions together.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The First Results&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The first AML evaluation has now been completed.&lt;/p&gt;

&lt;p&gt;67 representative memory frameworks successfully completed the evaluation across two tracks covering text memory for both open-source methods and commercial products.&lt;/p&gt;

&lt;p&gt;The complete rankings, scores, and system versions are available on the leaderboard.&lt;/p&gt;

&lt;p&gt;Leaderboard:&lt;br&gt;
[&lt;a href="https://agentmemoryleaderboard.ai/leaderboard/industry/textual" rel="noopener noreferrer"&gt;https://agentmemoryleaderboard.ai/leaderboard/industry/textual&lt;/a&gt; ]&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What Comes Next?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The first leaderboard is not the finish line.&lt;/p&gt;

&lt;p&gt;We plan to keep AML running as a long-term evaluation and public leaderboard for agent memory systems.&lt;/p&gt;

&lt;p&gt;Going forward, we will publish deeper technical analyses of the first-round results, including:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Technical architectures that performed well&lt;/li&gt;
&lt;li&gt;Interesting evaluation patterns&lt;/li&gt;
&lt;li&gt;Performance across individual memory capabilities&lt;/li&gt;
&lt;li&gt;Differences between text and code memory&lt;/li&gt;
&lt;li&gt;What current results tell us about the evolution of agent memory&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;We also want the benchmark itself to evolve.&lt;/p&gt;

&lt;p&gt;If you are working on AI agents, memory systems, evaluation, or related research, we would love to hear what you think a useful memory benchmark should measure next.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Four Evaluation Tracks&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;To better reflect different types of memory systems, AML organizes evaluation into two tracks:&lt;br&gt;
&lt;strong&gt;Open-source Methods&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Text Memory&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Commercial Products&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Text Memory&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Each track evaluates systems under the same benchmark framework.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Explore AML&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Leaderboard:&lt;br&gt;
[&lt;a href="https://agentmemoryleaderboard.ai/leaderboard/industry/textual" rel="noopener noreferrer"&gt;https://agentmemoryleaderboard.ai/leaderboard/industry/textual&lt;/a&gt;]&lt;/p&gt;

&lt;p&gt;GitHub:&lt;br&gt;
[&lt;a href="https://github.com/AML-memory/agent-memory-leaderboard" rel="noopener noreferrer"&gt;https://github.com/AML-memory/agent-memory-leaderboard&lt;/a&gt;]&lt;/p&gt;

&lt;p&gt;Hugging Face Space:&lt;br&gt;
[&lt;a href="https://huggingface.co/agent-memory-leaderboard" rel="noopener noreferrer"&gt;https://huggingface.co/agent-memory-leaderboard&lt;/a&gt;]&lt;/p&gt;

&lt;p&gt;X:&lt;br&gt;
[&lt;a href="https://x.com/AgentMemoryL/status/2087544165433590240" rel="noopener noreferrer"&gt;https://x.com/AgentMemoryL/status/2087544165433590240&lt;/a&gt;]&lt;/p&gt;

&lt;p&gt;Contact:&lt;br&gt;
&lt;a href="mailto:contactus@agentmemoryleaderboard.ai"&gt;contactus@agentmemoryleaderboard.ai&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The first results are out.&lt;/p&gt;

&lt;p&gt;Now the real work begins:&lt;/p&gt;

&lt;h2&gt;
  
  
  Make memory measurable. Make progress verifiable.
&lt;/h2&gt;

</description>
      <category>ai</category>
      <category>agents</category>
      <category>machinelearning</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Why AI Agents Need Memory Benchmarks？</title>
      <dc:creator>Agent Memory Leaderboard</dc:creator>
      <pubDate>Mon, 10 Aug 2026 08:18:18 +0000</pubDate>
      <link>https://dev.to/aml-/why-ai-agents-need-memory-benchmarks-1j6f</link>
      <guid>https://dev.to/aml-/why-ai-agents-need-memory-benchmarks-1j6f</guid>
      <description>&lt;p&gt;AI agents are getting better at reasoning, coding, and tool use.&lt;/p&gt;

&lt;p&gt;But one question remains open:&lt;/p&gt;

&lt;p&gt;How do we know if an agent actually remembers and learns from previous interactions?&lt;/p&gt;

&lt;p&gt;Most current evaluations focus on immediate task performance. However, real-world agents often need more than that.&lt;/p&gt;

&lt;p&gt;They need to remember:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;previous decisions and why they were made&lt;/li&gt;
&lt;li&gt;failed approaches and lessons learned&lt;/li&gt;
&lt;li&gt;project-specific patterns and context&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Memory is becoming a key capability for long-running AI agents, but evaluating it fairly is still challenging.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Different systems often use different datasets, models, and evaluation methods, making direct comparisons difficult.&lt;/p&gt;

&lt;p&gt;We believe open and reproducible evaluation is an important step toward building better AI agents.&lt;/p&gt;

&lt;p&gt;This week, we will share the first results from an open evaluation effort for AI Agent Memory systems.&lt;/p&gt;

&lt;p&gt;More updates coming soon. &lt;/p&gt;

</description>
      <category>ai</category>
      <category>agents</category>
      <category>opensource</category>
    </item>
  </channel>
</rss>
