SÉRIE HERMES AGENT BRANCHE AVANCÉE 21/24

Hermes Agent : comprendre la mémoire, les sessions et les profils

Choisis entre mémoire native, historique, profil et provider externe. Vérifie une note enregistrée, son rappel dans une nouvelle session et la recherche d’un ancien échange.

DANS CE TUTORIELAller à une étape

Tu demandes à Hermes de retenir une information. Il répond « c’est noté », puis semble l’avoir oubliée à la conversation suivante. Avant d’ajouter un système de mémoire, il faut comprendre ce qui a été enregistré, dans quel profil, et comment cette information revient au modèle.

La mémoire native, les sessions, les profils et les providers externes répondent à des besoins différents. Ce ne sont pas quatre étages à installer l’un après l’autre. Nous allons les distinguer avec un seul exemple, puis vérifier une petite note de bout en bout.

Ce que tu auras à la fin
Tu sauras où placer un fait durable, comment retrouver un ancien échange et quand séparer tes usages. Tu pourras vérifier un enregistrement réel, sans confondre une confirmation rédigée par Hermes avec une écriture réussie.

1. Partir de ce que tu veux retrouver

Prenons un projet fictif : l’atelier Azur-62. Tu prépares des fiches, tu discutes de leurs variantes et tu souhaites retrouver le travail plus tard. Selon ce que tu veux conserver, le bon mécanisme change.

Ton besoinLe mécanisme adapté
Garder une convention de ficheMémoire native : une courte note chargée au début d’une session
Retrouver une comparaison passéeHistorique : les messages à reprendre ou à rechercher
Séparer l’atelier de tes usages personnelsProfil distinct : un état Hermes séparé
Rechercher dans un corpus plus richeProvider externe : un stockage et un rappel supplémentaires

La note native est chargée si cette mémoire est activée ; les fonctions d’un provider dépendent du fournisseur choisi. Une même activité peut utiliser plusieurs de ces mécanismes. Par exemple, la convention reste dans la mémoire native tandis que le détail d’une comparaison reste dans l’historique. Un provider externe n’est pas nécessaire pour cet exemple.

2. Repérer le profil et ses mémoires

Il te faut un Hermes installé, un modèle qui répond et sait appeler les outils, et un terminal sur la machine qui conserve les données d’Hermes. Si ce point n’est pas acquis, commence par l’installation et les premiers outils utiles.

Nous utiliserons le profil default. Si tu en choisis un autre, remplace ce nom dans toutes les commandes. Vérifie d’abord son emplacement :

Terminal · identifier le profil
hermes profile show default

Note le répertoire indiqué. Dans une installation standard, le profil par défaut utilise ~/.hermes ; un profil nommé possède son propre répertoire. Ne déduis pas cet emplacement du dossier de travail du terminal : ce sont deux réglages différents.

La mémoire native utilise deux fichiers dans le sous-dossier memories du profil :

FichierContenu adapté
MEMORY.mdConventions de projet, faits d’environnement, notes utiles à l’agent
USER.mdPréférences de communication et informations durables sur l’utilisateur

Ces notes restent compactes. Lorsqu’elles sont activées, Hermes les charge dans le prompt système au début de la session. Une modification peut être écrite sur disque pendant la conversation, mais le bloc initial reste un instantané : la nouvelle note sera chargée au prochain démarrage de session. Le résultat de l’outil peut, lui, montrer immédiatement l’état mis à jour.

Pour isoler le rappel natif, utilise un profil sans provider externe actif : vérifie sa configuration avec hermes -p default memory status. Un provider peut injecter du contexte automatiquement, même sans appel d’outil visible. S’il est actif, prépare un profil d’essai sans provider en suivant le tuto sur les profils, plutôt que de modifier ton usage habituel.

Pour suivre l’essai, ferme les autres conversations actives du même profil. Si un gateway ou un autre agent travaille déjà avec ce profil, utilise un profil d’essai distinct plutôt que de faire écrire deux processus dans le même état.

3. Enregistrer une note et contrôler l’écriture

Ouvre une conversation dans le profil choisi :

Terminal · ouvrir la conversation d’essai
hermes -p default chat

