Scoring Signals
The final score of a memory is a weighted average of several signals:- Relevance: How well the memory matches the search query. Exact content phrases outrank loose overlap, while tag/source matches provide a capped supporting signal instead of being treated as visible content. Optional semantic similarity remains provider-backed.
- Importance: A manual or model-assigned priority score (0.0 to 1.0).
- Recency: How recently the memory was updated. Scores decay over time based on a configurable half-life.
- Frequency: How often the memory has been accessed by the agent.
- Freshness: How long ago the memory was originally created.
Explainable Scores
Every search result includes aMemoryScore object that explains exactly why a memory was ranked the way it was.
Example Reasons
Matched query term: mnenoHigh importance memoryRecently updatedFrequently accessed memory
Customizing Weights
You can customize how Mneno weighs different signals by passing aMemoryPolicy to the MemoryClient.