v0.4.0

Hermes Agent v0.4.0 — La version Extension de Plateforme


Aperçu

v0.4.0 — The Platform Expansion Release. Publié le 23 mars 2026. Seulement 11 jours après v0.2.0 (première version publique) et v0.3.0 (streaming + architecture de plugins), cette version a élevé Hermes Agent d’un excellent agent CLI à un véritable produit plateforme — avec une API, une couverture multi-plateforme de messagerie, une gestion de l’écosystème MCP et une sécurité de niveau entreprise.

Si v0.2.0 a montré au monde ce qu’Hermes pouvait faire et v0.3.0 a rendu l’expérience fluide, v0.4.0 a rendu Hermes intégrable dans n’importe quel système. À partir de ce moment, Hermes n’est pas seulement un agent dans votre terminal — il peut être votre backend API, votre chatbot, votre centre d’automatisation.

Le titre en une phrase : Transformer Hermes en un serveur API appelable via /v1/chat/completions, tout en le connectant à presque toutes les principales plateformes de messagerie du marché.


Fonctionnalités Majeures

1. Serveur API Compatible OpenAI — Hermes comme Service Backend

C’est la fonctionnalité la plus stratégiquement significative de v0.4.0 : Hermes peut maintenant être exposé comme un endpoint standard /v1/chat/completions. Tout client compatible avec l’API OpenAI — autres agents, scripts d’automatisation, applications web — peut appeler Hermes directement.

Démarrage du serveur API :

# Démarrer le serveur API Hermes
hermes serve

# Les systèmes externes peuvent maintenant appeler Hermes via le SDK OpenAI standard
# Tout code utilisant le SDK OpenAI peut se connecter à Hermes
from openai import OpenAI

client = OpenAI(base_url="http://localhost:8000/v1")

response = client.chat.completions.create(
    model="hermes",
    messages=[{"role": "user", "content": "Examine ce code pour détecter des problèmes de sécurité"}]
)

L’API REST complémentaire /api/jobs vous permet de gérer les tâches cron via HTTP — créer, afficher, supprimer — le tout via des endpoints REST standard.

La sécurité a été conçue dès le départ, pas ajoutée après coup :

  • Limites d’entrée + listes blanches de champs : préviennent les attaques par requêtes malveillantes
  • Persistance des réponses basée sur SQLite : survit aux redémarrages
  • Protection d’origine CORS : bloque l’accès non autorisé depuis le navigateur
  • Ces protections ont été intégrées au serveur API dès le premier jour

2. Six Nouveaux Adaptateurs de Messagerie — Chat Partout

v0.4.0 ajoute 6 nouvelles plateformes de messagerie d’un coup. Combiné au support existant de Telegram, Discord et WhatsApp, Hermes Gateway offre désormais une couverture de messagerie unifiée sur 9 plateformes majeures :

Plateforme Points forts
Signal Adaptateur complet avec gestion des pièces jointes, filtrage des messages de groupe et protection anti-écho « Note à soi-même »
DingTalk Intégration Gateway + documentation de configuration, support natif pour les flux de travail d’entreprise chinois
SMS (Twilio) Canal SMS pour les scénarios hors ligne/faible connectivité
Mattermost Filtre de canal @-mentions uniquement, idéal pour les équipes auto-hébergées
Matrix Protocole de communication décentralisé, support de vision et cache d’images
Webhook Adaptateur webhook universel pour tout système de déclenchement d’événements externes

Améliorations principales du Gateway :

  • Reconnexion automatique avec backoff exponentiel : récupère silencieusement des déconnexions de plateforme
  • Contexte de message de réponse : inclut automatiquement le contexte du message original pour les réponses hors session
  • Ignorer les MP non autorisés : filtrage configurable des messages directs des utilisateurs non autorisés
# hermes.config.yaml — exemple de configuration multi-plateforme
gateway:
  platforms:
    - signal
    - dingtalk
    - telegram
    - discord
  auto_reconnect: true
  ignore_unauthorized_dms: true

3. Références de Contexte @ — Interaction Style Claude Code

Tapez @ dans la CLI et utilisez Tab pour l’autocomplétion des chemins de fichiers ou des URLs. Hermes injecte automatiquement le contenu référencé dans le contexte de la conversation.

# Référence @file — injecter le contenu du fichier dans la conversation
> @src/auth/handler.ts Examine cette logique d'authentification

# Référence @url — injecter le contenu de la page web dans la conversation
> @https://docs.example.com/api Écris un client basé sur cette documentation API

Cela emprunte au modèle d’interaction de Claude Code, mais Hermes l’implémente comme autocomplétion Tab + intégration CLI native — aucun plugin d’éditeur requis. Particulièrement utile dans les environnements de terminal pur sans IDE, comme les sessions SSH sur des serveurs distants.

4. Quatre Nouveaux Fournisseurs d’Inférence — Liberté de Choix du Modèle

Le système de fournisseurs d’Hermes s’est encore étendu dans v0.4.0 :

GitHub Copilot (OAuth + Validation de Token)

  • Flux d’authentification OAuth complet, pas de clés API en dur
  • Fenêtre de contexte de 400K pour l’analyse de code ultra-longue
  • Validation automatique des tokens et gestion de l’expiration Contribué par @mchzimm