L’exemple qui suit est fictif et sera retiré après l’essai. Si tu as déjà une entrée contenant Azur-62, choisis un autre repère pour ne pas toucher à une note existante.

À demander à Hermes · enregistrer la convention
Pour cet exercice uniquement, utilise l’outil memory, cible memory, pour ajouter cette note : « Projet fictif Azur-62 : chaque fiche commence par une question et se termine par une action. » Conserve les autres entrées. Si l’écriture échoue ou attend une approbation, indique-le sans annoncer que la note est enregistrée.

Observe l’appel à l’outil memory et son résultat. Une phrase comme « je m’en souviendrai » ne suffit pas. Si une approbation est demandée, lis la note proposée avant de l’accepter. Une écriture en attente n’est pas encore une note enregistrée.

Vérifie ensuite le fichier memories/MEMORY.md du répertoire de profil observé à l’étape 2, avec ton éditeur ou un lecteur de fichiers. Tu dois y retrouver la convention, sans perte des autres notes. Ne partage pas le fichier complet : il peut contenir d’autres informations de ton environnement.

Si l’écriture n’a pas eu lieu
Vérifie que l’outil mémoire et la cible memory sont activés. Si la capacité est atteinte, ne supprime pas d’anciennes notes au hasard : arrête l’exercice et relis-les séparément. Si ta configuration impose une validation, consulte les demandes avec /memory pending dans Hermes et traite uniquement celle de cet essai.

4. Tester le rappel dans une nouvelle session

Une réponse correcte dans la même conversation ne prouve pas la persistance : la consigne est encore dans le contexte. Dans Hermes, envoie la commande suivante, seule, pour ouvrir une nouvelle session :

Dans Hermes · ouvrir une nouvelle session
/new

Pose ensuite la question sans répéter la convention :

À demander à Hermes · vérifier le rappel
Dans la mémoire native déjà chargée pour ce profil, quelle convention est enregistrée pour les fiches du projet Azur-62 ? N’utilise ni recherche de sessions, ni lecture de fichier, ni provider externe pour répondre. Si tu ne la retrouves pas, dis-le.

Exemple de réponse · Hermes
Chaque fiche commence par une question et se termine par une action.

Compare à la note contrôlée sur disque. Observe aussi les outils utilisés : si Hermes recherche l’ancienne conversation ou relit le fichier, il a retrouvé l’information par un autre chemin. Ce n’est pas le rappel natif que nous cherchons à isoler. La consigne ne désactive pas techniquement ces outils ; elle permet d’exprimer l’essai et d’en contrôler le déroulement.

Les trois observations à réunir
Une écriture réussie, la note présente dans le bon fichier, puis une réponse conforme dans une nouvelle session du même profil sans autre recherche. Ces observations vérifient cet exemple ; elles ne garantissent pas qu’un modèle utilisera toujours correctement toutes ses notes.

Sur une messagerie, fermer l’application ou redémarrer la machine ne crée pas nécessairement une nouvelle session. Utilise une vraie frontière de conversation, comme /new, pour ce test.

5. Retrouver l’échange dans l’historique

La note compacte n’explique pas toute la discussion qui l’a produite. L’historique sert à retrouver ces messages, tant qu’ils sont conservés et accessibles dans le profil.

Pour voir la différence, demande maintenant à Hermes de rechercher l’échange d’origine :

À demander à Hermes · rechercher la conversation
Utilise session_search pour retrouver l’échange où j’ai demandé d’enregistrer la convention du projet fictif Azur-62. Donne l’identifiant de la session et un court extrait du message trouvé. Ne déduis pas cet échange de la seule note mémoire. Si tu ne le trouves pas, indique-le.

Contrôle l’appel session_search, l’identifiant retourné et l’extrait. Notre question mentionne elle aussi Azur-62 : retrouver uniquement cette question ne suffit pas. Il faut retrouver le message d’enregistrement de l’étape 3.

Pour consulter les sessions depuis le terminal, quitte d’abord la conversation Hermes, puis lance :

Terminal · lister les sessions du profil
hermes -p default sessions list

Si tu veux reprendre une session, remplace ID_OBSERVE ci-dessous par un identifiant réellement affiché, en conservant les guillemets :

