Injection d'agents IA dans CI/CD : utilisation de GitHub Copilot CLI dans les actions GitHub pour les échecs intelligents

DEV - 15/12
TL;DR pour les développeurs occupés Nous sommes habitués aux pipelines CI/CD qui échouent en raison d'erreurs de syntaxe ou qui échouent...

TL;DR pour les développeurs occupés

Nous sommes habitués aux pipelines CI/CD qui échouent en raison d’erreurs de syntaxe ou d’échecs de tests unitaires. Mais qu’en est-il des échecs « qualitatifs » ? En intégrant la CLI GitHub Copilot directement dans une action GitHub, vous pouvez créer des agents IA qui examinent votre code pour la sécurité, la logique ou les spécifications du produit. Si l'agent détecte un problème critique, il déclenche un échec programmatique, arrêtant la fusion avant même qu'un humain ne l'examine.

Le Saint Graal du DevOps est « Shift Left » : détecter les problèmes le plus tôt possible. Nous maîtrisons cela pour les problèmes déterministes :

  • Linter : "Vous avez manqué un point-virgule." -> ❌ Échec.
  • Plaisanterie : "Je m'attendais à 200, j'en ai reçu 500." -> ❌ Échec.

Mais nous comptons toujours fortement sur les humains pour les évaluations non déterministes :

  • « Cette requête SQL est-elle réellement sécurisée ? »
  • « Avons-nous mis à jour la documentation pour cette nouvelle fonctionnalité ? »
  • « Ce code répond-il réellement aux critères d'acceptation ? »

Cet article montre comment combler cet écart. Nous créerons un agent de sécurité qui réside dans votre pipeline CI, analysera votre code à l'aide de la CLI Copilot et fera échouer la construction s'il détecte une vulnérabilité critique.

L'architecture : comment ça marche

Il ne s'agit pas seulement de demander à ChatGPT de résumer un PR. Nous construisons un système en boucle fermée :

  1. Le cerveau : la CLI GitHub Copilot (npm i -g @github/copilot), qui crée la couche de renseignement.
  2. The Persona : un fichier de démarque (.github/agents/security-reporter.agent.md) qui fait office d'invite système.
  3. Le déclencheur : un script bash qui analyse la sortie en langage naturel de l'IA pour rechercher des phrases "Kill Switch" spécifiques afin de déterminer la réussite/l'échec.

Étape 1 : Définition de l'agent (Ingénierie rapide)

La partie la plus critique de ce flux de travail n'est pas le YAML ; c'est l'Ingénierie Rapide. Nous avons besoin que l’IA soit un auditeur sévère, et non un assistant utile.

Nous stockons cette invite dans.github/agents/security-reporter.agent.md. Lien vers le fichier d'invite complet ici.

--- nom : SecurityReportAgent description : Security Report Agent - Analyse le code TypeScript et React pour les vulnérabilités de sécurité et crée des rapports de sécurité modèle : GPT-5.1 (Aperçu) --- ## Objectif Cet agent effectue une analyse de sécurité complète du code Astro, TypeScript. Il identifie les vulnérabili...
[Courte citation de 8% de l'article original]
Loading...