Créer des compétences d'agent pour Gemini CLI

1. Introduction

Dans cet atelier, vous allez apprendre à créer des compétences d'agent pour permettre aux LLM d'accéder à des connaissances et des workflows personnalisés. Vous allez le créer en tant que compétence locale accessible depuis Gemini CLI.

Objectifs de l'atelier

  • Créez vos propres compétences d'agent pour vos centres d'intérêt.
  • Utilisez Gemini CLI pour interroger votre skill.
  • Installez les compétences d'agent officielles pour Firebase et utilisez-les pour créer et déployer une application.

Points abordés

  • Structurer une skill
  • Comment écrire un fichier SKILL.md.
  • Utiliser des compétences locales avec Gemini CLI

2. Configuration du projet

  1. Si vous ne possédez pas encore de compte Google, vous devez en créer un.
    • Utilisez un compte personnel au lieu d'un compte professionnel ou scolaire. Il est possible que des restrictions s'appliquent aux comptes professionnels et scolaires, ce qui vous empêche d'activer les API nécessaires pour cet atelier.
  2. Connectez-vous à la console Google Cloud.
  3. Activez la facturation dans la console Cloud.
    • Cet atelier devrait vous coûter moins de 1 USD en ressources Cloud.
    • Vous pouvez suivre les étapes à la fin de cet atelier pour supprimer les ressources et éviter ainsi des frais supplémentaires.
    • Les nouveaux utilisateurs peuvent bénéficier d'un essai sans frais pour bénéficier d'un crédit de 300$.
  4. Créez un projet ou réutilisez-en un existant.
    • Si vous voyez une erreur concernant le quota de projet, réutilisez un projet existant ou supprimez-en un pour en créer un.

3. Ouvrir l'éditeur Cloud Shell

  1. Cliquez sur ce lien pour accéder directement à l'éditeur Cloud Shell.
  2. Si vous êtes invité à autoriser l'accès à un moment donné aujourd'hui, cliquez sur Autoriser pour continuer. Cliquez pour autoriser Cloud Shell.
  3. Si le terminal ne s'affiche pas en bas de l'écran, ouvrez-le :
    • Cliquez sur Afficher.
    • Cliquez sur TerminalOuvrir un nouveau terminal dans l'éditeur Cloud Shell.
  4. Dans le terminal, définissez votre projet à l'aide de la commande suivante :
    • Format :
      gcloud config set project [PROJECT_ID]
      
    • Exemple :
      gcloud config set project lab-project-id-example
      
    • Si vous ne vous souvenez pas de l'ID de votre projet :
      • Vous pouvez lister tous vos ID de projet avec la commande suivante :
        gcloud projects list | awk '/PROJECT_ID/{print $2}'
        
      Définir l'ID du projet dans le terminal de l'éditeur Cloud Shell
  5. Le message suivant doit s'afficher :
    Updated property [core/project].
    
    Si le message WARNING s'affiche et que vous êtes invité à Do you want to continue (Y/n)?, cela signifie probablement que vous avez saisi l'ID du projet de manière incorrecte. Appuyez sur n, puis sur Enter, et réessayez d'exécuter la commande gcloud config set project.

4. Créer votre compétence "Mes choses préférées"

Les compétences d'agent sont des répertoires contenant au minimum un fichier SKILL.md qui fournit des instructions et des connaissances à un agent d'IA. Dans cette section, vous allez créer une compétence qui apprend à Gemini CLI vos choses préférées.

  1. Créez un répertoire pour stocker votre compétence :
    mkdir -p ~/.gemini/skills/my-favorite-things
    
  2. Créez et ouvrez un fichier SKILL.md pour votre skill :
    cloudshell edit ~/.gemini/skills/my-favorite-things/SKILL.md
    
    La commande cloudshell edit ouvre le fichier SKILL.md dans l'éditeur au-dessus du terminal.
  3. Ajoutez le contenu suivant au fichier SKILL.md :
    ---
    name: my-favorite-things
    description: Information about my favorite things. Use this skill to answer questions about my favorite color, food, or programming language.
    ---
    
    My favorite color is blue.
    My favorite food is pizza.
    My favorite programming language is Python.
    
    If asked about one of my favorite things, please respond with the information provided above.
    

Vous venez de créer votre première skill avec un simple fichier SKILL.md. Il est temps d'utiliser cette compétence dans Gemini CLI.

5. Utiliser votre compétence depuis Gemini CLI

