SÉRIE HERMES AGENT ÉTAPE 2 5/24

Hermes Agent : utiliser ses premiers outils

Fais lire un premier fichier à Hermes Agent : prépare une note fictive, observe l’appel de l’outil et vérifie la réponse avant d’élargir ses usages.

DANS CE TUTORIELAller à une étape

Hermes sait déjà te répondre. Mais comment lui faire consulter un fichier qui se trouve sur ta machine, sans copier son contenu dans la conversation ? C’est le rôle d’un outil, appelé tool dans l’interface : une capacité que le modèle peut demander à utiliser pour obtenir une information ou réaliser une action.

Nous allons commencer par une lecture. Tu créeras une petite note fictive, puis tu demanderas à Hermes d’y retrouver trois informations. À la fin, tu sauras distinguer l’outil disponible, l’appel effectué et la réponse vérifiée.

Avant de commencer

Ce parcours utilise un terminal Linux ou WSL, où Hermes est déjà installé et capable de répondre avec un modèle compatible avec les appels d’outils. Dans WSL, reste dans le terminal Linux, pas dans PowerShell.

L’exercice suppose le backend local : l’environnement où les outils accèdent aux fichiers est la même machine que celle où tu prépares la note. Si tu utilises Docker ou SSH, commence par le tuto sur les environnements d’exécution. Un chemin présent sur ton ordinateur n’existe pas forcément dans un conteneur ou sur une machine distante.

Les commandes ciblent le profil default. Si tu en utilises un autre, remplace ce nom dans toutes les commandes. Le tuto sur les profils explique cette séparation.

1. Préparer un fichier dont tu connais le contenu

En dehors de la conversation Hermes, colle ce bloc dans ton terminal. Il crée un dossier neuf dans ton dossier personnel, puis y écrit une note de trois lignes. Le nom du dossier sera différent à chaque essai ; aucun fichier existant n’est remplacé.

Terminal · créer la note de test
dossier_essai=$(mktemp -d "$HOME/hermes-lecture.XXXXXX") && {
  printf '%s\n' \
    'Projet : Silex' \
    'État : maquette terminée' \
    'Prochaine action : relire la page de présentation' \
    > "$dossier_essai/note-silex.txt"
  printf 'Chemin à conserver : %s/note-silex.txt\n' "$dossier_essai"
  cat "$dossier_essai/note-silex.txt"
}

Vérifie les trois lignes affichées et conserve le chemin complet, qui commence par /. Tu le donneras à Hermes plus loin. Si la création échoue, règle l’erreur avant de continuer.

Nous utilisons du contenu fictif pour que la vérification soit immédiate. Évite les documents personnels pour ce premier essai : le texte lu peut être transmis au fournisseur du modèle qui produit la réponse.

2. Ouvrir une conversation avec les outils de fichiers

Quitte toute conversation précédente avec /quit. Dans ton terminal, consulte le backend configuré :

Terminal · vérifier l’environnement configuré
hermes -p default config get terminal.backend

Le parcours attend local. Si une autre valeur apparaît, ou si tu as personnalisé l’environnement de lancement, clarifie l’emplacement réel des outils avec le tuto d’exécution avant de poursuivre. Ne change pas ce réglage simplement pour faire disparaître une erreur de chemin.

Ouvre ensuite une nouvelle conversation avec le groupe d’outils de fichiers :

Terminal · lancer cet essai
hermes -p default chat --toolsets file

Un toolset est un groupe d’outils. L’option --toolsets file sélectionne ce groupe pour ce lancement. Dans la conversation, consulte le catalogue actif :

Dans Hermes · consulter les outils disponibles
/tools

Cherche read_file, l’outil de lecture de fichier. S’il manque, ne passe pas à la demande : vérifie la sélection d’outils du profil et les indications de ta version. Un outil désactivé individuellement peut rester absent même si son groupe est sélectionné.

Sélectionner des outils ne crée pas une zone protégée
Le groupe file comprend aussi la recherche et la modification de fichiers. Ce lancement n’est donc pas un mode lecture seule. Le petit dossier de l’exercice ne limite pas non plus les accès aux autres fichiers : ceux-ci dépendent de l’environnement et de ses permissions.

3. Demander une lecture précise

Remplace CHEMIN_COMPLET ci-dessous par le chemin conservé à l’étape 1, jusqu’à note-silex.txt. Ne colle pas les trois lignes du fichier dans la conversation : nous voulons observer leur récupération par l’outil.

À demander à Hermes
Lis le fichier « CHEMIN_COMPLET » avec l’outil read_file.
Ne modifie aucun fichier et n’utilise pas d’autre outil pour cette tâche.
À partir du contenu lu, donne uniquement trois lignes :
Projet : …
État : …
Prochaine action : …
Si la lecture échoue, indique l’erreur au lieu de deviner le contenu.

