Verhalten von Gemini Code Assist in GitHub anpassen

Sie können das Verhalten von Gemini Code Assist in GitHub für einzelne Repositories ändern, indem Sie eine config.yaml-Datei in einem .gemini/-Ordner hinzufügen, der sich im Stammverzeichnis des Repository befindet. Die Datei config.yaml enthält verschiedene konfigurierbare Funktionen, die Sie aktivieren oder deaktivieren können. Sie können Gruppenkonfigurationen für mehrere Repositorys für eine Teilmenge von Gemini Code Assist für GitHub-Verhaltensweisen vornehmen.

Gemini Code Assist unterstützt auch das Hinzufügen einer styleguide.md-Datei zum Ordner .gemini/. Diese Datei enthält bestimmte Regeln, die Gemini Code Assist bei der Codeüberprüfung befolgen soll. Weitere Informationen zu Styleguides für Gemini Code Assist finden Sie unter Styleguide für Code-Reviews.

Felder für die Konfiguration

In diesem Abschnitt werden die Überlegungen für bestimmte anpassbare Felder in Gemini Code Assist in GitHub beschrieben. Eine vollständige Liste der Felder finden Sie im config.yaml-Schema.

  • code_review: comment_severity_threshold: In diesem Feld wird der Mindestschweregrad festgelegt, für den Gemini Code Assist Kommentare postet. Wenn Sie beispielsweise code_review: comment_severity_threshold: HIGH festgelegt haben, stellt Gemini Code Assist keine Pull-Anfrage-Kommentare für Probleme bereit, die als LOW oder MEDIUM eingestuft werden, z. B. kleinere Refaktorierungen. Gemini Code Assist bestimmt den Schweregrad eines Kommentars anhand der Art und Bedeutung des betreffenden Problems. Verstöße gegen Ihren benutzerdefinierten Styleguide erreichen oder überschreiten in der Regel den Schweregradschwellenwert.

  • ignore_patterns: In diesem Feld werden Glob-Muster verwendet. Bei der Interaktion mit dem Repository ignoriert Gemini Code Assist Dateien, die einem Muster in dieser Liste entsprechen.

  • memory_config: Dieses Feld ist anwendbar, wenn Sie die verbesserte Antwortqualität zuvor für mehrere Repositorys aktiviert haben. Wenn Sie die verbesserte Antwortqualität für mehrere Repositories aktivieren, können Sie memory_config: disabled: true für ein bestimmtes Repository innerhalb der Gruppierung festlegen. Dadurch wird die Funktion für dieses Repository deaktiviert.

config.yaml Schema

Das folgende Code-Snippet ist das Schema für die Datei config.yaml. Darin sind alle möglichen Konfigurationsoptionen und ihre zulässigen Werte definiert:

$schema: "http://json-schema.org/draft-07/schema#"
title: RepoConfig
description: Configuration for Gemini Code Assist on a repository. All fields are optional and have default values.
type: object
properties:
  have_fun:
    type: boolean
    description: Enables fun features such as a poem in the initial pull request summary. Default: false.
  ignore_patterns:
    type: array
    items:
      type: string
    description: A list of glob patterns for files and directories that Gemini Code Assist should ignore. Default: [].
  memory_config:
    type: object
    description: Configuration for persistent memory, which is used to improve responses.
    properties:
      disabled:
        type: boolean
        description: Whether to disable persistent memory for this specific repository. Default: false.
  code_review:
    type: object
    description: Configuration for code reviews. All fields are optional and have default values.
    properties:
      disable:
        type: boolean
        description: Disables Gemini from acting on pull requests. Default: false.
      comment_severity_threshold:
        type: string
        enum:
          - LOW
          - MEDIUM
          - HIGH
          - CRITICAL
        description: The minimum severity of review comments to consider. Default: MEDIUM.
      max_review_comments:
        type: integer
        format: int64
        description: The maximum number of review comments to consider. Use -1 for unlimited. Default: -1.
      pull_request_opened:
        type: object
        description: Configuration for pull request opened events. All fields are optional and have default values.
        properties:
          help:
            type: boolean
            description: Posts a help message on pull request open. Default: false.
          summary:
            type: boolean
            description: Posts a pull request summary on the pull request open. Default: true.
          code_review:
            type: boolean
            description: Posts a code review on pull request open. Default: true.
          include_drafts:
            type: boolean
            description: Enables agent functionality on draft pull requests. Default: true.

