Aller au contenu

Le plugin pour agents de code : Claude Code, Codex, GitHub Copilot

Le dépôt ddd-ts-kit est la marketplace du plugin pour les trois agents :

Agent Installation Une skill s'appelle
Claude Code /plugin marketplace add gbourgeat/ddd-ts-kit, puis /plugin install ddd-ts-kit@ddd-ts-kit /ddd-ts-kit:start
Codex codex plugin marketplace add gbourgeat/ddd-ts-kit, puis installer ddd-ts-kit depuis /plugins et approuver ses hooks dans /hooks $start
Copilot CLI copilot plugin marketplace add gbourgeat/ddd-ts-kit, puis copilot plugin install ddd-ts-kit@ddd-ts-kit par son nom, start
Agent cloud de Copilot, VS Code déclaré par le .github/copilot/settings.json qu'écrit init : l'agent cloud l'installe, VS Code le recommande par son nom, start

Vingt-deux skills, dans l'ordre où un projet les rencontre :

Skill Usage
start conduire un projet d'une expression des besoins jusqu'à des contextes qui fonctionnent (lancée par l'utilisateur)
discover-domain un event storming léger, par écrit
bounded-contexts trouver les contextes et les classer cœur, de soutien ou génériques
glossary le langage omniprésent d'un contexte et son CONTEXT.md, avant tout code
context-map amont, aval et patron de relation pour chaque paire de contextes
bootstrap choisir la stack et créer le projet (lancée par l'utilisateur)
plan-slices le travail en tranches verticales par contexte, ordonnées, avec leurs commandes de génération
parallel-work répartir les tranches entre plusieurs agents ou personnes sans collision
scaffold un fichier de n'importe quel rôle, à partir d'un template
use-case une fonctionnalité de bout en bout, test d'abord
integration-event faire collaborer deux contextes par un événement versionné
wiring les ports comme classes abstraites, les déclarations, la racine de composition, les fakes dans les tests
persistence repositories, unité de travail, outbox, modèles de lecture, migrations, quel que soit l'ORM
access-control authentification, permissions par cas d'usage, acteur explicite, politiques
cross-cutting journalisation, métriques, traçage, remontée des erreurs, journal d'audit, résilience et cache appliqués de l'extérieur
testing des fakes au lieu de mocks, des builders, étant donné / quand / alors, de bout en bout
clean-code nommage, ordre des fonctions, commentaires, testabilité
document contrat OpenAPI et ses clients typés, catalogue d'événements, AsyncAPI, listes générées, enregistrements de décision
extract-service garder chaque contexte prêt à tourner comme son propre service, et l'extraire
deviation que faire quand on vous demande de contourner une règle
quality-gate lancer les contrôles à la bonne portée et corriger à la cause racine
commit-discipline une tranche par commit, les fichiers générés avec ce qui les a générés

Quatre agents : domain-explorer (réponses en lecture seule sur ce qui existe et où), context-builder (construit les tranches d'un contexte dans son propre worktree), domain-test-writer (transforme les entrées it.todo en specs) et architecture-reviewer (revue en lecture seule d'un diff, d'une branche ou d'un contexte).

Le hook est la partie qui rend le reste contraignant. Dans un projet qui a un ddd-ts-kit.config.json, il rappelle la démarche et la carte des contextes au début de la session, signale quand les packages installés ne sont pas la version que décrivent les skills, refuse un fichier écrit à la main là où un générateur existe ainsi que toute modification d'un contrat généré, demande l'avis du propriétaire du projet avant qu'une désactivation, un test sauté ou un changement des règles soit écrit, vérifie chaque fichier écrit et renvoie les violations avec leur correction, et refuse de terminer tant que des erreurs d'architecture restent. Il rappelle, sans bloquer, quand les changements non commités dépassent la taille conseillée d'un commit, et dans le worktree d'un worker (.ddd-ts-kit/worker.json), il refuse une écriture hors du contexte du worker. En cas de panne, il laisse passer : une garde cassée ne bloque jamais le travail. Mettez "guard": "advise" dans la configuration pour être consulté au lieu d'essuyer un refus, "off" pour le faire taire.

Chaque agent reçoit ce que son hôte exécute. Les skills fonctionnent dans les trois. Les quatre agents sont des sous-agents de Claude Code ; Codex ne charge aucun agent depuis un plugin, et une session par worktree tient le rôle de context-builder. Le hook tourne partout où l'hôte exécute les hooks d'un plugin : il lit les patchs de Codex et les appels d'outils de Copilot aussi bien que ceux de Claude Code. Codex ne sait pas poser de question à l'utilisateur : ce que Claude Code soumet au propriétaire du projet y est signalé à l'utilisateur, et laissé aux vérifications du pipeline.

Même sans plugin, un projet guide chaque agent : init écrit AGENTS.md, le guide que lisent Codex, Copilot et la plupart des agents (CLAUDE.md l'importe), les règles par couche pour Claude Code dans .claude/rules/ et les mêmes règles pour Copilot dans .github/instructions/, ciblées par applyTo, et, avec le pipeline GitHub, copilot-setup-steps.yml, qui installe le projet avant le démarrage de l'agent cloud de Copilot. npm run verify et le pipeline tiennent chaque agent aux mêmes règles.