Comment Créer Votre Premier Plugin d'Agent : Guide Pas à Pas
Comment Créer Votre Premier Plugin d'Agent : Guide Pas à Pas
Les Agent Plugins (v1.0.0) constituent le standard d'empaquetage portable pour les composants d'agent — compétences et serveurs MCP — qui fonctionne sur tous les clients compatibles. Dans ce guide, vous allez construire un plugin réel et conforme à la spécification depuis zéro : un plugin qui embarque une compétence et un serveur MCP, puis le valider avec le schéma officiel.
Étape 1 : Créer la structure du package
Un plugin est simplement un répertoire. Créez-le avec les deux éléments requis dès le départ :
my-plugin/
├── plugin.json
├── skills/
│ └── summarize/
│ └── SKILL.md
└── mcp.json
Étape 2 : Rédiger le manifeste
plugin.json est le seul fichier obligatoire. Le schéma du manifeste est fermé — les champs de premier niveau portables sont limités à un ensemble fixe :
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "summarize.tools",
"version": "1.0.0",
"description": "Compétences et serveurs pour résumer des documents.",
"author": {
"name": "Votre Nom",
"url": "https://example.com"
},
"homepage": "https://example.com/summarize-tools",
"repository": "https://github.com/you/summarize-tools",
"license": "MIT",
"keywords": ["summarization", "documents", "llm"]
}
Seuls $schema et name sont obligatoires. Tout le reste est optionnel mais recommandé : version (SemVer), description, author, homepage, repository, license (SPDX), et keywords pour la découverte.
Note : le schéma est fermé par conception. Les paramètres spécifiques à un client appartiennent à des espaces de noms d'extension, pas aux champs de premier niveau.
Étape 3 : Ajouter une compétence
Les compétences se trouvent dans skills/, en suivant la spécification Agent Skills. Chaque sous-répertoire direct contenant un fichier SKILL.md constitue une compétence :
skills/
└── summarize/
├── SKILL.md
├── scripts/
│ └── summarize.py
└── references/
└── guidelines.md
Un SKILL.md minimal :
---
name: summarize
description: Résumez un document en points clés. À utiliser lorsque l'utilisateur demande de condenser un texte long.
---
# Summarize
1. Lisez le document à partir de l'entrée de l'utilisateur.
2. Extrayez l'argument principal, les points de soutien et les actions à entreprendre.
3. Rédigez le résumé en markdown, maximum 10 points à puces.
## Scripts
- `scripts/summarize.py` — CLI qui prend un chemin de fichier et affiche un résumé.
Les clients découvrent les compétences en parcourant skills/*/SKILL.md ; ils ne descendent pas plus profondément, donc conservez une compétence par sous-répertoire direct.
Étape 4 : Ajouter un serveur MCP
Si votre plugin embarque un serveur MCP, décrivez-le dans mcp.json. Le format prend en charge les transports stdio, Streamable HTTP et HTTP+SSE hérité :
{
"servers": {
"summarize": {
"command": "python",
"args": ["scripts/mcp_server.py"],
"env": {}
}
}
}
Les clients transposent ce format portable dans leur configuration native — les noms de champs n'ont pas besoin de correspondre au format interne d'un client.
Étape 5 : (Optionnel) Ajouter des extensions client
Vous souhaitez ajouter un comportement pour un client spécifique sans dupliquer le cœur du plugin ? Utilisez un répertoire d'espace de noms en domaine inverse nommé d'après votre client, par exemple com.example.client/hooks/hooks.json. Les clients recherchent leur répertoire d'espace de noms à la racine du plugin ; les espaces de noms inconnus sont ignorés.
Étape 6 : Valider
Avant de distribuer, validez votre manifeste :
$schemadoit référencer l'URL officielle du schéma :https://agent-plugins.org/schemas/1.0.0/plugin.schema.json.namedoit être présent et non vide — un champ obligatoire manquant rend l'ensemble du plugin invalide et les clients doivent le rejeter.- Vérifiez que le frontmatter de votre
SKILL.mdcontient au moinsnameetdescription. - Validez
mcp.jsonavec le schéma JSON de la spécification (publié sur agent-plugins.org/schemas).
Vous pouvez également utiliser le plugin exemple du dépôt de spécification (agentplugins/agent-plugins-example) comme référence canonique, ou soumettre votre plugin via le répertoire d'AIMCP — il valide avec le schéma officiel et rapporte le nombre de composants.
Étape 7 : Distribuer
Un Agent Plugin est un répertoire, donc la distribution est flexible : poussez-le vers un dépôt GitHub, publiez-le sur une marketplace, ou partagez-le directement. Les clients compatibles découvrent et chargent les plugins de manière cohérente, quel que soit le mode de transport.
Prochaines étapes
- Lisez la spécification complète des Agent Plugins pour les détails de conformité.
- Explorez les guides de création de compétences et de serveurs MCP.
- Parcourez le répertoire des Agent Plugins d'AIMCP pour voir des exemples concrets — puis ajoutez le vôtre.
