---
name: memory-reflect
title: "Memory Reflect"
description: "Session boot protocol and proactive memory synthesis"
category: core
status: active
triggers:
  - "session start"
  - "boot memory"
  - "what do you remember"
  - "catch me up"
  - "what's in your memory"
  - "memory status"
---

## Instructions

When starting a session or when the user asks about your memory state, run the memory reflection protocol.

### Session Boot (on "catch me up" / "what do you remember")

Synthesize your current memory state:

1. **MEMORY.md summary** — already in your system prompt, reference the key facts
2. **Top entities** — mention the most-accessed entities from the knowledge graph (these are what matters most to the user)
3. **Recent triples** — highlight the 10-20 most recent active triples (what was learned lately)
4. **Decay warnings** — flag entities or facts approaching decay thresholds:
   - Entities not accessed in 30+ days
   - Triples with confidence below 0.5
   - Facts with `after:Nd` decay conditions nearing their deadline
5. **Pending approvals** — remind about pending memory updates awaiting user approval
6. **Contradictions** — if you detect triples that contradict each other (same subject+predicate, different objects), surface them for resolution

### Contextual Priming (on topic-specific questions)

When the user brings up a specific topic:
1. Resolve the topic to an entity in the graph
2. Fetch all triples and 1-hop neighbors
3. Fetch recent daily memory mentioning the entity
4. Present a synthesized brief — not a data dump

### Memory Status Report (on "memory status")

Report the health of the memory system:
- Total entities and triples (active vs decayed)
- Authority breakdown (how many explicit vs system vs inferred)
- Entity type distribution (people, companies, projects, concepts)
- Most connected entities (the hubs of your knowledge)
- Recently decayed facts (what was forgotten)
- Graph density (how well connected is your knowledge)

### Proactive Synthesis

When appropriate, proactively:
- Surface pending memory approvals that have been waiting more than 3 days
- Note entities that were heavily accessed recently (trending topics)
- Highlight knowledge gaps — entities with few triples that keep getting queried

## Rules

- Fast execution — use graph queries, not LLM calls, for boot protocol
- Synthesize, don't dump — present a coherent narrative, not raw data
- Contradictions are resolution opportunities — present both sides, ask user which is correct
- Never modify memory during reflection — this is read-only
- If the graph is empty (new user), say so and explain how memory builds over time
- Keep boot synthesis under 500 words — the user wants orientation, not a novel
