Deep Memory Skill ๐ง
A production-grade semantic memory system for AI agents. Combines tiered file storage with vector search and graph relationships.
Architecture
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ File Layer (always-on) โ
โ HOT / WARM / COLD Markdown files โ
โ semantic_memory.json โ
โโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Vector Layer (Docker) โ
โ Qdrant: semantic similarity search โ
โ Collection: semantic_memories โ
โ Dimensions: 4096 (qwen3-embedding) โ
โโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Graph Layer (Docker) โ
โ Neo4j: entity relationship memory โ
โ Constraints: Memory.key + Entity.id โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Embedding Model (Ollama) โ
โ qwen3-embedding:8b (4096 dims) โ
โ Local, free, no API calls โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Prerequisites
- Docker Desktop (running)
- Ollama installed (
brew install ollamaon macOS)
Usage
Setup (first time)
python3 ~/.openclaw/workspace/skills/deep-memory/scripts/setup.py
Write a memory
from deep_memory import MemorySystem
mem = MemorySystem()
mem.store("user_sir", "Sir prefers direct communication, no pleasantries", tags=["preference", "communication"])
Search memories
results = mem.search("how does Sir like to communicate?", top_k=5)
for r in results:
print(r['content'], r['score'])
Joint query (vector + graph)
results = mem.joint_query("investment strategy", entity="Sir", top_k=3)
Setup Flow
When triggered, the setup script will:
- Check Docker is running
- Check Ollama is installed and pull qwen3-embedding:8b if needed
- Start Qdrant container (port 6333/6334)
- Start Neo4j container (port 7474/7687)
- Create Qdrant collection (semantic_memories, 4096 dims, Cosine)
- Create Neo4j constraints (Memory.key, Entity.id)
- Create HOT/WARM/COLD directory structure
- Copy Python toolkit to workspace
- Run end-to-end verification test
Agent Integration
In your SOUL.md or AGENTS.md, add:
## Memory Retrieval
Before answering questions about prior work, decisions, or preferences:
1. Run: python3 ~/.openclaw/workspace/.lib/qdrant_memory.py search "<query>"
2. Combine with memory_search tool results
3. Use top results as context
Scan to join WeChat group