| name | memory-management |
| description | How to extract durable memories from sources and write them as reviewable candidate memory files with provenance, confidence, and sensitivity. |
Memory management
Memories are stable facts, preferences, goals, relationships, and unresolved issues worth carrying across sessions. Agents NEVER write durable truth directly — they propose candidates that humans review.
Lifecycle
raw observation -> memory/candidates/ (you write here) -> human review -> memory/durable/
You may only write into memory/candidates/. Never write to or edit memory/durable/.
What qualifies as a memory
- Stable facts: family members, employers, account structures, recurring commitments
- Preferences: communication style, meeting cadence, product constraints, values
- Goals: retirement targets, education funding, philanthropic intent
- Unresolved issues and open risks
- Relationship context: trusted contacts, professionals (CPA, attorney)
What does NOT qualify: transient logistics ("meeting moved to Tuesday"), speculation, anything already captured in memory/durable/ (check first to avoid duplicates).
Candidate memory file format
One memory per file. Path: memory/candidates/<YYYY-MM-DD>-<slug>.md (date = today). Required format:
---
id: <slug>
created: <ISO timestamp>
status: candidate
confidence: high | medium | low
sensitivity: public | internal | confidential | restricted
sources:
- <relative-path>:<line-or-range>
expires: <ISO date or "none">
supersedes: <path of older memory it replaces, or "none">
---
# <One-line memory statement>
<2-4 sentences of context: what was observed, when, and why it is durable.>
## Why this confidence level
<1-2 sentences justifying the confidence rating.>
Rules
sources must point at primary sources (transcripts, emails, client JSON) with line numbers.
confidence: high requires an explicit, unambiguous statement in a primary source.
- Use
confidence: low for inferences; state the inference chain.
- If the new memory contradicts a durable memory, set
supersedes to that file and explain the conflict in the body — do not edit the durable memory.
- Inherit the strictest sensitivity label among the sources used.
- After writing candidates, list the created files in your final answer.