Alibaba Cloud / DashScope

  • Intégration complète avec DashScope v1 runtime
  • Support de toute la famille de modèles Qwen (qwen-*)
  • Noms de modèles préservant les points (ex. qwen-plus-v2)

Kilo Code

  • Fournisseur d’inférence optimisé pour les scénarios de codage

OpenCode Zen / Go

  • Backends de fournisseur légers Corrections liées à Zen contribuées par @0xbyt4

Améliorations du système de fournisseurs :

  • Dégradation automatique sur limite de débit : basculement automatique vers le modèle de secours en cas d’erreurs de limite de débit — les conversations ne s’interrompent jamais
  • Refonte de la détection de longueur de contexte : intégration models.dev, résolution sensible au fournisseur, correspondance floue pour les endpoints personnalisés, support de /v1/props pour llama.cpp
  • Mises à jour du catalogue de modèles : ajout de gpt-5.4-mini, gpt-5.4-nano, haiku-4.5, claude 4.6 (contexte 1M), minimax-m2.7 et plus
  • Améliorations des endpoints personnalisés : support de configuration model.base_url, endpoints locaux sans clé API, échec rapide sur clés manquantes au lieu d’échec silencieux

5. CLI de Gestion de Serveurs MCP — Flux Complet OAuth 2.1 PKCE

L’écosystème MCP (Model Context Protocol) a fait un bond qualitatif dans v0.4.0 : des fichiers de configuration manuels à une expérience complète de gestion par CLI.

# Installer un serveur MCP
hermes mcp install <nom-du-serveur>

# Configurer un serveur MCP
hermes mcp configure <nom-du-serveur>

# Authentification OAuth 2.1 PKCE (entièrement guidée)
hermes mcp auth <nom-du-serveur>
  • Flux complet OAuth 2.1 PKCE : redirection navigateur, gestion de callback, rafraîchissement de token — le tout guidé par la CLI
  • Serveurs MCP exposés comme ensembles d’outils autonomes : chaque serveur MCP est un toolset activable/désactivable
  • Configuration interactive des outils MCP : configurez les outils MCP directement dans hermes tools, sans édition YAML

6. Cache de Prompts Gateway — Réduction Dramatique des Coûts pour les Longues Conversations

En mode Gateway, les instances AIAgent sont maintenant mises en cache par session, préservant le cache de prompts Anthropic entre les tours.

Qu’est-ce que cela signifie ?

  • Pour les longues conversations, le cache de prompts Anthropic n’est plus invalidé et reconstruit à chaque tour
  • Réduction massive des coûts (la différence de prix entre l’écriture et la lecture du cache de prompts Anthropic est de plusieurs ordres de grandeur)
  • Le cache est restauré avec la reprise de session
# Automatiquement actif en mode Gateway, aucune configuration requise
# L'instance AIAgent de chaque session est mise en cache en mémoire
# Le cache de prompts est préservé entre les tours

7. Refonte Complète de la Compression de Contexte — Aucune Conversation N’est Trop Longue

Le mécanisme de compression de contexte a été entièrement réécrit dans v0.4.0 :

  • Résumés structurés : plus de simple troncature — mises à jour de résumés structurées et itératives
  • Protection de queue du budget de tokens : préserve le contenu de conversation le plus récent pendant la compression
  • Endpoint de résumé configurable : summary_base_url vous permet d’utiliser un modèle auto-hébergé pour le résumé, économisant les coûts d’API
  • Support de modèle de secours : basculement automatique vers un modèle de secours lorsque le résumeur principal est indisponible

8. Streaming Activé par Défaut — Ce Que Vous Voyez Est Ce Que Vous Obtenez

Le streaming CLI est maintenant activé par défaut à partir de v0.4.0, avec des améliorations étendues :

  • Affichage correct du spinner et de la progression des outils pendant le mode streaming
  • Correction de la perte d’espaces blancs lors de la concaténation des fragments de streaming
  • Correction des problèmes de saut de ligne aux limites d’itération causant la corruption du streaming
  • Suppression automatique de l’animation du spinner dans les environnements non TTY
  • Support d’affichage des blocs de raisonnement/réflexion (show_reasoning)

Nouvelles Commandes CLI

Commande Fonction Utilisation
/statusbar Basculer la barre d’état persistante (infos modèle + fournisseur) /statusbar
/queue Mettre en file d’attente des prompts sans interrompre l’agent en cours /queue <message>
/permission Changer dynamiquement le mode d’approbation pendant une session /permission
/browser Lancer une session de navigateur interactive depuis la CLI /browser
/cost Suivi des coûts et de l’utilisation en temps réel en mode Gateway /cost
/approve / /deny Commandes explicites approuver/refuser dans Gateway /approve ou /deny

Améliorations de la Gestion de Configuration

# Rechargement de configuration en temps réel — modifiez config.yaml sans redémarrer
# Prend effet automatiquement, aucune action manuelle nécessaire

# Substitution de variables d'environnement — utilisez ${ENV_VAR} dans config.yaml
# Exemple :
# api_key: ${OPENAI_API_KEY}

