Add time-anchored episodic memory to the personal Claude Code memory system. Enable queries like "what was I working on last Tuesday?" or "did we discuss X recently?" across all projects.
## Architecture Fit
The system has two memory types kept as separate systems:
The one setting to confirm: **memory_dir** must be global (`~/.memsearch/memory/`) so all projects share one episodic store — essential for cross-project recall. Run `memsearch config list` after install; if memory_dir is not already global, set it explicitly in `~/.memsearch/config.toml`. memsearch's Milvus database already defaults to a global path (`~/.memsearch/milvus.db`), so memory_dir may match — verify rather than assume.
memsearch ships as a full Claude Code plugin and likely includes its own system prompt instructions telling Claude when and how to use `memsearch search`. After install, audit what it adds to Claude's context. The default outcome of this audit is **no custom skill**. Only create a `memory-search` skill if memsearch's built-in guidance fails to cover cross-project episodic queries, or if it creates ambiguity with the `memory-vault`/`memory-project` skill boundary (e.g., Claude routing knowledge questions to memsearch instead of Graphify).
→ L1 snippets by default; L2/L3 drill-down available
```
## Hook Integration
**session-end.sh: unchanged.**
The existing hook writes vault provenance (which vault notes were touched, project, end reason) to `~/Documents/SecondBrain/journal/YYYY-MM-DD.md`. This is complementary to memsearch, not redundant:
| System | Captures | Answers |
|--------|----------|---------|
| memsearch Stop hook | Per-turn Q&A summaries | "What were we discussing last Tuesday?" |
| session-end.sh | Vault notes touched per session | "Which notes did I update during that sprint?" |
## What This Step Does Not Do
- Does not index the vault (`~/Documents/SecondBrain/`) — Graphify owns that
- Does not replace or modify session-end.sh
- Does not add custom hook code
- Does not configure Milvus Server or Zilliz Cloud (Milvus Lite is correct for personal use)
- Does not integrate memsearch recall into SessionStart hook injection (deferred)
- Step 4 is complete when: plugin is installed, memory_dir is confirmed global, and at least one session has produced a daily memory file at `~/.memsearch/memory/YYYY-MM-DD.md`. SessionStart injection is a distinct future step.