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

Hermes Agent : quand sortir Hermes du terminal avec le gateway

Joins Hermes depuis Telegram : comprends le trajet des messages, prépare un accès privé, vérifie une première réponse et apprends à arrêter le gateway.

DANS CE TUTORIELAller à une étape

Tu utilises déjà Hermes dans ton terminal, mais tu aimerais lui poser une question depuis ton téléphone. Le gateway de messagerie fait le lien : il reçoit les messages d’une plateforme comme Telegram, les transmet à l’agent et renvoie sa réponse dans la conversation.

Nous allons suivre un premier échange privé sur Telegram. L’objectif est simple : comprendre où Hermes tourne, autoriser ton compte, obtenir une réponse identifiable, puis arrêter l’essai. Les groupes, les notifications automatiques et les tâches planifiées viendront ensuite, si tu en as besoin.

Ce que tu auras à la fin
Une conversation privée reliée à ton Hermes, un aller-retour vérifié et une distinction claire entre la messagerie, le gateway et l’agent. Tu sauras aussi reconnaître ce que cet essai ne vérifie pas encore : l’exécution d’un outil ou la reprise d’une ancienne mission.

1. Vérifier que ce canal te sera utile

Le gateway est utile pour une question courte, une demande d’état ou un retour que tu veux consulter loin du terminal. Pour relire un long patch ou suivre une opération délicate, garde l’interface où tu vois le mieux les fichiers et les actions.

Il te faut un compte Telegram et une installation d’Hermes qui répond déjà avec le modèle choisi. Sur la machine qui héberge Hermes, vérifie d’abord ce point :

Terminal · ouvrir Hermes
hermes -p default chat

Pose une question simple, puis quitte cette conversation. Si elle ne fonctionne pas, commence par l’installation d’Hermes ou le branchement du modèle local. Ajouter Telegram ne résoudra pas un problème de modèle.

Le parcours suppose Linux ou WSL, un profil default dont tu connais les outils, et aucun gateway déjà actif pour ce profil ou ce bot. Si tu utilises un autre profil, remplace default dans toutes les commandes. Si tu as déjà un service de messagerie en production, ne lance pas un second exemplaire pour cet essai : pars d’un profil et d’un bot dédiés, après avoir suivi le tuto sur les profils.

2. Situer la machine qui travaille

Le téléphone sert à écrire et à lire. Dans notre exemple, le gateway et l’agent restent sur ton PC ou ton VPS. Cette machine doit rester allumée et connectée pour traiter les messages. Un modèle local doit lui aussi rester disponible ; un modèle distant nécessite toujours son accès au fournisseur.

Joindre Hermes à distance

Exemple : conversation privée Telegram, sans relais distant.

Telegram transporte ton message jusqu’au gateway. Sur la machine qui héberge Hermes, le gateway contrôle l’accès, suit la session et transmet la demande à l’agent. La réponse revient par le gateway puis Telegram. Gateway et agent sont deux rôles du service : le téléphone n’héberge pas l’agent. Le modèle et les outils peuvent utiliser d’autres machines ou services, non détaillés ici.

Les flèches représentent le trajet logique des messages. Avec la connexion Telegram par défaut, le gateway interroge les serveurs Telegram par des connexions sortantes : tu n’as pas à ouvrir un port entrant pour ce parcours. Nous n’utilisons ni webhook ni relais distant.

La conversation Telegram possède sa propre session. N’attends pas qu’elle reprenne automatiquement le dialogue ouvert dans ton terminal. De même, changer d’interface ne déplace pas les outils sur ton téléphone : leur lieu d’exécution dépend de la configuration, comme l’explique le tuto local, Docker et SSH.

3. Préparer le bot et ton accès

Dans Telegram, ouvre BotFather, le gestionnaire officiel des bots. Envoie /newbot, choisis un nom d’affichage puis un identifiant disponible se terminant par bot. Conserve le lien vers ton nouveau bot et le jeton fourni par BotFather : ce secret permettra à Hermes de se connecter à ce bot.

