Je vais droit au but : pour faire tourner Hermes Agent sur Telegram, je crée d’abord un bot avec BotFather, je configure Hermes Gateway, puis je verrouille l’accès avec mon identifiant Telegram.
Le trio est simple, mais le garde-fou est vital, parce que Hermes a un accès terminal et système complet. Un faux pas, et le serveur devient bavard. Pas idéal.
- Pré-requis : Hermes Agent déjà installé sur une machine locale ou un VPS cloud comme Hostinger ou GMI Cloud.
- Clé API LLM : OpenRouter, OpenAI ou Anthropic, déjà configurée dans l’agent.
- Sécurité : je limite toujours l’accès à mon propre Telegram User ID, puis j’ajoute les autres comptes un par un.
- Exécution continue : sur Linux, je le passe en service système pour qu’il reste en ligne 24/7.
Je garde aussi deux ressources sous la main : le dépôt Hermes Agent et le guide Telegram Team Telegram Assistant. Quand je veux creuser un détail, je vais voir mon guide Hermes Agent et la note de version RELEASE_v0.11.0.

1) Créer le bot Telegram avec BotFather
Je commence dans Telegram. Je cherche @BotFather, j’ouvre la discussion, puis j’envoie /newbot. BotFather me demande deux champs. D’abord le nom affiché, par exemple My Hermes Agent. Ensuite le nom d’utilisateur, qui doit être unique et finir par bot, comme my_hermes_ai_bot.
À la fin, BotFather me remet un HTTP API Token. Je le copie et je le range dans un endroit sûr. Ce jeton est la clé de la porte, pas un détail décoratif.
Guide setup hermes ici.
2) Récupérer mon Telegram User ID
Je ne laisse jamais Hermes ouvert à tout le monde. La raison est simple : il peut exécuter des commandes terminal et toucher au système. Je sécurise donc l’accès avec mon propre identifiant numérique Telegram.
Je cherche soit @userinfobot, soit @MissRose_bot. J’envoie n’importe quel message, et le bot m’affiche mon User ID, sous forme numérique. Exemple : 123456789.
3) Configurer Hermes Gateway
Je peux faire la configuration de deux façons. La première passe par le CLI, et je la recommande. La seconde passe par les fichiers d’environnement si je préfère tout écrire à la main. Les deux marchent.
Option A — Configuration interactive avec le CLI
hermes gateway setup
Ensuite, je navigue avec les flèches, je sélectionne Telegram, je colle mon Bot Token, puis je saisis mon User ID dans les utilisateurs autorisés.
Option B — Configuration manuelle dans le fichier d’environnement
Si je veux tout contrôler moi-même, j’ouvre le fichier :
nano ~/.hermes/.env
Je colle mes identifiants en bas du fichier :
TELEGRAM_BOT_TOKEN=your_bot_token_here
TELEGRAM_ALLOWED_USERS=your_numeric_user_id_here
Je sauvegarde avec Ctrl+O, Enter, puis je ferme avec Ctrl+X.
4) Démarrer et appairer le bot
Une fois la configuration posée, je lance la passerelle de messagerie :
hermes gateway start
Si je veux voir les échanges en direct pour déboguer, je peux aussi lancer simplement hermes gateway dans le terminal.
Je retourne ensuite dans Telegram, j’ouvre mon nouveau bot et je clique sur Start. Le bot me donne un Pairing Code à usage unique. Je copie la commande d’approbation fournie dans Telegram, puis je la colle dans mon terminal serveur :
hermes pairing approve telegram YOUR_CODE_HERE
À partir de ce moment, l’agent est autorisé et répond à mes messages Telegram presque instantanément.
5) Garder Hermes en ligne 24/7 sur Linux
Si je ferme ma session SSH, le processus s’arrête. Pour éviter ce petit piège, j’installe Hermes comme service système en arrière-plan :
# Installer le service système
sudo hermes gateway install --system
# Activer le linger utilisateur pour que le service continue après la déconnexion
sudo loginctl enable-linger $USER
# Démarrer le démon d’arrière-plan
hermes gateway start
Pour suivre l’activité en temps réel, je consulte les logs avec :
journalctl --user -u hermes-gateway -f
6) Ajouter des toolkits personnalisés
Par défaut, Hermes reçoit un accès terminal de base. Je peux élargir ses capacités avec des modules ciblés : recherche Google, navigation web, manipulation de fichiers, et plus encore. Je les active selon mes besoins, pas selon l’humeur du jour.
Je liste d’abord les outils disponibles :
hermes tool list
Puis j’active un toolkit précis :
hermes tool enable <toolkit-name>
Quelques exemples concrets :
hermes tool enable web_browser
hermes tool enable file_manager
Si un outil demande une clé API, comme Google Search, j’ouvre le fichier d’environnement et j’ajoute la variable requise :
nano ~/.hermes/.env
GOOGLE_API_KEY=your_key
Je sauvegarde, puis je redémarre la passerelle :
hermes gateway restart
7) Ajouter des collègues ou des coéquipiers
Comme Hermes peut exécuter des commandes serveur, je n’autorise que les comptes Telegram explicitement listés. Pour ajouter un collègue, je lui demande d’abord son User ID.
- Il ou elle ouvre @userinfobot sur Telegram.
- La personne m’envoie son identifiant numérique.
- J’ajoute ensuite cet identifiant à la liste des utilisateurs autorisés.
Je modifie mon fichier de configuration :
nano ~/.hermes/.env
Je repère la ligne TELEGRAM_ALLOWED_USERS et j’ajoute les IDs séparés par une virgule, sans espace :
TELEGRAM_ALLOWED_USERS=123456789,987654321
Je sauvegarde, puis je redémarre la passerelle :
hermes gateway restart
Ensuite, mon coéquipier cherche le bot par son nom d’utilisateur, clique sur Start, récupère son propre code d’appairage, et moi je l’autorise depuis mon terminal :
hermes pairing approve telegram TEAMMATE_CODE_HERE
8) Comprendre le streaming natif sur Telegram
Hermes Agent prend en charge le streaming natif des messages. Je vois le texte se construire mot par mot, presque comme dans un terminal, mais à l’intérieur de Telegram. Le bot ouvre une seule bulle de message avec un curseur en bloc (▉), puis il édite cette même bulle jusqu’à la fin de la génération. Quand tout est terminé, le curseur disparaît.
Si un modèle de raisonnement s’active, Hermes peut aussi afficher des étapes de réflexion condensées dans un bloc repliable au sein de la discussion. C’est pratique pour suivre le flux sans noyer le chat.
Activer, désactiver ou ajuster le streaming
Dans les versions récentes, le streaming est activé par défaut. Je peux pourtant le contrôler dans ma configuration. Je modifie le fichier :
nano ~/.hermes/.env
Je vérifie ou j’ajoute ce paramètre :
STREAMING_ENABLED=true
Je sauvegarde, puis je redémarre :
hermes gateway restart
Je garde une idée simple en tête : un streaming fluide dépend autant du modèle que des limites d’édition de Telegram. Quand le rythme devient trop nerveux, je ralentis la cadence.
9) Les limites connues et le dépannage du streaming
Le rendu en temps réel donne une expérience très vive, mais Telegram impose des limites strictes sur les messages modifiés. Trois cas reviennent souvent.
- Limites de flood Telegram : si le LLM génère des tokens plus vite que Telegram n’accepte les éditions, Hermes peut bloquer au milieu d’une phrase, laisser le curseur (▉) figé, ou envoyer la suite dans un message final séparé.
- Bugs de threading : si j’active
reply_to_modepour répondre dans un fil précis, le streaming peut parfois casser l’association et publier la réponse comme un bloc séparé. - Webhooks vs polling : en mode Webhook sur certaines plateformes cloud serverless, le flux peut se retrouver aplati selon la configuration du proxy. Pour un streaming propre, je privilégie un VPS classique avec Long Polling.
10) Corriger les limites de rate limit et les flux figés
Si le curseur reste figé ou si Telegram coupe les mises à jour, je passe dans le fichier de configuration non secret :
nano ~/.hermes/config.yaml
J’ajoute ou j’ajuste la section Telegram de cette façon :
telegram:
# Augmenter le délai minimum entre deux éditions de message
stream_update_interval: 0.8
# Retirer automatiquement le curseur si un message expire
strip_frozen_cursor: true
Je sauvegarde puis je redémarre la passerelle :
hermes gateway restart
Ce réglage réduit les chocs avec les plafonds d’édition de Telegram. Et franchement, il évite bien des migraines.
11) Changer ou supprimer le style du curseur
Si je préfère un autre indicateur visuel, je peux remplacer le bloc solide par un underscore clignotant, ou même retirer complètement le symbole pour une sortie plus propre.
Je rouvre mon fichier d’environnement :
nano ~/.hermes/.env
Puis je définis le curseur de streaming :
# Passer du bloc solide (▉) à un underscore terminal
STREAMING_CURSOR="_"
# Ou le laisser vide pour un streaming sans symbole
STREAMING_CURSOR=""
Je sauvegarde, puis je redémarre le démon :
hermes gateway restart
12) Quand Telegram coupe les longues réponses
Si mon instance Telegram laisse tomber des réponses trop longues à cause des limites de débit, je peux mettre en place un pipeline MCP pour écrire les gros blocs de code directement dans des fichiers, au lieu de saturer la fenêtre de chat. C’est propre. C’est net. Et ça sauve les gros payloads.
Hermes Agent face à OpenClaw
Quand j’évalue un assistant IA pour Telegram, Hermes Agent et OpenClaw suivent deux logiques très différentes. OpenClaw mise sur une intégration multi-plateformes immédiate et sur des compétences pré-écrites.
Hermes, lui, insiste sur une boucle d’auto-apprentissage continue, une maintenance plus légère et une gestion média plus profonde.
| Fonction / métrique | Hermes Agent | OpenClaw |
|---|---|---|
| Architecture de base | Boucle d’auto-apprentissage qui génère et améliore ses propres compétences avec le temps. | Répertoires de compétences manuels, avec des configurations via SKILL.md. |
| Configuration Telegram | Flux simplifié via CLI interactif ou modèles serveur en un clic. | Large éventail de plugins, mais les mises à jour de configuration peuvent être fragiles. |
| Génération textuelle | Streaming natif mot par mot avec indicateurs en curseur bloc. | Blocs de texte standard, parfois coupés par le formatage. |
| Gestion média et audio | Bulles vocales Telegram natives, avec cache STT/TTS intégré. | Manipulation de fichiers plus limitée dans la fenêtre de chat. |
| Écosystème de plateformes | Fort accent sur Telegram, Discord et l’exécution shell locale profonde. | Périmètre initial plus large : iMessage, WhatsApp, Slack, WeChat. |
| Charge de maintenance | Stabilité de version élevée, peu de cycles de débogage signalés. | Nécessite une supervision manuelle face aux changements cassants. |
Les différences structurelles que je retiens
Acquisition et exécution des compétences
Je vois OpenClaw comme un agent de conformité manuelle. Il suit strictement des dossiers structurés qui contiennent un fichier SKILL.md avec les outils et les comportements à appliquer. Si un flux change ou casse, je mets à jour les règles Markdown ou le code à la main.
Hermes Agent joue une autre carte : celle du self-improver. Quand il traite avec succès une demande complexe en plusieurs étapes, il crée ses propres jeux d’instructions d’arrière-plan pour refaire la même tâche plus vite et avec plus de précision la fois suivante.
Stabilité contre largeur fonctionnelle sur Telegram
Hermes Agent tourne de façon fluide sur de longues périodes. Ses mises à jour cassent rarement l’architecture de sa base de données centrale. C’est un bon choix si je veux un utilitaire Linux de fond, toujours actif, qui parle via Telegram.
OpenClaw propose un grand catalogue de plugins open source, mais les mises à jour communautaires cassent souvent la compatibilité avec des structures de configuration plus anciennes. Je dois alors faire du débogage manuel, encore et encore. Le genre de danse que personne ne réclame.
Outils natifs dans le chat
Hermes gère les pièces jointes média avec vigueur. Il convertit les fichiers code en formats téléchargeables .docx ou .txt, prend en charge les recherches complètes dans l’historique grâce à un index SQLite interne, et renvoie les réponses IA dans de vraies bulles vocales Telegram.
OpenClaw reste très propre pour l’automatisation de productivité lourde, comme la synchronisation avec Google Workspace ou la lecture de calendriers. En revanche, ses boucles média locales profondes passent parfois au second plan.
Mon choix selon le besoin
Je choisis OpenClaw si : j’ai besoin d’un écosystème immédiat de dizaines d’outils tiers complexes pour interagir directement avec des calendriers, des e-mails ou des plateformes grand public en dehors de Telegram.
Je choisis Hermes Agent si : je veux un assistant sécurisé et robuste sur mon serveur, qui devient plus malin au fil des échanges, sans casser ma configuration à chaque mise à jour système hebdomadaire.
Les utilisateurs avancés font souvent tourner les deux en parallèle sur le même backend serveur. Ils confient les tâches répétitives et lourdes à Hermes, puis réservent OpenClaw aux intégrations externes strictes et pilotées par des règles.
Si je veux apprendre l’Agentic AI depuis zéro, DeepLearn Academy propose des cours d’e-learning et des certifications animés par des formateurs venus du monde entier.
J’y vois une voie claire pour bâtir un programme personnalisé, surtout si je veux relier théorie, agents autonomes et pratique terrain.
Je termine avec une idée simple : Hermes Agent sur Telegram fonctionne très bien quand je respecte trois principes — autorisation stricte, service stable, streaming bien réglé. Une fois ces bases en place, le bot devient un vrai compagnon de travail. Sobre. Réactif. Et bien câblé.