KI-Agent-Skills verwenden (mit Gemini CLI und Agent Skills for Firebase)

1. Einführung

Titelbild für das Lab „Agent Skills“

In diesem Lab erfahren Sie, wie Sie Agent Skills erstellen, um LLMs Zugriff auf benutzerdefiniertes Wissen und benutzerdefinierte Workflows zu ermöglichen. Sie erstellen ihn als lokalen Skill, auf den über die Gemini CLI zugegriffen werden kann.

Aufgaben

  • Erstellen Sie eigene Agent-Skills für Ihre Lieblingsdinge.
  • Gemini CLI zum Abfragen Ihres Skills verwenden
  • Installieren Sie offizielle Agent Skills für Firebase und verwenden Sie sie, um eine App zu entwickeln und bereitzustellen.

Lerninhalte

  • So strukturieren Sie einen Skill.
  • So schreiben Sie eine SKILL.md-Datei.
  • Lokale Skills mit der Gemini CLI verwenden

2. Projekt einrichten

  1. Wenn Sie noch kein Google-Konto haben, müssen Sie ein Google-Konto erstellen.
    • Verwenden Sie stattdessen ein privates Konto. Bei Arbeitskonten und Konten von Bildungseinrichtungen kann es Einschränkungen geben, die verhindern, dass Sie die für dieses Lab erforderlichen APIs aktivieren.
  2. Melden Sie sich in der Google Cloud Console an.
  3. Abrechnung in der Cloud Console aktivieren.
    • Die Kosten für Cloud-Ressourcen für dieses Lab sollten weniger als 1 $ betragen.
    • Sie können die Schritte am Ende dieses Labs ausführen, um Ressourcen zu löschen und so weitere Kosten zu vermeiden.
    • Neue Nutzer haben Anspruch auf den kostenlosen Testzeitraum mit einem Guthaben von 300 $.
  4. Erstellen Sie ein neues Projekt oder verwenden Sie ein vorhandenes Projekt wieder.
    • Wenn Sie eine Fehlermeldung zum Projektkontingent sehen, verwenden Sie ein vorhandenes Projekt wieder oder löschen Sie ein vorhandenes Projekt, um ein neues zu erstellen.

3. Cloud Shell-Editor öffnen

  1. Klicken Sie auf diesen Link, um direkt zum Cloud Shell-Editor zu gelangen.
  2. Wenn Sie heute an irgendeinem Punkt zur Autorisierung aufgefordert werden, klicken Sie auf Autorisieren, um fortzufahren. Klicken Sie, um Cloud Shell zu autorisieren.
  3. Wenn das Terminal nicht unten auf dem Bildschirm angezeigt wird, öffnen Sie es:
    • Klicken Sie auf Ansehen.
    • Klicken Sie auf TerminalNeues Terminal im Cloud Shell-Editor öffnen.
  4. Legen Sie im Terminal Ihr Projekt mit diesem Befehl fest:
    • Format:
      gcloud config set project [PROJECT_ID]
      
    • Beispiel:
      gcloud config set project lab-project-id-example
      
    • Wenn Sie sich nicht an Ihre Projekt-ID erinnern können:
      • Sie können alle Ihre Projekt-IDs mit folgendem Befehl auflisten:
        gcloud projects list | awk '/PROJECT_ID/{print $2}'
        
      Projekt-ID im Cloud Shell Editor-Terminal festlegen
  5. Es sollte folgende Meldung angezeigt werden:
    Updated property [core/project].
    
    Wenn Sie WARNING sehen und Do you want to continue (Y/n)? gefragt werden, haben Sie die Projekt-ID wahrscheinlich falsch eingegeben. Drücken Sie n, dann Enter und versuchen Sie, den Befehl gcloud config set project noch einmal auszuführen.

4. Benutzerdefinierten Skill erstellen

