Vous pouvez modifier
le comportement de Gemini Code Assist sur GitHub
pour des dépôts individuels en ajoutant un fichier config.yaml à un dossier
.gemini/ situé à la racine du dépôt. Le fichier config.yaml contient diverses fonctionnalités configurables que vous pouvez activer ou désactiver. Vous pouvez
effectuer des configurations de groupe sur plusieurs dépôts
pour un sous-ensemble de comportements de Gemini Code Assist sur GitHub.
Gemini Code Assist permet également d'ajouter un fichier styleguide.md au dossier .gemini/, qui indique à Gemini Code Assist certaines règles spécifiques à suivre lors d'une revue de code.
Pour en savoir plus sur les guides de style pour Gemini Code Assist,
consultez le guide de style pour l'examen du code.
Champs de configuration
Cette section décrit les considérations concernant des champs personnalisables spécifiques dans Gemini Code Assist sur GitHub. Pour obtenir la liste complète des
champs, consultez le config.yaml schéma.
code_review: comment_severity_threshold: ce champ définit le niveau de gravité minimal pour lequel Gemini Code Assist publie des commentaires. Par exemple, si vous avez définicode_review: comment_severity_threshold: HIGH, Gemini Code Assist ne fournira pas de commentaires de demande d'extraction pour les problèmes qu'il considère comme étant de gravitéLOWouMEDIUM, tels que les refactorisations mineures. Gemini Code Assist determines the severity of a comment based on the type and significance of the issue under consideration, with violations of your custom style guide typically meeting or exceeding the severity threshold.ignore_patterns: ce champ utilise des modèles glob. Lorsque vous interagissez avec le dépôt, Gemini Code Assist ignore les fichiers qui correspondent à un modèle de cette liste.memory_config: ce champ s'applique si vous avez déjà activé l'amélioration de la qualité des réponses pour plusieurs dépôts. Lorsque vous activez l'amélioration de la qualité des réponses pour plusieurs dépôts, vous pouvez définirmemory_config: disabled: truepour un dépôt spécifique du regroupement, ce qui désactive la fonctionnalité pour ce dépôt.
Schéma config.yaml
L'extrait de code suivant correspond au schéma du fichier config.yaml. Il définit toutes les options de configuration possibles et leurs valeurs acceptées :
$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: false. 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.
Exemple config.yaml
L'extrait de code suivant est un exemple de fichier config.yaml. Dans cet exemple, chaque propriété est définie sur la valeur par défaut utilisée par Gemini Code Assist. Vous pouvez utiliser cet extrait comme modèle pour créer votre propre fichier config.yaml :
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: false
code_review: true
include_drafts: true
ignore_patterns: []
Gérer les configurations sur plusieurs dépôts
Vous pouvez activer ou désactiver certains paramètres pour plusieurs dépôts lorsqu'ils sont regroupés par une connexion Developer Connect. Ces paramètres collectifs sont gérés via la Google Cloud console.
Si un dépôt est géré dans le cadre d'un groupe, mais qu'il possède également son propre fichier config.yaml, les paramètres config.yaml du dépôt remplacent les paramètres du groupe.
Pour connaître le comportement et les exceptions spécifiques des paramètres, consultez le schéma config.yaml.
Les étapes suivantes montrent comment contrôler un ensemble de configurations sur plusieurs dépôts. Ces étapes supposent que vous avez déjà configuré Gemini Code Assist sur GitHub.
Dans la Google Cloud console, accédez à la page Agents et outils de Gemini Code Assist.
Dans la section Agents, recherchez la fiche Gestion du code source de Code Assist, puis cliquez sur Avancé.
Le volet Modifier la gestion du code source de Code Assist s'ouvre.
Dans le tableau Connexions, cliquez sur le nom de la connexion à laquelle vous souhaitez appliquer une configuration.
La page de détails de la connexion s'ouvre.
Sous l'onglet Paramètres, modifiez les paramètres que vous souhaitez modifier.
Cliquez sur Enregistrer.
Étape suivante
- Ajoutez un guide de style pour Gemini Code Assist dans GitHub.