Features
LivingMemory is not just a chat log. It transforms conversations into searchable, decay-aware long-term memories that agents can also use directly.
Automatic reflection
After the configured number of rounds, the plugin asks the LLM to summarize recent conversation into structured memory.
Dual-channel summaries
canonical_summary is optimized for factual retrieval. persona_summary is optimized for prompt injection and persona expression.
Agent memory tools
Agents can call recall_long_term_memory to search old memory or memorize_long_term_memory to store durable facts.
Memory atomization
Important facts become independent atoms with type, TTL, importance, access count, and decay state.
Where memories come from
| Path | Trigger | Best for |
|---|---|---|
| Automatic reflection | Conversation reaches the configured summary rounds | Long-term preferences, project context, relationships, durable facts |
| Agent write tool | The model calls memorize_long_term_memory | Explicit "remember this" requests, important agreements, long-running tasks |
How recall works
Before the LLM request is sent, LivingMemory retrieves relevant memories. Results can be appended to the user message, placed before or after it, or injected as simulated tool-call context.
Ranking combines:
| Factor | What it does |
|---|---|
| Keyword match | BM25 and graph keyword retrieval quickly find concrete entities and phrases |
| Semantic similarity | Vector retrieval handles different wording with similar meaning |
| Graph relationships | Entities and cross-memory edges add structure across facts |
| Importance | Durable preferences and agreements are favored |
| Time decay | Old memories gradually lose weight unless repeatedly accessed or reinforced |
Lifecycle behavior
| Mechanism | Purpose |
|---|---|
| Importance decay | Reduces the weight of old low-value memories |
| Access reinforcement | Frequently recalled memories are more likely to stay relevant |
| Atom TTL | Different fact types can age differently |
| Automatic cleanup | Removes expired or low-value memory to control database size |
| Safe backups | Creates backups before version updates and migrations |
