Au cœur du flux de travail de Devin : Utilisation d'outils, planification et autonomie

Au cœur du flux de travail de Devin : Utilisation d'outils, planification et autonomie

26 avril 2026

Introduction

Devin (de Cognition AI) est un nouvel ingénieur logiciel IA autonome capable de planifier des tâches de développement logiciel et de les exécuter en grande partie seul. Il travaille de bout en bout sur des projets de code, utilisant des outils comme un éditeur de code, un terminal de ligne de commande et un navigateur web pour rechercher, écrire, tester et déployer du code. Lors de démonstrations et dans la presse, Devin a été montré en train de scanner une base de code, générer un plan, éditer des fichiers, exécuter des tests et faire des demandes de tirage (pull requests) avec étonnamment peu d'intervention humaine (medium.com) (www.linkedin.com). Cognition affirme que Devin peut gérer des « tâches d'ingénierie complexes nécessitant des milliers de décisions », se souvenant du contexte à chaque étape et même apprenant de ses erreurs (medium.com) (www.linkedin.com). Nous explorons donc les détails publics de la conception et du flux de travail de Devin. Cela inclut la manière dont Devin décompose les tâches (son processus de planification), comment il fonctionne littéralement dans un environnement de développeur (éditeur, terminal, navigateur), comment il conserve la mémoire ou le contexte tout au long d'une session de codage, comment il s'auto-corrige et itère, et quelles mesures de protection ou de sécurité il utilise. Nous notons également ce qui n'est pas révélé – par exemple, les détails exacts des modèles internes ne sont pas divulgués, de sorte que certaines discussions communautaires reposent sur des conjectures éclairées.

Planification et décomposition des tâches

Lorsqu'un développeur confie une nouvelle tâche à Devin, la première étape est la planification des fichiers à modifier et dans quel ordre. Les notes de Cognition expliquent que Devin utilise un sous-agent en « mode planification » dont le travail est de déterminer quels fichiers du dépôt sont pertinents pour la tâche (medium.com) (docs.devin.ai). En pratique, Devin « enquête » sur le dépôt et propose un plan avant d'écrire le moindre code (docs.devin.ai) (docs.devin.ai). Pour les tâches complexes, les développeurs voient ce plan et peuvent l'approuver ou l'ajuster ; si le mode Agence est activé, Devin procède automatiquement à son plan sans attendre l'approbation (docs.devin.ai) (docs.devin.ai).

En coulisses, Cognition a entraîné cet agent de planification avec l'apprentissage par renforcement. Dans une analyse, l'équipe décrit avoir donné à l'agent de planification uniquement des outils en lecture seule (comme ls, grep ou read_file) et l'avoir récompensé lorsqu'il prédisait correctement l'ensemble des fichiers qu'un humain éditerait (medium.com) (medium.com). Le résultat : le planificateur de Devin apprend à émettre des requêtes parallèles sur le système de fichiers (par exemple, exécuter ls et grep sur différents répertoires simultanément), puis à affiner les pistes prometteuses (medium.com). La pénalité d'entraînement encourage l'efficacité, de sorte que l'agent évite la force brute (par exemple, rechercher sans fin dans tout le dépôt) et « s'engage » plutôt rapidement une fois qu'il a trouvé une cible (medium.com). Cela signifie que la planification de Devin est axée sur les données : il a appris des stratégies génériques de navigation de base de code (comme le note Cognition, le modèle a été entraîné sur de nombreux dépôts et requêtes utilisateur) (medium.com) (medium.com).

Au niveau utilisateur, le résultat se présente sous la forme d'un aperçu des étapes. Par exemple, pour une nouvelle demande de fonctionnalité, Devin suggérera quelque chose comme « modifier le fichier A pour implémenter X, ajouter des tests dans le fichier B, puis mettre à jour la configuration C ». Lors des démonstrations, si un utilisateur oubliait de spécifier certains détails, l'étape de planification de Devin le détectait souvent et demandait des éclaircissements. Dans une démonstration, l'assistant a automatiquement ajouté la configuration d'un compte GitHub au plan, même si l'utilisateur ne l'avait pas mentionné explicitement (www.developersdigest.tech) (www.linkedin.com). Ces étapes de planification (poser des questions, lister les tâches, mapper les fichiers) sont toutes effectuées via l'interface de dialogue de Devin avant que le moindre code ne soit écrit. Si l'utilisateur est d'accord ou si l'approbation automatique est activée, Devin passe à l'exécution.

