v0.21.0

Hermes Agent v0.21.0


Aperçu

v0.21.0 — The Pantheon Release. Publié le 31 août 2026. ~5 800 commits · ~2 475 PR fusionnées · ~5 680 fichiers modifiés (+869 000 / −135 000) depuis v0.20.0, avec ~2 100 issues fermées et 760+ contributeurs.

v0.20.0 a fait de Hermes le héraut — il parlait, et il portait la parole aux autres agents. Dans v0.21.0, les dieux s’assemblent : Bot Mode est livré intégré à l’application desktop, transformant vos agents en une société de visages nommés avec des groupes de discussion, et hermes peer permet à n’importe quel agent de messager n’importe quel autre agent par handle, entre profils et gateways. Autour de cette colonne vertébrale, les tâches cron ont gagné mémoire et continuité pour que les agents planifiés apprennent réellement entre les exécutions, les subagents peuvent être pilotés en direct en plein vol, la surface MCP est devenue un véritable centre de commandement, l’agent peut piloter le navigateur du desktop lui-même, et le CLI s’est enrichi d’une palette floue, de surfaces de statut plus riches et de pets de terminal.

Cette release regroupe aussi et documente intégralement les tags de release corrective d’infrastructure v0.20.1–v0.20.6 (13–27 août), dont les notes ont été reportées sur cette release mineure conformément à la politique de releases groupées.


Points forts

1. Bot Mode intégré : vos agents deviennent une société

