Modèle de création de Skill
Un meta-skill pour créer de nouveaux Agent Skills. Utilisez ce skill quand vous avez besoin de scaffolder un nouveau dossier skill, générer un fichier SKILL.md, ou aider les utilisateurs à comprendre la spécification Agent Skills.
Quand utiliser ce Skill
- L'utilisateur demande de « créer un skill », « faire un nouveau skill », ou « scaffolder un skill »
- L'utilisateur veut ajouter une capacité spécialisée à son setup GitHub Copilot
- L'utilisateur a besoin d'aide pour structurer un skill avec des ressources bundlées
- L'utilisateur veut dupliquer ce modèle comme point de départ
Prérequis
- Compréhension de ce que le skill doit accomplir
- Une description claire et riche en mots-clés des capacités et déclencheurs
- Connaissance des ressources bundlées nécessaires (scripts, références, assets, templates)
Créer un nouveau Skill
Étape 1 : Créer le répertoire Skill
Créez un nouveau dossier avec un nom en minuscules avec tirets :
skills/<skill-name>/
└── SKILL.md # Obligatoire
Étape 2 : Générer SKILL.md avec le Frontmatter
Chaque skill nécessite un frontmatter YAML avec name et description :
---
name: <skill-name>
description: '<Ce qu'il fait>. À utiliser quand <déclencheurs spécifiques, scénarios, mots-clés que les utilisateurs pourraient dire>.'
---
Exigences des champs Frontmatter
| Champ | Obligatoire | Contraintes |
|---|---|---|
name |
Oui | 1-64 caractères, lettres/chiffres/tirets minuscules uniquement, doit correspondre au nom du dossier |
description |
Oui | 1-1024 caractères, doit décrire CE QU'IL FAIT ET QUAND l'utiliser |
license |
Non | Nom de la licence ou référence à LICENSE.txt bundlé |
compatibility |
Non | 1-500 caractères, exigences environnementales si nécessaire |
metadata |
Non | Paires clé-valeur pour des propriétés additionnelles |
allowed-tools |
Non | Liste délimitée par espaces des outils pré-approuvés (expérimental) |
Bonnes pratiques de description
CRITIQUE : La description est le MÉCANISME PRINCIPAL pour la découverte automatique de skills. Incluez :
- CE QUE le skill fait (capacités)
- QUAND l'utiliser (déclencheurs, scénarios, types de fichiers)
- Mots-clés que les utilisateurs pourraient mentionner dans les prompts
Bon exemple :
description: 'Boîte à outils pour tester les applications web locales avec Playwright. À utiliser quand on vous demande de vérifier la fonctionnalité frontend, déboguer le comportement UI, capturer des captures d''écran du navigateur, ou consulter les logs de la console du navigateur. Supporte Chrome, Firefox et WebKit.'
Mauvais exemple :
description: 'Assistants de test web'
Étape 3 : Écrire le corps du Skill
Après le frontmatter, ajoutez les instructions markdown. Sections recommandées :
| Section | Objectif |
|---|---|
# Title |
Aperçu rapide |
## When to Use This Skill |
Renforce les déclencheurs de description |
## Prerequisites |
Outils requis, dépendances |
## Step-by-Step Workflows |
Étapes numérotées pour les tâches |
## Troubleshooting |
Problèmes courants et solutions |
## References |
Liens vers les docs bundlées |
Étape 4 : Ajouter des répertoires optionnels (si nécessaire)
| Dossier | Objectif | Quand l'utiliser |
|---|---|---|
scripts/ |
Code exécutable (Python, Bash, JS) | Automatisation qui effectue des opérations |
references/ |
Documentation que l'agent lit | Références API, schémas, guides |
assets/ |
Fichiers statiques utilisés TEL QUELS | Images, polices, templates |
templates/ |
Code de démarrage que l'agent modifie | Scaffolds à étendre |
Exemple : Structure complète d'un Skill
my-awesome-skill/
├── SKILL.md # Instructions obligatoires
├── LICENSE.txt # Fichier de licence optionnel
├── scripts/
│ └── helper.py # Automatisation exécutable
├── references/
│ ├── api-reference.md # Docs détaillées
│ └── examples.md # Exemples d'utilisation
├── assets/
│ └── diagram.png # Ressources statiques
└── templates/
└── starter.ts # Scaffold de code
Démarrage rapide : Dupliquer ce modèle
- Copiez le dossier
make-skill-template/ - Renommez-le avec le nom de votre skill (minuscules, tirets)
- Mettez à jour
SKILL.md:- Changez
name:pour correspondre au nom du dossier - Écrivez une
description:riche en mots-clés - Remplacez le contenu du corps avec vos instructions
- Changez
- Ajoutez les ressources bundlées au besoin
- Validez avec
npm run skill:validate
Liste de validation
- [ ] Le nom du dossier est en minuscules avec tirets
- [ ] Le champ
namecorrespond exactement au nom du dossier - [ ] La
descriptionfait 10-1024 caractères - [ ] La
descriptionexplique CE QU'IL FAIT et QUAND - [ ] La
descriptionest entre guillemets simples - [ ] Le contenu du corps fait moins de 500 lignes
- [ ] Les assets bundlés font moins de 5 Mo chacun
Dépannage
| Problème | Solution |
|---|---|
| Skill non découvert | Améliorez la description avec plus de mots-clés et déclencheurs |
| Validation échoue sur le nom | Assurez-vous minuscules, pas de tirets consécutifs, correspond au dossier |
| Description trop courte | Ajoutez capacités, déclencheurs et mots-clés |
| Assets non trouvés | Utilisez des chemins relatifs depuis la racine du skill |
Références
- Spécification officielle Agent Skills : https://agentskills.io/specification