2026 Hermes Agent Skills avancé :
de SKILL.md à l'auto-évolution GEPA et déploiement Mac cloud

Début 2026, Nous Research a publié Hermes Agent ; en deux mois, le dépôt GitHub a dépassé 160 000 étoiles. Devise : « the agent that grows with you » — l'agent s'affine à chaque usage. Pilier : le système Skills, mémoire procédurale standardisée, évolutive et persistante entre sessions, bien au-delà d'un prompt jetable. Ce guide s'adresse aux développeurs déjà initiés à Hermes et couvre format SKILL.md, Skill Bundles, activation conditionnelle, publication Tap, auto-évolution GEPA+DSPy, skills de plugins et écosystème open source. Vérifiez champs et limites dans la doc Hermes et agentskills.io. Tarifs location : page tarifs NOVAKVM.

  • Explosion de tokens : injecter une SOP entière dans le system prompt coûte cher à chaque tour ; la Progressive Disclosure ne charge le corps du skill qu'après activation.
  • Amnésie inter-sessions : un prompt classique expire avec la session ; Skills et Memory persistent — Skills enseignent le comment, Memory retient le quoi.
  • Workflows éclatés : revue PR, TDD et checks de déploiement dans des fils séparés ; les Skill Bundles chargent tout l'ensemble via une commande slash.
  • Absence de perception d'environnement : garder un skill DuckDuckGo alors que web_search payant est actif gaspille le contexte ; l'activation conditionnelle masque les skills selon les outils disponibles.
  • Qualité stagnante : une SKILL.md écrite une fois reste figée ; GEPA améliore le texte à partir des traces d'exécution sans fine-tuning du modèle.
  • Pas de partage d'équipe : skills dispersés en local ; un dépôt Tap + hermes skills tap add abonne toute l'équipe à la même source.
  • Confusion avec MCP : Skills = connaissance procédurale, MCP = interface d'outils — complémentaires, pas interchangeables.

Cinq questions avancées : Comment Progressive Disclosure maîtrise-t-elle les tokens ? Comment configurer l'activation conditionnelle ? Comment un Bundle déclenche-t-il un workflow complet ? Comment GEPA améliore-t-il les skills dans le temps ? Quels Taps communautaires valent l'abonnement ? Les sections suivantes y répondent.

Prompt vs Memory vs Skills — comparaison tri-dimensionnelle
Dimension Prompt classique Memory Skills
Persistance Session courante Inter-sessions, permanente Inter-sessions, permanente
Moment de chargement Toujours dans le contexte Injectée au début de session À la demande
Coût tokens À chaque tour Faible et stable Corps : zéro avant activation
Type de contenu Intention libre Préférences et faits Étapes procédurales
Maintenance Manuelle Automatique par l'agent Utilisateur et agent
Partage Peu pratique Privé Publiable en Tap communautaire

Mnémotechnique : Prompt = post-it (valable maintenant) ; Memory = carnet (notes permanentes à portée) ; Skill = manuel SOP (procédure consultée au besoin).

Tous les Hermes Skills suivent le standard ouvert agentskills.io, portable entre Hermes, Claude Code et Cursor. Structure de répertoire recommandée :

~/.hermes/skills/my-category/my-skill/
SKILL.md
references/
templates/
scripts/

Fichier principal SKILL.md idéalement ≤500 lignes ; references/ pour docs API, templates/ pour modèles réutilisables, scripts/ pour exécution directe par l'agent.

Exemple de frontmatter SKILL.md
---
name: my-skill
description: |
  Use when the user needs to [...].
  Handles [...] and [...].
version: 1.0.0
license: MIT
compatibility: Requires git, docker
allowed-tools: Bash(git:*) Read
metadata:
  hermes:
    tags: [devops, automation]
    category: software-development
    related_skills: [github-pr-workflow]
    requires_toolsets: [terminal]
    fallback_for_toolsets: [web]
---

La Progressive Disclosure contrôle les tokens :

Niveaux de divulgation progressive
Niveau Contenu Déclencheur Coût tokens
Level 0 name + description Début de session, scan de tous les skills Environ 3K au total
Level 1 Corps complet de SKILL.md /skill-name ou décision LLM Selon longueur du fichier
Level 2 references/, scripts/ À l'exécution, si le LLM en a besoin Par fichier, à la demande

