Le Neotoma est une couche de mémoire structurée pour les agents IA. Il traite les données personnelles de la même manière que les systèmes de production traitent l’état : entités typées, identifiants stables, provenance complète, requêtes déterministes. Cette version développeur est disponible dès maintenant. Installez via npm, connectez vos outils d'IA via MCP et exécutez-le sur votre machine.

Documentation et configuration : [neotoma.io](https://neotoma.io). Dépôt : [github.com/markmhendrickson/neotoma](https://github.com/markmhendrickson/neotoma).

## Le problème

J'ai passé l'année dernière à exécuter des flux de travail via des agents IA : courrier électronique, tâches, finances, contacts, contenu. Les agents sont capables. Le problème, c'est la confiance.

La mémoire change implicitement. Le contexte dérive. L'agent donne une réponse différente à la même question lors d'une nouvelle session. Il écrase un contact et l'état précédent disparaît. Je ne peux pas retracer un mauvais numéro jusqu'à sa source. Je ne peux pas utiliser les mêmes enregistrements à partir d'un outil différent.

Ce ne sont pas des cas extrêmes. Ils apparaissent dès que les agents gèrent l'état en cours : tâches, transactions, engagements, relations. Plus je délègue, plus les limites deviennent strictes.

Ce qui ne cesse de se briser, ce n’est pas l’intelligence. C'est la confiance. J'ai d'abord écrit à ce sujet dans [Création d'une couche de vérité pour la mémoire d'agent persistante](/posts/truth-layer-agent-memory).

## Là où la mémoire actuelle est insuffisante

Aujourd'hui, l'essentiel de la mémoire des agents est une récupération : RAG, recherche agent, intégration de similarité, mémoire contrôlée par le fournisseur. Travaux de récupération pour l’exploration et les questions ponctuelles. Il s'effondre pour l'état actuel.

[RAG se remplit de résultats redondants](/posts/why-agent-memory-needs-more-than-rag) lorsque la mémoire de l'agent est un flux limité et cohérent. Top-k renvoie la répétition au lieu de ce dont vous avez besoin. L’élagage fragmente les chaînes de preuves. La similarité ignore la structure.

La mémoire du fournisseur (ChatGPT Memory, Claude Projects) est réservée aux conversations et liée à la plate-forme. Il est opaque, n’a aucune provenance ni restauration et ne fonctionne pas avec tous les outils. Vous ne pouvez pas l'interroger de manière déterministe ou retracer un fait jusqu'à sa source.

[Recherche agent](/posts/agentic-search-and-the-truth-layer) réinfère chaque session. Aucune identité canonique persistante, aucune garantie que la même question donne le même résultat. Cela fonctionne pour le codage et l’exploration. Pour les tâches, les contacts, les transactions et les événements, vous avez besoin de la même réponse la semaine prochaine, d'ensembles complets et de pistes d'audit. La récupération ne fournit pas cela.

La [séparation utile](/posts/agent-memory-truth-problem) est la récupération par rapport à l'état structuré, et non par le graphique par rapport à la démarque. La récupération est optimisée pour la pertinence et la découverte. L’état structuré optimise la cohérence, l’exhaustivité et la provenance. Les grands projets (Zep, Mem0, Letta, LangMem) ajoutent de la structure, mais la convergence totale se heurte à des barrières architecturales. Lorsque les agents agissent en votre nom, vous avez besoin de ces derniers.

J'ai écrit séparément sur les [six tendances structurelles](/posts/six-agentic-trends-betting-on) qui creusent cet écart au fil du temps : les agents deviennent dynamiques, les erreurs deviennent tarifées, les plateformes restent opaques, les outils restent fragmentés.

## Qu'est-ce que le néotome

Neotoma est une couche de vérité : le substrat de mémoire qui se trouve sous vos agents. Les agents continuent de faire ce qu'ils font (parcourir, écrire, appeler des outils). Neotoma est propriétaire de l'état dans lequel ils lisent et écrivent.

Vous téléchargez des documents ou partagez des informations dans les conversations des agents. Neotoma résout les entités entre les sources. Les personnes, les entreprises, les tâches, les factures et les événements obtiennent des identifiants stables. Chaque fait remonte à son origine. Les chronologies proviennent des champs de date. Les corrections préservent l’histoire au lieu de l’écraser.

Le graphique est indépendant de l’exécution. Il modélise ce qui existe, et non la manière dont le travail est effectué. Les mêmes données sont disponibles depuis Cursor, ChatGPT, Claude ou n'importe quel client MCP. Lorsque vous [changez d'outils](/posts/openclaw-and-the-truth-layer), la mémoire ne dérive pas.

