Par défaut, les agents IA sont amnésiques. Chaque conversation repart de zéro. C'est le problème du "Stateless".
Pour résoudre ça, la plupart des ingénieurs sortent l'artillerie lourde : bases de données vectorielles (Pinecone, Weaviate), pipelines RAG complexes, embeddings coûteux.
Ils ont tort.
OpenClaw a résolu le problème de la mémoire infinie sans une seule ligne de SQL et sans vecteur. Peter Steinberger a utilisé la technologie la plus ancienne et la plus ennuyeuse du monde : des fichiers Markdown.
Si vous pensez avoir besoin d'une infrastructure complexe pour donner une mémoire à long terme à une IA, vous n'avez pas regardé sous le capot. Voici comment OpenClaw transforme de simples fichiers texte en cerveau fonctionnel, et comment vous pouvez copier cette architecture dès ce soir.
Source : Google Research — "Context Engineering: Sessions and Memory" (novembre 2025) — Le livre blanc qui a théorisé cette approche en définissant les trois types de mémoire d'agent : épisodique, sémantique et procédurale.
Commençons par casser un mythe. Votre conversation avec ChatGPT n'est pas de la "mémoire". C'est un contexte glissant.
Imaginez que vous écrivez un roman, mais vous ne pouvez voir que les 50 dernières pages. Chaque fois que vous écrivez une nouvelle page, la page 1 disparaît dans le néant. C'est la Fenêtre de Contexte.
Quand la fenêtre est pleine, le couperet tombe. C'est la Compaction. Le système doit prendre votre historique, le découper, et ne garder que l'essentiel pour continuer.
Il existe trois façons de déclencher ce couperet :
Le problème ? Si vous coupez, vous perdez les détails.
OpenClaw ne coupe pas. Il déplace.
Pour comprendre la mémoire d'OpenClaw, oubliez l'informatique. Pensez à un bureau physique.
Le génie d'OpenClaw n'est pas dans l'armoire elle-même (ce ne sont que des fichiers), mais dans les mécanismes de transfert qui transportent l'information du bureau vers l'armoire au bon moment.
Pas de base de données. Juste trois fichiers Markdown que l'agent lit et écrit comme un humain tenant un journal.
memory.md — L'identitéC'est la carte d'identité de l'utilisateur. Elle stocke les faits stables et les préférences.
Ce fichier est injecté dans chaque prompt. Il doit être court — moins de 200 lignes recommandées. C'est ce que Google appelle la "Mémoire Sémantique".
daily_logs.md — Le journal de bordC'est la mémoire à court terme, organisée par jour.
Contenu : "Aujourd'hui on a débugué l'API Auth. On a corrigé le bug #402."
C'est un fichier en append-only. On ne supprime jamais, on ajoute à la fin. L'agent lit les logs d'aujourd'hui et d'hier pour savoir ce qui s'est passé récemment.
session_snapshots/ — Le snapshotC'est la mémoire brute. Les 15 derniers messages significatifs d'une session, sauvegardés avant un reset.
OpenClaw ne sauvegarde pas le bruit. Les appels d'outils, les erreurs système et les commandes /slash sont filtrés. Seule la conversation "User ↔ Assistant" est conservée.
Avoir des fichiers ne sert à rien si personne n'y écrit. OpenClaw utilise 4 déclencheurs précis pour sauvegarder la mémoire avant qu'elle ne soit perdue par la compaction.
Au début de chaque nouvelle conversation, le système injecte memory.md dans le prompt système. L'agent reçoit aussi l'instruction de lire les logs du jour et de la veille.
L'agent démarre "à chaud". Il sait qui vous êtes et ce que vous avez fait hier, sans que vous ayez à le lui rappeler.
C'est le mécanisme le plus élégant. Quand la fenêtre de contexte est presque pleine, OpenClaw injecte un message système invisible pour l'utilisateur :
"Attention — Je vais bientôt oublier cette conversation. Sauvegarde tout ce qui est important dans le daily_log maintenant."
L'agent voit ça, panique (au figuré), et écrit un résumé dans daily_logs.md. C'est un Write-Ahead Log. On sauve les meubles avant l'incendie.
Quand vous tapez /reset ou /new, vous tuez la session en cours. Avant de mourir, un hook se déclenche :
debug-api-auth.md).snapshots.La session est morte, mais son fantôme est proprement archivé.
Si vous dites : "Retiens que je préfère Windsurf à VS Code."
L'agent n'a pas besoin de magie. Il a l'outil file_writer. Il détecte que c'est une préférence (Sémantique) et écrit la ligne IDE: Windsurf directement dans memory.md. Du routage basique, piloté par le prompt système.
OpenClaw prouve qu'on n'a pas besoin de vecteurs pour avoir de la mémoire.
L'architecture se résume à trois questions :
memory.md pour les faits, ou daily_logs pour les événements ?Si vous pouvez répondre à ça, vous n'avez pas besoin de Pinecone. Vous avez besoin d'un fichier texte.
Nous construisons des systèmes d'agents autonomes avec mémoire persistante pour les entreprises.