config.yaml-Beispiel

Das folgende Code-Snippet ist ein Beispiel für eine config.yaml-Datei. In diesem Beispiel ist für jede Property der Standardwert festgelegt, der von Gemini Code Assist verwendet wird. Sie können dieses Snippet als Vorlage verwenden, um Ihre eigene config.yaml-Datei zu erstellen:

have_fun: false
memory_config:
  disabled: false
code_review:
  disable: false
  comment_severity_threshold: MEDIUM
  max_review_comments: -1
  pull_request_opened:
    help: false
    summary: true
    code_review: true
    include_drafts: true
ignore_patterns: []

Konfigurationen in mehreren Repositories verwalten

Einige Aspekte von Gemini Code Assist in GitHub können für mehrere Repositorys verwaltet werden:

  • Wenn Sie die Privatnutzerversion haben, können Sie bestimmte Einstellungen für alle mit einem Konto verknüpften Repositories aktivieren oder deaktivieren.

  • Wenn Sie die Enterprise-Version haben, können Sie bestimmte Einstellungen für mehrere Repositories, die durch eine Developer Connect-Verbindung gruppiert sind, ein- oder ausschalten. In diesem Fall verwalten Sie die gemeinsamen Einstellungen über die Google Cloud Console.

Wenn ein Repository als Teil einer Gruppe verwaltet wird, aber auch eigene config.yaml hat, überschreiben die config.yaml-Einstellungen des Repositorys die Gruppeneinstellungen.

Informationen zum Verhalten bestimmter Einstellungen und zu Ausnahmen finden Sie im config.yaml-Schema.

In den folgenden Schritten wird gezeigt, wie Sie eine Reihe von Konfigurationen für mehrere Repositorys steuern. Bei diesen Schritten wird davon ausgegangen, dass Sie Gemini Code Assist in GitHub bereits eingerichtet haben.

Nutzer

  1. Rufen Sie in Gemini Code Assist die Seite „Einstellungen“ auf.

    Zu den Einstellungen

  2. Klicken Sie bei entsprechender Aufforderung auf Log in with GitHub (Mit GitHub anmelden) und folgen Sie der Anleitung, um sich über Gemini Code Assist bei GitHub anzumelden.

  3. Wählen Sie auf der Seite Gemini das Konto aus, das Sie verwenden möchten, lesen Sie die Nutzungsbedingungen und klicken Sie auf Weiter.

  4. Aktualisieren Sie auf der Seite Free Agent die Einstellungen nach Bedarf.

  5. Klicken Sie auf Speichern.

Unternehmen

  1. Rufen Sie in der Google Cloud Console die Seite Agents & Tools für Gemini Code Assist auf.

    Zu „KI-Agenten und Tools“

  2. Suchen Sie im Bereich Agents (Agents) die Karte Code Assist Source Code Management (Code Assist-Quellcodeverwaltung) und klicken Sie auf Advanced (Erweitert).

    Der Bereich Code Assist für Quellcodeverwaltung bearbeiten wird geöffnet.

  3. Klicken Sie in der Tabelle Verbindungen auf den Namen der Verbindung, auf die Sie eine Konfiguration anwenden möchten.

    Die Detailseite für die Verbindung wird geöffnet.

  4. Aktualisieren Sie auf dem Tab Einstellungen die Einstellungen, die Sie ändern möchten.

  5. Klicken Sie auf Speichern.

Nächste Schritte