GitHub propose deux modes de correction automatique distincts pour les alertes code scanning : agentic autofix et Copilot Autofix. Les deux utilisent des modèles de langage volumineux (LLMs), des données de la base de code et code scanning de l’analyse pour générer des modifications et explications potentielles du code. Toutefois, ils ont différents flux de travail, résultats, exigences d’accès et utilisation.
Quels sont les deux types de correction automatique ?
Agentic Autofix et Copilot Autofix résolvent différents problèmes :
- Utilisez agentic autofix quand vous souhaitez Copilot examiner et corriger une ou plusieurs alertes pour vous, de bout en bout.
- Utilisez Copilot Autofix quand vous souhaitez une modification de code suggérée pour une alerte, que vous passez en revue et appliquez vous-même.
Avec agentic autofix, vous affectez une ou plusieurs alertes à Copilot. Il explore la base de code, génère un correctif et valide les modifications. Ensuite, il ouvre un brouillon de pull request contenant le correctif proposé.
Avec Copilot Autofix, GitHub génère une seule modification de code suggérée pour une alerte prise en charge. Vous pouvez utiliser cette suggestion pour créer une pull request vous-même.
Où est disponible la correction automatique ?
L’accès aux deux fonctionnalités fonctionne différemment. Pour agentic autofix sur un dépôt appartenant à l’organisation, un propriétaire de l’organisation ou un responsable de la sécurité doit l’activer. Si l’organisation appartient à une entreprise, un propriétaire d’entreprise ou un gestionnaire de sécurité doit également l’autoriser. L’activation de l’organisation l’active pour les dépôts éligibles par défaut, mais un administrateur de dépôt peut le désactiver ou le réactiver lorsque les paramètres de niveau supérieur le permettent.
Pour un dépôt public éligible appartenant à un compte personnel, un administrateur de référentiel peut activer agentic autofix directement. Vous n’avez pas besoin de licence Copilot pour utiliser agentic autofix, mais elle n’est pas disponible pour les référentiels détenus par Enterprise Managed Users. Pour plus d’informations, consultez Gestion de l’accès à la correction automatique agentique pour l’analyse du code.
Copilot Autofix, en revanche, est activé par défaut pour tous les référentiels qui utilisent CodeQL, sauf si un administrateur le désactive. Il est disponible pour tous les dépôts publics sur GitHub.com. Il est également disponible pour les dépôts internes ou privés appartenant à des organisations et entreprises disposant d’une licence GitHub Code Security. Contrairement à agentic autofix, Copilot Autofix est disponible pour les référentiels détenus par Enterprise Managed Users.
Choix d’un type de correction automatique
Les coûts d’utilisation entrent également en ligne de compte dans le choix de la fonctionnalité à utiliser. Chaque agentic autofix session d’agent consomme AI credits et GitHub Actions minutes, tandis que Copilot Autofix les correctifs suggérés ne consomment pas AI credits.
Si agentic autofix n’est pas activée pour un dépôt, vous pouvez toujours utiliser Copilot Autofix pour générer des correctifs suggérés pour les alertes prises en charge.
Utilisation de agentic autofix
Utilisez agentic autofix quand vous souhaitez Copilot examiner une ou plusieurs alertes et préparer un brouillon de pull request. Vous pouvez affecter agentic autofix des alertes à partir du backlog du référentiel ou d’une campagne de sécurité. Chaque attribution démarre une session d’agent. La session explore la base de code au-delà du fichier concerné, puis génère et valide un correctif. Il ouvre une pull request avec les modifications. Consultez « Résoudre les alertes d'analyse de code ».
N'oubliez pas les éléments suivants :
- Pour plus d’informations sur l’activation de agentic autofix au niveau de l’organisation, de l’entreprise ou du référentiel, consultez Gestion de l’accès à la correction automatique agentique pour l’analyse du code.
- Agentic Autofix consomme des crédits d’IA de sécurité du code et GitHub Actions des minutes. Consultez « GitHub Advanced Security facturation des licences ».
- Copilot utilise les instructions personnalisées qui s’appliquent quand un correctif est généré. Consultez « Ajouter des instructions personnalisées pour Copilot ».
- Agentic Autofix fonctionne selon le principe du meilleur effort.
Copilot valide les correctifs en réexécutant CodeQL avec la code scanning suite de requêtes. Il ne peut pas confirmer les correctifs pour les alertes provenant de requêtes personnalisées CodeQL , de la
security-extendedCodeQL suite de requêtes ou code scanning des alertes provenant d’outils tiers.
Passez toujours en revue et testez les modifications générées avant de fusionner la pull request.
Utilisation de Copilot Autofix
Copilot Autofix fonctionne de la même façon si un dépôt utilise la configuration par défaut ou avancée pour code scanning. Il n’existe aucune étape distincte pour l’activer : activer code scanning avec CodeQL suffit. Consultez « Définition de la configuration par défaut pour l’analyse du code ».
Copilot Autofix fait également partie intégrante de GitHub Code Quality, et continue à s’exécuter sur les résultats de qualité du code même lorsqu’il est désactivé pour les résultats code scanning.
Les administrateurs au niveau de l’entreprise, de l’organisation et du référentiel peuvent désactiver Copilot Autofix. Les paramètres cascadent vers le bas : si un propriétaire d’entreprise interdit la fonctionnalité, aucune organisation ou référentiel dans cette entreprise ne peut l’activer, et si un propriétaire de l’organisation le désactive, aucun référentiel dans cette organisation ne peut le réactiver. Pour restaurer la fonctionnalité à un niveau donné, un administrateur à ce niveau ou un niveau supérieur doit inverser le paramètre. Pour savoir comment gérer Copilot Autofix à chaque niveau, consultez Désactivation de la correction automatique Copilot pour l’analyse du code.