>_ DevTrendsfr

Langue

Accueil

Langages

Sections

Frontend Backend Mobile DevOps AI / ML GameDev Blockchain Embarqué Sécurité
TypeScript

Comment donner une mémoire à long terme aux agents IA avec Obsidian

La semaine dernière, je me suis surpris à expliquer la structure de notre service d'authentification à un agent de codage pour la troisième fois ce mois-ci. La fenêtre de contexte de Claude Code est assez grande, mais chaque session finit par se terminer. Un nouveau lancement du terminal — et la console ne sait plus rien des décisions architecturales, des accords d'équipe ou des tâches du sprint.

Récemment, je suis tombé sur le projet obsidian- du développeur Brenno Ferrari. L'auteur a adopté une approche directe : si un agent a besoin d'une mémoire à long terme, pourquoi ne pas en faire un coffre-fort Obsidian classique ?

Obsidian Mind

Ce qu'il y a dans le modèle

Le projet est une structure de notes prête à l'emploi, un ensemble de hooks TypeScript et des commandes CLI préconstruites. Dès le départ, le modèle fonctionne avec Claude Code, Codex CLI, Gemini CLI et d'autres systèmes capables de lire des règles à partir de fichiers d'instructions.

L'idée est que l'agent lit et met à jour les fichiers Markdown de manière autonome. Lorsqu'une session démarre, un hook lit les objectifs globaux depuis le fichier brain/North Star.md, récupère la liste des tâches actives et transmet cette tranche dans la fenêtre de contexte. Lorsque vous informez l'agent d'une décision prise ou d'une réunion qui a eu lieu, il organise les données dans des dossiers et les lie aux noms des collègues ou aux projets.

Obsidian Mind demo

Comment fonctionne le contrôle de l'utilisation des tokens

Le problème principal avec les systèmes comme celui-ci est la consommation de tokens. Si vous bourrez toute la base de connaissances dans le contexte à chaque requête, les limites seront épuisées en quelques heures.

Dans obsidian-, cela est géré par un schéma de chargement multicouche :

  • Lorsqu'une session démarre, une tranche de base est lue : objectifs, tâches ouvertes, commits récents et liste des fichiers du coffre-fort. Cela représente environ 20 000 tokens.
  • Pour la recherche sémantique, l'utilitaire QMD est utilisé. Il construit des embeddings vectoriels localement et trouve les fragments pertinents lorsque l'agent a besoin d'informations spécifiques.
  • Lorsque des messages sont envoyés, le script détermine le type de données (incident, réunion, décision architecturale) et transmet une courte indication de routage à l'agent.
  • Après l'écriture des fichiers, un validateur vérifie la correction des liens wiki et des paramètres YAML.

À quoi ressemble une journée de travail

Le matin, vous exécutez la commande /om-standup. L'agent lit les changements récents dans git, met en correspondance la liste des tâches et produit un bref résumé.

Après des réunions ou des discussions sur Slack, il n'est pas nécessaire de remplir manuellement les structures de documents. Il suffit de fournir le texte brut à l'agent :

/om-dump Обсудили с Сарой рефакторинг авторизации. Решили отложить миграцию на Redis до второго квартала. Сара похвалила архитектуру API.

En réponse, le système effectue automatiquement quatre choses à la fois :

  1. Met à jour le fichier d'historique des réunions dans org/people/Sarah Chen.md.
  2. Crée une entrée de décision dans le dossier des décisions.
  3. Enregistre les éloges dans le modèle d'attestation perf/Brag Doc.md.
  4. Ajoute une nouvelle tâche à la fiche du projet actif.

À la fin de la journée, la commande /om-wrap-up vérifie les notes orphelines sans références croisées et met à jour les index.

Exécution de tâches en arrière-plan via des sous-agents

Pour les opérations lourdes, des sous-agents spécialisés sont configurés dans le modèle. Ils s'exécutent dans des fenêtres de contexte isolées pour éviter d'encombrer l'historique principal de la conversation.

Le dépôt contient plusieurs agents préconfigurés :

  • slack-
  • cross-linker recherche les liens wiki cassés et les notes oubliées dans tout le coffre-fort.
  • brag-
  • people-

Compilation et lancement

Vous pouvez déployer le coffre-fort via le gestionnaire de modèles ShardMind ou simplement en clonant le dépôt.

npm install -g shardmind
mkdir my-vault && cd my-vault
shardmind install github:breferrari/obsidian-mind

La commande de configuration vous demandera d'entrer votre nom, le nom de l'entreprise et les objectifs principaux. Après cela, vous n'aurez qu'à suivre quelques étapes simples :

  1. Ouvrez le dossier créé comme coffre-fort dans Obsidian.
  2. Activez le plugin Obsidian CLI dans les paramètres de l'application (nécessite Obsidian 1.12+).
  3. Exécutez l'agent CLI directement depuis le répertoire du coffre-fort.

Pour une recherche complète, vous devez également installer l'outil de recherche vectorielle QMD :

npm install -g @tobilu/qmd
node --experimental-strip-types .scripts/qmd-bootstrap.ts

Sans QMD, le système continuera à fonctionner via grep et la recherche intégrée d'Obsidian, bien que la précision des réponses aux questions abstraites diminuera légèrement.

Pour qui ce projet est-il destiné

Le modèle sera utile pour les développeurs qui utilisent activement des agents IA en ligne de commande et qui maintiennent ou prévoient de maintenir des notes dans Obsidian. La valeur principale réside dans les règles bien pensées pour lier les documents entre eux.

Une chose à noter est la dépendance à Node.js version 22+ avec l'indicateur --experimental-strip-types pour exécuter les scripts TypeScript sans précompilation. Si cet indicateur est renommé dans les futures versions de Node.js, vous devrez mettre à jour les paramètres des hooks. Néanmoins, le projet fournit une excellente base prête à l'emploi et élimine la nécessité de construire ce type d'échafaudage à partir de zéro.

Projets similaires