Passer au contenu principal

Documentation Index

Fetch the complete documentation index at: https://docs.devinenterprise.com/llms.txt

Use this file to discover all available pages before exploring further.

Les automatisations vous permettent de connecter des événements externes — messages Slack, webhooks GitHub, mises à jour de tickets Linear, planifications et webhooks personnalisés — à des sessions Devin qui démarrent automatiquement. Au lieu de taguer manuellement Devin chaque fois qu’un bug est signalé ou qu’une vérification CI échoue, vous définissez le déclencheur une seule fois et Devin traite chaque événement au fur et à mesure.

Concepts de base

Une automatisation comporte trois parties :
PartieCe qu’elle fait
DéclencheurL’événement qui lance l’automatisation (p. ex. un message Slack dans #bugs, un échec de CI sur GitHub, un changement de libellé dans Linear)
ConditionsDes filtres facultatifs qui restreignent le déclencheur (p. ex. ne se déclenche que si le libellé est bug, uniquement pour un repo spécifique)
ActionCe que Devin fait lorsque le déclencheur s’active — démarrer une nouvelle session, envoyer un message à une session existante ou faire office d’agent de triage

Types d’action

ActionDescription
Démarrer une sessionCrée une nouvelle session Devin avec le prompt que vous définissez. La charge utile de l’événement est automatiquement incluse dans le contexte.
Envoyer un message à une sessionEnvoie un message à une session Devin existante de longue durée — utile pour transmettre des événements à une session qui conserve son état.
Triage DevinDevin persistant qui surveille un canal Slack. Il examine chaque message entrant, détermine ce qui nécessite une attention particulière et crée des sous-Devin pour les éléments qui nécessitent une investigation. Consultez Auto-triage pour plus de détails.
Notification par e-mailVous envoie un e-mail lorsque l’automatisation s’exécute — à chaque exécution, uniquement en cas d’échec ou uniquement en cas de réussite.

Sources de déclenchement

SourceTypes d’événementsExemple de cas d’utilisation
SlackNouveau message, réaction ajoutéeAssurer le triage des signalements de bugs dans #incidents, réagir avec 🚨 pour lancer une investigation
GitHubCommentaire sur un problème, PR ouverte/mise à jour, revue de PR, exécution de vérification (CI), pushCorriger automatiquement les échecs de CI, répondre aux commentaires /devin sur les problèmes
LinearProblème créé, libellé ajouté, statut modifié, priorité modifiée, assignationAssurer le triage des bugs lorsqu’un libellé est ajouté, implémenter des tickets lorsqu’ils sont assignés à Devin
PlanificationRécurrent (basé sur cron)Revue quotidienne des erreurs Sentry, Mises à jour hebdomadaires des dépendances, tests de fumée nocturnes
WebhookRequête HTTP entranteConnecter n’importe quel système externe (PagerDuty, Datadog, Sentry, outils personnalisés) à Devin via une URL de webhook
Une même automatisation peut avoir plusieurs déclencheurs — ils sont combinés avec un OU, donc l’automatisation se déclenche dès qu’un de ses déclencheurs correspond. Par exemple, vous pouvez avoir une automatisation qui se déclenche à la fois sur un échec de CI GitHub et sur une réaction Slack.

Créer une automatisation

Depuis la page automatisation

  1. Accédez à automatisation dans la barre latérale
  2. Cliquez sur New automation (ou utilisez la zone de saisie du chat pour décrire ce que vous souhaitez en langage naturel — Devin générera la configuration de l’automatisation pour vous)
  3. Configurez le déclencheur, les conditions et l’action
  4. Cliquez sur Save

À partir d’un modèle

  1. Accédez à Automatisations dans la barre latérale
  2. Cliquez sur Modèles en haut à droite
  3. Parcourez la galerie de modèles — chaque modèle est une automatisation préconfigurée pour un workflow courant
  4. Cliquez sur un modèle pour préremplir l’éditeur avec son déclencheur, son action et les limites suggérées
  5. Personnalisez la configuration (p. ex., sélectionnez votre canal Slack ou votre dépôt) et enregistrez-la

Utilisation du langage naturel

Sur la page des automatisations, vous pouvez décrire ce que vous voulez dans la zone de saisie du chat en bas — par exemple, « Lorsqu’une vérification CI échoue sur my-org/my-repo, demande à Devin de corriger le problème et de pousser sur la même branche. » Devin générera la configuration de l’automatisation, que vous pourrez examiner et enregistrer.

Configurer les déclencheurs

Déclencheurs Slack

Les déclencheurs Slack s’activent lorsqu’un message est publié ou lorsqu’une réaction est ajoutée dans un canal où Devin a été invité.
  • Message Slack : Se déclenche à la publication de nouveaux messages dans un canal spécifique. Vous devez sélectionner le canal lors de la configuration du déclencheur.
  • Réaction Slack : Se déclenche lorsqu’une réaction emoji spécifique est ajoutée à un message (p. ex. 🚨 pour les incidents). Vous pouvez filtrer par nom de réaction et par canal.
Devin doit être invité dans le canal Slack pour que le déclencheur fonctionne. Vous devez également avoir connecté votre compte Slack personnel dans Settings > Integrations > Slack.

Déclencheurs GitHub

Les déclencheurs GitHub s’activent lors d’événements du dépôt. Vous devez sélectionner un dépôt spécifique pour chaque déclencheur.
  • Commentaire sur un problème : S’active lorsqu’un commentaire est publié sur un problème GitHub. Généralement utilisé avec une condition starts_with "/devin" pour permettre aux utilisateurs de saisir /devin sur n’importe quel problème afin de déclencher Devin.
  • Pull request : S’active lors d’événements de PR (ouverture, synchronisation, etc.).
  • Revue de pull request : S’active lorsqu’une revue est soumise sur une PR.
  • Commentaire de revue de pull request : S’active pour chaque commentaire de revue.
  • Check run (CI) : S’active lorsqu’une vérification CI se termine. Filtrez par conclusion = failure pour corriger automatiquement les builds en échec.
  • Push : S’active lors des pushs vers une branche.
Les automatisations GitHub ne fonctionnent qu’avec des dépôts privés, pour des raisons de sécurité.

Déclencheurs Linear

Les déclencheurs Linear se déclenchent lors d’événements liés aux problèmes dans votre espace de travail Linear connecté. Vous devez sélectionner une équipe pour chaque déclencheur.
  • Problème créé : Se déclenche lorsqu’un nouveau problème est créé dans l’équipe sélectionnée.
  • Libellé ajouté : Se déclenche lorsqu’un libellé est appliqué à un problème (p. ex. bug, devin).
  • Statut modifié : Se déclenche lorsque le statut d’un problème change (p. ex. déplacement vers “In Progress”).
  • Priorité modifiée : Se déclenche lorsque la priorité d’un problème change.
  • Assigné : Se déclenche lorsqu’un problème est attribué à quelqu’un.

Déclencheurs de planification

Les déclencheurs de planification s’exécutent de manière récurrente selon des règles de récurrence standard.
  • Récurrent : définissez la fréquence (horaire, quotidienne, hebdomadaire) et l’heure. En interne, les planifications utilisent le format RRULE d’iCalendar.
Les heures sont affichées dans votre fuseau horaire local, mais stockées en UTC en interne.

Déclencheurs webhook

Les déclencheurs webhook vous permettent de connecter n’importe quel système externe à Devin via un endpoint HTTPS unique.
  1. Créez une automatisation avec un déclencheur Webhook
  2. Après l’avoir enregistrée, copiez l’URL du webhook et le secret depuis la page de détail de l’automatisation
  3. Configurez votre système externe (PagerDuty, Datadog, Sentry ou tout outil personnalisé) pour envoyer des requêtes HTTP POST à cette URL
  4. Ajoutez éventuellement un filtre de charge utile — un motif regex auquel le corps de la requête doit correspondre pour que l’automatisation se déclenche
La charge utile du webhook est inclus dans le prompt de la session Devin en tant que contexte. Les charges utiles de plus de 200 KB sont automatiquement tronqués.

Configurer les actions

Démarrer une session

L’action la plus courante. Lorsque le déclencheur se déclenche, Devin démarre une nouvelle session avec votre prompt. La charge utile de l’événement (par ex. le texte du message Slack, le corps du webhook GitHub ou les détails du ticket Linear) est automatiquement ajoutée au prompt afin que Devin dispose de tout le contexte nécessaire. Options :
  • Prompt : Les instructions que Devin suit. Rédigez-le comme vous rédigeriez un prompt Devin classique.
  • Playbook (facultatif) : Utilisez @playbook-name dans votre prompt pour inclure un playbook avec des instructions supplémentaires.
  • Tags (facultatif) : Ajoutez des tags aux sessions créées par cette automatisation pour en faciliter le filtrage.

Envoyer un message à une session

Envoie un message à une session Devin existante de longue durée. Utile si vous souhaitez qu’une seule session persistante traite des événements au fil du temps, plutôt que de créer une nouvelle session pour chaque événement. Vous devez sélectionner la session cible lors de la configuration de cette action.

Triage Devin (moniteur)

Crée une session Devin persistante qui surveille un canal Slack. Consultez le guide d’auto-triage pour plus de détails sur ce type d’action.

Notification par e-mail

Envoie une notification par e-mail lorsque l’automatisation s’exécute. Choisissez quand envoyer la notification :
  • Toujours — à chaque exécution
  • En cas d’échec — uniquement lorsque la session échoue ou rencontre une erreur
  • En cas de réussite — uniquement lorsque la session se termine avec succès

Limites et garde-fous

Les automatisations comprennent des contrôles intégrés pour éviter toute utilisation incontrôlée :

Limite d’ACU

Définissez un budget maximal d’ACU (Agent Compute Unit) pour chaque session lancée par cette automatisation. Si Devin atteint cette limite, la session s’arrête. Cela évite qu’une seule invocation ne consomme trop de ressources.

Limite des invocations

Fixez un plafond au nombre de fois où l’automatisation peut se déclencher sur une période donnée. Par exemple, « au maximum 10 invocations par heure » évite qu’un canal Slack trop actif ou qu’une série d’échecs de CI ne génère des dizaines de sessions. Les deux champs sont facultatifs — s’ils ne sont pas renseignés, l’automatisation s’exécute sans aucune limite.

Politique réseau

Vous pouvez activer une politique réseau pour restreindre les hôtes externes que les sessions de l’automatisation sont autorisées à contacter. C’est particulièrement important pour les automatisations qui traitent des données saisies par des utilisateurs non fiables (p. ex. des messages Slack ou des charges utiles de webhook). Vous pouvez ajouter des domaines spécifiques à la liste d’autorisation si Devin doit accéder à des services externes.

Intégrations MCP

Connecter des intégrations MCP est vivement recommandé : elles améliorent considérablement la qualité des automatisations en donnant à Devin accès à des données d’exécution comme les logs, les métriques et les détails des erreurs.
Les automatisations s’appuient sur les intégrations MCP pour donner à Devin accès à des outils externes. Lors de la création d’une automatisation, la section Connexions indique quels serveurs MCP sont recommandés ainsi que leur état de connexion. Par exemple, le modèle “Correctifs quotidiens des erreurs Sentry” recommande Sentry MCP afin que Devin puisse interroger Sentry sur les erreurs non résolues. Le modèle “Investigation d’alerte Datadog” recommande Datadog MCP pour récupérer des métriques et des traces. Activez les serveurs MCP dans Settings > MCP Marketplace avant de créer des automatisations qui en ont besoin.

Accès aux outils Slack

Par défaut, les sessions d’automatisation peuvent lire et écrire dans les canaux Slack concernés par le déclencheur. Vous pouvez accorder l’accès à d’autres canaux Slack dans la section Outils Slack de l’éditeur d’automatisation. C’est utile lorsque Devin doit lire plusieurs canaux au-delà de celui qui a déclenché l’automatisation.

Activité et suivi

Chaque automatisation conserve l’historique de ses invocations. Sur la page de détail de l’automatisation, l’onglet Activité affiche :
  • Les invocations récentes avec leurs horodatages
  • Si chaque invocation a réussi ou a été ignorée
  • Les liens vers les sessions Devin créées
  • Les messages d’erreur des invocations ayant échoué
La page de liste des automatisations affiche un sparkline pour chaque automatisation, offrant une vue d’ensemble visuelle de l’activité au cours des 30 derniers jours.

Activation et désactivation

Activez ou désactivez une automatisation à tout moment depuis la liste des automatisations ou la page de détail. Les automatisations désactivées cessent de traiter les événements, mais conservent leur configuration. La réactivation d’une automatisation reprend immédiatement le traitement des événements.

Modèle

Devin inclut une bibliothèque de modèles d’automatisation prédéfinis pour les workflows courants :
ModèleCatégorieCe qu’il fait
Triage des signalements de bugs sur SlackSurveillanceSurveille un channel Slack et effectue automatiquement le triage des signalements de bugs entrants
CI Failure FixerCI/CDCorrige automatiquement les vérifications CI en échec sur les PR
/devin issue fixCI/CDRépond aux commentaires /devin sur les problèmes GitHub
Réponse aux incidents SRESurveillanceAnalyse les incidents lorsqu’une réaction 🚨 est ajoutée
Correctifs quotidiens des erreurs SentrySurveillanceRécupère chaque jour les principales erreurs Sentry et ouvre des PR de correctif
Investigation d’alerte DatadogSurveillanceAnalyse les alertes Datadog publiées dans Slack
Bug Report TriageTriageEffectue le triage des tickets Linear portant le libellé bug
Customer Support TriageTriageRédige des brouillons de réponse aux messages d’assistance dans Slack
Linear Ticket ImplementationTriageImplémente les tickets portant le libellé devin dans Linear
QA nocturne et tests de fuméeMaintenanceExécute des tests E2E chaque nuit et crée des tickets pour les régressions
Mises à jour hebdomadaires des dépendancesMaintenanceRecherche les packages obsolètes et ouvre des PR de mise à jour
Weekly ChangelogMaintenanceCompile les PR fusionnées dans un changelog classé par catégorie
Consultez tous les modèles dans automatisation > modèle de l’application Devin.