<Purpose>
Memory management for session-persistent context that survives context compaction. Triage entries into Priority (permanent), Working (7-day auto-prune), or Manual (never pruned) sections. Also search and retrieve stored memories.
</Purpose>
<Use_When>
- User says "remember", "memorize", "don't forget", "save this"
- User wants to recall something stored from a previous session
- Context about a decision or convention needs to persist across sessions
</Use_When>
<Do_Not_Use_When>
- User wants to store temporary notes during a session (use
note or writer-memory instead)
- The information is already in the codebase or git history (just look it up)
- The memory is about a specific file or code section (that lives in the code)
</Do_Not_Use_When>
<Why_This_Exists>
Context gets compacted. Memories prevent important decisions, conventions, and user preferences from being lost when context windows reset.
</Why_This_Exists>
<Execution_Policy>
- Prompt for memory type: Priority (permanent), Working (7-day prune), Manual (never prune)
- Use clear, specific titles so future-you can find the memory
- When retrieving, search all sections and surface relevant matches
- Do NOT store secrets, credentials, or sensitive data in memories
</Execution_Policy>
<Steps>
<Examples>
<Good>
User: "remember that this project uses Python 3.11 minimum"
→ Save to Priority with title: "Python minimum version: 3.11"
</Good>
<Bad>
User: "remember all the things"
→ Too vague — ask for specifics on what to remember
</Bad>
</Examples>