ESPACE PUBLICITAIRE DISPONIBLE · PARLONS-EN

Comment les équipes d'ingénierie assignent les issues GitHub et corrections de bugs à Devin pour créer des Pull Requests automatiquement

365Finds Editorial
11 430 articles Wiki répertoriés

Utilisez 365 Wiki avec votre IA

Copiez le prompt ci-dessous, collez-le dans l’IA que vous utilisez déjà, puis posez directement votre question.

Télécharger le Skill complet

Commencez par essayer le prompt. Si vous utilisez souvent 365 Wiki, installez le Skill 365Wiki complet pour ne plus avoir à le coller. Sans IA habituelle, les versions web de Gemini ou Microsoft Copilot conviennent aussi.

Dans les organisations d'ingénierie logicielle contemporaines, le tri des rapports de bugs, l'identification de la cause racine dans des bases de code denses, la rédaction de tests de non-régression et la préparation des Pull Requests (PR) monopolisent une part considérable du temps des développeurs. Devin, l'ingénieur logiciel autonome propulsé par l'IA et conçu par Cognition, transforme cette maintenance réactive en un flux de travail collaboratif fluide et automatisé. Loin d'un simple module d'autocomplétion ou d'un agent conversationnel statique, Devin agit en tant que coéquipier asynchrone dans le cloud, doté de sa propre machine virtuelle, d'un terminal shell, d'un navigateur web et d'outils d'édition complets.

En connectant Devin directement à vos dépôts GitHub, les équipes peuvent lui déléguer des tâches de débogage via des commentaires d'issues, des pipelines GitHub Actions ou des événements de supervision. Devin reproduit l'anomalie dans un bac à sable isolé, élabore et valide le correctif au moyen de tests locaux, puis publie une Pull Request enrichie de preuves d'exécution, allant jusqu'à corriger de manière autonome les alertes CI ultérieures.


1. Mise en place initiale : Connexion à GitHub et configuration de l'espace Devin

Avant de déléguer des tâches, l'organisation doit établir des accès sécurisés au dépôt et transmettre à Devin le contexte technique requis pour compiler et exécuter les tests sans encombre.

Installation de l'application GitHub

Devin interagit avec votre code source par l'intermédiaire de l'application officielle GitHub App ou d'un compte de service d'entreprise. Les Personal Access Tokens (PAT) offrent un accès strictement en lecture seule et ne permettent pas de créer des branches, de soumettre des PR ou de publier des commentaires.

  1. Depuis l'interface d'administration de Devin, accédez à Settings > Integrations > GitHub (ou Settings > Connections en environnement Enterprise).
  2. Autorisez la GitHub App Devin et sélectionnez les organisations ou dépôts auxquels l'agent aura accès.
  3. Vérifiez que l'intégration dispose des autorisations en lecture et écriture sur les contenus du dépôt (Repository contents), les Pull Requests et les Issues.

Configuration des Snapshots de machine et de la connaissance du dépôt (Repo Knowledge)

De même qu'un développeur débutant nécessite un poste préconfiguré avec les compilateurs, les bibliothèques et les conventions internes, Devin a besoin d'un socle stable pour ne pas gaspiller d'unités de calcul (ACU) en installations répétitives :


2. Modes d'assignation : Trois méthodes pour transmettre des issues GitHub à Devin

Selon le contexte opérationnel et le niveau d'automatisation recherché, les équipes peuvent soumettre des anomalies à Devin de manière interactive, via des workflows CI/CD ou par détection d'événements.

Méthode 1 : Commande interactive dans les commentaires d'issue (/devin)

Pour les anomalies du quotidien et les tâches priorisées du backlog, l'approche la plus directe consiste à solliciter Devin directement dans le fil de discussion de l'issue :

Méthode 2 : Déclenchement automatisé via GitHub Actions (devin-action)

Pour orchestrer la prise en charge des anomalies à partir d'étiquettes (labels), l'action officielle disponible sur le GitHub Marketplace (aaronsteers/devin-action@v1) offre une solution déclarative :

Méthode 3 : Gestion d'incidents avec Devin Auto-Triage

Lorsque les alertes émanent directement des outils d'observabilité plutôt que de tickets manuels, la fonctionnalité Auto-Triage de Devin traite directement les webhooks, les erreurs Sentry et les événements de dépôt :


3. Bonnes pratiques de rédaction des issues et calibrage de l'autonomie

Même si Devin sait naviguer avec agilité dans le code source, la précision de sa première passe dépend grandement de la qualité des instructions fournies.

Conseils clés pour optimiser les résultats :

  1. Fournir des critères de reproduction explicites : Transmettez les traces de pile complètes (stack traces), les comportements observés et attendus, ainsi que les fichiers potentiellement ciblés.
  2. Exiger d'abord un test unitaire en échec : Demandez formellement à Devin de créer un test reproduisant le bug avant de toucher au code métier. Cela lui procure un critère de vérification objectif pour valider sa propre correction.
  3. Circonscrire le périmètre des modifications : Si l'anomalie se situe à proximité de modules stratégiques, délimitez le champ d'action (par exemple : "Modifie uniquement src/utils/date_parser.ts sans refactoriser les utilitaires partagés").
  4. Régler le degré d'autonomie (Agency) : Dans Library > Behaviors, ajustez le paramètre Agency. En mode entièrement autonome, Devin poursuit son travail jusqu'à la création de la PR ; en mode restreint, il soumet un plan d'action préalable et attend une validation humaine avant d'exécuter des modifications majeures.

4. Exécution autonome et boucle fermée de revue de code (Closed Review Loop)

Dès réception de la mission, Devin prend en charge l'ensemble du cycle de développement au sein de son environnement dédié :

  1. Diagnostic et reproduction du bug : Devin consulte la base de connaissances du projet, lance des commandes d'analyse dans son terminal et isole l'origine de la défaillance.
  2. Implémentation et validation locale : Devin applique le correctif et exécute la suite de tests ainsi que les linters du projet. Si une vérification échoue, il interprète les messages d'erreur et ajuste son code de manière itérative jusqu'à validation complète.
  3. Création de la Pull Request : Devin crée une branche de travail, valide les modifications et soumet la PR vers la branche cible. Le descriptif fait le lien avec l'issue d'origine (ex. Fixes #342), détaille les correctifs appliqués et fournit l'enregistrement vidéo de la session de travail.

La boucle fermée : Autocorrection des retours CI et de revue

L'ouverture de la PR ne marque pas la fin de la collaboration. L'écueil classique des outils IA résidait dans le fait que les ingénieurs devaient copier-coller manuellement les échecs de build ou les commentaires de révision dans le chat. Devin élimine cette lourdeur :


5. Gouvernance et gestion des ressources

Pour intégrer Devin à grande échelle sans risque opérationnel ni dérive budgétaire, appliquez les principes suivants :

En associant les autorisations de la GitHub App, des instructions d'issues précises et la boucle fermée d'autocorrection des PR, les équipes de développement peuvent résorber durablement leur dette de bugs et assurer une résolution continue 24 heures sur 24.


Références