wiki-changelog

Analyse l'historique des commits git et génère des changelogs structurés classés par type de modification. À utiliser lorsque l'utilisateur demande les modifications récentes, souhaite un changelog, ou a besoin de comprendre ce qui a changé dans le repository.

npx skills add https://github.com/microsoft/skills --skill wiki-changelog

Wiki Changelog

Génère des changelogs structurés à partir de l'historique git.

Résolution du dépôt source (OBLIGATOIRE EN PREMIER)

Avant de générer un changelog, tu DOIS déterminer le contexte du dépôt source :

  1. Vérifier le remote git : Exécute git remote get-url origin pour déterminer si un remote existe
  2. Demander à l'utilisateur : « Est-ce un dépôt local uniquement, ou avez-vous une URL de dépôt source (par exemple GitHub, Azure DevOps) ? »
    • URL du remote fournie → stocker comme REPO_URL, utiliser des citations liées pour les hashes de commits et les références de fichiers
    • Local uniquement → utiliser les hashes de commits et références de fichiers en texte brut
  3. NE PAS continuer tant que le contexte du dépôt source n'est pas résolu

Quand l'activer

  • L'utilisateur demande « qu'est-ce qui a changé récemment », « génère un changelog », « résume les commits »
  • L'utilisateur souhaite comprendre l'activité de développement récente

Procédure

  1. Examiner le git log (commits, dates, auteurs, messages)
  2. Grouper par période : quotidien (7 derniers jours), hebdomadaire (plus ancien)
  3. Classer chaque commit : Fonctionnalités (🆕), Corrections (🐛), Refactoring (🔄), Docs (📝), Config (🔧), Dépendances (📦), Breaking (⚠️)
  4. Générer des descriptions concises destinées aux utilisateurs en utilisant la terminologie du projet

Contraintes

  • Se concentrer sur les changements visibles pour l'utilisateur
  • Fusionner les commits connexes en descriptions cohérentes
  • Utiliser la terminologie du projet à partir du README
  • Mettre en avant les changements cassants de manière évidente avec les notes de migration
  • Quand REPO_URL est disponible, lier les hashes de commits : [abc1234](REPO_URL/commit/abc1234) et les fichiers modifiés : [file_path](REPO_URL/blob/BRANCH/file_path)

Skills similaires