Maintenant que vous avez créé une compétence, vous pouvez l'utiliser avec Gemini CLI. Les compétences placées dans ~/.gemini/skills sont automatiquement détectées par Gemini CLI.

  1. Démarrer la Gemini CLI dans Cloud Shell
    gemini
    
    Vous devrez peut-être appuyer sur Enter pour accepter certains paramètres par défaut.
  2. Demandez à Gemini de lister les compétences dont il dispose dans son contexte.
    /skills
    
    Vous devriez voir my-favorite-things dans la liste des skills disponibles.
  3. Demandez à Gemini quelle est votre couleur préférée :
    What is my favorite color?
    
    La CLI Gemini doit utiliser la compétence my-favorite-things pour répondre à votre question. Si vous y êtes invité, autorisez Gemini CLI à utiliser la compétence.

Le résultat doit indiquer que Gemini CLI a utilisé votre compétence et a répondu "Bleu".

Vous avez réussi ! Vous avez créé une compétence et l'avez testée à l'aide de Gemini CLI.

Pour terminer votre session, saisissez /quit, puis appuyez sur Enter pour quitter Gemini CLI.

6. Installer les compétences de l'agent pour Firebase

En plus de créer vos propres compétences, vous pouvez installer celles créées par d'autres utilisateurs. Les compétences d'agent pour Firebase (GitHub) sont des modules portables et autonomes de connaissances, d'instructions et de workflows spécifiques à Firebase. Ils sont conçus pour aider les assistants IA à comprendre les bonnes pratiques Firebase et à exécuter des tâches complexes avec plus de précision et à moindre coût en jetons.

Vous pouvez installer toutes les compétences de l'agent pour Firebase avec la CLI skills dans votre terminal :

npx skills add firebase/agent-skills

Cette commande permet de télécharger et d'installer des compétences, y compris firebase-basics, firebase-auth-basics, firebase-firestore-basics et firebase-app-hosting-basics, afin de les rendre disponibles dans Gemini CLI en plus de votre compétence my-favorite-things.

Pour en savoir plus sur les compétences de l'agent pour Firebase, consultez Compétences disponibles.

7. Explorer les compétences de l'agent pour Firebase

Les compétences de l'agent pour Firebase sont désormais installées et prêtes à être utilisées dans Gemini CLI. Pour les afficher, exécutez Gemini CLI et saisissez /skills firebase :

gemini

Ensuite, dans Gemini CLI :

/skills firebase

Vous verrez une liste des compétences Firebase installées, comme firebase-basics, firebase-auth-basics, firebase-firestore-basics et firebase-app-hosting-basics.

8. (Facultatif) Utilisez les compétences de l'agent pour Firebase afin de créer et de déployer une application

Utilisez maintenant les compétences d'agent installées pour Firebase afin de créer une application Web "To Do" avec authentification des utilisateurs et base de données, puis déployez-la sur Firebase App Hosting.

  1. Si vous êtes toujours dans Gemini CLI, saisissez /quit pour quitter.
  2. Créez un répertoire pour votre projet et accédez-y :
    mkdir todo-app && cd todo-app
    
  3. Connectez-vous à Firebase avec votre compte Google. Si vous êtes dans Cloud Shell ou dans un autre environnement sans navigateur, utilisez l'indicateur --no-localhost.
    firebase login --no-localhost
    
    Suivez les instructions pour autoriser la CLI Firebase.
  4. Démarrez Gemini CLI :
    gemini
    
  5. Demandez maintenant à Gemini de générer le code de l'application :
    Generate HTML, CSS, and Javascript for a single page  application. It should use Google Sign-in with Firebase Authentication, and save tasks in Cloud Firestore for the signed-in user. A user should be able to add new tasks and see a list of their tasks.
    
    Gemini peut vous demander de créer des fichiers tels que index.html, style.css et script.js. Autorisez-le à le faire.
  6. Enfin, déployez l'application sur Firebase App Hosting :
    /firebase-app-hosting-basics deploy my web app to Firebase App Hosting.
    
     Suivez les instructions pour configurer App Hosting et terminer le déploiement. Une fois déployée, vous devriez recevoir une URL pour votre application en direct.

9. Conclusion

Félicitations ! Vous avez créé une compétence et appris à installer des compétences supplémentaires pour Gemini CLI.

(Facultatif) Effectuer un nettoyage

Si vous souhaitez faire le ménage, vous pouvez supprimer votre projet Cloud pour éviter des frais supplémentaires.

Si vous le souhaitez, supprimez le projet :

gcloud projects delete $GOOGLE_CLOUD_PROJECT

Vous pouvez également supprimer les ressources inutiles de votre disque Cloud Shell. Vous pouvez :

  1. Supprimez le répertoire de compétences :
    rm -rf ~/.gemini/skills/my-favorite-things
    
  2. Avertissement ! Cette prochaine action est irréversible. Si vous souhaitez supprimer tous les éléments de votre Cloud Shell pour libérer de l'espace, vous pouvez supprimer l'intégralité de votre répertoire d'accueil. Veillez à enregistrer ailleurs tout ce que vous souhaitez conserver.
    sudo rm -rf $HOME