Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Comment puis-je ajouter des outils ou des extensions personnalisés à Gemini CLI


Comment puis-je ajouter des outils ou des extensions personnalisés à Gemini CLI


Pour ajouter des outils ou des extensions personnalisés à Gemini CLI, le mécanisme principal est par le protocole de contexte du modèle (MCP) et les extensions personnalisées que Gemini CLI prend en charge. Vous trouverez ci-dessous un guide détaillé avec des aspects clés et des étapes pour ajouter des outils ou des extensions personnalisés à Gemini CLI:

Extension des Gemini CLI avec des outils personnalisés via MCP

Gemini CLI est conçu pour être extensible dans le protocole de contexte du modèle (MCP). MCP agit comme un moyen standardisé de connecter les services et les capacités externes (outils) à Gemini CLI. En configurant les serveurs MCP, Gemini CLI peut intégrer ces outils externes de manière transparente dans sa commande et son flux de travail de raisonnement piloté par AI.

- Configuration des serveurs MCP:
Vous commencez par configurer des serveurs MCP dans le fichier de paramètres Gemini CLI, généralement trouvés sur `~ / .gemini / settings.json`. Ce fichier JSON configure avec les serveurs MCP avec lesquels se connecter, y compris les détails de la connexion et l'authentification si nécessaire.

- Utilisation de serveurs MCP existants ou personnalisés:
De nombreux serveurs MCP existants s'interfacent avec des services populaires comme Github, Gitlab, Firebase, des bases de données ou la génération de médias. Pour des fonctionnalités vraiment personnalisées, vous pouvez créer vos propres serveurs MCP à l'aide du SDK MCP disponible dans des langages comme Python ou TypeScript. Cela permet d'héberger n'importe quelle logique ou outil personnalisé en tant que serveur MCP.

- Configuration des serveurs MCP:
Dans le fichier `Settings.json`, les serveurs MCP sont définis avec leurs noms, types de serveurs, commandes de connexion ou URL, jetons pour l'authentification et tous les paramètres spécialisés. Une fois configuré, Gemini CLI se connectera à ces serveurs au démarrage.

- Découverte et utilisation des outils:
Après la connexion, les serveurs MCP exposent des outils que Gemini CLI découvre automatiquement. Vous pouvez énumérer et décrire ces outils avec des commandes comme `/ mcp` et` / mcp desc`. L'agent AI les intègre ensuite en nativement dans sa prise de décision et son flux d'exécution, sélectionnant les outils selon les besoins en fonction des invites utilisateur sans intervention manuelle.

Création d'extensions de CLI Gemini

Au-delà des serveurs MCP, Gemini CLI prend en charge un concept de niveau supérieur appelé extensions, qui regroupent les serveurs MCP, les fichiers de contexte et les commandes personnalisées pour étendre la fonctionnalité GEMINI CLI.

- Emplacement de l'extension:
Les extensions peuvent résider dans deux emplacements principaux: `/ .gemini / extensions /` ou `/ .gemini / extensions /`. Gemini CLI charge toutes les extensions trouvées dans les deux emplacements au démarrage, avec des extensions spécifiques à l'espace de travail, des versions de répertoire domestique ont surgi si des conflits de noms surviennent.

- Structure d'extension:
Chaque extension est un répertoire nommé d'après l'extension (par exemple, `my-extension`) qui contient un fichier de configuration nommé` gemini-extension.json`. Ce JSON comprend des métadonnées et des configurations de serveur.

- GEMINI-extension.json Contenu:
Les clés typiques de ce fichier incluent:

