Mneno uses a multi-signal scoring engine to rank memories. This ensures that the most relevant, recent, and important information is always prioritized.Documentation Index
Fetch the complete documentation index at: https://mneno.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
Scoring Signals
The final score of a memory is a weighted average of several signals:- Relevance: How well the memory matches the search query. Mneno uses both keyword overlap and optional semantic similarity.
- 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.
Policy Parameters
| Parameter | Default | Description |
|---|---|---|
recency_weight | 0.25 | Weight for the recency signal. |
importance_weight | 0.35 | Weight for the importance signal. |
relevance_weight | 0.25 | Weight for the relevance (keyword/semantic) signal. |
access_weight | 0.15 | Weight for the access frequency signal. |
freshness_weight | 0.10 | Weight for the original creation age. |
recency_half_life_days | 30.0 | Days it takes for recency score to drop by 50%. |
freshness_decay_days | 180.0 | Days until a memory is considered “stale” (0 freshness). |