Sessions: Your AI Never Forgets a Conversation
Personality & SOUL.md — Give AI a Character — easy-to-understand guide based on official docs
Sessions : votre IA n’oublie jamais une conversation
Vous avez déjà fermé une fenêtre de chat et perdu toute la conversation ? Avec Hermes Agent, c’est de l’histoire ancienne. Chaque conversation — que vous passiez par CLI, Telegram, Discord, Slack, WhatsApp ou toute autre plateforme — est automatiquement enregistrée sous forme de session. Considérez ça comme un historique de chat surpuissant, que vous pouvez rechercher, reprendre et gérer.
Comment fonctionnent les sessions
Sous le capot, Hermes stocke tout dans une base de données SQLite située à ~/.hermes/state.db. Ce n’est pas un simple journal — c’est un enregistrement complet qui inclut :
- L’ID de session et la plateforme source (où la conversation a eu lieu)
- Un titre unique et lisible pour une identification facile
- La configuration du modèle et un instantané du prompt système
- L’historique complet des messages (y compris les appels d’outils et leurs résultats)
- Les compteurs de tokens et les horodatages
- L’ID de la session parente (pour quand les longues conversations sont scindées)
Le meilleur dans tout ça ? La base de données utilise la recherche plein texte FTS5, vous pouvez donc retrouver n’importe quelle conversation passée en cherchant des mots-clés.
Ce qui entre réellement dans le contexte
Voici une idée reçue courante : Hermes ne renvoie pas chaque octet de l’historique à chaque tour. À la place, le modèle voit le prompt système, la fenêtre de conversation actuelle, et tout ce qui est explicitement injecté pour ce tour.
Les fichiers média sont gérés intelligemment :
- Les images sont analysées une fois (si le modèle prend en charge la vision) ou converties en descriptions textuelles
- L’audio est transcrit en texte
- Les documents voient leur texte extrait, tandis que les autres fichiers sont enregistrés sous forme de chemins avec des notes
Donc si vous demandez à Hermes de créer un meme à partir d’une image, il ne va pas trimballer ce JPEG à chaque tour suivant. Il garde simplement la description et le résultat.
Le vrai gros consommateur de contexte, c’est le texte verbeux — transcriptions collées, journaux complets, sorties d’outils énormes, longs diffs. La documentation recommande d’utiliser des résumés, des chemins de fichiers et des extraits ciblés plutôt que de déverser de gros artefacts dans le chat.
Conseils de pro pour gérer vos sessions
- Utilisez
/compressquand une session devient trop longue - Utilisez
/newpour démarrer un nouveau fil (vous pouvez même le nommer :/new refacto-paiements) - Utilisez
hermes sessions prunepour supprimer les anciennes sessions terminées - Utilisez
hermes sessions optimizepour réduire une base de données gonflée sans rien supprimer
Reprise de session en CLI : reprenez là où vous en étiez
La CLI vous offre plusieurs façons de reprendre une conversation :
Continuer la dernière session :
hermes --continue
# ou
hermes -c
La magie par terminal : Voici une astuce sympa — un simple -c est sensible au terminal. Si vous avez deux panneaux de terminal côte à côte, chacun reprend sa propre conversation. Fini la bagarre pour savoir quelle est la session « la plus récente ». Ça fonctionne avec les panneaux tmux, les fenêtres kitty, les panneaux wezterm, et bien plus. Vous pouvez désactiver ça avec session.terminal_continue: false dans votre configuration.
Reprendre par nom :
hermes -c "mon projet"
Si vous avez plusieurs sessions avec le même nom (comme « mon projet #2 », « mon projet #3 »), il sélectionne automatiquement la plus récente.
Reprendre une session spécifique :
hermes --resume 20250305_091523_a1b2c3d4
# ou par titre
hermes --resume "refacto auth"
# ou simplement la plus récente
hermes --resume latest
Sources de sessions : chaque plateforme compte
Hermes suit la plateforme d’origine de chaque session. La liste est impressionnante : CLI, Telegram, Discord, Slack, WhatsApp, Signal, Matrix, Mattermost, Email, SMS, DingTalk, Feishu, WeCom, Weixin, iMessage (via BlueBubbles), QQ Bot, Home Assistant, webhooks, serveur API, éditeur ACP, tâches cron et traitement par lots.
Ça signifie que vous pouvez démarrer une conversation sur Telegram, puis la reprendre depuis votre CLI — l’historique complet est là, à portée de main.
En résumé
Les sessions transforment Hermes d’un chatbot sans état en un assistant persistant qui se souvient de tout. Que vous déboguiez un problème épineux, planifiiez une grosse refactorisation, ou que vous vouliez simplement reprendre la conversation d’hier, les sessions sont là pour vous. Et grâce à une gestion intelligente du contexte, vous profitez des avantages de la mémoire sans faire exploser votre consommation de tokens.
La prochaine fois que vous serez dans une longue conversation, essayez /compress quand ça devient lourd, ou nommez vos sessions pour pouvoir les retrouver plus tard. Vous vous remercierez plus tard.
📖 Documentation officielle
Cet article est basé sur la documentation officielle de Hermes Agent :Docs officiels › user-guide/features/personality