# Modèles personnalisés — custom_models.yaml
# Ajoutez vos propres modèles en dehors du catalogue officiel
  • Substitution ${ENV_VAR} : référencez les variables d’environnement directement dans config.yaml
  • Rechargement de configuration en temps réel : les modifications de config.yaml s’appliquent sans redémarrage
  • custom_models.yaml : ajouts de modèles gérés par l’utilisateur
  • Fusion YAML imbriquée : fusion profonde lors de la mise à jour de configuration au lieu d’un remplacement brutal
  • Sélection de fichiers de contexte basée sur la priorité + support CLAUDE.md

Nouveaux Outils

Outil Description Utilisation
Email IMAP Lire et envoyer des emails via le protocole IMAP L’agent peut traiter les emails directement
STT (Parole vers Texte) Reconnaissance vocale via l’API Whisper Transcrire des fichiers audio
Tavily Backend de recherche/extraction/crawling web hermes tools enable tavily
Parallel Backend alternatif de recherche/extraction web hermes tools enable parallel
Backend Web Configurable Sélection Firecrawl / BeautifulSoup / Playwright Configurer selon les besoins
Tarification Sensible à la Route Estimations de coûts précises par route de fournisseur Calcul automatique

Améliorations TTS

  • NeuTTS : fournisseur TTS local avec flux de configuration intégré, remplaçant l’ancien skill optionnel
  • Support de base_url personnalisé pour OpenAI TTS

Améliorations des Outils de Vision

  • Timeout configurable
  • Expansion du tilde dans les chemins de fichiers
  • Multi-images en MP Gateway + fallback base64

Sécurité et Fiabilité

Renforcement de la Sécurité

  • Protection SSRF : complète pour vision_tools et web_tools
  • Prévention d’injection shell : les suffixes de chemin ~user ne sont plus interprétés par le shell
  • Protection d’origine navigateur : bloque l’accès non autorisé depuis le navigateur au serveur API
  • Isolation des identifiants du sandbox : les identifiants du backend sandbox ne fuient jamais dans les variables d’environnement des sous-processus
  • Restriction de chemin de référence @ : bloque la lecture de fichiers sensibles en dehors de l’espace de travail (contribué par @Gutslabs)
  • Scanner de code malveillant pré-exécution : analyse les commandes terminal_tool pour détecter des motifs malveillants avant l’exécution
  • Élimination d’injection SQL : tous les appels execute() convertis en requêtes paramétrées (contribué par @dusterbloom)
  • Renforcement de l’API Jobs : limites d’entrée + liste blanche de champs + vérifications au démarrage

Améliorations de la Fiabilité

  • Verrous de thread sur 4 méthodes critiques de SessionDB
  • Verrouillage de fichiers pour les écritures mémoire concurrentes
  • Gestion élégante des erreurs OpenRouter
  • Robustesse de la boucle d’agent considérablement améliorée : récupération automatique de tool_choice rejeté par le fournisseur, gestion correcte des résultats d’outils vides, erreurs d’analyse JSON renvoyées au modèle au lieu d’exécuter avec des arguments vides, prévention de la perte silencieuse de résultats d’outils

Améliorations du Système Cron

  • Réponses [SILENT] : les agents cron peuvent s’exécuter silencieusement sans envoyer de résultats
  • La fenêtre de grâce des tâches manquées s’adapte à la fréquence de planification
  • Récupérer les tâches ponctuelles récentes
  • Correction de la normalisation des horodatages ISO (auparavant, les horodatages sans fuseau horaire causaient l’exécution des tâches à des moments incorrects)

Écosystème Skills

Nouveaux Skills

Skill Description
OCR-and-documents OCR pour PDF/DOCX/XLS/PPTX/images avec accélération GPU optionnelle
Huggingface-hub Interaction intégrée avec HuggingFace Hub
Sherlock OSINT Recherche de noms d’utilisateur multiplateforme
Meme-generation Génération d’images avec Pillow
Bioinformatics Skill gateway indexant plus de 400 skills de bioinformatique
3D-model-viewer Visionneuse de modèles 3D
FastMCP Skill de développement rapide MCP
Base blockchain Interaction blockchain

Améliorations du Système de Skills

  • Skills créés par l’agent : résultats de niveau Caution autorisés, les skills dangereux demandent au lieu de bloquer
  • Drapeau --yes : ignorer la confirmation lors de l’installation/désinstallation de skills
  • Skills désactivés respectés globalement : absents du bandeau, du system prompt et des commandes slash

Améliorations du Système de Plugins

  • Hooks d’extension TUI : construisez des CLIs personnalisées au-dessus d’Hermes
  • hermes plugins install/remove/list : gestion complète du cycle de vie des plugins
  • Enregistrement de commandes slash : les plugins peuvent enregistrer leurs propres commandes slash
  • Événement de cycle de vie session:end : les plugins peuvent se brancher sur les événements de fin de session

Mise à Niveau

hermes update

Pour les nouvelles installations, consultez le guide d’installation.


Changelog complet sur GitHub

← Hermes Agent Changelog