Kavacode

Blog

La bascule vers le Spec-Driven Development et le Harness Engineering

  • ai
  • architecture
  • agents
  • codex
  • antigravity
  • devops
Cet été, le pilotage des agents de code a abandonné progressivement des frameworks multi-agents lourds au profit du Harness Engineering et du Context Engineering pilotés directement par le dépôt de code.

Face aux limites des frameworks multi-agents lourds, le pilotage d'agents de code se réinvente autour du Harness Engineering et du Spec-Driven Development piloté directement par le dépôt via AGENTS.md, PLAN.md et HANDOFF.md.

Schéma d'orchestration agentique repo-native
Orchestration déterministe et isolation du contexte dans le Spec-Driven Development.

1. La fin des frameworks lourds vs l'approche repo-native

Les méthodes initiales (BMAD exhaustif, SpecKit lourd) souffraient de trois défauts majeurs :

  • Context Rot & Token Waste : le bruit généré par le méta-dialogue entre agents dégradait l'attention du modèle (lost-in-the-middle).
  • Complexité d'audit : trop d'artefacts intermédiaires impossibles à relire efficacement.
  • Fragilité d'exécution : les agents se perdaient dans des boucles de justification abstraites.

La tendance actuelle repose sur le principe du Spec-Driven Development (SDD) minimaliste : le dépôt de code sert à la fois d'environnement d'exécution et de mémoire persistante.

2. Le triptyque standardisé par fichiers

Le standard AGENTS.md (adopté par plus de 60 000 projets et supporté nativement ou hiérarchiquement par Codex, Claude Code, Cursor, Antigravity) structure l'orchestration sans runtime complexe :

Fichier Rôle dans l'orchestration Contenu type
AGENTS.md Politique opérationnelle (règles d'engagement) Commandes exactes (pnpm test, golangci-lint), règles d'escalade (quand s'arrêter et demander), contraintes de modification, définition du « Done ».
PLAN.md Contrat d'intention & roadmap Spécification technique, dépendances, découpage des tâches atomiques et critères d'acceptation.
HANDOFF.md / .agent.md Protocole de transition inter-rôles Schéma de transfert (état actuel, bloquants, diff résumé, instruction pour le sous-agent suivant).
Hiérarchie des fichiers de pilotage d'agents
Structuration des règles et contrats au sein de l'arborescence du projet.

3. Méthodes clés avec OpenAI Codex et Google Antigravity

Avec l'arrivée de plateformes comme Codex CLI et Google Antigravity (et son SDK), le pilotage s'appuie sur des primitives bien définies :

A. L'isolation par sous-agents éphémères (Fresh Context)

Au lieu de garder une session unique qui s'étire sur des centaines d'appels d'outils, les orchestrateurs modernes instancient des sous-agents dédiés avec un contexte propre :

  • Planner / Scout : lecture seule, cartographie de l'existant, rédaction/mise à jour du PLAN.md.
  • Implementer : implémentation atomique tâche par tâche.
  • Verifier / QA : exécution des suites de tests, validation des diffs, vérifications navigateur headless.

B. Le paradigme Command-First

Les instructions en langage naturel floues (« assure-toi que le code est propre ») sont proscrites au profit de vérifications déterministes par code de retour :

  • Obligation d'exécuter une commande de validation (exit 0).
  • Interdiction des contournements créatifs (ex. : suppression d'un lockfile ou bypass de linter sous prétexte de débloquer une tâche) via des règles explicites de Never dans AGENTS.md.

C. Gestion des artefacts (Antigravity Manager Surface)

Google Antigravity sépare l'édition de code de la gestion de mission (Agent Manager), en structurant l'état autour d'artefacts vérifiables :

  • Plans de tâches dynamiques validés par le développeur avant exécution.
  • Diffs standardisés et sessions d'enregistrement d'exécution (logs de terminal, tests UI).
  • Niveaux de raisonnement configurables (Thinking levels de minimal à high selon la criticité de l'étape).

4. Bonnes pratiques de l'état de l'art

  • Hiérarchie de contextes : placer un AGENTS.md à la racine pour les conventions globales, et des fichiers locaux dans les sous-modules pour le scoped context (très efficace sur les monorepos).
  • Sortie machine, pas prose : pour les transitions (handoffs), forcer l'agent à produire du JSON typé ou du Markdown normé afin que le sous-agent suivant ingère de la donnée structurée sans inférence superflue.
  • Escalade stricte : forcer l'agent à lever une exception ou interpeller l'humain dès qu'une ambiguïté architecturale ou une commande non autorisée apparaît, plutôt que de le laisser tenter des solutions palliatives autonomes.

Conclusion

L'efficacité du développement assisté par agents ne dépend plus de la sophistication de méta-frameworks autonomes, mais de la qualité du harnais d'ingénierie fourni au modèle.

En combinant un contrat d'intention clair, des règles d'engagement strictes et des validations outillées, le dépôt de code devient lui-même le système d'exploitation de l'agent.


Contactez-nous
Contactez-nous

Vous souhaitez structurer vos architectures logicielles, intégrer des workflows agentiques robustes ou optimiser vos processus de développement assisté par IA ? N’hésitez pas à nous contacter et parlons-en ensemble. 😊