Ce n'est pas une application de prise de notes ou un « deuxième cerveau ». Mémoire non contrôlée par le fournisseur. Pas un magasin de vecteurs ou une couche RAG. Pas un agent autonome. Il s'agit d'un état structuré basé sur le schéma que vous contrôlez.

## Ce que comprend cette version

Cette version développeur expose le contrat principal :

- **CLI** pour les humains.
- **MCP** pour les agents (ChatGPT, Claude, Cursor, Claude Code) ; les agents utilisent MCP comme sauvegarde.
- **OpenAPI** comme source unique de vérité.

Fonctionnalité concrète :

- **Stockage à double chemin.** Téléchargez des fichiers ou écrivez des données structurées à partir des conversations d'agent dans un seul graphique.
- **Résolution d'entité.** Les identifiants canoniques basés sur le hachage unifient la même entité sur toutes les sources.
- **Registre de schémas.** Entités typées et relations typées. Les schémas évoluent avec les données.
- **Chronologies.** Génération automatique de chronologies à partir des champs de date dans toutes les entités.
- **Provenance complète.** Chaque disque remonte à sa source. Les corrections créent de nouvelles observations, pas des écrasements.
- **Récupération structurelle.** Requête par type d'entité, ID, relation ou plage de temps. Voisinage graphique pour le raisonnement inter-entités.

Il n'y a pas d'application Web. Il s’agit d’une infrastructure, pas d’un produit. Les interfaces sont CLI, MCP et API.

## Principes et pourquoi le local d'abord

Trois fondements façonnent la conception :

**La confidentialité avant tout.** Vos données restent sur votre ordinateur. Stockage local uniquement : SQLite et fichiers locaux. Aucune dépendance au cloud. Jamais utilisé pour l'entraînement. Vous contrôlez ce qui entre et ce qui reste.

**Déterministe.** Même entrée, même sortie. ID d’entité basés sur le hachage. Extraction du schéma en premier. Aucun LLM dans le chemin critique pour le stockage ou la récupération. Provenance complète sur chaque disque.

**Multiplateforme.** Une couche de mémoire pour tous les outils. ChatGPT, Claude, Cursor et Claude Code se connectent via MCP. Pas de dépendance vis-à-vis du fournisseur. Changez d’outil et la mémoire reste la même.

Cette version est uniquement locale de par sa conception. La confiance commence par le contrôle. Avant d’ajouter une infrastructure distante, le contrat et les garanties doivent être solides. Local uniquement signifie que vous pouvez vérifier tout ce que fait le système. C'est le bon point de départ pour une couche qui prétend être digne de confiance.

## À qui s'adresse-t-il

Développeurs et générateurs d'agents à l'aise avec les workflows CLI-first. Personnes qui construisent ou exploitent des systèmes agentiques qui ont besoin de mémoire persistante à travers les sessions et les outils. Toute personne qui traite les données personnelles comme une infrastructure de production.

Pas pour (encore) : les utilisateurs qui privilégient l'interface utilisateur, la prise de notes occasionnelle ou toute personne qui attend des garanties de stabilité aujourd'hui. Il faut s’attendre à des changements radicaux. Cette version existe pour tester la pression des fondations.

## Installer et se connecter

```bash
npm install -g neotoma # installer
néotome init # initialiser
néotome # démarrer une session interactive
```

Configuration complète, documentation API, configuration MCP et référence du schéma : [neotoma.io](https://neotoma.io).

Dépôt : [github.com/markmhendrickson/neotoma](https://github.com/markmhendrickson/neotoma).

## À retenir

- **La confidentialité avant tout.** Vos données sur votre machine ; local uniquement, pas de cloud, jamais utilisé pour la formation.
- **CLI, MCP, OpenAPI.** Un contrat pour les humains et les agents.
- **État structuré basé sur le schéma.** Entités typées, provenance complète, requêtes déterministes.

## Essayez-le, cassez-le, dites-moi

J'aimerais votre aide pour durcir ça. Exécutez-le. Frappez les cas extrêmes. Signalez les bugs, les comportements déroutants ou les éléments manquants.

Les commentaires que j'apprécie le plus : là où les garanties échouent, où le contrat fait obstacle, où la conception fait un mauvais compromis. Ouvrez des problèmes sur GitHub, soumettez des correctifs ou démarrez une discussion.

Cette version est volontairement brutale. La fiabilité vient d'une utilisation réelle et d'un retour d'information réel, et non d'un polissage isolé.