microsoft-skill-creator

Par github · awesome-copilot

Créez des skills pour agents sur les technologies Microsoft en utilisant les outils Learn MCP. À utiliser lorsque les utilisateurs souhaitent créer un skill qui enseigne aux agents une technologie, bibliothèque, framework ou service Microsoft (Azure, .NET, M365, VS Code, Bicep, etc.). Explore les sujets en profondeur, puis génère un skill hybride stockant les connaissances essentielles en local tout en permettant une investigation dynamique plus approfondie.

npx skills add https://github.com/github/awesome-copilot --skill microsoft-skill-creator

Microsoft Skill Creator

Créez des skills hybrides pour les technologies Microsoft qui stockent les connaissances essentielles localement tout en activant les recherches dynamiques Learn MCP pour plus de détails.

À propos des Skills

Les skills sont des paquets modulaires qui étendent les capacités d'un agent avec des connaissances et des workflows spécialisés. Un skill transforme un agent généraliste en agent spécialisé pour un domaine spécifique.

Structure d'un Skill

skill-name/
├── SKILL.md (obligatoire)     # Frontmatter (name, description) + instructions
├── references/             # Documentation chargée en contexte selon les besoins
├── sample_codes/           # Exemples de code fonctionnels
└── assets/                 # Fichiers utilisés en sortie (templates, etc.)

Principes Clés

  • Le frontmatter est critique : name et description déterminent quand le skill s'active—soyez clair et exhaustif
  • La concision est essentielle : Incluez uniquement ce que les agents ne connaissent pas déjà; la context window est partagée
  • Pas de duplication : L'information se trouve dans SKILL.md OU dans les fichiers de référence, pas les deux

Outils Learn MCP

Outil Objectif Quand l'utiliser
microsoft_docs_search Rechercher dans la documentation officielle Découverte initiale, recherche de sujets
microsoft_docs_fetch Obtenir le contenu complet d'une page Exploration approfondie de pages importantes
microsoft_code_sample_search Trouver des exemples de code Obtenir des motifs d'implémentation

Alternative CLI

Si le serveur Learn MCP n'est pas disponible, utilisez plutôt le CLI mslearn depuis un terminal ou un shell (par exemple, Bash, PowerShell, ou cmd) :

# Exécutez directement (aucune installation requise)
npx @microsoft/learn-cli search "semantic kernel overview"

# Ou installez globalement, puis exécutez
npm install -g @microsoft/learn-cli
mslearn search "semantic kernel overview"
Outil MCP Commande CLI
microsoft_docs_search(query: "...") mslearn search "..."
microsoft_code_sample_search(query: "...", language: "...") mslearn code-search "..." --language ...
microsoft_docs_fetch(url: "...") mslearn fetch "..."

Les skills générés doivent inclure ce même tableau de secours CLI afin que les agents puissent utiliser l'une ou l'autre approche.

Processus de Création

Étape 1 : Investiguer le Sujet

Construisez une compréhension approfondie en utilisant les outils Learn MCP en trois phases :

Phase 1 - Découverte du Périmètre :

microsoft_docs_search(query="{technology} overview what is")
microsoft_docs_search(query="{technology} concepts architecture")
microsoft_docs_search(query="{technology} getting started tutorial")

Phase 2 - Contenu Principal :

microsoft_docs_fetch(url="...")  # Récupérez les pages de la Phase 1
microsoft_code_sample_search(query="{technology}", language="{lang}")

Phase 3 - Approfondissement :

microsoft_docs_search(query="{technology} best practices")
microsoft_docs_search(query="{technology} troubleshooting errors")

Checklist d'Investigation

Après l'investigation, vérifiez :

  • [ ] Pouvez-vous expliquer ce que fait la technologie en un paragraphe
  • [ ] Avez-vous identifié 3 à 5 concepts clés
  • [ ] Avez-vous du code fonctionnel pour une utilisation basique
  • [ ] Connaissez-vous les motifs d'API les plus courants
  • [ ] Avez-vous des requêtes de recherche pour des sujets plus approfondis

Étape 2 : Clarifier avec l'Utilisateur

Présentez vos résultats et posez ces questions :

  1. « J'ai trouvé ces domaines clés : [liste]. Lesquels sont les plus importants ? »
  2. « Quelles tâches les agents effectueront-ils principalement avec ce skill ? »
  3. « Quel langage de programmation les exemples de code doivent-ils privilégier ? »

Étape 3 : Générer le Skill

Utilisez le modèle approprié depuis skill-templates.md :

Type de Technologie Modèle
Bibliothèque client, paquet NuGet/npm SDK/Library
Ressource Azure Azure Service
Framework de développement d'applications Framework/Platform
API REST, protocole API/Protocol

