Mnemo is a lightweight, self-hostable memory middleware REST API for AI agents. It provides:
- Episodic memory: immutable raw turns stored in SQLite
- Semantic memory: bi-temporal triplet edges stored in SQLite + Qdrant vectors
- User profile: persistent key/value facts stored in SQLite + cached in Redis
- Create a virtualenv and install dependencies (using
uvrecommended):
uv venv
source .venv/bin/activate
uv pip install -e ".[dev]"- Copy env file and set keys:
cp .env.example .env- Start Redis (Docker recommended):
docker compose up -d redis- Run the API:
uvicorn mnemo.app.main:app --reload- Open docs:
http://localhost:8000/docs
- Qdrant runs in embedded local mode by default (no Docker required).
- Extraction runs asynchronously via ARQ worker (1-turn lag by design).