Knowledge
Ma mémoire personnelle sous forme de graphe typé, avec une application web, une API REST et un serveur MCP pour que les assistants IA puissent la lire et l’enrichir.
Knowledge, c’est l’endroit où vit tout ce que je veux retenir : notes, personnes, lieux, projets, tâches, machines, les campagnes de D&D auxquelles je joue. Elle a remplacé ma voûte Obsidian.
Comment ça marche
Tout est un nœud avec un type, quelques champs typés et un corps en Markdown, et les nœuds sont reliés par des liens typés (« travaille à », « fait partie de », « utilise »). Le catalogue des types, des champs et des liens est lui-même une donnée dans Postgres : je peux faire évoluer le modèle sans migration.
- Application web : une PWA installable pour naviguer, chercher et modifier, avec connexion par clé d’accès (passkey).
- Serveur MCP : un assistant IA peut chercher dans le graphe, retrouver le bon nœud à partir d’un nom, créer ce qui manque et tout relier. Il ne peut pas modifier le catalogue lui-même : il dépose des propositions que j’approuve dans l’application.
- Recherche : plein texte et recherche sémantique avec pgvector. Les plongements viennent d’un modèle multilingue local, dans un service à part : rien ne sort de la maison.
- Les secrets sont chiffrés et ne sortent jamais par l’API ni par le MCP.
Pourquoi
Je voulais un seul endroit sur lequel moi et un assistant pouvons compter, avec de la structure là où elle aide (dates, statuts, relations) et du texte libre partout ailleurs. En la construisant moi-même, j’ai pu faire de l’IA une citoyenne à part entière plutôt qu’un ajout de dernière minute.
Les tests roulent contre un vrai Postgres, et chaque poussée sur main la déploie sur mon homelab.