Maîtriser le CLI d'Hermes Agent — Guide complet du terminal
Si vous avez suivi les articles précédents de cette série, vous avez installé Hermes Agent (présentation et installation), configuré vos modèles et providers (guide dédié), et découvert les outils disponibles (les 68 outils). Il est temps de passer à la pratique : maîtriser le CLI d'Hermes Agent, votre interface principale pour interagir avec l'agent au quotidien.
Ce guide couvre l'intégralité du terminal Hermes : les deux interfaces disponibles, les slash commands, les raccourcis clavier, la gestion des sessions, la configuration en ligne de commande, les personnalités, et des workflows concrets qui vous feront gagner un temps considérable.
Deux interfaces pour un même agent
Hermes Agent propose deux interfaces en ligne de commande :
Interface classique (hermes)
hermes
C'est l'interface par défaut, basée sur prompt_toolkit. Elle offre la complétion automatique, l'édition multi-ligne et un affichage clair dans votre terminal. Rapide, légère et éprouvée.
Interface TUI moderne (hermes --tui)
hermes --tui
La TUI (Terminal User Interface) ajoute des overlays modaux, la sélection à la souris et un input non-bloquant. Les deux interfaces partagent les mêmes sessions, slash commands et configuration — vous pouvez passer de l'une à l'autre sans friction.
Mon conseil : commencez avec l'interface classique pour vous familiariser, puis passez à la TUI une fois que les slash commands sont naturelles pour vous.
Lancement avancé
Le CLI ne se lance pas qu'en mode interactif. Voici les patterns les plus utiles :
# Session interactive standard
hermes
# Requête unique (non-interactif)
hermes chat -q "Explique-moi la différence entre TCP et UDP"
# Avec un modèle spécifique
hermes chat --model "anthropic/claude-sonnet-4"
# Avec un provider spécifique
hermes chat --provider openrouter
# Avec des toolsets spécifiques
hermes chat --toolsets "web,terminal,skills"
# Précharger des skills au lancement
hermes -s hermes-agent-dev,github-auth
hermes chat -s github-pr-workflow -q "Ouvre une draft PR"
# Mode verbose (debug)
hermes chat --verbose
Chaque flag vous permet de contrôler précisément le comportement de l'agent sans modifier votre configuration permanente. Idéal pour les tests ponctuels ou les scripts automatisés.
Les slash commands — votre panneau de contrôle
Les slash commands sont le cœur de l'interaction CLI avec Hermes. Tapez / pour voir la liste en autocomplete. Voici les commandes essentielles, classées par usage.
Navigation et aide
/help— Affiche toutes les commandes disponibles. Premier réflexe quand vous ne savez pas quoi taper./tools— Liste les outils actuellement disponibles dans la session. Utile pour vérifier qu'un outil est bien actif avant de le demander à l'agent./model— Affiche ou change le modèle en cours de session, sans quitter la conversation./skills browse— Parcourt le hub de skills et les skills officielles optionnelles.
Gestion de session
/save— Sauvegarde manuellement la conversation en cours./new— Démarre une nouvelle conversation tout en restant dans le CLI./title Nom de session— Nomme la session courante pour la retrouver facilement dans l'historique.
Productivité avancée
/voice on— Active le mode vocal. Appuyez surCtrl+Bpour enregistrer un message vocal./voice tts— Active la lecture vocale des réponses de Hermes./memory— Accède à la mémoire de l'agent (contexte persistant entre sessions)./background <prompt>— Lance une tâche en arrière-plan dans une session isolée, libérant immédiatement le prompt pour continuer à travailler./reasoning high— Augmente l'effort de raisonnement du modèle./busy queue//busy steer//busy interrupt— Change le comportement de l'input quand l'agent travaille (queue, redirection ou interruption).
Attention : les commandes sont insensibles à la casse.
/HELPfonctionne comme/help. Les skills installés deviennent aussi des slash commands automatiquement.
Les raccourcis clavier indispensables
La maîtrise du CLI passe par les raccourcis. Voici ceux que vous devez connaître :
Raccourcis d'édition :
- Enter — Envoyer le message
- Alt+Enter ou Ctrl+J — Nouvelle ligne (input multi-ligne)
- Ctrl+G — Ouvre l'éditeur externe ($EDITOR) pour rédiger un long prompt
- Ctrl+X Ctrl+E — Alternative Emacs pour l'éditeur externe
- Tab — Accepter l'auto-suggestion ou autocompléter les slash commands
- Ctrl+V — Coller du texte (et opportunément attacher des images du presse-papiers)
- Alt+V — Coller une image du presse-papiers
Contrôle de l'agent :
- Ctrl+C — Interrompre l'opération en cours (double-press en 2 secondes pour forcer la sortie)
- Ctrl+D — Quitter Hermes
- Ctrl+Z — Suspendre Hermes en arrière-plan (Unix). Tapez fg pour reprendre.
Input multi-ligne
Deux méthodes pour écrire des prompts sur plusieurs lignes :
Alt+EnterouCtrl+J— Insère un saut de ligne manuellement- Continuation avec backslash — Terminez une ligne par
\pour continuer sur la suivante :
❯ Écris une fonction qui :
\ 1. Prend une liste de nombres
\ 2. Retourne la somme
Astuce : quand vous collez un bloc multi-ligne, le CLI affiche un aperçu compact (
[pasted: 47 lines, 1,842 chars — press Enter to send]) au lieu de polluer le scrollback. Le contenu envoyé reste complet.
Ouvrir un éditeur externe
Pour les longs prompts complexes, Ctrl+G ouvre vim, nano, VS Code ou tout autre éditeur configuré dans $EDITOR. Sauvegardez et quittez — le contenu est envoyé comme prochain prompt. Idéal pour les spécifications techniques ou les requêtes rédigées.
Interrompre et rediriger l'agent
L'un des atouts majeurs du CLI Hermes : vous n'êtes jamais bloqué.
Trois modes d'interruption :
interrupt(défaut) — Tapez un message pendant que l'agent travaille. Il est interrompu et votre nouveau message est traité immédiatement.queue— Votre message est mis en file d'attente et envoyé au tour suivant. Utile pour préparer des instructions sans annuler le travail en cours.steer— Votre message est injecté via/steer, arrivant à l'agent après le prochain tool call, sans interruption ni nouveau tour. Parfait pour : "au fait, vérifie aussi les tests" pendant que l'agent modifie du code.
Configurez le mode par défaut :
# ~/.hermes/config.yaml
display:
busy_input_mode: "steer" # ou "queue" ou "interrupt"
Ou changez en session : /busy steer, /busy queue, /busy interrupt.
Pour les commandes terminal en cours : elles sont tuées immédiatement (SIGTERM, puis SIGKILL après 1 seconde).
Reprise et gestion des sessions
Reprendre une session
Quand vous quittez une session, Hermes affiche une commande de reprise :
Resume this session with: hermes --resume 20260225_143052_a1b2c3
Session: 20260225_143052_a1b2c3
Duration: 12m 34s
Messages: 28 (5 user, 18 tool calls)
Options de reprise :
hermes --continue # Reprendre la session la plus récente
hermes -c # Forme courte
hermes -c "mon projet" # Reprendre une session nommée
hermes --resume 20260225_143052_a1b2c3 # Reprendre par ID
hermes --resume "refactoring auth" # Reprendre par titre
hermes -r 20260225_143052_a1b2c3 # Forme courte
Reprendre une session restaure l'historique complet depuis SQLite : messages, appels d'outils et réponses. L'agent voit tout, comme si vous n'aviez jamais quitté.
Historique des sessions
hermes sessions list
Cette commande affiche toutes vos sessions passées avec leur ID, titre, durée et nombre de messages. Utilisez /title Nom de session en session ou hermes sessions rename <id> <nom> pour organiser votre historique.
Compression automatique du contexte
Les longues conversations sont automatiquement résumées quand elles approchent la limite de contexte :
# ~/.hermes/config.yaml
compression:
enabled: true
threshold: 0.50 # Compresser à 50% de la limite
auxiliary:
compression:
model: "google/gemini-3-flash-preview" # Modèle de résumé
Quand la compression se déclenche, les tours du milieu sont résumés tandis que les 3 premiers et 20 derniers tours sont toujours préservés.
Commandes de gestion du CLI
Changer de modèle
hermes model
Lance un assistant interactif pour choisir votre provider et modèle. Vous pouvez changer à tout moment — aucun lock-in. Les secrets sont stockés dans ~/.hermes/.env et la configuration dans ~/.hermes/config.yaml.
Diagnostiquer les problèmes
hermes doctor
Scanne votre configuration, vérifie les tokens, les permissions et les dépendances. Premier réflexe quand quelque chose ne fonctionne pas.
Mettre à jour
hermes update
Met à jour Hermes Agent vers la dernière version. Simple et rapide.
Configuration en CLI
# Définir une valeur de config
hermes config set model anthropic/claude-opus-4
hermes config set terminal.backend docker
hermes config set OPENROUTER_API_KEY sk-or-...
# Afficher la configuration actuelle
hermes config show
Hermes sépare intelligemment les secrets des settings normaux. Les tokens vont dans .env, le reste dans config.yaml. La commande config set envoie automatiquement la valeur au bon fichier.
Quick Commands — vos raccourcis personnalisés
Vous pouvez définir des commandes personnalisées qui exécutent des commandes shell instantanément sans invoquer le LLM :
# ~/.hermes/config.yaml
quick_commands:
status:
type: exec
command: systemctl status hermes-agent
gpu:
type: exec
command: nvidia-smi --query-gpu=utilization.gpu,memory.used --format=csv,noheader
restart:
type: alias
target: /gateway restart
Tapez /status, /gpu ou /restart dans n'importe quel chat. Puissant pour les tâches répétitives.
Personnalités — changer le ton de l'agent
Les personnalités modifient le comportement et le style de l'agent :
/personality helpful # Aide classique
/personality concise # Réponses courtes et directes
/personality technical # Style expert technique
/personality creative # Créatif et inspiré
/personality teacher # Pédagogique
/personality kawaii # Style mignon
/personality pirate # "Ar matey !"
/personality shakespeare # Style shakespearien
/personality philosopher # Réflexions profondes
/personality hype # Enthousiaste
Vous pouvez aussi créer vos propres personnalités dans config.yaml :
personalities:
french_dev: "Tu es un développeur français expérimenté. Réponds en français avec humour."
Sessions en arrière-plan
Lancez des tâches longues sans bloquer votre session principale :
/background Analyze les logs dans /var/log et résume les erreurs du jour
Chaque tâche /background crée une session agent complètement isolée :
- Conversation isolée — l'agent d'arrière-plan n'a pas accès à l'historique de votre session.
- Même configuration — il hérite de votre modèle, provider, tools et settings.
- Non-bloquant — votre session principale reste pleinement interactive.
- Multi-tâches — vous pouvez lancer plusieurs tâches en parallèle, chacune avec un ID numéroté.
Quand une tâche se termine, le résultat apparaît sous forme de panneau dans votre terminal.
Pipeline d'entrée et flux de sortie
Comprendre comment Hermes traite vos messages vous aide à l'utiliser plus efficacement :
Pipeline d'entrée :
1. Votre message est capturé par le CLI (interface classique ou TUI)
2. Le texte est nettoyé (markdown stripping dans les réponses finales pour la lisibilité)
3. Le contexte de session est chargé (historique + config)
4. Les skills actifs injectent leurs instructions système
5. Le prompt complet est envoyé au modèle via le provider configuré
Flux de sortie :
1. Le modèle répond en streaming
2. Les appels d'outils sont affichés en temps réel dans le feed
3. Les résultats des outils sont injectés dans le contexte
4. Le cycle recommence jusqu'à la réponse finale
5. La session est sauvegardée automatiquement dans ~/.hermes/state.db
La barre de statut en temps réel vous informe sur le modèle actif, les tokens consommés, le pourcentage de contexte utilisé (avec code couleur : vert < 50%, jaune 50-80%, orange 80-95%, rouge ≥ 95%), le coût estimé et la durée.
Flags utiles du CLI
Voici un récapitulatif des flags les plus utiles pour vos workflows quotidiens :
| Flag | Description |
|---|---|
hermes -c |
Reprendre la dernière session |
hermes -r <id> |
Reprendre une session spécifique |
hermes -s <skills> |
Précharger des skills |
hermes -q "<prompt>" |
Requête unique non-interactive |
hermes --model "<model>" |
Utiliser un modèle spécifique |
hermes --provider <name> |
Forcer un provider |
hermes --toolsets "<list>" |
Sélectionner des toolsets |
hermes --tui |
Interface TUI moderne |
hermes chat --verbose |
Mode debug |
hermes -w |
Worktree git isolé (agents parallèles) |
Workflows concrets
Workflow 1 : Debug rapide d'un projet
hermes -c "mon projet web" # Reprendre le projet
# Puis dans la session :
❯ Le test d'authentification échoue. Trouve le problème et propose un fix.
Grâce à la reprise de session, Hermes connaît déjà le contexte de votre projet. Pas besoin de réexpliquer.
Workflow 2 : Recherche parallèle
# Dans le CLI :
❯ Je travaille sur une migration PostgreSQL.
/background Cherche les breaking changes de PostgreSQL 16 par rapport à 15
/background Analyse les dépendances du projet et identifie les requêtes impactées
Pendant que les deux tâches tournent en arrière-plan, vous continuez à coder. Les résultats arrivent automatiquement.
Workflow 3 : Audit de code avec model spécialisé
hermes chat --model "anthropic/claude-sonnet-4" --toolsets "terminal,skills" -q "Audite le dossier src/ et identifie les vulnérabilités de sécurité"
Une commande, un audit complet. Parfait pour les scripts CI/CD ou les vérifications ponctuelles.
Workflow 4 : Session de pair programming
hermes -s hermes-agent-dev,github-auth
/personality technical
❯ Implémente la fonctionnalité de recherche full-text avec Elasticsearch
La personnalité technique + les skills préchargés = Hermes devient un pair programmer spécialisé qui connaît vos outils.
Workflow 5 : Kit de survie en cas de problème
Quand quelque chose ne fonctionne plus, la séquence de diagnostic :
hermes doctor # 1. Diagnostiquer
hermes model # 2. Vérifier le provider
hermes setup # 3. Relancer la configuration
hermes sessions list # 4. Vérifier les sessions
hermes -c # 5. Reprendre
Cette séquence vous ramène d'un état "cassé" à un état connu en quelques commandes.
Outils complémentaires du CLI
Hermes intègre aussi des commandes pour gérer l'écosystème au-delà du chat :
hermes tools # Configurer les outils par plateforme
hermes skills search kubernetes # Chercher des skills
hermes skills install openai/skills/k8s # Installer une skill
hermes gateway setup # Configurer le gateway (Telegram, Discord, etc.)
hermes gateway status # Vérifier le statut du gateway
hermes acp # Intégration éditeur (ACP)
Chacune de ces commandes mériterait son propre guide approfondi. Pour l'instant, sachez qu'elles existent et qu'elles sont accessibles directement depuis votre terminal.
Conclusion
Le CLI d'Hermes Agent est bien plus qu'un simple chatbot en terminal. C'est un véritable environnement de travail qui combine édition multi-ligne, reprise de sessions, tâches en arrière-plan, personnalités configurables et un ensemble complet de slash commands. Une fois les raccourcis clavier maîtrisés et les workflows en place, le CLI devient votre interface principale de productivité avec l'IA.
L'essentiel à retenir : commencez simple avec hermes, apprenez les slash commands fondamentales (/help, /tools, /model, /new, /save), maîtrisez Alt+Enter pour les prompts multi-lignes et Ctrl+C pour interrompre, puis explorez les fonctionnalités avancées comme les sessions en arrière-plan et les quick commands. La puissance du CLI est dans la progression : chaque commande apprise est un gain de temps permanent.
Pour aller plus loin, n'hésitez pas à consulter les autres articles de cette série et la documentation officielle.