OpenMemory
Memoire comportementale des agents. Preferences, corrections, patterns. Config Docker et integration.
OpenMemory
OpenMemory est le cerveau comportemental du systeme. Il retient ce que l'utilisateur aime, n'aime pas, et comment il veut que les choses soient faites.
Role
- Stocker les preferences utilisateur
- Stocker les corrections (feedback negatif)
- Stocker les patterns comportementaux
- Servir ces donnees aux agents a chaque session
Ce n'est pas une base de donnees. C'est une memoire de travail persistante.
Difference avec les autres memoires
| Systeme | Stocke quoi | Exemple |
|---|---|---|
| OpenMemory | Preferences, corrections | "Jamais de hashtags sur Twitter" |
| Notion | Donnees business structurees | Clients, factures, pipeline |
| KB Obsidian | Savoir operationnel | Procedures, skills, knowledge |
Chaque systeme a sa specialite. OpenMemory ne remplace ni Notion ni la KB.
Architecture
Agent (via OpenClaw)
|
OpenMemory API
|
Vector Store (embeddings)
|
Stockage persistant (Docker volume)Les preferences sont stockees sous forme de vecteurs. A chaque debut de session, l'agent charge les preferences pertinentes par similarite semantique.
Config Docker
OpenMemory tourne dans un container Docker dedie.
# docker-compose.yml (extrait)
services:
openmemory:
image: openmemory:latest
ports:
- "8765:8765"
volumes:
- openmemory-data:/data
environment:
- EMBEDDING_MODEL=text-embedding-3-small
- STORAGE_PATH=/data
restart: unless-stopped
volumes:
openmemory-data:Le volume openmemory-data persiste entre les redemarrages.
Comment les agents l'utilisent
Ecriture (apres une correction)
Utilisateur : "Non, pas de emoji dans les tweets"
Agent Social → OpenMemory.add({
content: "Ne pas utiliser d'emoji dans les tweets",
agent: "social",
category: "preference",
source: "correction-utilisateur"
})Lecture (a chaque session)
Agent Social → OpenMemory.search({
query: "regles pour tweets",
agent: "social",
limit: 10
})
→ Retourne les 10 preferences les plus pertinentesCategories de memoire
| Categorie | Description | Exemple |
|---|---|---|
preference | Ce que l'utilisateur veut | "Ton decontracte" |
correction | Ce que l'utilisateur ne veut pas | "Pas de hashtags" |
pattern | Comportement observe | "Valide toujours les trades >500$" |
context | Info contextuelle durable | "Timezone Europe/Paris" |
Documentation detaillee
L'architecture complete d'OpenMemory est documentee dans la section System > OpenMemory. Cette page couvre uniquement la config technique et l'integration Docker.
Pour le design et les choix d'architecture → voir System > OpenMemory.
Limites
- La recherche est semantique. Une preference mal formulee peut etre manquee.
- Pas de TTL natif. Les preferences restent indefiniment sauf suppression manuelle.
- Le volume de donnees croit lineairement. Prevoir un nettoyage periodique.
- Un seul embedding model a la fois. Changer de modele necessite une reindexation.