Ne colle pas ce jeton dans une conversation avec un modèle, un dépôt ou une capture destinée à être partagée. Il sera saisi dans l’assistant de configuration, à l’étape 5. S’il est divulgué, révoque-le avec BotFather avant de poursuivre.

Récupère ensuite ton identifiant utilisateur numérique Telegram. La documentation Hermes propose notamment @userinfobot : ouvre une conversation avec ce bot tiers et demande ton identifiant. Tu ne dois lui transmettre aucun jeton. Note le nombre obtenu ; ce n’est ni ton @pseudo, ni l’identifiant du bot que tu viens de créer.

Pour cet essai, tu autoriseras uniquement ton compte et tu écriras directement à ton bot. Il n’est pas nécessaire de l’ajouter à un groupe ni de modifier les réglages de confidentialité des groupes.

4. Choisir un dossier de travail explicite

Même si notre premier message ne demande aucune action sur des fichiers, prépare un dossier vide pour éviter de laisser ce réglage implicite. Dans le terminal de la machine qui héberge Hermes :

Terminal · créer un dossier d’essai
mktemp -d "$HOME/tekbrut-gateway-XXXXXX"

Copie le chemin absolu affiché. Ouvre ensuite la configuration du profil et enregistre une copie du fichier avec ton éditeur avant de le modifier :

Terminal · ouvrir la configuration du profil
hermes -p default config edit

Sous la clé terminal: existante, règle cwd: sur ton chemin réel. L’exemple ci-dessous suppose le backend local ; si ton profil utilise Docker ou SSH, conserve son backend et prépare d’abord un chemin adapté à cet environnement avec le tutoriel lié à l’étape 2. Ne crée pas une deuxième clé terminal: et conserve les autres réglages.

Configuration YAML · à adapter, pas à exécuter
terminal:
  backend: local
  cwd: "/home/ton-compte/tekbrut-gateway-Ab12Cd"

Un dossier de départ, pas une limite d’accès
terminal.cwd fixe le dossier de départ des outils concernés. Il ne les enferme pas dans ce dossier. Vérifie les outils activés pour la messagerie avant de la connecter, en t’appuyant sur les premiers tools utiles. La consigne « sans outil » du premier essai ne désactive pas techniquement les outils.

Dans la documentation actuelle, MESSAGING_CWD est un ancien réglage de compatibilité. Pour une nouvelle configuration, utilise terminal.cwd. Si ta version ne correspond pas à cette documentation, consulte le parcours de mise à jour avant de changer les paramètres.

5. Configurer Telegram et lancer le gateway

Dans le même profil :

Terminal · configurer Telegram
hermes -p default gateway setup

Choisis Telegram, saisis le jeton du nouveau bot puis ton identifiant numérique dans la liste des utilisateurs autorisés. Cette liste, appelée allowlist, décide qui peut joindre l’agent. Vérifie qu’elle contient ton identifiant exact, sans ouverture à tous les utilisateurs.

L’assistant enregistre les réglages et peut proposer de lancer ou relancer le gateway. Pour suivre notre essai au premier plan, décline ce lancement automatique. N’ajoute pas d’autre plateforme. Si l’assistant présente déjà des plateformes actives que tu souhaites conserver, arrête ce parcours et prépare plutôt un profil d’essai séparé.

Lance ensuite le gateway dans ce terminal :

Terminal · lancer au premier plan
hermes -p default gateway

Laisse ce terminal ouvert et observe la connexion Telegram. Une configuration enregistrée ne signifie pas encore que le gateway tourne ; un processus lancé ne signifie pas encore que Telegram est connecté. En cas d’erreur, conserve son message exact en masquant les secrets avant de le partager.

Nous n’utilisons pas gateway start ici : cette commande démarre un service installé. Le lancement au premier plan suffit pour comprendre et vérifier le premier échange.

