Vous avez installé Hermes, rédigé quelques prompts — et l'agent oublie votre workflow à chaque nouvelle session. La solution n'est pas un system prompt plus long, ce sont les Skills : mémoire procédurale inter-sessions à coût token nul jusqu'à activation. Ce guide s'adresse aux développeurs qui font déjà tourner Hermes (ou Cursor / Claude Code avec SKILL.md) et veulent des patterns production. Vous allez : (1) situer Skills vs Memory vs Prompts ; (2) maîtriser le format agentskills.io et la Progressive Disclosure à trois niveaux ; (3) livrer Bundles, activation conditionnelle et Taps d'équipe ; (4) lancer l'auto-évolution GEPA sur de vrais traces ; (5) déployer un lab Skills stable sur Mac cloud NUKCLOUD. Pas encore installé ? Commencez par notre guide d'installation Hermes et le guide Cursor Agent Skills.
00Pourquoi le système Skills mérite une analyse approfondie
Début 2026, NousResearch lance Hermes Agent. En deux mois : 160 000 étoiles GitHub — l'un des projets open source à la croissance la plus rapide dans l'espace agent IA. Le pitch n'est pas un modèle plus gros, c'est une philosophie : « the agent that grows with you ».
La fondation technique de cette croissance, c'est le système Skills. Contrairement aux prompts jetables, les skills Hermes sont une mémoire procédurale standardisée, évolutive et persistante entre sessions. Ce billet saute l'installation de base et plonge dans la Progressive Disclosure pour maîtriser les tokens, l'activation conditionnelle pour un comportement contextuel, les Skill Bundles pour des workflows en une commande, DSPy + GEPA pour l'auto-amélioration, et les meilleurs dépôts open source à tap directement.
PainCe qui casse quand on traite les Skills comme de longs prompts
- Fuite de tokens par eager loading : Injecter des SOP complètes à chaque session brûle le contexte avant que l'agent choisisse une tâche. Les Skills sont conçus pour un chargement à la demande.
- Descriptions vagues, mauvaises activations : « Aide avec le code » se charge hors sujet. La précision du champ
descriptionest votre filtre Level 0. - Pas de packaging workflow : L'équipe invoque cinq slash commands manuellement — au lieu d'un Bundle pour review, TDD, PR et debug.
- Skills périmés après édition : Modifier
SKILL.mdmid-session ne change rien — il faut/resetou--now, ce qui invalide le prompt cache. - Skills et MCP confondus : MCP fournit des outils ; les Skills enseignent comment les utiliser. Sans Skills, l'agent appelle des outils DB MCP sans playbook de migration.
01Skills vs Memory vs Prompts : la carte conceptuelle
Trois couches de contexte se ressemblent mais se comportent différemment. Utilisez cette matrice avant d'écrire votre première SKILL.md.
| Dimension | Prompt | Memory | Skill |
|---|---|---|---|
| Persistance | Conversation actuelle | Inter-sessions, permanent | Inter-sessions, permanent |
| Moment de chargement | Toujours en contexte | Injecté chaque session | À la demande (différence clé) |
| Coût token | Chaque tour | Faible, stable | Zéro jusqu'à activation |
| Type de contenu | Intention libre | Préférences / faits | Étapes procédurales |
| Maintenu par | Utilisateur manuel | Agent auto | Utilisateur + Agent |
| Partageable | Incommode | Privé | Publiable en Tap communautaire |
Mnémonique : Prompt = post-it (cette session). Memory = carnet (toujours sous la main). Skill = manuel SOP (consulté au besoin).
02Format SKILL.md et Progressive Disclosure
Tous les Skills Hermes suivent le standard ouvert agentskills.io — portable entre Hermes, Claude Code, Cursor et OpenCode. Validez avec skills-ref validate ./my-skill avant publication.
---
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, test-driven-development]
requires_toolsets: [terminal]
fallback_for_toolsets: [web]
---
# My Skill Title
## Overview
Ce que fait le skill et pourquoi il existe.
## When to Use
- Use for: [scénarios spécifiques]
- Don't use for: [scénarios exclus]
## Procedure
1. Étape un (commandes exactes)
2. Étape deux
3. Étape trois
## Common Pitfalls
1. Mode d'échec + correctif
2. Gestion des cas limites
## Verification Checklist
- [ ] Point de contrôle 1
- [ ] Point de contrôle 2
Arborescence pour skills modulaires :
├── SKILL.md # Étapes cœur (cible ≤500 lignes)
├── references/
│ ├── api-docs.md # Chargé à la demande
│ └── examples.md
├── templates/
│ └── config.yaml
└── scripts/
└── setup.sh # Exécutable par l'agent
La Progressive Disclosure est le cœur du contrôle token. Trois niveaux :
| Niveau | Contenu | Déclencheur | Coût token |
|---|---|---|---|
| Level 0 | name + description | Début de chaque session (tous les skills) | ~3K total catalogue |
| Level 1 | Corps complet SKILL.md | /skill-name ou jugement LLM | Selon longueur fichier |
| Level 2 | references/, scripts/ | LLM pendant exécution | Par fichier, à la demande |
Le champ description est toute l'info Level 0. Écrivez quand utiliser plus clairement que ce que c'est — le LLM s'en sert pour décider du chargement complet.
03Skill Bundles : une commande pour tout le workflow
Les Skill Bundles sont une fonctionnalité 2026 encore sous-utilisée. Un Bundle est un fichier YAML léger qui regroupe plusieurs skills en une slash command. /bundle-name charge tous les skills listés simultanément.
Emplacement : ~/.hermes/skill-bundles/<slug>.yaml
name: backend-dev
description: |
Full backend feature workflow — code review, TDD, and PR management.
Use at the start of any new backend feature session.
skills:
- github-code-review
- test-driven-development
- github-pr-workflow
instruction: |
Always write failing tests first before implementation.
Open PRs with co-author tags for pair-programming sessions.
Never push directly to main.
Bundle session recherche :
name: research-session
description: Load all research tools at once for deep-dive sessions.
skills:
- arxiv
- deep-research
- plan
- excalidraw
instruction: |
Start every session by checking recent papers on the topic.
Create an Excalidraw diagram for any architecture discussed.
Pipeline MLOps deploy :
name: mlops-deploy
description: Model deployment pipeline with monitoring setup.
skills:
- vllm
- llama-cpp
- github-pr-workflow
- systematic-debugging
instruction: |
Always run inference benchmarks before and after deployment.
Document model quantization settings in PR description.
Règles de priorité : le Bundle l'emporte sur un Skill homonyme. Les skills manquants sont ignorés avec avertissement, pas d'erreur. Les Bundles ne modifient pas le system prompt — le prompt cache reste valide.
hermes bundles create backend-dev \
--skills github-code-review,test-driven-development,github-pr-workflow \
--instruction "Always write failing tests first"
04Activation conditionnelle : skills contextuels
Les skills peuvent s'afficher ou se masquer automatiquement selon les outils disponibles dans la session. Configuration sous metadata.hermes :
metadata:
hermes:
requires_toolsets: [web]
requires_tools: [web_search]
fallback_for_toolsets: [browser]
fallback_for_tools: [browser_navigate]
| Champ | Comportement |
|---|---|
requires_toolsets | Masquer si toolsets absents |
requires_tools | Masquer si tools absents |
fallback_for_toolsets | Masquer si toolsets présents (rôle fallback) |
fallback_for_tools | Masquer si tools présents |
Bascule gratuit / payant : le skill DuckDuckGo définit fallback_for_tools: [web_search]. Avec FIRECRAWL_KEY ou BRAVE_SEARCH_KEY, web_search payant s'active — DuckDuckGo disparaît du prompt et économise des tokens. Sans API, le fallback réapparaît automatiquement.
Skills sensibles à la plateforme : requires_toolsets: [messaging] avec platforms: [telegram, discord]. La TUI hermes skills permet d'activer/désactiver par plateforme (CLI, Telegram, Discord) indépendamment.
05Skills Hub et écosystème open source
Canaux d'installation officiels :
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ôt | Focus | Stars | Point fort |
|---|---|---|---|
| awesome-hermes-skills | Curatelle production | 67 | Deep Research, MLOps, intégration Apple ; plugin gh-copilot |
| hermeshub | Registre communautaire + scan sécurité | 166 | API et marketplace ; détection prompt injection par skill |
| ai-agent-skills | 191 skills, 28 catégories | 10 | Install cross-agent Hermes / Claude Code / Cursor |
| hermes-agent | Source officielle | — | Skills intégrés et spec d'auteur |
agentskills.io signifie que les skills ne sont pas verrouillés sur un seul hôte. Les actifs communautaires voyagent avec vous.
06Publier votre propre Skill Tap
Un dépôt GitHub en Tap permet à toute l'équipe — ou la communauté — de s'abonner à votre jeu de skills.
my-skills-tap/
├── skills.sh.json
├── mlops/
│ ├── vllm-deploy/SKILL.md
│ └── model-benchmark/SKILL.md
├── research/
│ ├── paper-summarizer/SKILL.md
│ └── citation-finder/SKILL.md
└── README.md
{
"groupings": [
{
"title": "MLOps & Model Deployment",
"skills": ["vllm-deploy", "model-benchmark"]
},
{
"title": "AI Research Workflows",
"skills": ["paper-summarizer", "citation-finder"]
}
]
}
hermes skills tap add github:your-org/your-skills-tap
hermes skills tap add github:your-org/private-skills --token $GH_TOKEN
hermes skills tap update
hermes skills tap list
Contrôle de version : versionnez ~/.hermes/skills/ dans Git pour sync multi-appareils. Après git pull, lancez hermes skills reset pour reconstruire les built-ins.
07Skills auto-évolutifs avec GEPA + DSPy
GEPA (Genetic-Pareto Prompt Evolution) est un travail Oral ICLR 2026, intégré dans hermes-agent-self-evolution. Il améliore le texte des skills — pas les poids du modèle — en analysant les traces d'exécution, générant des variantes et optimisant en Pareto multi-objectif.
Coût : environ 2–10 USD par run d'optimisation (appels API uniquement, pas de GPU).
Pipeline d'évolution en cinq étapes :
- Étape 1 — Collecte de traces : lire les traces de raisonnement complètes depuis SQLite (appels outils, branches, erreurs).
- Étape 2 — Analyse réflexive des échecs : le LLM produit des informations actionnables — pas « ça a échoué » mais pourquoi.
- Étape 3 — Mutation ciblée : générer 10–20 variantes
SKILL.mdadressant les causes racines. - Étape 4 — Évaluation Pareto multi-objectif : optimiser taux de succès × efficacité token × vitesse simultanément.
- Étape 5 — Revue humaine PR : la meilleure variante devient une PR ; déploiement après approbation.
git clone https://github.com/NousResearch/hermes-agent-self-evolution
cd hermes-agent-self-evolution && pip install -r requirements.txt
export HERMES_AGENT_PATH=~/.hermes
python -m evolution.skills.evolve_skill \
--skill github-code-review \
--iterations 10 \
--eval-source synthetic
python -m evolution.skills.evolve_skill \
--skill github-code-review \
--iterations 10 \
--eval-source sessiondb
Quatre garde-fous avant tout PR :
- Suite de tests complète :
pytest tests/ -qdoit passer à 100 % - Limite de taille : Skills ≤ 15 Ko, descriptions outils ≤ 500 caractères
- Compatibilité prompt cache : pas d'éditions mid-session invalidant le cache
- Préservation sémantique : le texte évolué ne doit pas dériver du but central
| Phase | Cible | Moteur | Statut |
|---|---|---|---|
| Phase 1 | Fichiers SKILL.md | DSPy + GEPA | Disponible |
| Phase 2 | Descriptions outils | DSPy + GEPA | Planifié |
| Phase 3 | Fragments system prompt | DSPy + GEPA | Planifié |
| Phase 4 | Code implémentation outils | Darwinian Evolver | Planifié |
| Phase 5 | Boucle d'amélioration continue | Pipeline automatisé | Planifié |
Traces cross-hôte : comme les Skills suivent agentskills.io, alimentez GEPA avec des traces Claude Code ou Gemini CLI :
python -m evolution.skills.evolve_skill \
--skill github-code-review \
--iterations 10 \
--eval-source mixed \
--trace-dirs ~/.claude/traces,~/.hermes/sessions
08Skills embarqués dans les plugins
Les plugins namespacent les skills en plugin:skill :
- Les skills n'apparaissent pas dans la
skills_listpar défaut (moins de bruit system prompt) - Activation uniquement sur appel explicite (opt-in)
- Les skills frères d'un même plugin sont mutuellement visibles
skill_view("superpowers:writing-plans")
La réponse agent inclut les skills frères : « This plugin also includes: superpowers:editing, superpowers:research ».
name: my-hermes-plugin
skills:
- name: writing-plans
path: skills/writing-plans/SKILL.md
- name: editing
path: skills/editing/SKILL.md
09Conseils avancés de rédaction
La précision de la description pilote l'activation :
description: Helps with code.
description: |
Use when reviewing a pull request, checking for code quality issues,
security vulnerabilities, or style violations. Handles GitHub PR URLs
and local git diff output. Do NOT use for writing new code.
La section Pitfalls sépare les bons skills des excellents : modes d'échec concrets, analyse de cause racine, correctifs actionnables — pas d'avertissements génériques.
Les scripts donnent une vraie capacité d'exécution. Référencez scripts/extract_schema.py dans Procedure ; en cas d'échec, chargez references/manual-extract.md en fallback.
| Taille skill | Recommandation |
|---|---|
| < 500 lignes | Tout dans SKILL.md |
| 500–1000 lignes | Matériel de référence vers references/ |
| > 1000 lignes | Split agressif ; envisager deux skills |
| > 15 Ko | Limite GEPA dépassée — split obligatoire |
skill_manage permet à l'agent de patcher ou créer des skills programmatiquement. Approval gate dans config.yaml : skills.agent_writes_require_approval: true.
10Étude de cas : workflow blog technique
Objectif : une stack complète d'assistant rédaction blog pour Hermes.
name: blog-workflow
description: Full tech blog writing workflow.
skills:
- seo-keyword-research
- outline-generator
- code-example-validator
- bilingual-checker
- publish-to-platform
instruction: |
Always research SEO keywords before writing.
Ensure all code examples are tested and runnable.
Generate both Chinese and English title options.
---
name: seo-keyword-research
description: |
Use when planning a technical blog post. Researches search volume,
competition, and related queries for Chinese and English audiences.
metadata:
hermes:
requires_toolsets: [web]
tags: [seo, blogging, content]
---
## Procedure
1. Identify primary topic from user or context
2. Chinese long-tail: "X 怎么用", "X 教程", "X 最佳实践"
3. English long-tail: "X tutorial", "how to X", "X vs Y"
4. Cross-reference platform trends (掘金, Dev.to, HN)
5. Output keyword matrix: 3-5 primary + 10-15 long-tail per language
/blog-workflow au début de session : l'agent recherche les mots-clés, rédige les plans, valide les exemples de code et prépare des titres bilingues avant que vous n'écriviez un paragraphe.
11Runbook en six étapes : lab Skills sur Mac cloud
-
01
Installer Hermes et les skills de base : suivez notre guide d'installation. Ajoutez des Taps officiels et au moins un dépôt communautaire (
hermes skills tap add github:ChuckSRQ/awesome-hermes-skills). Vérifiez avechermes skills listque le catalogue Level 0 reste sous ~3K tokens. -
02
Provisionner un Mac cloud dédié : ouvrez la console NUKCLOUD et choisissez un tier 16 Go+ (32 Go si vous lancez l'évolution GEPA en parallèle). La facturation horaire sur la page tarifs convient aux pilotes de rédaction de skills.
-
03
Rédiger et valider les SKILL.md : créez des skills sous
~/.hermes/skills/selon agentskills.io. Lancezskills-ref validate ./my-skill. Rédigez des champsdescriptionprécis ; déplacez les fichiers au-delà de 500 lignes versreferences/. -
04
Packager Bundles et activation conditionnelle : ajoutez des bundles YAML pour les workflows récurrents. Définissez
fallback_for_toolspour les bascules outil gratuit/payant. Testez avec/bundle-name; les skills manquants doivent avertir sans crasher. -
05
Publier le Tap équipe et lancer l'évolution GEPA : poussez les skills vers un Tap GitHub ; l'équipe exécute
hermes skills tap add. Clonezhermes-agent-self-evolution, définissezHERMES_AGENT_PATH, évoluez un skill avec--eval-source sessiondb(budget 2–10 USD par run). Revoyez les diffs PR avant merge. -
06
Daemoniser et verrouiller la capacité : versionnez
~/.hermes/skills/dans Git ; utilisezlaunchdpour un gateway Hermes ou bot Telegram 24/7. Verrouillez votre tier sur la page commander. Lisez aussi patterns Cursor Skills si l'équipe sépare IDE et agents terminal.
Faire tourner Hermes Skills sur un laptop échoue à cause du sommeil écran fermé qui tue les sessions Telegram, du jitter bande passante VPS partagé qui casse les longues boucles agent, et de l'invalidation prompt cache à chaque édition mid-flight. L'évolution GEPA et les runs agent nocturnes exigent une machine éveillée avec réseau stable. Pour des labs Skills production et des Taps d'équipe, les nœuds Mac cloud / bare-metal multi-région NUKCLOUD offrent isolation locataire et élasticité de spec — démarrez à l'heure, passez au mensuel fixe quand le catalogue se stabilise.
12Questions fréquentes
/reset pour une nouvelle session, ou réinstallez avec --now. Le chemin --now invalide le prompt cache et coûte plus de tokens — préférez /reset.SKILL.md vers ~/.claude/skills/, ou utilisez kevinnft/ai-agent-skills pour une install multi-agent. Le format agentskills.io est volontairement portable.description en anglais (ou bilingue) pour un matching Level 0 plus net ; le corps peut être dans n'importe quelle langue.13Ressources complémentaires
Documentation officielle :
- Docs Hermes Agent
- Docs Hermes Agent (chinois)
- Référence système Skills
- Guide développeur Creating Skills
- Standard ouvert agentskills.io
Dépôts open source :
- NousResearch/hermes-agent
- hermes-agent-self-evolution
- awesome-hermes-skills
- hermeshub
- ai-agent-skills
- gepa-ai/gepa
- stanfordnlp/dspy
Contenu communautaire :