This project is in early, working state. Contributions that improve clarity, fix bugs in the scripts, or tackle the open problems below are welcome.
The gap: Claude Code's auto-memory writes MEMORY.md silently during a session. There's no moment where you review what was written before it becomes permanent. You might end up persisting wrong conclusions, misattributed bugs, or stale state.
The idea: A PostToolUse hook that fires whenever MEMORY.md is written. The hook would show a diff of changes and prompt: approve, edit, or discard.
// .claude/settings.json
{
"hooks": {
"PostToolUse": [{
"matcher": "Write|Edit",
"hooks": [{
"type": "command",
"command": "scripts/review-memory-write.sh"
}]
}]
}
}The hook script would:
- Check if the written file is
MEMORY.md - Show
git diffof the change - Prompt: approve / edit / discard
- On discard:
git checkout -- MEMORY.md
This is genuinely unaddressed by any existing tool (as of early 2026). A clean implementation here would be a meaningful contribution.
The gap: Patterns and fixes discovered in one project often apply elsewhere. Right now they live in per-project MEMORY.md files and are never surfaced elsewhere.
The idea: A script that scans all ~/.config/ai/projects/*.md files, extracts ## Bugs Fixed and ## Key Technical Decisions sections, and writes a deduplicated ~/.config/ai/lessons.md. That file could then be injected into ~/.config/ai/context.md or referenced from project CLAUDE.md files.
Possible implementation:
- Parse MEMORY.md files with a simple markdown section extractor
- Deduplicate by semantic similarity (embeddings) or keyword clustering
- Output as a single lessons file, optionally appended to global context
The gap: The natural approach to auto-saving memory is two hooks working together: a Stop hook that fires after every response (triggered by a phrase you say when you want to save), and a SessionEnd hook as a mechanical fallback that parses the session transcript and writes whatever it can. Belt and suspenders.
The problem: the SessionEnd hook does not reliably fire on any quit — normal close or force-quit. VS Code terminates the extension host before the hook completes. The Stop hook is the only gate that actually works; SessionEnd is unreliable in practice.
This means:
- If you explicitly ask Claude to save memory before closing, it will be saved ✅
- If you just close the window, it probably won't be ❌
The idea: A reliable fallback that doesn't depend on the extension host staying alive — for example, periodic auto-save triggered from within the session (not on exit), or a pre-close save prompt surfaced by the IDE.
Open a pull request with a clear description of what problem it solves and how to test it. Small, focused changes are preferred over large rewrites.