Travailler dans un environnement de développement : éditeur, terminal et navigateur

Devin opère dans un environnement de développement en bac à sable. Les documents de Cognition le décrivent comme disposant d'une trousse d'outils de développeur familière : un terminal shell, un éditeur de code et un navigateur web, tous à sa disposition (medium.com) (docs.devin.ai). En pratique, lorsque Devin s'exécute, tout ce qu'il fait est enregistré et visible dans l'interface utilisateur web. Une vue « Suivre Devin » met en évidence chaque action (telle qu'une modification de fichier ou une commande shell) et même permet à un humain de cliquer sur une icône pour accéder directement à l'éditeur de code ou au terminal où cette action s'est produite (docs.devin.ai). Par exemple, si Devin modifie un fichier JavaScript, un utilisateur peut cliquer pour voir la vue de l'éditeur VSCode avec les changements, ou si Devin exécute une commande shell, cliquer pour voir la sortie du terminal.

Vous pouvez également accéder manuellement à l'espace de travail de Devin si vous le souhaitez. Une mise à jour récente a ajouté un bouton « Utiliser la machine de Devin » qui ouvre l'environnement de Devin dans VSCode via le web (docs.devin.ai). Cela signifie qu'un développeur peut consulter les fichiers de Devin, exécuter des commandes ou même modifier manuellement le code dans son espace de travail. (Pour les tâches de longue durée, c'est pratique si vous voulez inspecter quelque chose en cours de route.) Dans un exemple, un utilisateur a activé cette fonction pour voir Devin créer des éléments d'interface utilisateur : l'utilisateur a littéralement ouvert le VSCode de Devin, a vu les nouveaux fichiers écrits par Devin et a pu explorer l'interface utilisateur en direct.

L'outil de navigateur permet à Devin de rechercher ou de tester des choses sur Internet. Lors des démonstrations, Devin est vu en train d'utiliser la recherche web pour consulter de la documentation ou des bibliothèques, et même de lancer le serveur web local pour vérifier que son code n'est pas cassé (par exemple, il pointera un navigateur vers localhost pour vérifier que l'interface utilisateur fonctionne). En tout, l'interface de Devin est multimodale : elle peut prendre des entrées comme des invites textuelles, des images de conception ou des documents attachés, et même des extraits de code, et elle interagit à la fois par chat et via ces outils de développeur (www.developersdigest.tech) (medium.com). Le résultat est une expérience beaucoup plus proche de « un collègue écrivant du code » qu'un chat statique avec une IA.

Mémoire, Knowledge et Contexte de Session

Devin suit les informations tout au long d'une session à l'aide d'un système intégré de « Knowledge ». Pensez à Knowledge comme à un carnet de notes d'espace de travail : Devin peut y stocker des astuces, des instructions spécifiques au projet ou un contexte important, et les rappeler plus tard. Par exemple, la documentation décrit des flux de travail pour épingler certaines connaissances afin que Devin ne les oublie jamais, telles que des contraintes architecturales importantes ou des guides de style de codage (docs.devin.ai). Les utilisateurs peuvent modifier ou ajouter à cette base de connaissances. Devin générera également automatiquement des notes utiles : il scanne votre dépôt pour en apprendre davantage sur la structure du code, les composants et votre documentation, et crée automatiquement un résumé de « Repo Knowledge » (docs.devin.ai) (docs.devin.ai). En pratique, après avoir exécuté quelques tâches, Devin pourrait dire « J'ai remarqué que vous utilisez souvent React et Redux ; je suggère d'ajouter cela à Knowledge », et si vous approuvez, cette information est enregistrée.

Au cours d'une session, Devin conservera les connaissances pertinentes en mémoire de travail. Cognition affirme qu'il « rappelle le contexte pertinent à chaque étape » (www.linkedin.com). Par exemple, s'il a appris précédemment que vous préférez Python 3.11 ou que votre application web utilise OAuth, il intégrera ces informations dans les invites au besoin. La session est intrinsèquement longue et avec état : vous pourriez parler à Devin pendant des dizaines de tours (minutes ou plus) pendant qu'il édite de nombreux fichiers, et il conserve l'historique du chat. Si Devin tombe en panne, vous pouvez faire défiler le journal ou activer le « mode progression » pour voir chaque action qu'il a entreprise.

