Un mode d'emploi de BMAD, un cadre de specs et d'agents à rôles : le tutoriel est daté, mais cinq boucles de contrôle valent le détour.
Pourquoi ce livre
Vous décrivez à une IA l'application que vous voulez, puis vous la laissez coder. Ce réflexe porte un nom : le vibe coding. Il marche tant que le projet reste petit.
Le cours de Marlon Vidal Ferreira part de cette limite et propose l'inverse : écrire avant de coder. C'est le spec-driven development, le développement piloté par les spécifications. Une spécification est un document qui décrit ce qu'on veut construire.
L'auteur l'enseigne avec BMAD, un cadre open source. Son nom développe « Breakthrough Method of Agile AI-Driven Development ». BMAD fait écrire les documents d'abord. Ensuite, des agents se les passent, chacun avec son rôle. On y trouve l'analyste (Mary), le chef de produit, le designer UX (Sally), l'architecte, le développeur, le Scrum Master (Bob) et le testeur. Un agent est ici une IA qui écrit le code et lance les commandes elle-même.
J'utilise des agents Claude Code tous les jours. Claude Code est un assistant de programmation qui tourne dans le terminal. J'ai lu ce cours sur ExpertEdge en octobre 2026 avec deux questions. La première porte sur les boucles de rétroaction : un résultat revient corriger l'étape suivante. La seconde porte sur les agents qui travaillent en parallèle.
Trois mots reviennent partout dans le cours :
- Workflow : une procédure BMAD lancée par une commande slash, c'est-à-dire qui commence par « / ». Elle guide l'agent étape par étape jusqu'à un fichier.
- PRD (Product Requirements Document) : le cahier des besoins, qui dit ce que le produit doit faire. Par exemple, la commande
/bmad-prdle produit. - Session : une conversation avec l'agent, ouverte jusqu'à ce qu'on la ferme.
Le cours est court : 3 h 20 de démonstrations transcrites. J'en garde sept idées, en deux familles. Les idées 1 à 4 encadrent le code : ce qu'on écrit avant, ce qu'on vérifie après. Les idées 5 et 6 donnent au projet une mémoire d'une session à l'autre. La dernière dit quand alléger tout ce rituel.
Ce livre fait partie d'ExpertEdge, l'abonnement aux livres techniques de Packt. Le code ODILON50 donne 50 % de remise sur l'abonnement annuel : le livre sur ExpertEdge. Lien affilié : je touche une commission si vous vous abonnez avec ce code, et mes notes n'en dépendent pas.
Les idées qui restent
1L'IA invente tout ce que le contexte ne dit pas
Première famille : encadrer le code, en commençant avant la première ligne. L'IA ne connaît du projet que ce qu'on lui en dit. On appelle cela le contexte. Ce que le contexte ne dit pas, l'IA l'invente. Le livre propose donc de fixer le contexte d'avance : c'est le context engineering. Son objectif est de créer « des frontières de vérité que l'IA ne peut pas franchir » (leçon 5). Autrement dit, des faits posés d'avance, que l'IA ne doit pas contredire. Voici une consigne nue, puis la même avec son contexte :
✗ AVANT : Construis une application de liste de tâches.
✓ APRÈS (exemple du livre, abrégé) :
Qui : des designers freelances débordés
Pourquoi : suivre les heures facturables par tâche
Quoi : un Kanban (un tableau de cartes en colonnes) avec un minuteur, pas de fonction sociale
Dans ce bloc, la dernière ligne est la plus utile. Elle dit aussi ce qu'on ne construit pas : pas de fonction sociale. Le livre y consacre une section, « Explicit exclusions », les exclusions explicites. Sans elle, le projet peut grossir de fonctions que personne n'a demandées. C'est la dérive de périmètre. Le livre dit que fixer d'avance ce qui est hors périmètre l'évite.
2Les tests s'écrivent avant le code, pas après
Le contexte dit quoi construire. Reste à vérifier que l'agent l'a bien construit. Or un agent peut coder d'abord, puis écrire ses tests ensuite. Ses tests vérifient alors ce qu'il a fait, pas ce qu'on lui avait demandé.
BMAD inverse donc l'ordre avec son module de tests, TEA (Test Architect, architecte de tests, que le livre écrit de trois façons). Sa méthode s'appelle ATDD : le développement piloté par les tests d'acceptation. Elle part des critères d'acceptation. Un critère d'acceptation (AC en anglais) est une condition que la fonctionnalité doit remplir pour être déclarée finie. Chaque critère porte un identifiant, comme AC1, et on écrit un test pour chacun avant le code.
La méthode suit trois temps, avec des couleurs de feu. Rouge : le test échoue, car la fonctionnalité n'existe pas encore. Vert : l'agent code jusqu'à ce que le test passe. Refactor : on nettoie le code sans changer ce qu'il fait.
Cette boucle repart donc à chaque critère d'acceptation. Les tests sont d'abord mis en veille avec test.skip : ils existent, mais ne s'exécutent pas. Voici ma version minimale, pas une copie du livre :
test.skip('AC1 : la carte affiche le titre de la tâche', async () => {
// corps du test à écrire
});
Pour passer au rouge, on retire le skip : le test échoue. L'agent code ensuite jusqu'au vert. Dans la démonstration du livre, les tests de la carte et de la fenêtre de tâche existent avant la moindre ligne d'interface. La raison, selon l'auteur : « si les tests sont créés après l'implémentation, nous ne couvrons pas forcément tous les scénarios » (leçon 26).
Ces identifiants servent aussi de fil d'un document à l'autre : ils relient la story, son test et sa revue (idée 4). Une story est une unité de travail, assez petite pour tenir dans une session. Elle est décrite dans un fichier markdown, du texte à mise en forme légère.
3Avant le code, on vérifie que les documents concordent
Les tests vérifient le code. Avant le code, BMAD vérifie aussi les documents. À ce stade, il n'existe encore aucun code, seulement trois textes : le PRD (ce qu'il faut faire), l'architecture (comment le construire) et les epics, c'est-à-dire de grands lots de fonctionnalités découpés en stories. Ces textes peuvent se contredire ou oublier quelque chose.
Imaginez trois plans d'une même maison : celui de l'architecte, celui de l'électricien, la liste des pièces. Avant de bâtir, on s'assure qu'ils décrivent la même maison. Le contrôle d'implementation readiness (« prêt à implémenter ») fait ce travail. Un agent lit les trois documents et les recoupe.
Ce contrôle agit comme une porte avant l'implémentation. Il rend l'un de trois verdicts :
- PASS : tout est cohérent, on avance ;
- CONCERNS : des écarts existent, mais ils ne bloquent pas ;
- FAIL : on corrige avant de continuer.
Sur la démonstration, ce contrôle a trouvé trois problèmes dans les documents, avant la moindre ligne de code (leçon 28) :
- des entités absentes du modèle de données : des objets que l'application manipule, mais qu'aucun document ne décrit ;
- un filtre par date manquant ;
- un
AppProviderqui aurait fait planter l'application s'il avait été construit tel quel. C'est le composant racine, celui qui distribue les données partagées à tous les écrans.
Un FAIL n'a donc rien d'un drame. Le livre le dit : « plutôt que d'y voir un revers, voyez le système qui fait son travail » (leçon 15). L'agent propose le correctif, puis l'humain le valide.
4Après chaque story, une revue qui cherche à casser le code
Le contrôle de l'idée 3 passe avant le code. La revue passe après, à la fin de chaque story. Pour le livre, elle n'est « pas une formalité » (leçon 18). C'est un contrôle adversarial : il cherche à faire tomber le travail plutôt qu'à le confirmer. Son but est d'attraper ce que l'implémentation a laissé passer.
Or le livre décrit cette revue de deux façons, sans choisir entre elles :
- Leçon 18, trois passes à la suite. Le Blind Hunter cherche les erreurs de logique et les échecs silencieux, ceux qui n'affichent aucun message. L'Edge Case Hunter cherche les cas limites, comme une liste vide, et les accès concurrents. L'Acceptance Auditor vérifie chaque identifiant de critère. Avant la revue, un menu demande quels changements relire : non commités, indexés, différence de branche ou plage de commits.
- Leçon 31, trois agents en parallèle. Le workflow les lance en même temps, sur les cas limites, les critères d'acceptation et la différence avant et après. Aucun Blind Hunter n'y est nommé.
Dans les deux cas, le développeur corrige, puis la revue repasse.
Le livre ajoute un conseil : confier la revue à « idéalement un autre modèle » (leçon 30), pour une évaluation indépendante. La raison, à mon sens : deux sessions du même modèle partagent les mêmes angles morts.
5Chaque workflow démarre dans une session neuve
Seconde famille : donner au projet une mémoire d'une session à l'autre. Elle part d'une règle du livre : une nouvelle session par workflow, sans exception. Il ne faut « jamais enchaîner » le PRD puis l'architecture dans la même session (leçon 43).
La raison : le contexte accumulé biaise la suite. Pendant le PRD, la conversation se remplit de discussions sur le produit. Si on enchaîne avec l'architecture, l'agent les a encore en tête et s'en inspire. Une session neuve, c'est un tableau blanc effacé avant la réunion suivante.
Ce contexte a aussi une taille limitée, comptée en tokens. Un token est un morceau de mot, l'unité que le modèle compte et facture. Changer de session coûte peu : « repartir de zéro coûte quelques secondes » (leçon 45).
Repartir de zéro pose pourtant une question : comment ne pas perdre le travail en cours ? Chaque workflow garde la trace de son avancement dans un fichier (leçon 21). Le livre le montre deux fois :
- l'installation des tests écrit son avancement dans le fichier
framework-setup-progress(leçon 22) ; - le PRD se construit en onze étapes, et son avancement s'écrit aussi dans un fichier.
Si le contexte sature, on ouvre une session neuve et on relance le workflow en lui désignant ce fichier. Il reprend où il en était (leçon 27).
6project-context.md : des règles qui s'enrichissent à chaque rétrospective
Une session neuve repart de zéro, mais le projet, lui, doit se souvenir. BMAD range cette mémoire dans le fichier project-context.md, « une constitution pour le projet » (leçon 15). Il joue le rôle d'un CLAUDE.md, le fichier de consignes que Claude Code relit à chaque session. Il n'est chargé que dans les workflows BMAD : 18 workflows et fichiers s'y réfèrent (leçon 23).
Le project-context.md liste d'abord la pile technique, c'est-à-dire les langages et outils du projet, avec leurs versions. Il liste ensuite des conventions : configuration TypeScript, gestion d'état, modèle de données, bonnes pratiques de test.
Cette constitution, on l'amende à la fin de chaque epic, et c'est la meilleure idée du livre. Trois étapes se suivent :
- Une porte de couverture vérifie que l'epic est assez testé. La couverture est la part du code que les tests vérifient. La porte rend PASS, CONCERNS, FAIL ou WAIVED, une dérogation validée par le métier. Un epic mal testé ne se clôt donc pas (leçon 19).
- La rétrospective, le bilan de l'epic, relit les notes de complétion écrites à la fin de chaque story.
- On relance la génération du fichier, qui intègre ce bilan.
Un cas concret, pas du livre : un test a fait perdre du temps parce que la base de données n'était pas vidée entre deux tests. La rétrospective en tire une règle, « vider la base avant chaque test ». L'epic suivant démarre avec elle.
Cette boucle, le livre la résume en une phrase : « le project-context.md devient le registre vivant de la façon dont le projet a appris à se construire » (leçon 19).
7Un petit changement passe par une version allégée
Tout ce rituel pèserait lourd pour corriger un bouton. Pour les petits changements, BMAD prévoit donc le workflow quick-dev. Il condense en une session l'intention, le plan, l'implémentation et la revue.
Ce raccourci a un piège. BMAD estime d'abord le « rayon d'impact » du changement : les chemins par lesquels il pourrait casser autre chose. Quand ce rayon est nul, quick-dev peut implémenter sans écrire de spécification. Le livre demande de l'exiger quand même, pour la traçabilité : pouvoir retrouver plus tard pourquoi le code a changé (leçon 24).
Même allégé, le workflow laisse le dernier mot à l'humain. Quand quick-dev propose de plafonner l'affichage à trois tags, le livre suggère de refuser (leçon 26).
Mon avis, honnêtement
Mon verdict, 5,2 sur 10 : de bons contrôles, dans un cours qui ne mesure presque rien. Je l'ai lu avec deux questions. Comment faire vérifier le travail d'un agent à chaque étape ? Et peut-on faire travailler plusieurs agents en même temps ? Le livre répond bien à la première, presque pas à la seconde.
Sa force : cinq contrôles que je reprendrais dès demain. Quatre sont décrits plus haut : le test avant le code, la porte avant l'implémentation, la revue, la rétrospective. Le cinquième est un test qui parcourt l'application comme un utilisateur. Quand il échoue, le workflow corrige le défaut et le relance sans aide (leçon 30). Ces contrôles servent même sans BMAD.
Ses faiblesses, avec leur coût pour vous :
- Le parallèle reste théorique. Le livre n'y répond qu'une fois, en questions-réponses, sans démonstration (leçon 42). Coût : il faudra chercher ailleurs.
- Une partie du cours enseigne un éditeur, pas une méthode. Les démonstrations tournent sous Cursor. Coût : du temps passé sur un outil qui n'est peut-être pas le vôtre.
- Aucun résultat n'est mesuré. Le livre fixe des seuils et des objectifs (P0 à 100 %, retour de CI en moins de cinq minutes), jamais des résultats. Le coût de ces contrôles n'a aucun chiffre et chaque démonstration finit bien (leçons 29 et 31). Coût : impossible de prévoir ce que ça va coûter.
Mon conseil : lisez les passages sur les tests, la porte, la revue et la rétrospective, et sautez l'installation. Le livre le dit lui-même : BMAD est « un processus d'équipe, pas un outil solo » (leçon 45). En solo, j'y vois un menu dont on prend trois plats. Je veux maintenant un livre qui chiffre le coût de ces contrôles et fait tourner des agents en parallèle pour de vrai.
Odilon
Toujours valable en 2026 ?
Les principes, oui : écrire le contexte avant le code, les tests avant l'implémentation, puis relire pour casser et mettre à jour les règles du projet. Les commandes, non. Le livre suit BMAD 6.8.0 (leçon 3), une version qui sera périmée en quelques semaines. La commande /bmad-prd a d'ailleurs déjà absorbé trois anciennes commandes (leçon 13). L'auteur prévient lui-même que son cours « pourrait contenir des informations périmées » (leçon 6). Vérifiez chaque commande dans la documentation avant de la copier.
Pour qui ?
Lisez-le si
- Vous pilotez déjà un agent de code et voulez des garde-fous concrets entre planification, tests et revue
- Vous travaillez en petite équipe et cherchez un vocabulaire commun pour cadrer le travail des agents
- Vous voulez comparer BMAD à votre méthode avant d'investir dans l'outil
- Vous aimez extraire cinq idées d'un cours de trois heures
Passez si
- Vous cherchez des agents qui construisent en parallèle de bout en bout : le livre n'offre qu'une réponse sous condition et un orchestrateur qui enchaîne les étapes une à une
- Vous voulez des chiffres de coût, de durée ou de taux d'échec : presque aucun
- Vous codez seul et sans équipe : le livre le dit lui-même
Pour aller plus loin
- La fiche Agentic Architectural Patterns d'Arsanjani et Bustos : les patterns multi-agents que ce cours ne théorise pas.
- La fiche The Claude Code Operating Model : le contexte et les hooks, côté outil.
- La fiche AI Engineering de Chip Huyen : à lire avant les deux si vous débutez avec les agents.
Fiche fondée sur la version cours ExpertEdge 2026 : 50 leçons, démonstrations transcrites. Les exemples signalés comme les miens ne viennent pas du livre.
Commentaires (0)