Structure du Skill Généré

{skill-name}/
├── SKILL.md                    # Connaissances essentielles + guidance Learn MCP
├── references/                 # Documentation locale détaillée (si nécessaire)
└── sample_codes/               # Exemples de code fonctionnels
    ├── getting-started/
    └── common-patterns/

Étape 4 : Équilibrer Contenu Local vs Dynamique

Stockez localement quand :

  • C'est fondamental (nécessaire pour toute tâche)
  • Fréquemment accédé
  • Stable (ne changera pas)
  • Difficile à trouver par recherche

Gardez dynamique quand :

  • Référence exhaustive (trop volumineux)
  • Spécifique à une version
  • Situationnel (tâches spécifiques seulement)
  • Bien indexé (facile à rechercher)

Directives de Contenu

Type de Contenu Local Dynamique
Concepts fondamentaux (3-5) ✅ Complet
Code Hello world ✅ Complet
Motifs courants (3-5) ✅ Complet
Méthodes API principales Signature + exemple Docs complètes via fetch
Bonnes pratiques Top 5 points Rechercher davantage
Dépannage Requêtes de recherche
Référence API complète Liens de doc

Étape 5 : Valider

  1. Vérifiez : Le contenu local est-il suffisant pour les tâches courantes ?
  2. Testez : Les requêtes de recherche suggérées retournent-elles des résultats utiles ?
  3. Vérifiez : Les exemples de code s'exécutent-ils sans erreurs ?

Motifs d'Investigation Courants

Pour les SDK/Bibliothèques

"{name} overview" → objectif, architecture
"{name} getting started quickstart" → étapes de configuration
"{name} API reference" → classes/méthodes principales
"{name} samples examples" → motifs de code
"{name} best practices performance" → optimisation

Pour les Services Azure

"{service} overview features" → capacités
"{service} quickstart {language}" → code de configuration
"{service} REST API reference" → endpoints
"{service} SDK {language}" → bibliothèque client
"{service} pricing limits quotas" → contraintes

Pour les Frameworks/Plateformes

"{framework} architecture concepts" → modèle mental
"{framework} project structure" → conventions
"{framework} tutorial walkthrough" → flux de bout en bout
"{framework} configuration options" → personnalisation

Exemple : Créer un Skill « Semantic Kernel »

Investigation

microsoft_docs_search(query="semantic kernel overview")
microsoft_docs_search(query="semantic kernel plugins functions")
microsoft_code_sample_search(query="semantic kernel", language="csharp")
microsoft_docs_fetch(url="https://learn.microsoft.com/semantic-kernel/overview/")

Skill Généré

semantic-kernel/
├── SKILL.md
└── sample_codes/
    ├── getting-started/
    │   └── hello-kernel.cs
    └── common-patterns/
        ├── chat-completion.cs
        └── function-calling.cs

SKILL.md Généré

---
name: semantic-kernel
description: Construisez des agents IA avec Microsoft Semantic Kernel. À utiliser pour les applications alimentées par LLM avec plugins, planificateurs et mémoire en .NET ou Python.
---

# Semantic Kernel

SDK d'orchestration pour intégrer les LLM dans les applications avec plugins, planificateurs et mémoire.

## Concepts Clés

- **Kernel** : Orchestrateur central gérant les services IA et les plugins
- **Plugins** : Collections de fonctions que l'IA peut appeler
- **Planner** : Séquence les fonctions des plugins pour atteindre les objectifs
- **Memory** : Intégration du magasin vectoriel pour les motifs RAG

## Démarrage Rapide

Voir [getting-started/hello-kernel.cs](sample_codes/getting-started/hello-kernel.cs)

## En Savoir Plus

| Sujet | Comment Trouver |
|-------|-----------------|
| Développement de plugins | `microsoft_docs_search(query="semantic kernel plugins custom functions")` |
| Planificateurs | `microsoft_docs_search(query="semantic kernel planner")` |
| Mémoire | `microsoft_docs_fetch(url="https://learn.microsoft.com/en-us/semantic-kernel/frameworks/agent/agent-memory")` |

## Alternative CLI

Si le serveur Learn MCP n'est pas disponible, utilisez plutôt le CLI `mslearn` :

| Outil MCP | Commande CLI |
|-----------|-------------|
| `microsoft_docs_search(query: "...")` | `mslearn search "..."` |
| `microsoft_code_sample_search(query: "...", language: "...")` | `mslearn code-search "..." --language ...` |
| `microsoft_docs_fetch(url: "...")` | `mslearn fetch "..."` |

Exécutez directement avec `npx @microsoft/learn-cli <command>` ou installez globalement avec `npm install -g @microsoft/learn-cli`.

Skills similaires