agent-skills

Chaque compétence dans ~/.agents/skills et ~/.claude/skills (les miennes, celles de pstack, de Matt Pocock) est un lien symbolique vers le dépôt git ~/Dev/agent-skills. À utiliser avant de créer, modifier ou supprimer une compétence, y compris via /reflect, /automate-me ou skill-creator.

Qu'est-ce que agent-skills ?

Ce skill gère un dépôt Git centralisé contenant toutes les compétences d'agent utilisées à travers plusieurs projets. Il inclut les compétences personnelles de l'utilisateur, les compétences upstream de sources comme pstack et Matt Pocock, et gère la synchronisation via des liens symboliques vers les dossiers standards de Claude Code (`~/.claude/skills`) et Codex (`~/.agents/skills`). Le skill définit des règles claires pour distinguer les compétences de projet (qui restent dans leur dépôt respectif), les compétences personnelles (dans `skills/<nom>/`), et les compétences upstream (dans `vendor/<source>/`). Il propose des workflows pour créer, modifier et supprimer des compétences, avec des directives sur la gestion des conflits, l'écriture de messages de commit et la confidentialité des données publiques. Agent-skills utilise une commande personnalisée `agent-skills link` pour mettre à jour les liens symboliques et détecter les conflits de nom. Il fonctionne avec les agents Claude Code et Codex, et toute modification via ces outils est automatiquement reflétée dans le dépôt central. Le skill insiste sur l'utilisation de chemins absolus dans les références croisées entre compétences, afin d'éviter les erreurs dues aux différences de structure de dossiers.

Compatible avec✓Claude Code✓Codex CLI~Cursor
npx skills add https://github.com/serge-the-hedge/agent-skills/tree/HEAD/skills/agent-skills

Installed? Explore more Développement et programmation skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Que fait agent-skills ?

~/Dev/agent-skills contient toutes les compétences que j'utilise dans mes projets : les miennes et celles upstream sur lesquelles je m'appuie. agent-skills link remplit ~/.claude/skills (Claude Code) et ~/.agents/skills (Codex) avec des liens symboliques pointant vers ce dépôt, de sorte qu'une compétence éditée via l'un ou l'autre dossier soit modifiée dans le dépôt.

Où une compétence appartient

  • Compétence de projet (le propre dossier .agents/skills/ d'un dépôt, comme verify-*) : reste dans ce projet. Le reste de ce fichier concerne les compétences de ce dépôt.
  • Miennes : skills/<nom>/.
  • Upstream : vendor/<source>/, récupérées depuis pstack, les compétences de Matt Pocock, et good-css via agent-skills update. upstreams.ts détermine lesquelles de leurs compétences sont liées.
  • Tout ce qui se trouve dans les dossiers d'agent mais n'est pas un lien symbolique vers le dépôt (blabla-*, synced/ de Claude, .system/ de Codex) appartient à l'outil qui l'a installé, et c'est ce dernier qui le met à jour.

realpath ~/.agents/skills/<nom> vous indique à quelle compétence cela correspond.

Création

Créez la compétence dans ~/Dev/agent-skills/skills/<nom>/SKILL.md ; ce chemin prévaut sur les valeurs par défaut de skill-creator et de /automate-me. Exécutez ensuite agent-skills link. S'il signale un conflit, choisissez un autre nom.

Modification

Orientez-vous selon la nature du changement :

  • Une préférence personnelle (style, valeurs par défaut, ma façon de travailler) va dans mes propres compétences : étendez-en une dans skills/, ou créez-en une. Mes fichiers n'entrent jamais en conflit avec les mises à jour upstream.
  • Une correction pour quelque chose qu'une compétence upstream fait mal pour moi va directement dans vendor/. Les modifications upstream validées survivent à agent-skills update, mais chacune peut créer un conflit lorsque l'upstream modifie les mêmes lignes, donc gardez-les petites. Après avoir édité pstack, exécutez node ~/Dev/agent-skills/vendor/pstack/scripts/check-t3-native.mjs <nom> jusqu'à ce qu'il se termine avec le code 0.

Suppression

Supprimez skills/<nom>/ pour une compétence personnelle. Pour une compétence upstream, demandez-moi d'abord : cela implique de modifier upstreams.ts.

Finalisation

Terminé quand agent-skills link réussit et que chaque changement est un commit distinct dans ~/Dev/agent-skills, poussé :

  • Staguez uniquement les fichiers que vous avez modifiés (git add <chemins>) ; d'autres agents peuvent avoir du travail en cours.
  • Rédigez le message pour expliquer pourquoi la compétence a changé.
  • Poussez immédiatement après le commit.

Rédaction

  • Le dépôt est public, donc rédigez chaque compétence comme un texte public : exemples génériques, sans noms, chemins ni secrets de mes projets.
  • Faites référence à une autre compétence par son chemin complet, ~/.agents/skills/<nom>/SKILL.md. Un ../<nom> relatif pose problème ici, car mes compétences et chaque upstream se trouvent dans des dossiers différents.
  • Pour la rédaction elle-même, suivez ~/.agents/skills/writing-for-agents/SKILL.md.

Exécutez agent-skills sans arguments pour voir ses commandes.

Skills associés