v0.2.0

Hermes Agent v0.2.0 — La première version publique


Aperçu

v0.2.0 — La première version publique. 12 mars 2026. 216 pull requests fusionnées · 63 contributeurs · 119 issues résolues · de près de zéro test à 3 289.

C’est le moment où Hermes Agent a été présenté au monde. En un peu plus de deux semaines après la fondation interne v0.1.0, le projet est passé d’un petit prototype de recherche à une plateforme d’agent IA complète et pilotée par la communauté. Ce qui rend cette version remarquable n’est pas seulement la liste des fonctionnalités — c’est la vélocité. 63 personnes de la communauté open-source ont contribué du code, des tests, de la documentation et des corrections de sécurité, façonnant l’architecture du projet dès le premier jour.

v0.2.0 établit l’ADN fondamental qui définirait Hermes pour toutes les versions ultérieures : des skills qui s’auto-améliorent, une passerelle de messagerie qui atteint les utilisateurs partout, MCP pour l’extensibilité des outils, et une attention constante à la sécurité dès le départ.


Fonctionnalités majeures

1. Passerelle de messagerie multi-plateforme

Hermes n’est pas qu’un simple outil CLI — il vit là où vous vivez. Le système de passerelle apporte l’expérience complète de l’agent sur sept plateformes de messagerie, avec une gestion unifiée des sessions, des pièces jointes multimédia et une configuration des outils par plateforme.

Plateforme Fonctionnalités clés
Telegram Pièces jointes, traitement de documents (PDF/Office), isolation des sujets de forum, captures d’écran du navigateur, partage de localisation
Discord Contexte du sujet du canal, support documents/vidéos, filtrage des messages du bot
Slack Gestion des mentions d’application, partage documents/vidéos, journalisation structurée
WhatsApp Envoi natif de médias (images/vidéos/docs), isolation des sessions multi-utilisateurs, gestion des ports cross-platform
Signal Passerelle complète via signal-cli-rest-api, support des URLs média
Email (IMAP/SMTP) Passerelle email complète — envoi et réception via n’importe quel fournisseur email
Home Assistant Outils REST + intégration WebSocket, découverte de services

Le noyau de la passerelle a également introduit des fonctionnalités cross-platform : visibilité des appels d’outils des sous-agents, notifications configurables pour les processus en arrière-plan, edit_message() avec solutions de repli par plateforme, et des commandes slash comme /compress, /usage et /update.

2. Client MCP (Model Context Protocol)

Le support natif de MCP a été l’une des premières décisions architecturales de Hermes — et une décision visionnaire. Avant que MCP ne devienne le standard industriel qu’il est aujourd’hui, Hermes disposait déjà d’un client de qualité production.

# Les serveurs MCP sont configurés dans config.yaml
# Hermes découvre automatiquement les outils, ressources et prompts
hermes tools  # Parcourir et activer les outils MCP dans l'interface curses
/reload-mcp   # Recharger à chaud les serveurs MCP sans redémarrage

Fonctionnalités clés :

  • Transports stdio et HTTP — connexion aux serveurs MCP locaux et distants
  • Support du sampling — les serveurs MCP peuvent initier des requêtes LLM via Hermes
  • Découverte des ressources et prompts — exposition automatique des capacités du serveur
  • Reconnexion automatique — récupération après un crash de serveur sans perte d’état
  • Renforcement de la sécurité — les outils des serveurs MCP sont soumis aux mêmes politiques d’approbation