Agent-Skills sind Verzeichnisse, die mindestens eine SKILL.md-Datei mit Anweisungen und Wissen für einen KI-Agenten enthalten. In diesem Abschnitt erstellen Sie eine Skill, mit der Sie Gemini CLI Ihre Lieblingsdinge beibringen.

  1. Erstellen Sie ein Verzeichnis für dieses Lab und rufen Sie es auf:
    mkdir ~/agent-skills-lab && cd ~/agent-skills-lab
    
  2. Erstellen Sie ein Verzeichnis für Ihren Projekt-Skill:
    mkdir -p ~/agent-skills-lab/.agents/skills/my-favorite-things
    
  3. Erstellen und öffnen Sie eine neue SKILL.md-Datei für Ihren Skill:
    cloudshell edit ~/agent-skills-lab/.agents/skills/my-favorite-things/SKILL.md
    
    Mit dem Befehl cloudshell edit wird die Datei SKILL.md im Editor über dem Terminal geöffnet.
  4. Fügen Sie der Datei SKILL.md den folgenden Inhalt hinzu:
    ---
    name: my-favorite-things
    description: Provides personal information about my favorite color, food, and programming language. Use this skill when the user asks questions about my personal preferences or favorite things.
    ---
    
    # Knowledge
    
    - **Favorite Color:** Blue
    - **Favorite Food:** Pizza
    - **Favorite Programming Language:** Python
    
    If asked about one of my favorite things, please respond with the information provided above.
    

Mit nur einer SKILL.md-Datei haben Sie Ihren ersten Skill erstellt. Jetzt ist es an der Zeit, diesen Skill in der Gemini CLI zu verwenden.

5. Skill in der Gemini CLI verwenden

Nachdem Sie einen Skill erstellt haben, ist er bereits über die Gemini CLI auffindbar, da er sich im Verzeichnis .agents/skills befindet.

  1. Gemini CLI starten:
    gemini
    
    Die Gemini CLI sollte den neuen Skill erkennen. Möglicherweise müssen Sie die Enter-Taste drücken, um einige Standardeinstellungen zu übernehmen.
  1. Gemini die Skills auflisten lassen, die ihm im Kontext zur Verfügung stehen
    /skills
    
    my-favorite-things sollte in der Liste der verfügbaren Skills angezeigt werden.
  2. Gemini nach Ihrer Lieblingsfarbe fragen:
    What is my favorite color?
    
    Die Gemini CLI sollte den my-favorite-things-Skill verwenden, um Ihre Frage zu beantworten. Erlauben Sie der Gemini CLI, den Skill zu verwenden, wenn Sie dazu aufgefordert werden.

In der Ausgabe sollte zu sehen sein, dass Gemini CLI Ihren Skill verwendet und mit etwas wie „Blau“ oder „Meine Lieblingsfarbe ist Blau“ geantwortet hat.

Sie haben es geschafft! Sie haben erfolgreich einen Skill erstellt und mit der Gemini CLI getestet.

Wenn Sie die Sitzung beenden möchten, geben Sie /quit ein und drücken Sie dann Enter, um die Gemini CLI zu schließen.

6. (Optional) Anwendung erstellen und in Firebase Hosting bereitstellen

Sie können nicht nur eigene Skills erstellen, sondern auch von anderen entwickelte Skills installieren. Dies zeigt die Verwendung von portablen Skills – in sich geschlossene Module mit Wissen, Anleitungen und Workflows, die sich einfach teilen und wiederverwenden lassen.

Agent Skills für Firebase sind ein gutes Beispiel für diese portablen Module. Sie sollen KI-Assistenten helfen, Firebase-Best Practices zu verstehen und komplexe Aufgaben mit höherer Genauigkeit und geringeren Token-Kosten auszuführen.

Erstellen Sie jetzt mit Agent Skills for Firebase eine „To-do“-Webanwendung mit Nutzerauthentifizierung und einer Datenbank und stellen Sie sie in Firebase Hosting bereit.

