Local-first memory for AI agents.
Separates what an agent experiences (episodic memory) from what it knows (semantic memory), then consolidates episodes into durable facts and summaries for better recall.
- LanceDB for vector + metadata storage
- FastEmbed for local embeddings
- Qwen 2.5 or OpenAI for extraction and reasoning
- episodic -> semantic memory consolidation
- local-first, lightweight architecture
- traceable facts linked to source episodes
- narrative recall beyond nearest-neighbor retrieval
Input episodes:
- "I started learning Korean today."
- "I want to be conversational before my trip to Seoul in March."
After consolidation:
- Fact: user is learning Korean
- Goal: become conversational before March trip to Seoul
Query:
What am I learning, and why?
Answer:
You're learning Korean, and your near-term goal is to become conversational before your March trip to Seoul.
git clone https://github.com/wheevu/episodic-memory-pipeline
cd episodic-memory-pipeline
pip install -e .
cp env.example .env
make demomake demo-mockepisodic-memory ingest "I started learning Korean today"
episodic-memory query "What am I learning?"
episodic-memory consolidate --all
episodic-memory statsMIT