Terminal · reprendre une session choisie
hermes -p default --resume "ID_OBSERVE"

Reprendre un échange et démarrer une nouvelle session sont deux actions différentes. Pour une tâche interrompue, poursuis avec le tuto de reprise de mission : une conversation retrouvée ne prouve pas que les fichiers ou les processus sont encore dans le même état.

6. Retirer la note d’essai et choisir la suite

Dans une conversation du même profil, retire uniquement notre entrée fictive :

À demander à Hermes · retirer la note d’essai
Avec l’outil memory, cible memory, retire uniquement l’entrée de cet exercice : « Projet fictif Azur-62 : chaque fiche commence par une question et se termine par une action. » Conserve toutes les autres entrées. Si la correspondance est ambiguë, arrête-toi et montre ce qui doit être clarifié.

Vérifie le résultat et l’absence de cette entrée dans le même fichier. Si tu avais changé le repère, adapte la consigne. La suppression de la note ne supprime pas la conversation enregistrée, ni une éventuelle copie détenue par un provider externe. Elle ne retire pas non plus le texte déjà chargé dans une session en cours.

Séparer les usages avec un profil

Si ton besoin est de séparer l’atelier de tes autres activités, un profil distinct est le bon sujet à examiner. Il possède ses propres mémoires natives et son historique. Ce découpage de l’état Hermes n’est pas une isolation des permissions système : les outils gardent les accès de leur environnement.

Attention au clonage : dans la documentation actuelle, hermes profile create <nom> --clone copie notamment MEMORY.md et USER.md. Ne pars donc pas du principe qu’un clone commence sans mémoire. Une configuration externe copiée peut aussi viser le même stockage distant. Le tuto sur les profils développe ce choix ; vérifie toujours le contenu et la destination avant d’utiliser un nouveau profil.

Ajouter un provider seulement pour un besoin identifié

Un provider mémoire est un composant supplémentaire de stockage et de rappel. Selon le fournisseur, il peut apporter une recherche sémantique, une structuration des faits ou une extraction automatique. Ces possibilités, leur coût et l’emplacement des données dépendent du provider choisi.

Pour voir la configuration externe du profil sans en activer une :

Terminal · consulter le provider configuré
hermes -p default memory status

Les commandes memory setup et memory off concernent le provider externe. off ne vide pas les fichiers de mémoire native et ne doit pas être pris pour une suppression des données chez le fournisseur. L’activation d’un provider ne remplace pas à elle seule les mémoires natives ; celles-ci peuvent être activées ou désactivées par leurs propres réglages.

Tu peux rester avec la mémoire native et l’historique tant qu’ils répondent à ton besoin. Si tu as un corpus plus important à retrouver, consulte la documentation des providers avant d’en connecter un.

Retrouver la cause d’un oubli

Ce que tu observesCe que tu vérifies d’abord
Hermes dit avoir enregistré, mais la note est absenteAppel réel à memory, résultat, approbation éventuelle et bon fichier
La note existe, mais n’est pas rappeléeMême profil, mémoire activée, nouvelle session et absence d’erreur de chargement
Le résultat semble juste, mais un outil a été appeléLe chemin réellement utilisé : mémoire chargée, lecture de fichier ou historique
Une ancienne discussion est introuvableProfil, identifiant, termes recherchés, conservation et accès aux sessions
Une note supprimée revient dans une réponseContexte déjà chargé, historique ou provider externe : la note n’était pas l’unique source
Un clone connaît déjà d’anciennes conventionsLes mémoires copiées lors du clonage et les éventuels stockages externes partagés

La suite logique

Garde dans la mémoire native ce qui est court, durable et utile à plusieurs conversations. Retrouve le détail dans les sessions. Si ce que tu veux conserver est une méthode à appliquer, plutôt qu’un fait, le tuto pour transformer une méthode en skill sera plus adapté.

Parcours proposé pour être reproduit ; aucun essai de mémoire Hermes n’a été exécuté pour cet article. Sources officielles vérifiées le 8 novembre 2026 : mémoire native, sessions, profils et providers mémoire.

↑ Revenir au sommaire