Les compétences sont devenues l'un des points d'extension les plus utilisés dans Claude Code. Elles sont flexibles, faciles à créer et simples à distribuer.
Mais cette flexibilité rend aussi difficile de savoir ce qui fonctionne le mieux. Quels types de compétences vaut-il la peine de créer ? Quel est le secret pour rédiger une bonne compétence ? Quand les partager avec les autres ?
Nous utilisons intensivement les compétences dans Claude Code chez Anthropic, avec des centaines d'entre elles en usage actif. Voici les leçons que nous avons apprises sur l'utilisation des compétences pour accélérer notre développement.
Que sont les compétences ?
Si vous débutez avec les compétences, je vous recommande de lire notre documentation ou de suivre notre tout nouveau cours sur Skilljar dédié aux compétences agent. Ce billet part du principe que vous avez déjà une certaine familiarité avec les compétences.
Une idée fausse courante que nous entendons à propos des compétences est qu'elles ne sont « que des fichiers Markdown », mais la partie la plus intéressante des compétences est qu'elles ne sont pas de simples fichiers texte. Ce sont des dossiers qui peuvent contenir des scripts, des ressources, des données, etc., que l'agent peut découvrir, explorer et manipuler.
Dans Claude Code, les compétences offrent également une grande variété d'options de configuration, y compris l'enregistrement de hooks dynamiques.
Nous avons constaté que certaines des compétences les plus intéressantes dans Claude Code utilisent ces options de configuration et la structure de dossiers de manière créative.
Types de compétences
Après avoir catalogué toutes nos compétences, nous avons remarqué qu'elles se regroupent dans quelques catégories récurrentes. Les meilleures compétences s'intègrent parfaitement dans l'une d'elles ; les plus confuses chevauchent plusieurs catégories. Ce n'est pas une liste définitive, mais c'est un bon moyen de réfléchir à celles qui pourraient vous manquer dans votre organisation.

