Übersicht über Android-Skills

Android-Skills sind KI-optimierte Anweisungen, die KI-Tools und ‑Agenten helfen, bestimmte Muster besser zu verstehen und auszuführen. Sie entsprechen den Best Practices und Leitfäden zur Android-Entwicklung. Sie befinden sich im GitHub-Repository für Android-Skills.

Mit einem Android-Skill können Sie beispielsweise folgende Aufgaben ausführen:

  • Von XML zu Compose migrieren
  • Auf AGP 9 aktualisieren
  • Neuere Frameworks wie Navigation 3 einrichten
  • Die UI Ihrer App modernisieren, indem Sie sie von Rand zu Rand gestalten
  • Die Leistung verbessern, indem Sie Ihre R8-Konfiguration prüfen

Mit Android-Skills können Sie LLMs mit aktuellem Wissen und Kontext zu speziellen Android-Workflows fundieren.

Android-Skills folgen dem offenen Standard für Agent-Skills und sind daher mit jedem KI-Tool kompatibel, das Skills unterstützt. Auf dieser Seite wird erläutert, wie Sie Skills in Android Studio verwenden und wie Sie mit der Android CLI Skills für die Verwendung mit einem beliebigen Agenten und Tool Ihrer Wahl installieren.

Wichtige Vorteile von Android-Skills

Android-Skills bieten eine Reihe wichtiger Vorteile, die darauf abzielen, Ihren agentischen Workflow zu beschleunigen, um effizienter hochwertigen Android-Code zu erstellen:

  • Fundierung mit Expertenwissen:Stellen Sie Agenten mehr Android-spezifischen Kontext zur Verfügung, fundieren Sie sie bei Bedarf und erweitern Sie ihr Standardwissen und ihre Expertise über den regulären Modelltrainingszyklus hinaus.
  • Wiederholbare Workflows:Geben Sie Standardanweisungen, um sicherzustellen, dass mehrstufige Aufgaben in der Android-Entwicklung konsistent ausgeführt werden.
  • Ressourcenbündelung:Fügen Sie Skripts, Vorlagen oder zusätzliche Dokumentation neben Ihren Hauptanweisungen in der Datei „SKILL.md“ hinzu, damit der Agent alles an einem Ort hat und Sie keine Dateien manuell an einen Prompt anhängen müssen.
  • Gemeinsames Fachwissen:Packen Sie die Android-Entwicklungsmuster Ihres Teams in freigegebene Ordner, um den Zugriff und die Zusammenarbeit zu vereinheitlichen.

Android-Skills verwenden

Android-Skills sind in die Android CLI integriert und können mit jedem Agenten Ihrer Wahl verwendet werden.

gemini_cli_skills_demo.gif

Android CLI

Wir empfehlen, einen Android-Skill mit der Android CLI zu installieren. So können Sie Skills für jeden Agenten Ihrer Wahl einfacher finden, herunterladen, und verwalten.

  • Führen Sie android skills list aus, um die Liste der verfügbaren Skills aufzurufen.
  • Führen Sie android skills add skill-name aus, um einen Skill zu installieren. Wenn der Skill bereits installiert ist, wird er mit skills add auf die neueste Version aktualisiert.

Android Studio

Sie können einen Skill aus dem GitHub-Repository für Android-Skills herunterladen und in Ihr Projekt in Android Studio importieren.

Skill aktivieren

Der Agent aktiviert automatisch Skills, die für Ihre Aufgabe relevant sind. Wenn Sie einen Skill verwenden möchten, fordern Sie den Agenten auf, eine Aufgabe auszuführen, die mit dem Skill zusammenhängt, z. B. „Make my app UI edge-to-edge“ (Gestalte die UI meiner App von Rand zu Rand). Der Agent sollte den Skill automatisch finden und verwenden, wenn er verfügbar ist.

In Android Studio können Sie einen Skill auch manuell aufrufen, indem Sie @skill-name in das Chatfenster eingeben.

Eigene Skills erstellen

