Skip to main content
Memory Threads are Memind’s topic-level memory projections. They group related Memory Items into evolving threads so agents can follow long-running subjects across sessions: projects, workflows, incidents, investigations, decisions, recurring preferences, and repeated agent behaviors. A Memory Thread is not a chat thread. It is a derived memory object that tracks how a topic changes over time.
Memory Thread Flow

Overview

Memory Threads sit after Memory Items and the Item Graph in the memory construction flow.
Memory Items capture what should be remembered. The Item Graph connects related memories. Memory Threads use those items and graph signals to create a topic-level projection. A thread can represent:
  • a project
  • a workflow
  • an incident
  • an investigation
  • a decision path
  • a recurring preference
  • a repeated agent behavior
  • a general long-running topic
The goal is to turn related memory fragments into an evolving topic state that can be inspected, retrieved, and updated over time.

Why Memory Threads exist

Individual Memory Items are useful, but long-running topics are rarely captured by a single item. A project may span many conversations. A decision may depend on several prior constraints. A recurring preference may appear across different tasks. A resolved problem may involve a diagnosis, a blocker, a fix, and a final outcome. The Item Graph connects related memory, but the graph itself does not always provide a clear topic state. Memory Threads add that layer. They help Memind answer:
What ongoing topic does this memory belong to, and what is the current state of that topic?
This is useful because agents often need topic continuity, not only isolated facts. Without Memory Threads, an agent may retrieve several related items but still fail to understand the broader project, workflow, or decision path they belong to.

Thread projection flow

Memory Threads are derived from Memory Items and Item Graph signals. At a high level, the flow is:
Each step has a specific role. This process turns related items into a materialized topic projection.

Thread model

A Memory Thread is made of several related concepts: type, memberships, events, projection state, and optional enrichment.

Thread types

Memind can classify threads into broad types. These types help Memind organize long-running subjects without forcing every thread into the same shape.

Memberships

A thread is connected to the Memory Items that belong to it. A membership records that an item participates in a thread. It can also store whether the item is a primary member and how strongly it belongs to the thread. Conceptually, a membership includes: Memberships let a thread stay connected to the source items that shaped it.

Events

Events form the thread timeline. They capture meaningful updates, decisions, blockers, milestones, setbacks, and resolutions. Common event types include: Events are what make a thread more than a static group of items. They show how the topic evolves.

Enrichment

Thread enrichment is optional. When enabled, Memind can use additional reasoning to improve the thread projection after enough meaningful events have accumulated. Enrichment can help update:
  • the thread headline
  • the topic snapshot
  • current state
  • important context
  • unresolved questions
  • blockers or milestones
Enrichment is controlled by runtime configuration, so applications can choose whether thread updates should stay lightweight or use additional reasoning.

Lifecycle and state

Memory Threads track both lifecycle status and topic state. These are related but not the same.

Lifecycle status

Lifecycle status describes whether a thread is still active. This helps Memind avoid treating every historical topic as current.

Object state

Object state describes the current state of the topic itself. For example, a thread may be ACTIVE and BLOCKED, or DORMANT and STABLE. Lifecycle tells Memind whether the thread is active. Object state tells Memind what is happening inside the topic.

How threads are used

Memory Threads are used by several parts of Memind. This lets agents retrieve not only facts, but also the topic continuity behind those facts. A thread can help answer questions such as:
  • What project is this item part of?
  • What decisions have already been made?
  • Is this topic still active?
  • What is currently blocked?
  • What was resolved?
  • What changed since the last session?

Configuration

Memory Threads are controlled by MemoryThreadOptions. At a high level, the configuration includes: Memory Threads can be enabled when applications need topic continuity across sessions. If an application only needs simple item-level memory, this layer can be disabled.