- Accueil
- Place de marché
- Contribuer un plugin
Contribuer un plugin
Ce guide explique comment créer un nouveau plugin et l’ajouter à la place de marché f5-sales-demo.
Structure d’un plugin
Section intitulée « Structure d’un plugin »Chaque plugin réside dans son propre répertoire sous plugins/ et
suit cette structure :
Répertoireplugins/
Répertoireexample-plugin/
Répertoire.claude-plugin/
- plugin.json
Répertoireskills/
Répertoireexample-skill/
- SKILL.md
Répertoirereferences/
- reference-data.md
Répertoirecommands/
- example-command.md
Répertoireagents/
- example-agent.md
- README.md
Créer un plugin
Section intitulée « Créer un plugin »-
Créer le répertoire du plugin
Fenêtre de terminal mkdir -p plugins/example-plugin/.claude-pluginmkdir -p plugins/example-plugin/skillsmkdir -p plugins/example-plugin/commands -
Rédiger
plugin.jsonCréer
plugins/example-plugin/.claude-plugin/plugin.json:{"name": "example-plugin","description": "What this plugin does","version": "1.0.0","author": {"name": "f5-sales-demo"},"homepage": "https://github.com/f5-sales-demo/marketplace/tree/main/plugins/example-plugin","keywords": ["relevant", "keywords"],"license": "Apache-2.0","repository": "https://github.com/f5-sales-demo/marketplace"} -
Ajouter des compétences (skills)
Créer
plugins/example-plugin/skills/example-skill/SKILL.mdavec un en-tête frontmatter :---name: example-skilldescription: One-line description of what this skill does---Detailed instructions for Claude when this skill activates.Placez les données de référence dans un sous-répertoire
references/situé à côté deSKILL.md. -
Ajouter des commandes
Créer
plugins/example-plugin/commands/example-command.md:---description: What this command doesargument_hint: "[optional-args]"allowed_tools:- Read- Glob- Grep---Instructions for Claude when the user invokes this command. -
Ajouter le plugin à marketplace.json
Ajouter une entrée dans le tableau
pluginsde.claude-plugin/marketplace.json:{"name": "example-plugin","description": "What this plugin does","version": "1.0.0","author": { "name": "f5-sales-demo" },"source": "./plugins/example-plugin","category": "productivity","homepage": "https://github.com/f5-sales-demo/marketplace/tree/main/plugins/example-plugin","license": "Apache-2.0","keywords": ["relevant", "keywords"],"tags": ["searchable", "tags"],"repository": "https://github.com/f5-sales-demo/marketplace"} -
Tester localement
Testez votre plugin sans le publier en pointant Claude Code vers le répertoire local :
Fenêtre de terminal claude --plugin-dir ./plugins/example-pluginVérifiez que les compétences s’activent dans le bon contexte et que les commandes produisent le résultat attendu.
Soumettre votre plugin
Section intitulée « Soumettre votre plugin »- Créer une issue GitHub décrivant le nouveau plugin
- Créer une branche de fonctionnalité à partir de
main - Ajouter votre répertoire de plugin et mettre à jour
marketplace.json - Ajouter une page de documentation dans
docs/plugins/example-plugin.mdx - Ouvrir une PR en la liant à l’issue avec
Closes #N - Corriger les échecs CI et fusionner une fois les vérifications réussies
Bonnes pratiques
Section intitulée « Bonnes pratiques »- Gardez les compétences ciblées — une compétence doit bien faire une seule chose
- Utilisez des fichiers de référence — placez les jeux de données volumineux, les schémas et les tables de correspondance dans
references/plutôt qu’en ligne dans SKILL.md - Définissez une portée intelligente — vérifiez l’existence de modifications non validées pour restreindre le périmètre de travail lorsque c’est possible
- Regroupez les sorties par gravité — utilisez les niveaux ERROR, WARNING et INFO afin que les utilisateurs puissent prioriser les corrections
- Rédigez un README — incluez des exemples d’utilisation et une description de ce que fait chaque compétence et chaque commande