(#291@0xbyt4, #301, #753)

3. Écosystème de skills — Plus de 70 skills, agent auto-améliorant

Le système de skills — le différenciateur signature de Hermes — était déjà complet au lancement. Plus de 70 skills inclus et optionnels répartis dans plus de 15 catégories, avec un Skills Hub pour la découverte communautaire.

Fonctionnement des skills : Les skills sont des documents Markdown stockés dans ~/.hermes/skills/. Quand Hermes rencontre une tâche pertinente, il charge le skill correspondant dans le contexte comme guide procédural. Après avoir terminé une tâche, un « fork de révision » en arrière-plan évalue si le skill a été utile — et écrit ou met à jour les skills automatiquement.

# Parcourir le hub de skills
hermes skills browse

# Les skills peuvent être activés/désactivés par plateforme
# Activation conditionnelle basée sur la disponibilité des outils
# Les prérequis garantissent que les skills avec des dépendances non satisfaites restent masqués

Nouveaux skills livrés dans v0.2.0 :

  • ASCII Art — pyfiglet (571 polices), cowsay, image-vers-ascii
  • ASCII Video — Pipeline de production complet pour vidéo dans le terminal
  • DuckDuckGo Search — Recherche web respectueuse de la vie privée avec solution de repli Firecrawl
  • Solana Blockchain — Soldes de portefeuille, prix en USD, noms de tokens
  • AgentMail — Boîtes mail détenues par des agents
  • Polymarket — Données de marchés de prédiction (lecture seule)
  • OpenClaw Migration — Outil de migration officiel d’OpenClaw vers Hermes
  • Domain Intelligence — Reconnaissance passive : sous-domaines, SSL, WHOIS, DNS
  • Superpowers — Skills de développement logiciel
  • Hermes-Atropos — Développement d’environnements RL
  • Ainsi que : recherche arXiv, OCR/documents, diagrammes Excalidraw, transcripts YouTube, recherche GIF et plus de 40 skills MLOps

(#743@teyrebaz33, #785@teyrebaz33)

4. Routeur de provider centralisé

Avant v0.2.0, la logique des providers était dispersée entre la vision, le résumé, la compression et la sauvegarde de trajectoire — chacun appelant les LLMs via son propre chemin de code. Le routeur de provider centralisé unifie tout cela derrière une API unique call_llm() / async_call_llm().

# Tous les consommateurs auxiliaires passent désormais par un seul chemin de code :
# resolve_provider_client() → call_llm()
# Résolution automatique des credentials, gestion des erreurs et logique de retry

Providers supportés au lancement :

  • Nous Portal — intégration OAuth native
  • OpenAI Codex — API Responses avec support des abonnements ChatGPT
  • OpenRouter — plus de 200 modèles avec préférences de routage
  • Kimi Code API — modèle spécialisé code de Moonshot
  • MiniMax — identifiants de modèles mis à jour
  • z.ai/GLM — modèle bilingue de Tsinghua
  • Azure OpenAI — support de déploiement entreprise
  • Firecrawl auto-hébergé — web scraping sur votre propre infrastructure

(#1003)

5. Serveur ACP — Intégration éditeur

Les éditeurs VS Code, Zed et JetBrains peuvent désormais se connecter à Hermes via le standard Agent Communication Protocol (ACP). Cela signifie que le même agent qui s’exécute dans votre terminal et vos applications de messagerie peut vous assister directement dans votre éditeur.

(#949)

6. Moteur de skins/thèmes CLI

Un système de personnalisation visuelle piloté par les données avec 7 skins intégrés (default, ares, mono, slate, poseidon, sisyphus, charizard) ainsi que le support de skins YAML personnalisés. Bannières, spinners, couleurs et branding sont tous configurables — aucun changement de code nécessaire.

# ~/.hermes/skins/my-skin.yaml
banner: "custom"
spinner: "dots"
colors:
  accent: "#00E5A0"
  background: "#0A0A0F"

7. Isolation par Git Worktree

hermes -w lance des sessions d’agent isolées dans des worktrees git, permettant un travail parallèle sécurisé sur le même dépôt. Chaque worktree obtient son propre répertoire de travail, sa branche et sa session d’agent — finis les conflits quand vous exécutez plusieurs agents.

# Lancer Hermes dans un git worktree pour un travail parallèle isolé
hermes -w

(#654)

8. Checkpoints du système de fichiers & Rollback

Des snapshots automatiques sont créés avant les opérations destructrices sur les fichiers. La commande /rollback restaure les fichiers à leur état précédent — un filet de sécurité qui vous permet d’expérimenter sans crainte.

# L'agent crée automatiquement des snapshots avant les opérations destructrices
# /rollback dans le CLI pour restaurer
# Fonctionne sur tous les backends de terminal (local, Docker, SSH, Modal)

(#824)


Agent principal & Architecture

Améliorations de la boucle d’agent

La boucle d’agent a reçu un renforcement substantiel pour gérer les cas limites du monde réel :

  • Modèle de repli simple — si le provider principal échoue, Hermes bascule de manière transparente vers une alternative configurée (#740)
  • Budgets d’itération partagés — l’agent parent et la délégation des sous-agents partagent un budget unifié, empêchant les boucles incontrôlées de sous-agents
  • Gestion du 413 payload-too-large — au lieu d’abandonner, Hermes compresse le contexte et réessaie (#153)
  • Middleware de réparation des appels d’outils — la mise en minuscules automatique et le gestionnaire d’outils invalides corrigent les appels d’outils malformés du modèle
  • Configuration de l’effort de raisonnement — contrôlez le niveau de réflexion du modèle avant d’agir (commande /reasoning)
  • Détection de boucle après compression — empêche l’agent de relire/rechercher des fichiers après la compression du contexte (#705)

Session & Mémoire

  • Sessions nommées — attribuez des titres uniques aux sessions, parcourez avec filtrage par recherche, reprenez par nom (#720)
  • Modélisation utilisateur Honcho — profil utilisateur cross-session natif IA qui s’améliore avec le temps (#38)
  • Vidage proactif de la mémoire — persistance asynchrone de la mémoire à l’expiration de la session
  • Sondage intelligent de la longueur de contexte — détecte les limites de contexte du modèle avec mise en cache persistante

CLI & Expérience utilisateur

CLI interactif

L’expérience terminal a reçu un important travail de polissage :

  • Commande /personality — personnalité d’agent personnalisée ou désactivation complète (#773)
  • Commandes rapides définies par l’utilisateur — contournez la boucle d’agent pour des actions rapides et prédéterminées (#746)
  • /verbose — activez/désactivez la sortie de débogage à l’exécution (#94)
  • /insights — analytique d’utilisation, estimation des coûts et modèles d’activité (#552)
  • /background — gérez les processus en arrière-plan depuis le CLI
  • Cloche à la fin — cloche du terminal quand l’agent termine une tâche (#738)
  • Historique flèches haut/bas — naviguez dans l’historique des commandes
  • Collage d’image depuis le presse-papiers — Alt+V / Ctrl+V pour coller des images
  • --quiet/-Q — mode requête unique programmatique avec sortie minimale
  • --fuck-it-ship-it — contourne toutes les demandes d’approbation pour des workflows entièrement automatisés (#724)

Installation & Configuration

  • Assistant de configuration modulaire avec sous-commandes par section et UX orientée outils
  • Système de migration de configuration — mise à niveau transparente entre les versions de format de configuration (v7 au lancement)
  • hermes tools — activation/désactivation des outils par plateforme avec interface curses
  • hermes doctor — vérifications de santé sur tous les providers configurés
  • hermes update — avec redémarrage automatique du service de passerelle
  • Écritures atomiques pour .env — empêche la perte de clés API en cas de crash (#954)

Sécurité

Hermes Agent a pris la sécurité au sérieux dès le premier jour. v0.2.0 a été livrée avec une couche étendue de renforcement de la sécurité :

Prévention des vulnérabilités

Catégorie Description
Path Traversal Corrigé dans skill_view — empêchait la lecture de fichiers arbitraires (#220)
Shell Injection Prévention dans le piping de mot de passe sudo (#65), patterns tee/substitution de processus (#280)
Attaques par lien symbolique Corrections de vérification des limites dans skills_guard (#386), contournement de la liste d’interdiction d’écriture macOS (#61)
Prompt Injection Prévention du contournement multi-mots (#192), correction du contournement du scanner cron (#63)
Commandes dangereuses Détection du contournement multiligne (#233), drapeau --force correctement bloqué (#388)

Protection des données

  • Écritures atomiques sur les sessions, les tâches cron, la config .env, les checkpoints de processus, le batch runner et les fichiers de skills — empêchant la perte de données en cas de crash
  • Application des permissions de fichiers — 0600/0700 sur les fichiers sensibles, .env restreint au propriétaire uniquement
  • Assainissement des requêtes FTS5 — empêche l’injection SQL via les requêtes de recherche plein texte
  • Caviardage des secrets — patterns extensibles pour supprimer les secrets des logs et transcriptions
  • Liste blanche permanente en mémoire — empêche les données sensibles de fuiter sur le disque (#600)

Tests — De zéro à 3 289

Quand le développement de v0.2.0 a commencé, le projet avait une couverture de tests quasi nulle. La communauté a répondu par un effort de test massif :

  • 3 289 tests couvrant les modules agent, passerelle, outils, cron et CLI
  • Suite de tests parallélisée avec pytest-xdist (#802)
  • Quatre lots de tests unitaires couvrant les modules principaux, les chemins critiques pour la sécurité et la boucle AIAgent
  • 43 tests de format Telegram pour la précision du rendu italique/gras/code
  • 42 tests d’outils de vision avec annotations de type complètes
  • Tests de régression du compresseur pour la gestion des limites d’appels d’outils

Cette fondation de test s’avérerait cruciale alors que le projet poursuivait son itération rapide — avec 3 289 tests détectant les régressions avant qu’elles n’atteignent les utilisateurs.


Environnements RL & d’évaluation

Hermes Agent a toujours été conçu comme une plateforme de génération de données d’entraînement agentiques. v0.2.0 a été livrée avec :

  • WebResearchEnv — environnement RL de recherche web multi-étapes (#434)
  • YC-Bench — environnement de benchmark d’agent longue durée
  • OpenThoughts-TBLite — environnement d’évaluation et scripts
  • Support vLLM local — exécutez des évaluations sur des modèles hébergés localement
  • Hermes-Atropos — skill intégré pour le développement d’environnements RL (#815)

Compatibilité Windows

Le support Windows a été une priorité de premier ordre dès le départ :

  • Fonctions de processus POSIX-only protégées pour la compatibilité Windows
  • Support natif via Git Bash + solution de repli de mise à jour basée sur ZIP
  • pywinpty pour le support PTY sur Windows (#457)
  • Encodage UTF-8 explicite sur toutes les E/S de fichiers de config/données (#458)
  • Gestion des chemins avec lettre de lecteur pour la sortie de recherche basée sur regex (#533)

Mise à niveau

hermes update

Pour les nouvelles installations :

# Linux / macOS / WSL2
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash

Journal des modifications complet sur GitHub

← Hermes Agent Changelog