Contexte et principe du plugin

Le plugin Specification First Agentic Development s’appuie sur un dépôt .spec-first où chaque fonctionnalité est décrite sous forme de spécification YAML. Dans l’exemple, la spécification 2026-10-27-7b2d-todos-first-version.yaml décrit une petite application de gestion de tâches, incluant l’ajout, la suppression et le filtrage des items. Le processus démarre à partir d’un projet Vite vierge, choisi pour sa légèreté, avec TypeScript et Vitest comme pile de développement et de tests.

Flux de travail et artefacts générés

Le flux se compose de plusieurs commandes préfixées /spec-first. La création de la spécification (/spec-first:create-spec) génère le fichier YAML, puis /spec-first:review-spec lance un agent qui vérifie la conformité du texte. Après validation, /spec-first:apply-spec orchestre la génération du code : les fichiers src/todos.ts, src/TodoList.ts et le test src/todos.test.ts sont écrits automatiquement. Le test s’exécute avec

Bash npm test 9 passed
, confirmant que toutes les exigences sont satisfaites. Enfin, /spec-first:deliver-spec crée un commit, ouvre la pull request #12 et lance le serveur de développement sur localhost:5173.

Analyse technique des choix d’implémentation

Le plugin utilise git worktree pour placer chaque version de spécification sur une branche dédiée (spec/2026-10-27-7b2d), isolant ainsi les modifications et facilitant la revue. Le stockage persistant choisi est localStorage, consigné dans .spec-first/decisions/2026-10-27-7b2d.yaml, avec justification explicite : « une centaine de tâches tiennent aisément en mémoire locale ». Ce choix évite la complexité d’IndexedDB tout en respectant les exigences de l’application. Le pipeline intègre un « gate » qui bloque le merge tant que les tests unitaires passent, garantissant la conformité continue.

Limites et perspectives

Le scénario présenté reste limité à une application mono‑page sans backend, ce qui ne teste pas la capacité du plugin à gérer des API externes ou des bases de données serveur. De plus, l’absence de métriques de performance (temps de génération, empreinte mémoire) empêche d’évaluer l’impact du processus agentique sur la productivité. Néanmoins, la traçabilité offerte par les fichiers de décision et la séparation des branches suggèrent une bonne base pour étendre le modèle à des projets plus complexes, notamment en intégrant des étapes de CI/CD automatisées.