Si votre session se termine (par exemple, si vous arrêtez la tâche ou terminez), Devin oublie l'état d'exécution de cette machine, et sa machine virtuelle se réinitialise à un instantané de base la prochaine fois (docs.devin.ai). Par défaut, cet état de base inclut les dépôts que vous avez préchargés dans votre espace de travail, de sorte que Devin n'a pas à cloner à partir de zéro à chaque fois (docs.devin.ai). (Sans configuration d'espace de travail, chaque session commencerait avec une machine vide, donc Cognition insiste sur la préconfiguration de votre dépôt pour la vitesse (docs.devin.ai).) Mais au-delà du code, Devin transmet les connaissances via sa banque de Knowledge. Il vous invitera à ajouter des leçons ou des définitions qui semblent utiles pour les tâches futures (docs.devin.ai). Sur plusieurs sessions, cela signifie que Devin construit progressivement une mémoire des conventions et de l'architecture de votre projet.

En plus de Knowledge, Cognition a lancé DeepWiki, un outil connexe qui indexe des bases de code entières et fournit une interface de chat au-dessus d'elles (medium.com). Bien que DeepWiki soit un produit distinct, il suggère l'architecture plus large : Devin peut interroger sa propre base de connaissances ou un wiki externe du code pour répondre aux questions. En pratique, si vous demandez à Devin quelque chose sur le code, il peut utiliser en interne les mêmes systèmes de récupération que DeepWiki pour étayer ses réponses.

Autonomie, itération et auto-correction

Devin est conçu pour être autonome, mais avec des boucles de rétroaction si nécessaire. Après la planification, il exécute les étapes une par une, vérifiant constamment les erreurs. Lors des démonstrations, l'agent suit fréquemment ce schéma : il utilise le navigateur ou la documentation pour comprendre un problème, écrit du code, l'exécute, constate une erreur, puis cherche comment la corriger – imitant un cycle de débogage humain (www.developersdigest.tech) (www.linkedin.com). Par exemple, un présentateur montre Devin ajoutant un formulaire de connexion, puis exécutant le test front-end, trouvant un bug et retournant chercher comment corriger cette erreur. Chaque « tour » de Devin est une boucle de penser → agir → observer → corriger.

Plusieurs sources notent que Devin intègre une « auto-correction » (medium.com) (www.linkedin.com). En effet, le blog de Cognition avec GPT-5 mentionne que GPT-5 « est bon pour comprendre les erreurs et se corriger » ce qu'ils soulignent comme excellent pour les tâches longues (www.linkedin.com). En d'autres termes, si le code de Devin ne compile pas ou échoue à un test, le modèle (souvent GPT-5 ou similaire) verra le message d'erreur et trouvera une solution à la volée. Il est même capable de boucles de réessai : si une action réussit partiellement, Devin peut faire une deuxième passe. Ces boucles sont visibles dans l'interface utilisateur comme des séquences répétées d'édition et d'exécution.

Pour gérer systématiquement les échecs, Devin utilise un mélange d'automatisation et de supervision humaine. Par exemple, si Devin ouvre une demande de tirage (pull request) et reçoit un échec de CI ou un commentaire de révision de code, le système de Cognition réveillera automatiquement Devin et lui fera résoudre le problème (docs.devin.ai) (docs.devinenterprise.com). Par défaut, Devin répond aux erreurs de lint ou aux commentaires, bien que les utilisateurs puissent désactiver cette fonction. L'interface utilisateur met également en évidence son statut et ses actions en temps réel, de sorte qu'un développeur peut intervenir à tout moment. Les développeurs sont encouragés à surveiller les premières exécutions en « mode direct » (où chaque étape est affichée) pour établir la confiance, puis à laisser Devin fonctionner entièrement en mode headless une fois qu'ils sont sûrs (www.developersdigest.tech).

Sécurité, garde-fous et personnalisation

Les opérateurs peuvent donner à Devin des instructions explicites sur ce qu'il ne doit pas faire. Une fonctionnalité puissante est les « Actions Interdites ». Vous pouvez lister les choses que Devin n'est pas autorisé à toucher – par exemple, « NE PAS pousser directement sur main » ou « Ne pas modifier le fichier X ». Le système garantit que Devin respecte ces commandes lorsqu'elles apparaissent dans l'invite ou dans un Playbook (docs.devin.ai). Selon les notes de version, Devin gère désormais les listes d'actions interdites de manière fiable, ce qui signifie qu'il vérifie ses actions par rapport à ces règles. Cela aide à prévenir les erreurs courantes comme la modification de la mauvaise branche ou du mauvais fichier.