1. Référence de bibliothèque et d'API
Des compétences qui expliquent comment utiliser correctement une bibliothèque, une CLI ou des SDK. Cela peut concerner aussi bien des bibliothèques internes que des bibliothèques courantes avec lesquelles Claude Code a parfois du mal. Ces compétences incluent souvent un dossier d'extraits de code de référence et une liste d'écueils à éviter pour Claude lors de la rédaction d'un script.
Exemples :
- billing-lib — votre bibliothèque de facturation interne : cas particuliers, pièges, etc.
- internal-platform-cli — chaque sous-commande de votre wrapper CLI interne avec des exemples d'utilisation
- frontend-design — améliorez la maîtrise de votre système de design par Claude
2. Vérification produit
Des compétences qui décrivent comment tester ou vérifier que votre code fonctionne. Elles sont souvent associées à un outil externe comme Playwright, tmux, etc. pour effectuer la vérification.
Les compétences de vérification sont extrêmement utiles pour s'assurer que la sortie de Claude est correcte. Il peut être intéressant de faire passer une semaine à un ingénieur rien que pour rendre vos compétences de vérification excellentes.
Envisagez des techniques comme demander à Claude d'enregistrer une vidéo de sa sortie pour voir exactement ce qu'il a testé, ou imposer des assertions programmatiques sur l'état à chaque étape. Cela se fait souvent en incluant une variété de scripts dans la compétence.
Exemples :
- signup-flow-driver — parcourt l'inscription → vérification par e-mail → onboarding dans un navigateur headless, avec des hooks pour vérifier l'état à chaque étape
- checkout-verifier — pilote l'interface de paiement avec des cartes de test Stripe, vérifie que la facture atterrit bien dans le bon état
- tmux-cli-driver — pour les tests CLI interactifs où l'élément à vérifier nécessite un TTY
3. Récupération et analyse de données
Des compétences qui se connectent à vos piles de données et de surveillance. Ces compétences peuvent inclure des bibliothèques pour récupérer vos données avec des identifiants, des ID de tableaux de bord spécifiques, etc., ainsi que des instructions sur les workflows courants ou les moyens d'obtenir des données.
Exemples :
- funnel-query — « quels événements dois-je joindre pour voir inscription → activation → paiement » plus la table qui contient réellement le user_id canonique
- cohort-compare — compare la rétention ou la conversion de deux cohortes, signale les écarts statistiquement significatifs, crée un lien vers les définitions de segments
- grafana — UID des sources de données, noms de clusters, table de correspondance problème → tableau de bord
4. Processus métier et automatisation d'équipe
Des compétences qui automatisent des workflows répétitifs en une seule commande. Ces compétences sont généralement des instructions assez simples mais peuvent avoir des dépendances plus complexes avec d'autres compétences ou MCPs. Pour ces compétences, enregistrer les résultats précédents dans des fichiers journaux peut aider le modèle à rester cohérent et à réfléchir aux exécutions antérieures du workflow.
Exemples :
- standup-post — agrège votre suivi de tickets, votre activité GitHub et les Slack précédents → standup formaté, uniquement les différences
- create-<système-de-tickets>-ticket — applique un schéma (valeurs d'énumération valides, champs obligatoires) plus un workflow post-création (ping au relecteur, lien dans Slack)
- weekly-recap — PRs fusionnées + tickets fermés + déploiements → récapitulatif formaté
5. Échafaudage de code et modèles
Des compétences qui génèrent du code passe-partout pour une fonction spécifique dans la base de code. Vous pouvez combiner ces compétences avec des scripts composables. Elles sont particulièrement utiles lorsque votre échafaudage comporte des exigences en langage naturel qui ne peuvent pas être entièrement couvertes par le code.
Exemples :
- new-<framework>-workflow — échafaude un nouveau service/workflow/gestionnaire avec vos annotations
- new-migration — votre modèle de fichier de migration plus les écueils courants
- create-app — nouvelle application interne avec votre authentification, journalisation et configuration de déploiement pré-câblées
6. Qualité du code et révision
Des compétences qui appliquent la qualité du code au sein de votre organisation et aident à réviser le code. Elles peuvent inclure des scripts ou des outils déterministes pour une robustesse maximale. Vous pouvez exécuter ces compétences automatiquement dans le cadre de hooks ou dans une action GitHub.
- adversarial-review — génère un sous-agent avec un regard neuf pour critiquer, implémente des correctifs, itère jusqu'à ce que les remarques se réduisent à des détails mineurs
- code-style — applique le style de code, en particulier les styles que Claude ne maîtrise pas bien par défaut
- testing-practices — instructions sur la façon d'écrire des tests et quoi tester
7. CI/CD et déploiement
Des compétences qui aident à récupérer, pousser et déployer du code dans votre base de code. Ces compétences peuvent faire référence à d'autres compétences pour collecter des données.
Exemples :
- babysit-pr — surveille une PR → relance les CI instables → résout les conflits de fusion → active la fusion automatique
- deploy-<service> — construction → test de fumée → déploiement progressif du trafic avec comparaison du taux d'erreur → annulation automatique en cas de régression
- cherry-pick-prod — arbre de travail isolé → cherry-pick → résolution des conflits → PR avec modèle
8. Runbooks
Des compétences qui prennent un symptôme (comme un fil Slack, une alerte ou une signature d'erreur), effectuent une investigation multi-outils et produisent un rapport structuré.
Exemples :
- <service>-debugging — associe les symptômes → outils → modèles de requêtes pour vos services les plus sollicités
- oncall-runner — récupère l'alerte → vérifie les suspects habituels → formate un constat
- log-correlator — étant donné un ID de requête, extrait les journaux correspondants de tous les systèmes qui ont pu y toucher
9. Opérations d'infrastructure
Des compétences qui effectuent des opérations de maintenance de routine et des procédures opérationnelles — certaines impliquent des actions destructrices qui bénéficient de garde-fous. Elles permettent aux ingénieurs de suivre plus facilement les bonnes pratiques dans les opérations critiques.
Exemples :
- <ressource>-orphelins — trouve les pods/volumes orphelins → publie dans Slack → période d'observation → confirmation utilisateur → nettoyage en cascade
- dependency-management — le workflow d'approbation des dépendances de votre organisation
- cost-investigation — « pourquoi notre facture de stockage/sortie a-t-elle bondi ? » avec les buckets et les modèles de requêtes spécifiques
Conseils pour créer des compétences

Une fois que vous avez décidé de la compétence à créer, comment l'écrire ? Voici quelques bonnes pratiques, astuces et conseils que nous avons découverts.
Nous avons également récemment publié Skill Creator pour faciliter la création de compétences dans Claude Code.
N'énoncez pas l'évidence
Claude Code en sait beaucoup sur votre base de code, et Claude en sait beaucoup sur le codage, y compris de nombreuses opinions par défaut. Si vous publiez une compétence principalement basée sur des connaissances, essayez de vous concentrer sur les informations qui poussent Claude hors de son mode de pensée habituel.
La compétence frontend-design est un excellent exemple — elle a été construite par l'un des ingénieurs d'Anthropic en itérant avec des clients pour améliorer le goût de Claude en matière de design, en évitant les motifs classiques comme la police Inter et les dégradés violets.
Créez une section « Écueils »

Le contenu le plus précieux d'une compétence est la section des écueils. Ces sections doivent être construites à partir des points de défaillance courants que Claude rencontre lors de l'utilisation de votre compétence. Idéalement, vous mettrez à jour votre compétence au fil du temps pour capturer ces écueils.
Utilisez le système de fichiers et la divulgation progressive

Comme nous l'avons dit plus tôt, une compétence est un dossier, pas seulement un fichier Markdown. Vous devez considérer l'ensemble du système de fichiers comme une forme d'ingénierie de contexte et de divulgation progressive. Dites à Claude quels fichiers se trouvent dans votre compétence, et il les lira au moment opportun.
La forme la plus simple de divulgation progressive est de pointer vers d'autres fichiers Markdown pour que Claude les utilise. Par exemple, vous pouvez diviser les signatures de fonctions détaillées et les exemples d'utilisation dans references/api.md.
Autre exemple : si votre résultat final est un fichier Markdown, vous pouvez inclure un fichier modèle dans assets/ à copier et utiliser.
Vous pouvez avoir des dossiers de références, scripts, exemples, etc., qui aident Claude à travailler plus efficacement.
Évitez de trop contraindre Claude
Claude essaiera généralement de suivre vos instructions, et comme les compétences sont très réutilisables, il faut veiller à ne pas être trop spécifique dans vos instructions. Donnez à Claude les informations dont il a besoin, mais donnez-lui la flexibilité de s'adapter à la situation. Par exemple :

Réfléchissez à la configuration initiale

Certaines compétences peuvent nécessiter une configuration avec le contexte de l'utilisateur. Par exemple, si vous créez une compétence qui publie votre standup dans Slack, vous pouvez demander à Claude dans quel canal Slack la publier.
Un bon modèle pour ce faire est de stocker ces informations de configuration dans un fichier config.json dans le dossier de la compétence, comme dans l'exemple ci-dessus. Si la configuration n'est pas définie, l'agent peut alors demander les informations à l'utilisateur.
Si vous souhaitez que l'agent présente des questions structurées à choix multiples, vous pouvez lui demander d'utiliser l'outil AskUserQuestion.
Le champ Description est destiné au modèle
Lorsque Claude Code démarre une session, il construit une liste de toutes les compétences disponibles avec leur description. C'est cette liste que Claude parcourt pour décider « y a-t-il une compétence pour cette demande ? » Cela signifie que le champ description n'est pas un résumé — c'est une description du moment où déclencher cette PR.

Mémoire et stockage de données

Certaines compétences peuvent inclure une forme de mémoire en stockant des données à l'intérieur. Vous pouvez stocker des données dans des fichiers aussi simples qu'un fichier journal texte append-only ou des fichiers JSON, ou aussi complexes qu'une base de données SQLite.
Par exemple, une compétence standup-post peut conserver un fichier standups.log avec chaque message écrit, ce qui fait que la prochaine fois que vous l'exécutez, Claude lit son propre historique et peut dire ce qui a changé depuis hier.
Les données stockées dans le dossier de la compétence peuvent être supprimées lorsque vous mettez à jour la compétence. Vous devez donc les stocker dans un dossier stable. À ce jour, nous fournissons \${**CLAUDE_PLUGIN_DATA**}\ comme dossier stable par plugin pour stocker les données.
Stockez des scripts et générez du code
L'un des outils les plus puissants que vous puissiez donner à Claude est du code. Donner des scripts et des bibliothèques à Claude lui permet de consacrer ses tours à la composition, en décidant quoi faire ensuite plutôt que de reconstruire du code passe-partout.
Par exemple, dans votre compétence de science des données, vous pouvez avoir une bibliothèque de fonctions pour récupérer des données à partir de votre source d'événements. Pour que Claude puisse effectuer des analyses complexes, vous pouvez lui donner un ensemble de fonctions d'aide comme suit :

Claude peut alors générer des scripts à la volée pour composer ces fonctionnalités et effectuer des analyses plus avancées pour des invites comme « Que s'est-il passé mardi ? »

Hooks à la demande
Les compétences peuvent inclure des hooks qui ne sont activés que lorsque la compétence est appelée, et qui durent pendant toute la session. Utilisez cela pour des hooks plus spécifiques que vous ne voulez pas exécuter tout le temps, mais qui sont extrêmement utiles parfois.
Par exemple :
- /careful — bloque rm -rf, DROP TABLE, force-push, kubectl delete via un filtre PreToolUse sur Bash. Vous ne voulez ça que lorsque vous savez que vous touchez à la production — l'avoir toujours activé vous rendrait fou
- /freeze — bloque toute édition/écriture qui n'est pas dans un répertoire spécifique. Utile
- lors du débogage : « Je veux ajouter des logs mais je continue à 'corriger' par inadvertance des choses sans rapport »
Distribution des compétences
L'un des plus grands avantages des compétences est que vous pouvez les partager avec le reste de votre équipe.
Il existe deux façons de partager des compétences avec d'autres :
- incorporer vos compétences dans votre dépôt (dans ./.claude/skills)
- créer un plugin et disposer d'une place de marché Claude Code Plugin où les utilisateurs peuvent télécharger et installer des plugins (voir la documentation
Pour les petites équipes travaillant sur relativement peu de dépôts, incorporer les compétences dans les dépôts fonctionne bien. Mais chaque compétence incorporée ajoute un peu de contexte au modèle. En montant en échelle, une place de marché interne de plugins permet de distribuer les compétences et de laisser votre équipe décider lesquelles installer.
Gérer une place de marché
Comment décider quelles compétences placer dans une place de marché ? Comment les gens les soumettent-ils ?
Nous n'avons pas d'équipe centralisée qui décide ; nous essayons plutôt de trouver les compétences les plus utiles de manière organique. Si vous avez une compétence que vous souhaitez faire essayer aux gens, vous pouvez la télécharger dans un dossier bac à sable sur GitHub et y pointer les gens dans Slack ou d'autres forums.
Une fois qu'une compétence a gagné en traction (ce qui est laissé à l'appréciation de son propriétaire), celui-ci peut soumettre une PR pour la déplacer dans la place de marché.
Un avertissement : il peut être très facile de créer des compétences de mauvaise qualité ou redondantes, il est donc important de mettre en place une méthode de curation avant la publication.
Composer des compétences
Vous pouvez avoir des compétences qui dépendent les unes des autres. Par exemple, vous pouvez avoir une compétence de téléchargement de fichier qui télécharge un fichier, et une compétence de génération CSV qui crée un CSV et le télécharge. Ce type de gestion des dépendances n'est pas encore intégré nativement dans les places de marché ou les compétences, mais vous pouvez simplement référencer d'autres compétences par leur nom, et le modèle les invoquera si elles sont installées.
Mesurer les compétences
Pour comprendre comment une compétence se porte, nous utilisons un hook PreToolUse qui nous permet de journaliser l'utilisation des compétences au sein de l'entreprise (exemple de code ici). Cela nous permet de trouver les compétences qui sont populaires ou qui sont sous-déclenchées par rapport à nos attentes.
Conclusion
Les compétences sont des outils incroyablement puissants et flexibles pour les agents, mais nous en sommes encore aux premiers stades et nous apprenons tous à les utiliser au mieux.
Considérez ceci davantage comme un ensemble d'astuces utiles que nous avons vues fonctionner plutôt que comme un guide définitif. La meilleure façon de comprendre les compétences est de commencer, d'expérimenter et de voir ce qui fonctionne pour vous. La plupart des nôtres ont commencé avec quelques lignes et un seul écueil, et se sont améliorées parce que les gens n'ont cessé d'y ajouter au fur et à mesure que Claude rencontrait de nouveaux cas particuliers.
J'espère que cela vous a été utile, n'hésitez pas si vous avez des questions.





