Agent coding / méthode BMAD et OpenCode
Contactez-moi- BMAD Method
- OpenCode
- Superpowers
- Redmine
- Agents IA
Le “agent coding” désigne l’usage d’assistants IA capables d’agir directement sur un projet (lire le code, écrire des fichiers, exécuter des commandes, ouvrir des tickets) plutôt que de se contenter de suggérer des extraits de code. La méthode BMAD structure ce travail en rôles et étapes explicites (analyse, planification, développement, revue), et des outils comme OpenCode fournissent l’agent en ligne de commande pour l’exécuter concrètement dans un dépôt de code.
Historique
Les assistants de complétion de code (type Copilot, 2021) ouvrent la voie, mais restent passifs : ils suggèrent, sans agir. À partir de 2023-2024 émergent des agents “agentiques” capables d’exécuter des actions multi-étapes de façon autonome sur un projet réel. La méthode BMAD (Breakthrough Method for Agile AI-Driven Development) formalise ensuite un cadre méthodologique open source pour structurer ce travail à plusieurs agents spécialisés plutôt que de tout confier à un seul modèle sans garde-fou. OpenCode s’inscrit dans la même vague d’outils en ligne de commande dédiés au “agent coding”.
Avantages des versions récentes
- Orchestration multi-agents : séparation des rôles (planification, exécution, revue) qui réduit les erreurs d’un agent unique livré à lui-même sur une tâche complexe.
- Développement piloté par les spécifications : les changements sont d’abord décrits (proposition, spécification, tâches) avant d’être codés, traçable et review-able comme un vrai processus d’ingénierie.
- Intégration aux outils existants : ces agents s’appuient sur les dépôts Git, les gestionnaires de tickets (Redmine, GitHub, GLPI) et les CI/CD déjà en place, plutôt que d’imposer un nouvel écosystème.
- Gain de vitesse mesurable sur les tâches répétitives ou à fort volume (rédaction de contenu, création de tickets, refactoring mécanique) tout en gardant un humain dans la boucle de décision.
Superpowers : gérer le cycle de vie des évolutions
En complément de BMAD, j’utilise le package Superpowers. C’est un ensemble de méthodes de travail (des « skills ») que l’agent applique de lui-même, et qui impose un cycle de vie à chaque évolution plutôt que de laisser l’agent coder au premier prompt :
- Cadrage : l’évolution est d’abord classée selon sa taille : simple vérification de faisabilité, changement borné dans du code existant, ou changement d’architecture. La profondeur du processus s’adapte : une phrase de design pour un petit changement, une spécification écrite pour un nouveau sous-système.
- Design validé avant d’écrire du code : l’agent me présente ce qu’il comprend, les contraintes et l’approche. Rien n’est implémenté tant que je n’ai pas donné mon accord.
- Plan puis implémentation : le travail est découpé en tâches, avec les tests en premier quand c’est pertinent.
- Vérification : l’agent doit prouver que ça marche (build, tests, contrôle du résultat) avant d’annoncer que c’est terminé.
- Revue et finalisation : revue du changement, puis intégration dans la branche principale.
C’est la version outillée du principe « un humain dans la boucle de décision » : l’agent apporte la vitesse, le processus apporte les garde-fous.
Branché à Redmine : garder la trace de ce qui est produit
Tout ce cycle est relié à Redmine par un serveur MCP. Chaque demande devient un ticket dans le projet concerné, ce qui garde, pour chaque projet, l’historique de ce qui a été produit dans le code :
- À la création : le ticket reçoit la demande initiale, recopiée telle quelle, dans le bon projet.
- À la fin : l’agent ajoute une note qui contient la demande, la réponse, les actions réalisées et le résultat, y compris les problèmes restants.
- Pour une demande complémentaire sur le même sujet : la note s’ajoute au ticket existant, sans doublon.
Ce dispositif, c’est exactement celui que j’utilise pour faire évoluer ce site : chaque page ou modification a son ticket, et le journal de ce qui a été fait est consultable sans avoir accès à la conversation avec l’agent. Le principe est détaillé dans la page gestion des tickets Redmine et agents IA.
Mon expertise
Je pratique le développement assisté par des agents IA au quotidien, avec un cadre précis :
- BMAD et spécifications (openspec) pour structurer le travail avant d’écrire du code ;
- Superpowers pour piloter le cycle de vie de chaque évolution : cadrage, design validé avant toute implémentation, plan et tests, vérification, revue ;
- Redmine relié par un serveur MCP : un ticket par demande, avec une note qui garde la demande, la réponse, les actions et le résultat. L’historique de ce qui est produit dans le code reste consultable pour chaque projet.
C’est ce dispositif que j’utilise pour faire évoluer ce site.