Devin offre également divers contrôles. Dans Slack ou l'interface utilisateur web, vous pouvez dire à Devin de « dormir » (mettre le travail en pause) ou d'« archiver » une session (docs.devin.ai). Vous pouvez choisir si Devin nécessite votre approbation avant d'exécuter un plan (via le paramètre Agence) ou s'il s'exécute de manière entièrement autonome (docs.devin.ai) (docs.devin.ai). Son utilisation de calcul est mesurée en Unités de Calcul d'Agent (ACU), et l'interface utilisateur affiche des avertissements si Devin est sur le point d'atteindre des limites, afin que vous puissiez intervenir ou lui accorder plus de ressources (docs.devin.ai).

Si quelque chose ne va pas en coulisses, Cognition a mis en place une surveillance. Dans les versions précédentes, certains utilisateurs ont signalé des sessions Devin « bloquées » ou plantées. L'équipe note que ces problèmes ont été corrigés et offre des remboursements d'ACU si Devin se bloque (docs.devin.ai). En d'autres termes, l'entreprise instrumente activement le système pour sa fiabilité. Les analystes externes avertissent que, comme toute IA basée sur le chat, Devin peut produire des erreurs ou « halluciner » du code occasionnellement. La pratique recommandée est de revoir sa sortie comme on le ferait pour le travail d'un développeur junior. Pour des raisons de sécurité, de nombreuses équipes utilisent des revues de code sur les commits de Devin et limitent ses permissions (par exemple, pas d'accès direct aux secrets par défaut). Jusqu'à présent, les garde-fous décrits publiquement sont principalement définis par l'utilisateur (actions interdites, exigence d'approbation du plan, etc.) et des vérifications de l'état du système, plutôt que des filtres éthiques intégrés.

Ce que nous ne savons pas (encore)

Cognition a intentionnellement gardé certains détails internes, de sorte que certaines parties de Devin sont opaques. Par exemple, le modèle de langage étendu exact qu'il utilise n'était pas initialement public. Des rumeurs et des publications ultérieures suggèrent que Cognition intègre désormais GPT-5 dans Devin pour son cœur de planification et de raisonnement (www.linkedin.com), et ils ont un agent en préversion basé sur Claude Sonnet 4.5 (docs.devinenterprise.com). Mais l'architecture complète n'est pas claire : Devin orchestre probablement plusieurs modèles et a une mise au point personnalisée (comme l'indique le sous-agent de planification RFT), mais ces couches ne sont pas open-source.

Nous ne connaissons pas non plus entièrement les limites de sa mémoire. Devin prétend « apprendre avec le temps », mais la manière dont il fusionne de nouvelles connaissances dans son réseau existant (par opposition à simplement les stocker dans la banque Knowledge) n'est pas spécifiée. La longueur maximale de l'historique de conversation qu'il utilise efficacement n'est pas documentée. Lorsqu'une session est très longue, il est possible que des parties antérieures du chat ou du contexte de code soient élaguées en coulisses. En pratique, la plupart des utilisateurs gardent les invites et le code concis pour éviter la surcharge contextuelle.

Côté sécurité, certaines inconnues demeurent. Par exemple, bien que les « actions interdites » couvrent les règles spécifiées par l'utilisateur, il n'est pas clair si Devin a des couches de sécurité implicites (comme la détection de l'utilisation abusive de données, les vérifications de biais ou les évasions de bac à sable). Comme il s'exécute dans une VM, on espère qu'il ne peut pas endommager les systèmes hôtes, mais les détails sur ce bac à sable ne sont pas publics. La communauté en déduit que la machine de Devin utilise probablement des instantanés de conteneur (comme mentionné pour l'entraînement par RL) pour isoler les exécutions (medium.com).

Enfin, beaucoup dans la communauté observent comment Devin gère les tâches ambiguës ou ouvertes. Le discours commercial le qualifie de « entièrement autonome », mais les analystes notent qu'il a encore souvent besoin d'instructions précises. Par exemple, si l'invite de l'utilisateur est vague, Devin pourrait générer un plan qui semble raisonnable mais qui omet des cas limites importants. Il peut poser des questions de clarification en suivi, mais les développeurs se demandent parfois dans quelle mesure il comprend l'intention par opposition à une simple correspondance de motifs sur le code. Ces aspects de la cognition de Devin reposent sur les capacités du LLM sous-jacent, que nous n'observons qu'indirectement. En bref, les utilisateurs devraient juger Devin davantage comme un ingénieur junior très compétent que comme un chef de produit – il planifie bien, mais pourrait ne pas toujours saisir parfaitement votre intention.

Démarrer avec Devin

Devin s'adresse principalement aux équipes d'ingénierie qui effectuent beaucoup de travail de codage. Il excelle dans les tâches clairement définies : construire des fonctionnalités à partir de spécifications, refactoriser, écrire des tests et corriger des bugs. Il est moins éprouvé pour la conception de haut niveau ou les problèmes très mal définis. Pour une équipe logicielle, Devin peut aider à éliminer le travail de routine afin que les humains se concentrent sur l'architecture créative et la supervision.

Pour les non-codeurs ou les nouveaux venus, Devin peut toujours être utile mais nécessite une certaine configuration. La première étape consiste à donner à Devin accès à votre dépôt de code (via GitHub, GitLab, etc.) et peut-être à le connecter à Slack ou Teams. Ensuite, essayez une tâche simple. Par exemple, demandez : « Devin, ajoute une nouvelle page pour lister tous les produits de notre base de données dans l'interface utilisateur web, y compris la couverture des tests. » Observez le dialogue de la phase de planification : Devin décrira les fichiers à modifier (par exemple, le modèle HTML, le code de l'API backend, etc.) et posera toutes les questions nécessaires. Approuvez le plan (ou laissez-le s'exécuter automatiquement) et observez son exécution. Utilisez le panneau « Suivre » pour voir chaque étape : vous verrez les modifications de fichiers, les commandes shell (comme l'exécution de suites de tests) et les captures d'écran du navigateur de l'interface utilisateur. Si Devin fait une erreur ou si vous souhaitez un changement, interagissez simplement comme vous le feriez dans un chat (« En fait, utilise ce thème CSS » ou « le titre du produit doit être en majuscules »), et Devin démarrera une autre boucle d'édition.

L'étape clé et exploitable est d'itérer et de réviser. Vérifiez toujours le code que Devin produit et testez-le localement. Au fil du temps, vous pouvez enrichir la banque de Knowledge : ajoutez des notes comme « Notre base de données utilise PostgreSQL 13 » ou « Nous suivons le style PSR-12 en PHP ». Devin commencera à les intégrer dans les sessions futures. Explorez également les paramètres : désactivez l'Agence si vous voulez toujours examiner les propositions, ou activez-la si vous lui faites plus confiance. Liez Devin à votre CI pour une revue automatique des demandes de tirage (pull requests), mais commencez par des notifications afin de pouvoir observer comment il gère les retours.

En fin de compte, le flux de travail de Devin est dense et puissant, mais il dépend toujours de vous pour l'orientation. En comprenant comment il planifie, utilise les outils et apprend des retours (comme détaillé ci-dessus), vous pouvez tirer le meilleur parti de cette nouvelle classe d'assistant de codage agentique. La meilleure prochaine étape pour une équipe intéressée par Devin est de s'inscrire sur devin.ai et de lancer un petit projet pilote : ajoutez un dépôt web, demandez à Devin d'implémenter une fonctionnalité et laissez-le s'exécuter en mode progression. Observez la trace complète de la « pensée » – cette expérience pratique clarifiera exactement comment Devin tisse ensemble la planification, l'édition et l'auto-correction. À partir de là, vous pourrez passer à plus de tâches et affiner son utilisation (par exemple, des playbooks personnalisés pour votre domaine). Bien qu'encore en évolution, Devin représente un bond majeur dans les outils d'IA. En apprenant son flux de travail aujourd'hui, les équipes peuvent se préparer à une ère où les tâches de codage peuvent véritablement être partagées avec un coéquipier IA.

Get New AI Coding Research & Podcast Episodes

Subscribe to receive new research updates and podcast episodes about AI coding tools, AI app builders, no-code tools, vibe coding, and building online products with AI.