Bot Mode est désormais un composant groupé et activé par défaut de l’application desktop : chaque profile d’agent obtient un nom, un visage d’avatar déterministe (avec des contrôles de randomisation/verrouillage) et une place dans un roster partagé. Créez des groupes de discussion façon Discord où plusieurs bots et vous discutez dans une même pièce, mentionnez n’importe quel bot avec @ depuis le composer, et donnez aux pièces des noms et des images. Des cartes de messages agent-à-agent attribuées, des avis de livraison côté émetteur, une hydration paint-first pour des réveils instantanés, des noms de groupe et images de pièce modifiables, et un panneau Routines complètent la surface (#87886, #88243, #89386, #96726, #85855, #85888, #89510, #89371, #88731).

2. hermes peer : des DM bot-à-bot entre profils et gateways

N’importe quel agent Hermes peut désormais messager n’importe quel autre par handle, entre profils et gateways, depuis le CLI ou dans une conversation. hermes peer add <name> --url <base> --key <API_SERVER_KEY> enregistre un gateway pair ; hermes peer dm <peer>[/<agent>] "<msg>" livre dans le Bot Chat canonique de l’agent distant et imprime la réponse ; hermes peer run démarre les tours longs de façon asynchrone avec une idempotency key ; hermes peer status / hermes peer stop les gèrent. Codes de sortie : 0 ok, 1 erreur de livraison/pair, 2 erreur d’utilisation (#88725, #88178, #91487).

3. Des tâches cron qui se souviennent

Les tâches planifiées ont cessé d’être des poissons rouges : les agents cron chargent et mettent à jour la mémoire persistante comme tous les autres agents, continuity=true fait passer la sortie de chaque exécution à la suivante (un monitor peut ainsi dédupliquer par rapport à ce qu’il a déjà rapporté), chaque tâche dispose d’un scratchpad bloc-notes durable (hermes cron notepad <job_id> get|set|delete|list), les tâches en monitor mode sautent entièrement le LLM quand rien n’a changé, et la sortie cron peut atterrir dans le Bot Chat canonique d’un bot, où le bot répond effectivement (#91447, #80774, #81139, #81138, #91487). Frères et sœurs : validation de config avant dispatch (#81140), signatures d’échec acquittées qui stoppent les re-contacts (#95017), fixation de l’effort de raisonnement par tâche (#91244), « Trigger now » exécute immédiatement (#70638).

4. Pilotez vos subagents pendant qu’ils s’exécutent

delegate_task a gagné l’orchestration en direct : listez les enfants en cours, pilotez-en un en plein vol avec une correction de cap, ou stoppez-le tôt en conservant le résultat partiel. Validation optionnelle par JSON schema des sorties enfants, coût par délégation affiché dans les résultats, et valeurs par défaut relevées (250 itérations, 10 enfants concurrents) font de la délégation un travail parallèle géré (#85232, #81144, #81142, #86506, #86745, #81141, #86641).

5. Le centre de commandement MCP

Les serveurs MCP et le catalogue ont fusionné en une seule page desktop cohérente : import « collez n’importe quoi » par glisser-déposer, health checks en arrière-plan qui vous incitent à vous ré-authentifier avant qu’un appel d’outil échoue, une vue flotte coût/usage (estimations de tokens du schema et usage sur 30 jours par serveur), et des deep links hermes:// qui installent un serveur MCP avec confirmation explicite (#87525, #87572, #87576, #87579, #87581).

6. Une vague de puissance CLI

Ctrl+P ouvre une palette de commandes floue ; le sélecteur /model filtre pendant que vous tapez ; /status affiche le mode de raisonnement, les approbations en attente et l’usage du contexte ; la barre de statut peut afficher en direct le % de cache-hit, la latence et les tokens/seconde avec des toggles par champ. En plus : un arrêt d’urgence global, l’épinglage/désépinglage de session, des placeholders de composer orientés tâche en rotation, et des pets de terminal niveau Ghostty (gérés avec hermes pets ; config sous pet: — enabled, slug, render_mode auto|kitty|iterm|sixel|unicode|off, scale) (#90730, #90717, #90745, #98250, #98282, #97666, #80761, #81947).

7. L’agent pilote le navigateur du desktop

Le navigateur intégré à l’application a cessé d’être une fenêtre que l’agent pouvait seulement regarder : Hermes navigue, clique et le lit désormais directement, et les pages peuvent être éjectées vers votre navigateur système avec des menus contextuels de liens complets (#90197, #89366).

8. Six nouveaux providers et une vague de catalogue de modèles

Meta Model API (Muse Spark) arrive comme provider intégré, aux côtés de CommandCode, Tencent TokenPlan, Nebius Token Factory, Ramp Router et Actual Computer (#88565, #88308, #97917, #97916, #97915, #79644). Les catalogues ont accueilli GLM-5.3-Flash, qwen3.8-max/flash, Gemini 3.7 Flash, MiniMax M3 free et Nemotron 3.5 Lightning ; model_overrides vous permet de corriger vous-même la fenêtre de contexte ou la tarification de n’importe quel modèle (#85560) ; les avertissements de data-training-tier protègent chaque surface de sélection (#85917) ; les providers de modèles installés par pip sont livrés via des entry points (#85504) ; Codex GPT revient par défaut au 272K vérifié avec des variantes -900k explicites (#92797).

9. Durcissement de la sécurité sur toute la ligne

Les fichiers d’instructions d’agent protégés (AGENTS.md, skills, stores de mémoire) exigent désormais toujours une approbation d’écriture (security.protected_instruction_files: true par défaut, security.protected_instruction_extra_patterns pour les extras), si bien qu’un agent victime de prompt injection ne peut pas réécrire en silence ses propres ordres permanents (#81152). Une passe de redaction en profondeur a colmaté les fuites de secrets dans les erreurs de terminal, les lectures de fichiers .env, les checkpoints et les logs ACP (#80965, #80964, #81675, #81686, #88232). Le système d’approbation a appris les commandes Windows destructrices (#84428), et les octrois d’autorisation macOS survivent aux mises à jour grâce à une identité de signature TCC stable — hermes desktop --setup-tcc-identity (#95091).

Core Agent & Architecture

  • Agent loop : récupération de provider bloqué (#87236) ; cluster de durcissement MoA (#90212) ; résilience de sortie structurée pour les appels auxiliaires, y compris la traduction du response_format d’Anthropic (#89589) ; compression lean-tail + harnais d’évaluation du rappel de compaction (#87326) ; les résultats d’outils surdimensionnés débordent vers le cache au lieu d’être tronqués (#89028) ; clarify multi-questions (#89467) ; verdicts dry-run de hermes approvals test pour les commandes (#81137).
  • Sessions & state : les transcripts repris ne sont plus jamais ré-appendés (#92539) ; protocole de context-manager SessionDB (#88048) ; nommage instantané de session avec titres persistants (#81985) ; épinglage/désépinglage de session depuis le CLI (#80761).
  • Messaging : cartes live natives Slack via chat.startStream avec cartes plan/tâche opt-in (#85476) ; sélecteur inline Telegram contournant la limite du menu de commandes (#98317) ; relay mature avec init de plugin natif (#77915), cartes live (#85796), segmentation par session (#85467), STT de notes vocales (#95274) ; socket de contrôle gateway (#92447, #95695) ; service multiplexé sélectif de profils (#83400) ; boutons de réglage du loop-watchdog câblés de bout en bout (#92317) ; stack dumps du turn-reaper (#86248).

Desktop App

  • Bot Mode intégré (voir Points forts) ; navigateur intégré pilotable par l’agent (#90197) avec ouverture externe + menus contextuels de liens (#89366).
  • Transfert de mise à jour détaché sur chaque OS — quitter → mettre à jour → rouvrir avec une seule fenêtre shim ; les mises à jour desktop Windows ne restent plus bloquées sur « Updating Hermes » (#83634, #90937, #95897).
  • Vague de QoL : le HUD s’accroche au curseur avec ⌘⇧G (#83130), coller dans le composer sans le focaliser (#84955), badges de durée par tour (#87245), translucidité de fenêtre macOS lisible (#88744), entrée de lanceur Linux (#76456), détection automatique du trousseau Linux (#84903), recettes cron + blueprint dans la barre latérale (#85162).
  • Send Diagnostics envoie un bundle de débogage expurgé (#92020) ; le rejeu d’événements à horodatage séquentiel donne une reconnexion desktop sans perte sur WebSocket (#94219) ; décomposition du god-file (#89611).

CLI & TUI

  • Vague de puissance CLI (voir Points forts) ; hermes approval-checkhermes approvals test + hermes approvals suggest (#81137) ; titres de session dans les barres de statut (#81947) ; modèle de subagent dans le sélecteur de modèles auxiliaires (#80463) ; Ctrl+C corrigé — plus de rupture d’interruption par le protocole clavier Kitty (#87074).

Tool System & MCP

  • Centre de commandement MCP (voir Points forts) ; les commandes interrompues n’empoisonnent plus le cwd (#85654) ; récupération de contention de renommage Windows (#84852) ; les session IDs avec deux-points ne cassent plus les montages sandbox (#93488) ; sortie vision sans plafond pour les appels auxiliaires (#75253) ; delegate ne supprime plus le travail non commité d’un enfant quand l’inspection git échoue (#88419).

Skills Ecosystem

  • Vague de skills productivité : document-to-action-items, meeting-action-items, email-inbox-triage, github-issue-to-pr, weekly-review-planning, competitor-news-monitor, product-price-monitor, social-media-content-calendar (#81185 et al.).
  • Clients API dérivés de HAR — observez un site une fois, appelez son API cachée directement (#70823) ; publish-site (#72189) ; session-librarian (#84917) ; blocked-page-recovery (#84906) ; merge-reconciler (#83063) ; skill Box (#85767) ; codemods ast-grep (#80892) ; draw-your-font + simple-english (#80814, #80811) ; plan-interrogation (#97831).
  • Linter consultatif SKILL.md à la création (#81896) ; repli live-repo du skills-hub (#82780) ; skills.create_dir dirige les skills créées par l’agent vers n’importe quel répertoire (#100377, fusionnée le 1er septembre).

Cron, Delegation & Multi-Agent

  • Mémoire + continuité cron, tâches monitor mode, blocs-notes durables, validation avant dispatch, signatures d’échec acquittées, fixation de l’effort de raisonnement, Trigger-now — voir le point fort 3.
  • Orchestration de subagents en direct, schémas de sortie structurée, validation de qualité par lot, marqueurs de troncature — voir le point fort 4.
  • Durcissement Kanban : signalement des points de collision (#83428), contrat de propriété de décision split-brain (#83424), garde de dispatch tenant compte de la mémoire (#88115), modes de livraison notify/wake (#85487).

Observability

  • Reporting d’usage modèle/provider + agrégation bornée de métriques d’outils comme sous-système d’observabilité (#68881, #68882), avec des opérations de cycle de vie bornées pour qu’un pipeline coincé ne puisse pas bloquer l’agent (#83514).

Infrastructure, CI & Packaging

  • CI sur OS réels : pistes macOS et Windows avec tests verrouillés par l’OS hôte réel (#77992) ; pistes de travail sur runners 32 cœurs (#92009) ; commentaires de review + builds d’images hors du chemin CI critique (#82668) ; l’installateur bootstrap n’attend plus l’EOF du pipe (#90941).

Notable Bug Fixes

  • Les courses de sessions desktop (Stop→edit/resend, propriété de soumission) sont corrigées en cluster (#86594) ; scintillement au repos du panneau workspace (#97513) ; récupération de frontière assistant-ui (#81232).
  • Recréation du schema Kanban quand un chemin de DB en cache le perd (#83619) ; les tâches cron n’héritent plus de l’identité de dispatcher d’un worker kanban (#79657) ; livraison cron Slack via relay (#85340).
  • Les pièces jointes MEDIA du sandbox Docker ne sont plus silencieusement perdues (#94509) ; les pièces jointes binaires du desktop sont livrées dans les backends sandbox (#81717).
  • Le refroidissement de compaction d’hygiène de session s’intensifie en cas d’échecs répétés (#79741) ; les 400 de paramètres injectés par le provider sont retentés au lieu d’abandonner le tour (#91643).
  • …et environ deux mille autres issues fermées — cette fenêtre a atteint en moyenne ~85 PR fusionnées par jour.

Reverted in this window (not shipping)

  • Model Council mode (/council) — atterri puis reverté ; absent de cette release.
  • Moteur de contexte DCP — atterri puis reverté ; absent de cette release.
  • Serveur gateway WS uniquement (#94245) — fusionné puis reverté (#96118) ; FastAPI reste sur le chemin de boot du desktop. Le rejeu d’événements à horodatage séquentiel (#94219) est, lui, bien livré.
  • Electron revenu à 40.10.2 ; ancre d’interpréteur TCC retirée (remplacée par l’approche d’identité de signature livrée).

Mise à jour

hermes update

Après la mise à jour, lancez hermes doctor pour vérifier l’installation et redémarrez le gateway (hermes gateway) pour que les changements de plateforme prennent effet. Pour voir ce que la prochaine mise à jour touchera avant de la lancer : hermes update --plan.

← Hermes Agent Changelog