Projekt einrichten

  1. Wenn Sie sich noch in der Gemini CLI befinden, geben Sie /quit ein, um sie zu beenden.
  2. Erstellen Sie ein neues Verzeichnis für Ihr Projekt und rufen Sie dieses Verzeichnis auf:
    mkdir ~/todo-app && cd ~/todo-app
    
  3. Melden Sie sich mit Ihrem Google-Konto in Firebase an. Verwenden Sie das Flag --no-localhost, da Sie sich in Cloud Shell befinden:
    firebase login --no-localhost
    
    1. Mit den CLI-Aufforderungen interagieren:
      • Wenn Sie gefragt werden, ob Enable Gemini in Firebase features?, geben Sie Y (für „Ja“) ein und drücken Sie Enter.
      • Wenn Sie gefragt werden, ob Allow Firebase to collect CLI and Emulator Suite usage and error reporting information?, geben Sie Y (für „Ja“) ein und drücken Sie Enter.
    2. Im Browser autorisieren:
      • Im Terminal wird eine URL angezeigt. Klicken Sie auf den Link. Wenn er nicht anklickbar ist, markieren Sie die URL in Cloud Shell, um sie zu kopieren, und fügen Sie sie dann in Ihren Browser ein, um die Anmeldeseite in einem neuen Browsertab zu öffnen.
      • Schritt 1 von 3 (Befehl bestätigen): Klicken Sie auf Ja, ich habe diesen Befehl ausgeführt.
      • Schritt 2 von 3 (Sitzungs-ID bestätigen): Prüfen Sie, ob die Sitzungs-ID mit der in Ihrem Terminal angezeigten ID übereinstimmt, und klicken Sie dann auf Ja, das ist meine Sitzungs-ID.
      • Schritt 3 von 3 (Code kopieren): Klicken Sie auf Kopieren, um den Autorisierungscode in die Zwischenablage zu kopieren.
    3. Anmeldung abschließen:
      • Kehren Sie zum Cloud Shell-Terminal zurück und fügen Sie den Autorisierungscode an der Eingabeaufforderung ? Enter authorization code: ein.
      • Drücken Sie Enter.
    Sie sollten die Erfolgsmeldung ✔ Success! Logged in as sehen.

Agent Skills für Firebase installieren

Nachdem Sie das Projektverzeichnis erstellt haben, sollten Sie die Agent Skills for Firebase darin installieren.

Sie können die Agent Skills für Firebase mit der skills CLI in Ihrem Terminal installieren:

npx skills add firebase/agent-skills

Während der Installation werden Sie aufgefordert, die zu installierenden Skills auszuwählen. Verwenden Sie die Pfeiltasten, um durch die Liste zu navigieren, und die Leertaste, um die Skills auszuwählen.

  • firebase-basics
  • firebase-hosting-basics
  • firebase-auth-basics
  • firebase-firestore-enterprise-native-mode

Vier Firebase-Skills auswählen

Bei nachfolgenden Aufforderungen können Sie die Standardeinstellungen mit Enter übernehmen.

Mit diesem Befehl werden Skills wie firebase-basics und firebase-hosting-basics heruntergeladen und installiert, sodass sie in der Gemini CLI zusammen mit Ihrem my-favorite-things-Skill verwendet werden können.

Weitere Informationen zu Agent Skills für Firebase

Einfache Webanwendung erstellen und bereitstellen

  1. Aktivieren Sie die erforderlichen APIs für Ihr Projekt:
    gcloud services enable \
      cloudresourcemanager.googleapis.com \
      firebase.googleapis.com
    
  2. Aktivieren Sie Firebase in Ihrem aktuellen Google Cloud-Projekt:
    firebase projects:addfirebase ${GOOGLE_CLOUD_PROJECT}
    
  3. Gemini CLI starten:
    gemini
    
  4. Fordern Sie Gemini auf, eine einfache index.html zu generieren:
    Generate an index.html file with the content "Hello Firebase Hosting" and
    deploy the application to Firebase Hosting using the current Google Cloud
    Project.
    
    Gemini wird Sie auffordern, index.html zu erstellen und firebase auszuführen. Drücken Sie Enter, um dies zu erlauben.Die Gemini CLI sollte die Agent Skills für Firebase verwenden, um Ihre Website zu erstellen und bereitzustellen. Leiten Sie den Agenten bei Bedarf mit Genehmigungen an.

Nach der Bereitstellung sollte eine URL für Ihre Web-App angezeigt werden. Verwenden Sie ctrl+click (Windows/Linux) oder cmd+click (Mac), um Links im Cloud Shell Editor-Terminal zu öffnen. Rufen Sie die URL für Ihre bereitgestellte App auf.