Le corps doit inclure Overview, When to Use, Procedure, Common Pitfalls, Verification Checklist. Clé : description est la seule info de routage Level 0 — « quand l'utiliser » prime sur « ce que c'est ». Commencez par « Use when… », max. 1024 caractères ; name en minuscules et tirets, max. 64 caractères.

Les Skill Bundles (nouveauté 2026) regroupent plusieurs skills en commande slash ; /bundle-name charge simultanément la liste. Fichier sous ~/.hermes/skill-bundles/<slug>.yaml :

backend-dev.yaml
name: backend-dev
description: |
  Full backend feature workflow — code review, TDD, and PR management.
skills:
  - github-code-review
  - test-driven-development
  - github-pr-workflow
instruction: |
  Always write failing tests first before implementation.
  Never push directly to main.

Exemples : research-session (arxiv, deep-research, plan, excalidraw) ; mlops-deploy (vllm, llama-cpp, github-pr-workflow, systematic-debugging). Règles : en cas de collision de nom, le Bundle l'emporte ; skills absents ignorés avec avertissement ; pas de modification du system prompt — compatible Prompt Cache. Création CLI :

terminal
hermes bundles create backend-dev \
    --skills github-code-review,test-driven-development,github-pr-workflow \
    --instruction "Always write failing tests first"

L'activation conditionnelle sous metadata.hermes ajuste la visibilité selon les outils :

  • requires_toolsets / requires_tools : masquer le skill si l'outil listé est absent.
  • fallback_for_toolsets / fallback_for_tools : masquer le skill si l'outil listé est présent (rôle de secours).

Scénario classique : avec FIRECRAWL_KEY ou BRAVE_SEARCH_KEY, web_search payant s'active et duckduckgo-search disparaît via fallback_for_tools: [web_search]. Si l'API tombe, le fallback revient. Skills sensibles à la plateforme : requires_toolsets: [messaging] et platforms: [telegram, discord] ; la TUI hermes skills active/désactive par CLI, Telegram et Discord.

Commandes hermes skills
hermes skills install official/research/arxiv
hermes skills install https://example.com/SKILL.md --name my-skill
hermes skills install github:openai/skills/k8s
hermes skills tap add github:my-org/my-skills
Dépôts de skills open source à surveiller (revérifier les stars après publication)
Dépôt Points forts
ChuckSRQ/awesome-hermes-skills Collection production : Deep Research, MLOps, intégration Apple ; 23 skills pour GitHub Copilot
amanning3390/hermeshub Registre communautaire, scan sécurité, API et marketplace
kevinnft/ai-agent-skills 191 skills, 28 catégories, portable Hermes/Claude Code/Cursor
NousResearch/hermes-agent Source officielle, skills intégrés et spec d'authoring

Publier un Skill Tap : créer un dépôt GitHub comme source, l'équipe exécute hermes skills tap add github:your-org/your-skills-tap ; dépôt privé avec --token $GH_TOKEN ; mises à jour via hermes skills tap update. Option skills.sh.json pour catégories Hub. Versionner ~/.hermes/skills/ en Git pour sync multi-appareils ; puis hermes skills reset pour les built-ins. Le standard agentskills.io découple les actifs de la plateforme — valider avec skills-ref validate ./my-skill.

Entrées officielles — rouvrir les liens après chaque release upstream :

Documentation Skills Hermes Agent

Creating Skills — guide développeur

agentskills.io — spécification ouverte

hermes-agent-self-evolution (dépôt outils GEPA)

GEPA (Genetic-Pareto Prompt Evolution), Oral ICLR 2026, intégré dans hermes-agent-self-evolution. Principe : analyser les traces → générer des variantes → optimisation Pareto multi-objectifs → améliorer le texte SKILL.md, sans fine-tuning. Coût typique 2–10 USD par run API-only, pas de GPU.

Cinq phases : ① collecte de traces (SQLite, trajectoires complètes) → ② analyse réflexive des échecs③ mutation ciblée (10–20 variantes SKILL.md par échec) → ④ évaluation Pareto (taux de succès × efficacité tokens × vitesse) → ⑤ revue PR humaine.

Démarrage rapide evolve_skill
export HERMES_AGENT_PATH=~/.hermes
python -m evolution.skills.evolve_skill \
        --skill github-code-review \
        --iterations 10 \
        --eval-source sessiondb