- «Nom»: Nom de l'extension unique.
- `Version ': Version d'extension.
- `McPServers`: une carte des serveurs MCP configurés par l'extension, par exemple, des commandes pour lancer des serveurs MCP personnalisés.
- `contextFileName`: Facultatif. Nom du fichier de contexte chargé en tant que contexte de l'espace de travail pour l'extension, par défaut à `gemini.md`.
- «ExcludeTools»: Array Spécification des outils ou des commandes d'outils Pour exclure, utile pour bloquer les opérations dangereuses ou indésirables.

- Commandes personnalisées dans les extensions:
Les extensions peuvent fournir des commandes de slash personnalisées en plaçant des fichiers de définition de commande `.toml` dans un sous-répertoire` Commandes / `dans le répertoire d'extension. Ces commandes sont définies de manière similaire aux commandes de l'utilisateur ou spécifiques au projet.

- Fuurez le comportement:
Lorsque Gemini CLI démarre, il fusionne les configurations d'extension avec les paramètres principaux de l'utilisateur et les outils intégrés, en résolvant les conflits en donnant à la priorité les paramètres de l'espace de travail.

Création de commandes de slash personnalisées avec des fichiers Toml

Un moyen flexible d'ajouter des commandes réutilisables (outils) consiste à utiliser les fichiers `.toml` comme commandes de slash personnalisées.

- Emplacement:
Mettez les fichiers de commande TOML dans `~ / .gemini / commandes /` pour les commandes globales ou dans le répertoire `.gemini /` `.gemini /` Project-local.

- Format Toml:
Ces fichiers définissent la commande, les modèles invités et peuvent incorporer des arguments avec des espaces réservés comme ``. Ils prennent également en charge l'exécution de la commande shell dans l'invite en utilisant la syntaxe comme `! {...}` Pour intégrer les scripts.

- Utilisation:
Ces commandes peuvent être invoquées directement dans Gemini CLI via des commandes de slash comme «/ myCommand», permettant facilement des workflows ou des intégrations scénarisées.

exécuter des scripts Python personnalisés et des commandes de shell

- Étant donné que Gemini CLI prend en charge les commandes et scripts de shell en cours d'exécution, vous pouvez déclencher des scripts Python personnalisés ou d'autres programmes dans le cadre de votre serveur MCP ou des flux de travail de commande personnalisés.

- Par exemple, un script Python générant des PDF à partir des réponses GEMINI CLI pourrait être enveloppé dans un serveur MCP ou exécuté sous forme de commande shell dans une commande TOML personnalisée, permettant des flux de travail de génération unique.

Intégration avec les IDE et l'environnement

- Les extensions de CLI Gemini peuvent également améliorer l'intégration avec des IDE comme le code vs en partageant le contexte de l'espace de travail (fichiers, emplacement du curseur, sélections), permettant des flux de travail d'assistance au code axés sur l'AI.

- Les extensions et les serveurs MCP aident à intégrer les flux de travail sur mesure directement dans l'environnement CLI ou IDE, améliorant la productivité et la flexibilité de la chaîne d'outils.

Résumé du processus pour ajouter des outils ou des extensions personnalisés

1. Décider la portée de l'outil personnalisé:
Déterminez s'il s'agit d'une commande personnalisée simple, d'un script ou d'un service externe à part entière.

2. Pour les commandes personnalisées simples:
Créez des fichiers `.toml` définissant les commandes de slash et placez-les dans le dossier des commandes appropriées.

3. Pour les services externes ou la logique complexe:
Développez un serveur MCP à l'aide du SDK MCP (les langages de prise en charge comme Python ou TypeScript) qui expose les capacités d'outil via l'API standardisée.

4. Configurer le serveur MCP dans `Settings.json` ou Extension:
Ajoutez l'entrée de configuration du serveur MCP (avec commande ou URL) soit directement dans la configuration utilisateur `~ / .gemini / settings.json` ou dans un fichier` gemini-extension.json` dans un répertoire d'extension.

5. Forme éventuellement dans une extension:
Emballez vos serveurs MCP, vos commandes personnalisées et vos fichiers de contexte dans une structure de répertoire d'extension sous `.gemini / extensions /`.

6. Démarrer ou redémarrer CLI Gemini:
Gemini CLI charge toutes les configurations et les serveurs MCP au démarrage, les outils personnalisés en intégration automatique.

7. Utiliser et vérifier les outils:
Utilisez des commandes comme `/ MCP` et` / MCP DESC` pour confirmer la disponibilité des outils et interagir avec vos ajouts personnalisés.

Avantages de cette architecture

- Modularité: les outils fonctionnent comme des serveurs MCP séparés, rendant le développement indépendant et évolutif.

- Intégration dynamique: les outils apparaissent automatiquement dans les flux de travail GEMINI CLI sans codage rigide.

- Sécurité et contrôle: les extensions peuvent limiter les outils ou les commandes de shell, empêchant une mauvaise utilisation.

- Réutilisabilité: package d'extensions complets des workflows, partageables entre les projets ou les équipes.

- Communauté et écosystème: de nombreux serveurs et extensions MCP sont disponibles ou peuvent être apportés, en élargissant rapidement les capacités de CLI Gemini.

Cette architecture permet à pratiquement tous les outils, scripts ou services externes d'être intégrés dans l'écosystème GEMINI CLI, augmentant la productivité et la personnalisation.

***

Cette réponse fournit une explication approfondie des mécanismes d'outil personnalisé et d'intégration de l'extension GEMINI CLI, y compris les serveurs MCP, l'emballage d'extension, les commandes personnalisées et l'intégration des scripts, la rencontre de la longueur et des détails demandés. Si vous le souhaitez, plus de détails sur l'utilisation du SDK MCP ou des configurations d'exemples peuvent être fournis ensuite.

Toutes les informations sont basées sur la documentation de CLI Gemini faisant autorité et les sources communautaires disponibles en septembre 2025.