Firebase Authentication hinzufügen

  1. Starten Sie die Gemini CLI, falls sie noch nicht gestartet ist:
    gemini
    
    Gemini kann Fragen wie „Vertraust du diesem Ordner?“ stellen. Drücken Sie Enter, um die Standardeinstellungen zu übernehmen.
  2. Bitten Sie Gemini nun, die Google-Anmeldung hinzuzufügen:
    Generate HTML, CSS, and Javascript for a single page application.
    It should use Google Sign-in with Firebase Authentication.
    A user should be able to sign in with their Google Account.
    Deploy when you are done and give the URL to the user.
    
    Gemini kann Sie auffordern, Dateien wie index.html, style.css und script.js zu erstellen oder zu aktualisieren. Lassen Sie das zu. Möglicherweise werden Sie von Gemini aufgefordert, bestimmte Aktionen in der Firebase Console auszuführen. Die CLI kann die meisten dieser Schritte ausführen, wenn Sie sie dazu auffordern. Wenn auf Ihrer Cloud Shell-Instanz jedoch eine ältere Version der Firebase CLI installiert ist, müssen Sie die Schritte möglicherweise manuell ausführen, z. B. Google-OAuth aktivieren.

Nach der Bereitstellung sollte eine URL für Ihre Web-App angezeigt werden. Verwenden Sie ctrl+click (Windows/Linux) oder cmd+click (Mac), um Links im Cloud Shell Editor-Terminal zu öffnen. Rufen Sie die URL für Ihre bereitgestellte App auf.

Damit Ihre letzten Änderungen angezeigt werden, müssen Sie möglicherweise ein „Hard Refresh“ mit ctrl+shift+R (Windows/Linux) oder cmd+shift+R (Mac) durchführen.

Cloud Firestore hinzufügen

  1. Starten Sie die Gemini CLI, falls sie noch nicht gestartet ist:
    gemini
    
    Gemini kann Fragen wie „Vertraust du diesem Ordner?“ stellen. Drücken Sie Enter, um die Standardeinstellungen zu übernehmen.
  2. Gemini auffordern, Firestore zum Speichern von Aufgaben hinzuzufügen:
    Update the application to 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.
    Deploy when you are done and give the URL to the user.
    
    Gemini aktualisiert die Dateien. Erlauben Sie das.

Nach der Bereitstellung sollte eine URL für Ihre Web-App angezeigt werden. Verwenden Sie ctrl+click (Windows/Linux) oder cmd+click (Mac), um Links im Cloud Shell Editor-Terminal zu öffnen. Rufen Sie die URL für Ihre bereitgestellte App auf.

Damit Ihre letzten Änderungen angezeigt werden, müssen Sie möglicherweise ein „Hard Refresh“ mit ctrl+shift+R (Windows/Linux) oder cmd+shift+R (Mac) durchführen.

Wenn Ihre Anwendung nicht wie erwartet funktioniert, arbeiten Sie weiter mit der Gemini CLI, um die gewünschte Funktionalität zu erhalten. Beispiel: shell Hide the task form when the user is logged out. Update the security rules so the user can see their TODOs.

Experimentieren Sie weiter mit dem Lab, um die Funktionen hinzuzufügen, die Sie in Ihrer neuen Firebase-Anwendung verwenden möchten.

7. Fazit

Glückwunsch! Sie haben erfolgreich einen Skill erstellt und gelernt, wie Sie zusätzliche Skills für die Gemini CLI installieren.

(Optional) Bereinigen

Wenn Sie Ihr Cloud-Projekt bereinigen möchten, können Sie es löschen, um zusätzliche Gebühren zu vermeiden.

Wenn Sie möchten, können Sie das Projekt löschen:

gcloud projects delete $GOOGLE_CLOUD_PROJECT

Sie können auch unnötige Ressourcen von Ihrem Cloud Shell-Laufwerk löschen, um Speicherplatz freizugeben.

  1. Löschen Sie das Lab-Verzeichnis. Dadurch werden sowohl der Skill als auch die App entfernt:
    rm -rf ~/agent-skills-lab
    
  2. Löschen Sie das Anwendungsverzeichnis „To Do“, falls Sie es extern erstellt haben:
    rm -rf ~/todo-app
    

Wenn Sie Cloud Shell auf den Standard zurücksetzen müssen, finden Sie in der offiziellen Dokumentation eine Anleitung dazu.