Gemini mit AGENTS.md-Dateien anpassen

Sie können Gemini in Android Studio benutzerdefinierte Anweisungen geben, die mit einer oder mehreren AGENTS.md-Dateien befolgt werden sollen. AGENTS.md -Dateien werden neben den anderen Dateien in Ihrer Codebasis platziert. So können Sie sie ganz einfach in Ihr Versionsverwaltungssystem (Version Control System, VCS) einchecken und projektspezifische Anweisungen, Regeln für den Programmierstil und andere Anleitungen für Ihr gesamtes Team freigeben.

Gehen Sie hierfür wie folgt vor:

  1. Erstellen Sie eine AGENTS.md-Datei an einer beliebigen Stelle im Dateisystem Ihres Projekts. Gemini durchsucht das aktuelle Verzeichnis und alle übergeordneten Verzeichnisse nach AGENTS.md-Dateien, wenn Sie eine Anfrage senden. Weitere Informationen finden Sie unter Funktionsweise von AGENTS.md Dateien.

  2. Fügen Sie Ihre Anweisungen hinzu. Schreiben Sie Ihre Anweisungen in Markdown. Zur besseren Lesbarkeit können Sie Überschriften und Aufzählungszeichen für verschiedene Regeln verwenden. Beispielanweisungen ansehen.

  3. Speichern Sie die Datei und übertragen Sie sie in Ihr VCS, um sie für Ihr Team freizugeben.

AGENTS.md-Dateien als Kontext verwalten

Sie können AGENTS.md-Dateien als Kontext für eine bestimmte Anfrage anwenden oder entfernen. Verwenden Sie dazu den Bereich Kontext im Chatbereich. Die Option AGENTS.md-Dateien enthält alle AGENTS.md-Dateien im aktuellen Verzeichnis und in den übergeordneten Verzeichnissen.

AGENTS.md-Dateien als Kontext verwalten
Abbildung 1. AGENTS.md-Dateien als Kontext verwalten

Beispielanweisungen

Sie können die AGENTS.md-Datei verwenden, um dem Agent Anweisungen zu geben. Im Folgenden finden Sie einige Beispiele. Die Anweisungen, die Sie geben, sollten jedoch spezifisch für Ihr Projekt sein.

  • „Die Hauptaktivität ist /path/to/MainActivity.kt.“
  • „Der Code zur Unterstützung der Navigation zwischen Bildschirmen ist path/to/navigation/UiNavigation.kt.“
  • „Der Code zur Verarbeitung von HTTP-Anfragen befindet sich unter <path>.“
  • Projektarchitektur
    • „Platzieren Sie die gesamte Geschäftslogik in ViewModels.“
    • „Befolgen Sie immer die offiziellen Empfehlungen zur Architektur, einschließlich der Verwendung einer mehrschichtigen Architektur. Verwenden Sie einen unidirektionalen Datenfluss (Unidirectional Data Flow, UDF), ViewModels, eine lebenszyklusbewusste UI-Zustandserfassung und andere Empfehlungen.“
  • Bevorzugte Bibliotheken: „Verwenden Sie die Bibliothek <Bibliotheksname> für die Navigation.“
  • Platzhalternamen für gängige API-Dienste oder interne Terminologie definieren: „Der primäre Backend-Dienst wird als ‚PhotoSift-API‘ bezeichnet.“
  • Styleguides des Unternehmens: „Alle neuen UI-Komponenten müssen mit Jetpack Compose erstellt werden. Schlagen Sie keine XML-basierten Layouts vor.“

AGENTS.md-Dateien modularisieren

Sie können große AGENTS.md-Dateien in kleinere Dateien aufteilen, die in verschiedenen Kontexten wiederverwendet werden können:

  1. Trennen Sie eine Reihe von Anweisungen ab und speichern Sie sie in einer anderen Markdown-Datei, z. B. style-guidance.md.

  2. Verweisen Sie in einer AGENTS.md-Datei auf die kleineren Markdown-Dateien. Verwenden Sie dazu das Symbol @ gefolgt vom Pfad zu der Datei, die Sie importieren möchten. Die folgenden Pfadformate werden unterstützt:

    • Relative Pfade:
      • @./file.md - Aus demselben Verzeichnis importieren
      • @../file.md - Aus dem übergeordneten Verzeichnis importieren
      • @./subdirectory/file.md - Aus einem Unterverzeichnis importieren
    • Absolute Pfade: @/absolute/path/to/file.md

Die folgende AGENTS.md-Datei verweist beispielsweise auf zwei andere Anweisungsdateien:

# My AGENTS.md

You are an experienced Android app developer.

@./get-started.md

## Coding style

@./shared/style-guidance.md

Funktionsweise von AGENTS.md-Dateien

Gemini durchsucht automatisch das aktuelle Verzeichnis und die übergeordneten Verzeichnisse nach AGENTS.md-Dateien und fügt deren Inhalt als Präambel am Anfang jeder Eingabeaufforderung hinzu. Wenn Sie beim Senden einer Anfrage keine Datei geöffnet haben, wird standardmäßig die AGENTS.md-Datei im Stammverzeichnis des Projekts verwendet (falls vorhanden).

Was ist der Unterschied zwischen AGENTS.md-Dateien und Regeln?

Regeln ermöglichen es Ihnen auch, Anweisungen und Einstellungen zu definieren, die für alle Eingabeaufforderungen gelten. Regeln werden jedoch in der IntelliJ-Datei /.idea/project.prompts.xml definiert, während AGENTS.md-Dateien neben Ihrem Quellcode gespeichert werden und IDE-neutral sind. Wir empfehlen die Verwendung von AGENTS.md-Dateien, wenn die Anweisungen hauptsächlich für Ihr Team freigegeben werden sollen.

Was ist der Unterschied zwischen AGENTS.md-Dateien und Skills?

Skills stellen On-Demand-Expertise dar, die aufgerufen wird, wenn Ihre Anfrage mit einer Skill-Beschreibung übereinstimmt. Inhalte in AGENTS.md werden dagegen am Anfang jeder Eingabeaufforderung hinzugefügt. Wir empfehlen, Skills für bestimmte Aufgaben und AGENTS.md-Dateien zu verwenden, um das allgemeine Verhalten des Agent zu beeinflussen. Weitere Informationen zu Skills finden Sie unter Einführung in Android-Skills.