đ§ Refonte de lâarchitecture du cache : le prompt systĂšme est dĂ©sormais statique au niveau des octets
Ces travaux préparent ce qui deviendra la version fondatrice v0.14.0.
Le changement le plus marquant depuis Tenacity est la PR #24778 â une refonte complĂšte de la stratĂ©gie de mise en cache des prompts de Hermes Agent, fusionnĂ©e par Teknium le 13 mai.
Le problĂšme
Le prompt systĂšme Ă©tait reconstruit Ă chaque appel API. La fonction _build_system_prompt_parts() sâexĂ©cutait Ă lâintĂ©rieur de la boucle par appel sur le chemin de longue durĂ©e, redĂ©rivant la couche volatile (horodatage + instantanĂ© mĂ©moire + profil utilisateur) Ă chaque tour. RĂ©sultat : les octets mutaient en cours de conversation dĂšs que la minute changeait ou quâune mĂ©moire Ă©tait Ă©crite, invalidant ainsi les caches de prompt en amont chez OpenRouter, Portal et Anthropic.
âLâhistorique (systĂšme + tous les messages sauf les 1 ou 2 derniers) doit ĂȘtre statique au sein dâune session. La mise en cache repose sur une stabilitĂ© binaire parfaite.â â description de la PR #24778
La solution
La solution est élégante par sa simplicité : le prompt systÚme est désormais construit une fois par session et rejoué textuellement à chaque tour. Principaux changements :
- ~715 lignes supprimées de
run_agent.pyâ la branche du cache de prĂ©fixe longue durĂ©e, sa durĂ©e de vie et le drapeau_supports_long_lived_anthropic_cacheont Ă©tĂ© intĂ©gralement retirĂ©s prompt_caching.pysimplifiĂ© â une seule disposition (system_and_3) remplace lâapproche complexe multi-blocs : 4 points de rupture (systĂšme + 3 derniers messages), tous aveccache_ttl- ClĂ©s de configuration supprimĂ©es â
prompt_caching.long_lived_prefixetprompt_caching.long_lived_ttlretirĂ©es dehermes_cli/config.py - Fichier de test entier supprimĂ© â
test_prompt_caching_live.pyétait le test live longue durée ; il disparaßt avec la fonctionnalité
Le résultat
Le diff au format filaire est Ă©loquent : lâANCIENNE disposition atteignait un taux de succĂšs cumulĂ© du cache de 66,6âŻ% sur 8 tours (un unique miss en milieu de session lorsque lâempreinte SHA du bloc systĂšme changeait). La nouvelle disposition mono-bloc atteint 83,3âŻ% â soit une amĂ©lioration de 16,7 points de pourcentage de lâefficacitĂ© du cache.
Pour les utilisateurs qui font tourner Hermes Agent Ă lâĂ©chelle â en particulier ceux qui sollicitent les points de terminaison Portal ou Anthropic â cela se traduit directement par une latence rĂ©duite, moins dâappels API et des coĂ»ts diminuĂ©s.
đ·ïž Ătiquetage unifiĂ© du client Portal
La PR #24779 introduit un nouveau module portal_tags.py qui marque chaque requĂȘte Hermes Ă destination de Nous Portal avec client=hermes-client-v<version> (aujourdâhui : client=hermes-client-v0.13.0).
Lâastuce : lâĂ©tiquette est extraite dynamiquement de hermes_cli.__version__ au moment de la requĂȘte. Lorsquâune prochaine version fera Ă©voluer la chaĂźne de version, tous les points dâappel vers Portal enverront automatiquement la nouvelle Ă©tiquette â aucune autre modification de code nâest nĂ©cessaire. La mise Ă jour de version par expression rĂ©guliĂšre du script de release se propage automatiquement partout.
Cette approche remplace le marqueur ad hoc client=aux issu de la #24194 par un mĂ©canisme unifiĂ©, versionnĂ©, qui couvre toutes les voies Portal â boucle principale de lâagent, client auxiliaire, rĂ©sumĂ©s de compression et replis de lâoutil web.
âïž Qwen Cloud : Alibaba change de marque
La PR #24835 renomme le fournisseur alibaba de « Alibaba Cloud (DashScope) » en « Qwen Cloud » et le dĂ©place de la position 24 Ă la position 6 dans le sĂ©lecteur de fournisseurs â juste au-dessus de Xiaomi MiMo, en dessous dâOpenAI Codex.
Cela reflĂšte le changement de marque en cours dans lâĂ©cosystĂšme chinois de lâIA : les offres dâIA gĂ©nĂ©rative dâAlibaba vivent dĂ©sormais sous la marque Qwen, et Hermes Agent suit le mouvement. Lâidentifiant interne alibaba et la variable DASHSCOPE_API_KEY restent inchangĂ©s â seul le libellĂ© Ă destination de lâutilisateur a Ă©tĂ© dĂ©placĂ©.
đ Le pipeline de fonctionnalitĂ©s de la v0.14.0 prend forme
Si les commits fusionnés racontent une histoire, les PR ouvertes depuis le 11 mai donnent un aperçu de ce qui arrivera dans la prochaine version :
| PR | Fonctionnalité | Auteur |
|---|---|---|
| #24936 | Commande CLI hermes gateway send-message |
jwickers |
| #24938 | Canal de mise Ă jour des releases | Sunwo0u |
| #24926 | Respect de display.show_reasoning sur les complétions de chat du serveur API |
Zavianx |
| #24811 | Primitives de suspension/reprise pour les tĂąches longues sur Kanban | shanewas |
| #24925 | Recherche de session : chargement contextuel seul (fenĂȘtrĂ©) via FTS5 | shanewas |
| #24916 | Progression des outils avec tampon pour les plateformes sans édition (Weixin) | rzbdz |
| #24423 | En-tĂȘtes X-Hermes-User-* / Chat-* pour lâidentitĂ© multi-utilisateur |
gsskk |
La PR de suspension/reprise Kanban (#24811) est particuliĂšrement notable â elle ajoute des primitives de suspension/reprise de premier ordre pour les tĂąches Kanban de longue durĂ©e, Ă©tendant ainsi le systĂšme de tableau multi-agents durable livrĂ© avec la v0.13.0.
đ§ Corrections et durcissement sur toute la pile
Les plus de 40 commits depuis le 11 mai couvrent lâensemble de la surface de la plateforme Hermes Agent :
Sécurité
- Contournement des confirmations DELETE corrigé (
80374d4d) â un drapeau DOTALL dans le motif dâapprobation permettait une injection de retour Ă la ligne pour contourner les confirmations DELETE - Correction de lâinjection
--no-sandboxdu navigateur (#24930) â--no-sandboxest dĂ©sormais injectĂ© viacmd_partsplutĂŽt queAGENT_BROWSER_CHROME_FLAGS
Multiplateforme
- Support CLI CJK â utilisation de
display-widthpour les Ă©tiquettes dâen-tĂȘte de la boĂźte de rĂ©ponse (#24843 par NorethSea) - Correction du scrollback TUI sous tmux â le tampon de dĂ©filement est vidĂ© au dĂ©marrage pour Ă©viter les fuites (#24843)
- Correction du crash de la CLI Windows â la complĂ©tion des
@-filene plante plus quand les chemins ne sont pas décodables en cp1252 (#24843)
Plateformes de messagerie
- Telegram â rĂ©action « en cours » retirĂ©e en cas dâannulation du traitement (#24628), helper de fil de discussion pour les rĂ©sultats de confirmation par slash
- LINE â utilisation de
build_sourceau lieu decreate_sourceinexistant - WeCom (WeChat Work) â corrections de la remontĂ©e dâĂ©tat de reconnexion WebSocket
- Signal â messages de groupe provenant dâappareils liĂ©s traitĂ©s dans le chemin syncMessage
- WhatsApp â dĂ©lai dâexpiration de
npm installrendu configurable - Email â implĂ©mentation de
send_voice()pour lâenvoi de piĂšces jointes audio (#24931)
Infrastructure
- Docker â propriĂ©tĂ© de
.venvcorrigĂ©e pour quelazy_depspuisse installer les paquets de la plateforme (#24841) - CI â dĂ©lai dâattente des jobs e2e portĂ© Ă 15 minutes, ripgrep installĂ© dans les jobs e2e
- Systemd â dĂ©lai de redĂ©marrage rĂ©duit
- Changement de modĂšle â
config.context_lengthobsolÚte effacé lors du changement de modÚle
đ En chiffres (11 mai â 13 mai)
| MĂ©trique | 11 mai | 13 mai | Ăvolution |
|---|---|---|---|
| Ătoiles GitHub | 143âŻ510 | 147âŻ782 | +4âŻ272 |
| Forks | 22âŻ406 | 23âŻ222 | +816 |
| Issues ouvertes | 9âŻ960 | 10âŻ713 | +753 |
| Commits | â | 40+ en 48 h | â |
| Contributeurs | 13 uniques en 4 jours | 25+ en 2 jours | â |
âAvec environ 2âŻ136 nouvelles Ă©toiles par jour depuis le 11 mai, Hermes Agent continue dâĂȘtre le runtime dâagent IA Ă la croissance la plus rapide sur GitHub. Le projet est en bonne voie pour franchir les 150K Ă©toiles dans la semaine.â â The Agent Report
đ Prochaines Ă©tapes
Le cycle de release de la v0.14.0 se dessine clairement. Sur la base des PR ouvertes et de la densité des correctifs fusionnés, voici les points à surveiller :
- EfficacitĂ© du cache â le changement rendant le prompt systĂšme statique en octets est le genre dâamĂ©lioration architecturale sur laquelle les gains sâaccumulent
- MaturitĂ© du Kanban â les primitives de suspension/reprise annoncent une gestion du cycle de vie des tĂąches de niveau entreprise
- Ătendue des plateformes â le support Weixin (progression des outils tamponnĂ©e) et les en-tĂȘtes API multi-utilisateurs suggĂšrent des cas dâusage croissants en entreprise/collaboration
- Outillage CLI â la commande
send-messageet les fonctionnalitĂ©s de canal de release rendent Hermes Agent plus opĂ©rable Ă grande Ă©chelle - 150K Ă©toiles â au rythme actuel, ce cap devrait ĂȘtre atteint en quelques jours, pas en semaines
Pour les dĂ©veloppeurs qui suivent lâĂ©volution dâHermes Agent : la pĂ©riode post-Tenacity nâest pas une phase de refroidissement â câest une phase de construction. Le travail dâinfrastructure qui arrive aujourdâhui (architecture de cache, outillage fournisseur, durcissement des plateformes) permet la prochaine vague de fonctionnalitĂ©s.
Couverture basĂ©e sur lâactivitĂ© GitHub entre le 11 et le 13 mai 2026. Journal complet des commits : main...main