Quatre garde-fous : tests complets 100 % verts ; skills ≤15 Ko, descriptions d'outils ≤500 caractères ; Prompt Cache intact ; préservation sémantique de l'objectif initial. Feuille de route : Phase 1 fichiers Skill (✅) → Phase 2 descriptions d'outils → Phase 3 system prompt → Phase 4 implémentation d'outils → Phase 5 boucle fully automated. Grâce à agentskills.io, traces Claude Code ou Gemini CLI combinables : --eval-source mixed --trace-dirs ~/.claude/traces,~/.hermes/sessions.

Les Plugin-Bundled Skills se chargent via le namespace plugin:skill, absents de la skills_list par défaut, activés seulement sur appel explicite ; les skills d'un même plugin peuvent se voir mutuellement. Déclarer le chemin skills dans plugin.yaml.

Points avancés côté ingénieur :

  • description = précision d'activation : « Use when reviewing a pull request…Do NOT use for writing new code » plutôt que « Helps with code ».
  • Pitfalls = qualité : modes d'échec concrets, cause racine et correctif (sélecteurs CSS fragiles, rate limits GitHub, gros diffs).
  • Scripting : Procedure référence scripts/extract_schema.py ; en échec, charger references/manual-extract.md.
  • Taille : <500 lignes dans SKILL.md ; 500–1000 en references ; >15 Ko obligatoire à scinder (limite GEPA).
  • skill_manage : l'agent utilise action='patch'|'create' ; agent_writes_require_approval: true dans config.yaml pour validation humaine.

Cas blog-workflow : bundle blog-workflow avec seo-keyword-research, outline-generator, code-example-validator, bilingual-checker, publish-to-platform ; instruction exige recherche SEO, code exécutable, titres bilingues. Après modification d'un skill en session : /reset ou install avec --now (invalide le Prompt Cache).

FAQ : Skills enseignent les processus, MCP fournit les outils ; variantes GEPA filtrées par quatre garde-fous + PR — revoir chaque diff ; copier SKILL.md vers ~/.claude/skills/ ou installer kevinnft/ai-agent-skills une fois pour plusieurs éditeurs ; description en anglais ou bilingue pour un meilleur routage LLM.

  1. Installer Hermes et skills officiels : hermes skills install official/research/arxiv etc. ; vérifier ~/.hermes/skills/.
  2. Rédiger la première SKILL.md : champs name, description (Use when…), corps avec Procedure et Pitfalls ; lancer skills-ref validate.
  3. Créer un Skill Bundle : YAML sous ~/.hermes/skill-bundles/ ou hermes bundles create ; tester /bundle-name.
  4. Configurer l'activation conditionnelle : requires/fallback dans metadata.hermes ; changer de clé API et vérifier la visibilité.
  5. S'abonner à un Tap communautaire : hermes skills tap add github:ChuckSRQ/awesome-hermes-skills, tap update régulier.
  6. Publier un Tap d'équipe : dépôt GitHub + skills.sh.json ; membres tap add ; token pour dépôt privé.
  7. Lancer l'évolution GEPA : cloner hermes-agent-self-evolution, evolve_skill --eval-source sessiondb, revoir le PR généré.
  8. Mac distant 7j/7 : déployer ~/.hermes/ sur nœud Apple Silicon dédié ; Gateway et skills synchronisés par Git — pas de veille laptop qui coupe sessiondb.
  • Métadonnées Level 0 : tous les skills name+description ≈ 3K tokens (doc Hermes, vérifier la version).
  • Coût GEPA par run : ≈ 2–10 USD API-only, sans GPU (projet NousResearch self-evolution).
  • Limites taille GEPA : skill ≤15 Ko, description d'outil ≤500 caractères.
  • Limites frontmatter : name ≤64 caractères ; description ≤1024 ; corps recommandé ≤500 lignes.
  • Standard cross-plateforme : skills agentskills.io réutilisables sur Hermes, Claude Code, Cursor, OpenCode.

Hermes Skills et GEPA exigent un environnement toujours en ligne, traces persistantes et toolchain macOS native. Limites des alternatives : MacBook personnel en veille interrompt sessiondb ; VPS Linux sans Xcode/skills Metal ; Mac virtuel partagé avec évaluations instables en multi-tenant. Pour CI iOS, gateway Telegram et auto-évolution d'agent IA en production, NOVAKVM Mac Mini M4/M4 Pro bare metal offre Apple Silicon exclusif, six régions et location flexible — les skills définissent le comment, le nœud distant garantit le toujours disponible. Détails : page tarifs et centre d'aide.