Hermes doit demander la lecture, recevoir le texte, puis s’en servir pour répondre. La consigne borne la tâche attendue ; elle ne remplace pas une restriction technique des droits d’écriture.

Lire un fichier, puis répondre

Tu vérifies l’appel et la réponse.

Hermes transmet le chemin à l’outil de lecture, qui récupère le texte du fichier et le renvoie. Hermes s’appuie ensuite sur ce contenu pour répondre. Vérifie le chemin visé, le retour de l’outil et la fidélité de la réponse. Cet exemple suppose un fichier local accessible ; ce trajet ne limite pas à lui seul les accès d’Hermes aux autres fichiers.

4. Observer l’appel avant de juger la réponse

Regarde l’activité des outils dans l’interface. Tu dois retrouver un appel à read_file visant le chemin de ta note, puis un retour contenant ses trois lignes. Selon la version et les réglages d’affichage, les détails peuvent être repliés : ouvre-les lorsqu’ils sont disponibles.

Le retour de lecture peut ajouter des numéros de ligne. Ils servent de repères ; ils ne font pas partie de la note.

Le contrôle utile
Le fichier demandé est bien celui que tu as créé, la lecture réussit et son retour correspond au texte connu. Si tu ne peux pas voir ces éléments, ne considère pas l’appel comme vérifié sur la seule affirmation d’Hermes.

Si Hermes annonce un fichier introuvable, compare d’abord le chemin utilisé avec celui de l’étape 1. Si le chemin est correct, vérifie l’environnement d’exécution et les droits d’accès. Ne contourne pas ce problème en collant le contenu dans le chat : cela testerait une autre façon de travailler.

5. Comparer la réponse au fichier

Voici la réponse attendue pour notre note fictive. C’est un exemple de résultat, pas la capture d’un essai exécuté.

Exemple de réponse · Hermes

Projet : Silex

État : maquette terminée

Prochaine action : relire la page de présentation

Compare les trois informations avec les lignes affichées dans ton terminal. Rien ne doit être inventé : ni une date, ni une personne responsable, ni une étape déjà accomplie en plus.

Une lecture réussie et une réponse fidèle sont deux contrôles différents. Si le retour de l’outil est correct mais que la réponse déforme la note, tu as repéré un problème d’interprétation ou de restitution, pas un fichier introuvable. Demande alors une correction limitée au fait concerné.

6. Garder ce qui t’aide et choisir la suite

Note simplement ce que tu as observé : « Lecture de note-silex.txt : appel visible, contenu reçu, trois informations fidèles », ou le point qui reste à vérifier. Tu disposes désormais d’un petit cas de référence, facile à refaire.

Quand l’essai est terminé, quitte avec /quit. Pour retrouver ton lancement habituel avec ce profil, ouvre une conversation sans l’option de sélection :

Terminal · retrouver le lancement habituel
hermes -p default chat

Tu peux conserver la note fictive pour un prochain essai ou supprimer manuellement son dossier après avoir vérifié son nom. Rien n’oblige à élargir les capacités tout de suite. Pars du prochain besoin réel :

Ton besoinLa capacité à explorer
Lire un fichier dont tu connais le cheminread_file, comme dans cet exercice.
Retrouver un fichier ou une expressionsearch_files, en indiquant un dossier précis.
Lancer une commande connueL’outil terminal, après vérification de son environnement.
Consulter une information en ligneUn outil de recherche web adapté à la source recherchée.

La recherche peut précéder la lecture quand tu ne connais pas le fichier. Le terminal devient utile pour une commande ou un programme ; il n’est pas une étape obligatoire après la lecture. Pour choisir son environnement, poursuis avec local, Docker et SSH.

Quand ajouter un outil demande plus de préparation

Pour une modification, commence par une copie de travail et un changement facile à relire. Pour un service externe, identifie les données envoyées et les droits accordés avant la connexion. Le tuto sur la sécurité reprend ces repères avec un exemple accessible.

L’exercice utilise un outil natif d’Hermes. Tu n’as pas besoin de MCP pour lire cette note. MCP devient pertinent lorsque tu veux brancher un serveur qui expose d’autres capacités ; le premier parcours MCP explique ce trajet distinct.

Pour entretenir ta sélection dans la durée, retrouve la différence entre outils installés, disponibles et utilisés dans le tuto de maintenance légère.

Sources et repères de version

Parcours recoupé avec la documentation officielle des outils Hermes, la référence des outils et celle des toolsets. Les menus et détails d’affichage peuvent varier selon la version installée.

↑ Revenir au sommaire