6. Envoyer un message et reconnaître son retour

Sur ton téléphone, ouvre le lien du bot créé à l’étape 3, puis appuie sur Démarrer si Telegram le propose. Écris dans cette conversation privée, pas dans BotFather :

À demander à Hermes · dans Telegram
Réponds uniquement par « Bonjour, repère tulipe-38 reçu ». N’utilise aucun outil, ne consulte aucun fichier et ne lance aucune tâche.

Exemple de réponse · Hermes
Bonjour, repère tulipe-38 reçu

Tu cherches une nouvelle réponse à ton message, provenant de ton bot dans la même conversation, avec le repère demandé. Le texte illustré ci-dessus n’est pas la capture d’un essai exécuté. Une simple notification de démarrage ou un message d’erreur du fournisseur ne valide pas cet échange.

Ce que cet échange permet de vérifier
Ton compte a pu transmettre une demande à Hermes par Telegram, et une réponse de l’agent est revenue dans ce chat. Cela ne vérifie ni un appel d’outil, ni l’accès à un fichier, ni la reprise d’une mission précédente.

Si le modèle pose une question d’accueil au lieu de suivre la consigne, termine cet accueil puis répète le message d’essai. Si tu vois un appel d’outil inattendu, interrompt la tâche et revois les outils du profil avant d’aller plus loin.

7. Arrêter l’essai avant de choisir la suite

Reviens au terminal où le gateway tourne et presse Ctrl+C. Attends la fin du processus et le retour de l’invite du shell. Cela arrête le gateway lancé au premier plan ; ni ton bot ni sa configuration ne sont supprimés. Tu pourras relancer la même commande pour refaire l’essai.

La commande /stop envoyée dans le chat arrête la tâche en cours de l’agent : ne la confonds pas avec l’arrêt du service de messagerie. Évite aussi d’envoyer des demandes importantes pendant que le gateway est éteint en supposant qu’elles seront toutes traitées au redémarrage.

Si ce canal te rend service, tu pourras ensuite installer un service permanent en suivant la documentation de gestion du gateway. Avant cela, choisis ce que tu veux y faire : une question ponctuelle, un retour de tâche ou une notification attendue. Un seul usage clair suffit pour commencer.

Retrouver la cause d’un blocage

Ce que tu observesCe que tu vérifies d’abord
La configuration est enregistrée, mais rien ne répondLe gateway est-il lancé et Telegram connecté ?
Le jeton est refuséJeton du bon bot, saisie complète, éventuelle révocation dans BotFather
Ton compte n’est pas autoriséIdentifiant numérique de ton compte, bon profil, configuration enregistrée
Une erreur mentionne une autre connexion au botUn autre gateway utilise-t-il le même jeton ? N’ajoute pas une nouvelle instance
Telegram reçoit une erreur de modèleAccès au fournisseur ou disponibilité du serveur local dans le profil utilisé
Hermes ne retrouve pas le dialogue du terminalLa messagerie a sa propre session ; donne le contexte utile explicitement
Un outil vise le mauvais dossierterminal.cwd, backend utilisé et chemin réellement visible dans cet environnement
Le bot ne répond plus après fermeture du terminalLe lancement au premier plan ne constitue pas un service permanent

La suite logique

Le gateway apporte un nouveau point de contact avec Hermes. Pour recevoir ensuite les résultats de tâches planifiées, tu pourras définir un canal de destination et suivre le tutoriel cron. Ce réglage n’est pas nécessaire à notre premier aller-retour privé.

Si tu veux séparer les usages, les outils ou les configurations, poursuis plutôt avec les profils Hermes.

Parcours proposé pour être reproduit ; aucun bot ni échange Hermes/Telegram n’a été exécuté pour cet article. Configuration et commandes vérifiées dans les sources officielles le 8 novembre 2026 : gateway, Telegram et configuration Hermes.

↑ Revenir au sommaire