Sie können eigene Skills erstellen, um die Workflows Ihres Teams zu verpacken und freizugeben. Weitere Informationen zu den Anforderungen an Skills finden Sie in der Spezifikation für Agent-Skills.

Der Agent sucht nach Skills in den Verzeichnissen .skills/ oder .agent/skills/ im Stammverzeichnis Ihres Projekts. So erstellen Sie einen benutzerdefinierten Skill:

  1. Erstellen Sie ein Verzeichnis für Ihren Skill, z. B. my-new-skill/.
  2. Erstellen Sie eine Datei SKILL.md (Groß-/Kleinschreibung beachten) im neuen Verzeichnis.

Für Skills gelten folgende Regeln:

  • Ein Verzeichnis pro Skill: Jeder Skill muss ein eigenes Verzeichnis haben, das eine Datei SKILL.md und alle zusätzlichen Ressourcen enthält.
  • Verschachtelung:Alle Skills müssen sich im Verzeichnis .skills/ oder .agent/skills/ im Stammverzeichnis des Projekts befinden. Sie können jedoch Unterverzeichnisse verwenden, um die Organisation zu verbessern, z. B. skills/ui-flows/<skill name>/SKILL.md oder skills/testing/<skill name>/SKILL.md).
  • Bereich:Es werden nur Skills unterstützt, die sich im Code des Projekts befinden.
Verzeichnisstruktur, die den Speicherort von Skill-Dateien in einem Projekt zeigt
Struktur der Skill-Dateien.

Die Datei SKILL.md verwendet einen YAML-Block für Metadaten und Standard-Markdown für die Anweisungen.

  • name: Eine eindeutige Kennung für den Skill. Dieser sollte mit dem Verzeichnisnamen übereinstimmen.
  • description: Eine klare Erklärung der Funktion des Skills und wann der Agent ihn verwenden sollte.
  • Text:Der Markdown-Text unter dem YAML-Block enthält die Anweisungen, die das Verhalten des Agenten steuern, wenn der Skill aktiv ist.
---
name: skill-name
description: A description of what this skill does and when to use it.
metadata:
  author: example-org
  version: "1.0"
---

Skill content

Formatrichtlinien

  • Name:Maximal 64 Zeichen (nur Kleinbuchstaben, Ziffern und Bindestriche).
  • Beschreibung:Maximal 1.024 Zeichen.
  • Textinhalt:10.000 bis 20.000 Zeichen (~2.500 bis 5.000 Tokens). Wenn Ihre Anweisungen diese Grenze überschreiten, sollten Sie die detaillierte Dokumentation in eine Ressource datei verschieben, wie unter Optionale Skill-Verzeichnisse beschrieben.

Optionale Skill-Verzeichnisse

Damit die Datei SKILL.md übersichtlich und modular bleibt, können Sie zusätzliche Ressourcen in den folgenden optionalen Verzeichnissen im Ordner Ihres Skills einfügen:

  • scripts/: Enthält ausführbaren Code (z. B. Python oder Bash), den der Agent ausführen kann.
  • references/: Enthält detaillierte technische Dokumentation, API-Referenzen oder domänenspezifische Leitfäden.
  • assets/: Enthält statische Ressourcen wie Dokumentvorlagen, UI-Diagramme oder JSON-Schemas.

Wenn Sie in den Anweisungen in der Datei SKILL.md auf diese Dateien verweisen, verwenden Sie relative Pfade vom Stammverzeichnis des Skills aus. Beispiel: Run the script at scripts/cleanup.py (Führen Sie das Skript unter „scripts/cleanup.py“ aus).

Funktionsweise von Skills

Skills stellen Fachwissen auf Abruf dar. Mit dieser Struktur kann der Agent eine große Anzahl spezialisierter Funktionen verwalten, ohne das unmittelbare Kontextfenster des Modells zu überladen.

Das Modell entscheidet autonom, wann ein Skill eingesetzt werden soll, basierend auf Ihrer Anfrage und der Beschreibung des Skills. Wenn ein relevanter Skill gefunden wird, ruft das Modell dynamisch die vollständigen Anweisungen und Ressourcen ab, die zum Ausführen der Aufgabe erforderlich sind.