Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Les fondamentaux du harness engineering

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers. →

Les fondamentaux du harness engineering

Dans chaque équipe que je forme, je vois le même réflexe : on ouvre le chat, on tape un prompt, et on réagit à ce que l’IA propose. On ne guide pas son exécution, on la subit. Est-ce vraiment ça utiliser l’IA ?

La plupart des personnes ont adopté l’outil, pas la méthode. Il existe pourtant une discipline pour ça : le harness engineering. Elle repose sur plusieurs piliers : rules, commands, skills, agents, agents.md, qui transforment ton IA d’explorateur impétueux et non déterministe, en coéquipier qui connaît tes standards, ta stack et ta façon de travailler.

Dans cette conférence, nous verrons à quoi sert chaque pilier, avec des exemples concrets sur des projets WordPress. Des rules qui imposent des coding standards, des commands pour exécuter des procédures, des skills pour créer des blocs ou des custom post types, des agents spécialistes de leur domaine. Et surtout, comment construire son propre harness engineering pour vraiment profiter de la puissance de ces outils.

Tu repartiras avec une méthode claire pour passer de « je subis l’IA » à « mon IA a des ressources sur lesquelles se baser et une méthode à suivre ».

Avatar for Jeremy Desvaux de Marigny

Jeremy Desvaux de Marigny

September 22, 2026

More Decks by Jeremy Desvaux de Marigny

Other Decks in Technology

Transcript

  1. 11 H 25 · SALLE TECHNIQUE Les fondamentaux du harness

    engineering Apprenez à votre IA à vraiment coder comme vous Jeremy Desvaux de Marigny WordCamp Bretagne 2026 · Harness engineering 01 / 54
  2. QUI JE SUIS Jeremy Desvaux de Marigny Directeur technique externalisé

    LINKEDIN J'aide les équipes web à produire plus efficacement. Je les forme à l'ingénierie appuyée par l'IA. jeremydesvaux WordCamp Bretagne 2026 · Harness engineering 02 / 54
  3. ACTE 1 · INTRODUCTION De la hype à la frustration

    LA HYPE Ça va remplacer les développeurs. Un gain de temps fou. LE RÉFLEXE On installe un outil. On paye une licence. ET LÀ On ouvre le chat. On prompt. On attend la réponse. La frustration arrive. WordCamp Bretagne 2026 · Harness engineering 04 / 54
  4. ACTE 1 · INTRODUCTION Les frustrations » i. o m

    e m m o c s a p e d o c e n a Ç « « Elle ignore l'architecture. » « Dès que c'est complexe, ça casse. » « Plus lente que moi. » WordCamp Bretagne 2026 · Harness engineering « Elle réécrit au lieu de refac torer. » de. » n a m e d je e u q e c s a p it fa e « Elle n « Je me répète à chaque ch at. » « Jamais le même résultat. » 05 / 54
  5. POSTULAT Ce n'est pas l'outil le problème. Alors, d'où vient

    la frustration ? WordCamp Bretagne 2026 · Harness engineering 06 / 54
  6. ACTE 2 · COMPRÉHENSION DE L'OUTIL Toi et l'outil TOI

    L'OUTIL Face au chat WordCamp Bretagne 2026 · Harness engineering 08 / 54
  7. ACTE 2 · COMPRÉHENSION DE L'OUTIL Les parties prenantes LE

    PROJET Tes fichiers, ton repo TOI L'OUTIL Face au chat LE LLM Le modèle HARNESS AGENTS.md, rules… WordCamp Bretagne 2026 · Harness engineering 09 / 54
  8. ACTE 2 · COMPRÉHENSION DE L'OUTIL Tu tapes un prompt

    LE PROJET Tes fichiers, ton repo TOI Face au chat Ton prompt L'OUTIL LE LLM Le modèle HARNESS AGENTS.md, rules… WordCamp Bretagne 2026 · Harness engineering 10 / 54
  9. ACTE 2 · COMPRÉHENSION DE L'OUTIL L'outil scanne le projet

    LE PROJET Tes fichiers, ton repo Scan TOI L'OUTIL Face au chat LE LLM Le modèle HARNESS AGENTS.md, rules… WordCamp Bretagne 2026 · Harness engineering 11 / 54
  10. ACTE 2 · COMPRÉHENSION DE L'OUTIL L'outil scanne le harness

    LE PROJET Tes fichiers, ton repo TOI L'OUTIL LE LLM Face au chat Le modèle Scan HARNESS AGENTS.md, rules… WordCamp Bretagne 2026 · Harness engineering 12 / 54
  11. ACTE 2 · COMPRÉHENSION DE L'OUTIL Tout ça rentre dans

    la fenêtre de contexte LE PROJET Tes fichiers, ton repo FENÊTRE DE CONTEXTE Ce que le LLM voit. Rien d'autre. Prompt système Prompt utilisateur TOI L'OUTIL Face au chat Données du projet Données du harness HARNESS AGENTS.md, rules… WordCamp Bretagne 2026 · Harness engineering 13 / 54
  12. ACTE 2 · COMPRÉHENSION DE L'OUTIL Le LLM répond à

    l'outil LE PROJET Tes fichiers, ton repo TOI L'OUTIL Face au chat Réponse LE LLM Le modèle HARNESS AGENTS.md, rules… WordCamp Bretagne 2026 · Harness engineering 14 / 54
  13. ACTE 2 · COMPRÉHENSION DE L'OUTIL L'outil te répond LE

    PROJET Tes fichiers, ton repo TOI Face au chat Réponse L'OUTIL LE LLM Le modèle HARNESS AGENTS.md, rules… WordCamp Bretagne 2026 · Harness engineering 15 / 54
  14. ACTE 2 · COMPRÉHENSION DE L'OUTIL Les causes de frictions

    LE PROJET Tes fichiers, ton repo TOI L'OUTIL Face au chat Codebase inconsistante Design patterns absents Legacy vs new code LE LLM Le modèle Mauvaise technique de prompt Posture réactive HARNESS Données d'entraînement Taille de la context window Modèle probabiliste, pas omniscient Pas de mémoire AGENTS.md, rules… Harness vide Aucune instruction pour l'IA WordCamp Bretagne 2026 · Harness engineering 16 / 54
  15. ACTE 2 · COMPRÉHENSION DE L'OUTIL Observations 01 Être un

    pilote réactif, ce n'est pas piloter. On subit les choix de l'IA. 02 L'état d'un projet ne suffit pas à garantir constance et pérennité quand l'IA produit. 03 Sans ta direction, l'IA suit sa propre voie : celle qui lui semble le plus probable. 04 Le LLM n'est pas omniscient, il est probabiliste. WordCamp Bretagne 2026 · Harness engineering 17 / 54
  16. ACTE 3 · LE HARNESS Le mot « harness »

    HARNAIS Ça guide. Et ça retient. CE N'EST PAS Une pile de consignes dans le chat. C'EST Un système autour du modèle, robuste, en lequel on peut avoir confiance. SHIFT On devient l'ingénieur du système qui génère le code. WordCamp Bretagne 2026 · Harness engineering 19 / 54
  17. ACTE 3 · LE HARNESS Six piliers AGENTS.MD RULES Les

    informations essentielles. Lu en premier. Interdits et standards. (Dos et Don'ts) COMMANDS SKILLS Procédures que tu déclenches. Playbooks lus à la demande. AGENTS HOOKS Spécialistes avec un périmètre. Automatismes déclenchés automatiquement. WordCamp Bretagne 2026 · Harness engineering 20 / 54
  18. ACTE 3 · AGENTS.MD AGENTS.md Un markdown à la racine,

    qui contient les informations essentielles du projet. CHAQUE SESSION Chargé et lu à chaque nouveau chat. MÉMOIRE Cette lecture, c'est sa mémoire. ATTENTION Trop long, ou trop contextuel, ça se retourne contre toi. TRAME TYPE ## Résumé du projet ## Stack technique ## Architecture ## Commandes DONC Savoir toujours utile. Rien de contextuel. WordCamp Bretagne 2026 · Harness engineering 21 / 54
  19. ACTE 3 · AGENTS.MD · UN SITE BEDROCK /AGENTS.md POURQUOI

    ## Résumé du projet L'agent a les infos clés de ton projet. Site vitrine pour une école supérieure. Le projet contient différents métiers (formations, écoles, campus). … ## Stack technique WordPress, architecture Bedrock, PHP 8.3, Composer, DDEV. Front : @wordpress/scripts. Qualité : WPCS. Tests : PHPUnit via composer test. … ## Architecture Architecture Bedrock Organisation des dossiers : - web/ ... … ## Commandes ddev wp … … WordCamp Bretagne 2026 · Harness engineering Plus d'erreur de stack ou de version. Plus d'erreur de placement. Il respecte ton organisation. Il sait comment interagir avec ton serveur. 22 / 54
  20. ACTE 3 · AGENTS.MD · TAKEAWAY Ton agent oublie une

    info clé ? Tu te répètes? Tu dois lui réexpliquer encore et encore des éléments ? À FAIRE Mets à jour ton AGENTS.md. WordCamp Bretagne 2026 · Harness engineering 23 / 54
  21. ACTE 3 · RULES Rules Des fichiers de contraintes, Do's

    and Don'ts. TOUJOURS LÀ Chargées à chaque tour. Ou limitées à un glob. CONTENU Directions techniques, standards, interdits, « jamais ça ». DONC Moins de liberté. Plus de prévisibilité. WordCamp Bretagne 2026 · Harness engineering DEUX PORTÉES ALWAYS-ON Tout le repo, tout le temps. PAR GLOB ex focus sur *.php ou */wpcontent/themes/montheme/*css. 24 / 54
  22. ACTE 3 · RULES · DOSSIER Un fichier par contrainte

    Elles vivent dans .agents/rules/. Une rule, un markdown. .agents/ └──rules/ ├──sortie.md ├──wpcs.md ├──caps-nonce.md └──secrets.md WordCamp Bretagne 2026 · Harness engineering 25 / 54
  23. ACTE 3 · RULES · SORTIE .agents/rules/sortie.md POURQUOI --description: Échapper

    toute sortie PHP globs: "**/*.php" alwaysApply: false --- Le front matter fixe la portée. Ici : les .php seulement. ## Sortie Le corps pose l'interdit. Pas une suggestion : une contrainte. N'echo jamais une donnée brute. - Texte : esc_html() - Attribut : esc_attr() - URL : esc_url() … WordCamp Bretagne 2026 · Harness engineering 26 / 54
  24. ACTE 3 · RULES · TAKEAWAY Ton agent ne respecte

    pas tes conventions ? À FAIRE Crée une rule dédiée pour enforcer. WordCamp Bretagne 2026 · Harness engineering 27 / 54
  25. ACTE 3 · COMMANDS Commands Transformation d'un prompt en procédure

    déclarée, que tu lances avec un slash. Unification de l'expérience pour toute l'équipe. TU DÉCLENCHES Tu tapes /commit. L'agent charge le fichier. CONTENU Une procédure claire. Même geste, même ordre. DONC Plus de prompt réinventé à chaque fois. TRAME TYPE ## Goal ## Rules ## Context ## Role ## Procedure ## Examples WordCamp Bretagne 2026 · Harness engineering 28 / 54
  26. ACTE 3 · COMMANDS · DOSSIER Un fichier par procédure

    Elles vivent dans .agents/commands/. Une command, un markdown. .agents/ └──commands/ ├──commit.md ├──clarify.md ├──create-pr.md └──review.md WordCamp Bretagne 2026 · Harness engineering 29 / 54
  27. ACTE 3 · COMMANDS · COMMIT .agents/commands/commit.md POURQUOI --description: Préparer

    et exécuter les commits du workspace --- Le front matter décrit la command. ## Goal Ce que la commande doit produire. Automatiser la préparation et l'exécution des commits. Atomiques, conformes Jira, et sûrs. … ## Rules Jamais de commande Git destructive. Jamais réécrire l'historique sans demande explicite. Jamais committer sur main, master, develop. … ## Procedure 1. Inspecter l'état du dépôt 2. Grouper par plus petit souci cohérent 3. Traiter les fichiers unstaged avec soin : pertinents → dans le bon groupe WordCamp Bretagne→2026 · Harness engineering hors-sujet laisser de côté doute → demander avant d'inclure Les interdits. Toujours. L'ordre. Context, Role, Examples suivent. 30 / 54
  28. ACTE 3 · COMMANDS · TAKEAWAY Tu fais souvent les

    mêmes tâches ? À FAIRE Crée une commande pour automatiser. WordCamp Bretagne 2026 · Harness engineering 31 / 54
  29. ACTE 3 · SKILLS Skills Un playbook qui forme ton

    agent à une tâche spécifique. CONTENU C'est un dossier qui contient un fichier SKILL.md, mais aussi des sous-dossiers et fichiers complémentaires (templates, documentation, scripts…). TRAME TYPE CHARGEMENT ## Context Explicite via slash command, et implicite via matching context. DONC Plus riche qu'une rule. Plus rare qu'une command. WordCamp Bretagne 2026 · Harness engineering ## Goal ## Rules ## Role ## Procedure ## Examples 32 / 54
  30. ACTE 3 · SKILLS · DOSSIER Un dossier par skill

    Elles vivent dans .agents/skills/. Une skill, un dossier. Pas un fichier. .agents/ └──skills/ ├──creating-a-new-custom-posttype/ ├──SKILL.md obligatoire et sensible à la casse ├──assets/ images, templates └──cpt-template.php ├──references/ docs complémentaires └──scripts/ exécutables par l'agent ├──create-block/ └──create-taxonomy/ WordCamp Bretagne 2026 · Harness engineering 33 / 54
  31. ACTE 3 · SKILLS · CUSTOM POST TYPE .agents/skills/creating-a-new-custom-posttype/SKILL.md POURQUOI

    --name: creating-a-new-custom-posttype description: Crée une classe CPT WonderWP (key, labels, args, i18n) --- Le front matter déclenche le match. ## Goal Ce que la skill doit produire. Créer une classe CPT WonderWP (AbstractCustomPostType) dans includes/PostTypes : key, labels, args, i18n. … ## Rules Collecter les infos avant de créer le CPT. Obligatoire : nom, key, labels, plugin. Si seul le nom : extrapoler, confirmer. Optionnel : description, visibilité, caps, REST. … ## Workflow 1. Déterminer le dossier plugin 2. Créer includes/PostTypes si besoin 3. Classe : camelCase + PostType extends AbstractCustomPostType WordCamp Bretagne 2026 · Harness engineering HasCustomTypeDefinitions + HasLabels … Refléter ce qui est collecté vs manquant. L'ordre. Context, Role, Examples suivent. 34 / 54
  32. ACTE 3 · SKILLS · TAKEAWAY Tu veux former ton

    agent à appréhender un concept complet comme toi ? À FAIRE Crée une skill dédiée. WordCamp Bretagne 2026 · Harness engineering 35 / 54
  33. ACTE 3 · AGENTS Agents La plupart du temps, tu

    n'as pas besoin d'agents. Trois vrais intérêts à comprendre avant de te lancer. FENÊTRE Orchestrable, exécutable dans sa propre context window. Donc parallélisable. DOMAINES Organise les compétences du harness. Un agent, un périmètre. BOUCLE Autonomie agentique sur la résolution de tâches. WordCamp Bretagne 2026 · Harness engineering TRAME TYPE ## Metadata ## Personality ## Constraints ## Context ## Entry ## Behavior ## Exit 36 / 54
  34. ACTE 3 · AGENTS · DOSSIER Un fichier par agent

    Ils vivent dans .agents/agents/. Un agent, un markdown. .agents/ └──agents/ ├──backend-developer.md ├──block-editor.md ├──ops.md ├──theme-developer.md └──version-control.md WordCamp Bretagne 2026 · Harness engineering 37 / 54
  35. ACTE 3 · AGENTS · CLAIRE .agents/agents/claire.md POURQUOI --name: claire

    description: Clarifie une demande jusqu'à zéro ambiguïté --- Metadata — name, description, color, model. ## Personality Identity line — name, role, goal. You are Claire, a relentless Product Owner. You aim at ultra-clear specs via Socratic questions. … ## Rules Une seule mission — clarifier, rien d'autre. 3–5 questions max par round. Tranchantes. Jamais d'hypothèse. Ambigu → demander. … ## Instruction steps 1. Checklist : What · Who · Why · How 2. Une à deux questions par trou 3. Réintégrer, re-évaluer WordCamp Bretagne 2026 · Harness engineering 4. Boucler jusqu'à zéro ambiguïté … Constraints — best practices & métier. Behavior → Exit : la demande réécrite, nette. 38 / 54
  36. ACTE 3 · AGENTS · BACKEND .agents/agents/backend-developer.md POURQUOI --name: wonderwp-backend

    description: Spécialiste backend WordPress (CPT, hooks, WP-CLI…) --- Metadata — name, description, color, model. ## Domain Specialization Un domaine. Un périmètre fermé. CPT, taxonomies, hooks, plugins, repositories, WP-CLI. Pas de blocs. Pas de thème. Backend only. … ## Available Skills creating-a-new-plugin creating-a-new-custom-posttype creating-a-new-taxonomy creating-a-new-hook creating-custom-fields Context — pointe vers les skills du domaine. … WordCamp Bretagne 2026 · Harness engineering 39 / 54
  37. ACTE 3 · AGENTS · TAKEAWAY Suite à l'avènement des

    skills, les agents deviennent des moyens vers l'orchestration À FAIRE Regroupe tes skills dans des agents spécialisés d'un domaine métier. WordCamp Bretagne 2026 · Harness engineering 40 / 54
  38. ACTE 3 · HOOKS Hooks Scripts accrochés à la boucle

    agent. Pas le LLM qui décide, c'est l'outil qui déclenche au runtime. TU CONFIGURES Un écouteur d'événement (JavaScript) + un script (shell). DÉCLENCHEMENT Automatique par l'outil, sur une liste d'événements prédéfinis. DONC Garde-fous déterministes — même pressé. WordCamp Bretagne 2026 · Harness engineering ÉVÉNEMENTS COURANTS sessionStart beforeShell beforeRead afterEdit stop 41 / 54
  39. ACTE 3 · HOOKS · DOSSIER Un script par garde

    Elles vivent dans .agents/hooks/. Un JSON pour déclarer, un script par garde. .agents/ └──hooks/ ├──hooks.json ├──block-rm-outside.sh └──protect-env.sh WordCamp Bretagne 2026 · Harness engineering 42 / 54
  40. ACTE 3 · HOOKS · .ENV .agents/hooks/hooks.json POURQUOI { beforeRead

    — avant que le secret entre dans le contexte. } "hooks": { "beforeRead": [ { "command": ".agents/hooks/protect-env.sh" } ] } .agents/hooks/protect-env.sh lire le chemin demandé si .env ou .env.* → refuser la lecture sinon → OK WordCamp Bretagne 2026 · Harness engineering .env — credentials hors de portée de l'agent. Déterministe — une rule « ne lis pas .env » peut être oubliée. 43 / 54
  41. ACTE 3 · HOOKS · HORS WORKSPACE .agents/hooks/hooks.json POURQUOI {

    beforeShell — avant que la commande parte. } "hooks": { "beforeShell": [ { "command": ".agents/hooks/block-rm-outside.sh" } ] } .agents/hooks/block-rm-outside.sh lire la commande prévue si rm / rmdir hors workspace → bloquer sinon → laisser passer WordCamp Bretagne 2026 · Harness engineering Hors workspace — l'agent ne casse pas le disque voisin. Bloquer — pas un « s'il te plaît n'efface pas » dans une rule. 44 / 54
  42. ACTE 3 · HOOKS · TAKEAWAY Ton outil fait parfois

    des actions néfastes ou en oublie ? À FAIRE Ajoute un hook pour automatiser les vérifications du processus. WordCamp Bretagne 2026 · Harness engineering 45 / 54
  43. ACTE 3 · LES PILIERS Deux jobs DONNER UN CAP

    AGENTS.MD SKILLS AGENTS COMMANDS Les infos essentielles. Playbooks à la demande. Un spécialiste dédié. Procédures déclenchées. CADRER RULES Interdits et standards. (Do's and Don'ts) WordCamp Bretagne 2026 · Harness engineering HOOKS Automatismes. Pas le LLM. 46 / 54
  44. ACTE 3 · SYNTHÈSE Un harness peut devenir conséquent On

    est en train d'architecturer le système qui produit le code. AGENTS.md .agents/ ├── rules/ ├──sortie.md ├──wpcs.md ├──caps-nonce.md ├──secrets.md └──…/ └── commands/ ├──commit.md ├──clarify.md ├──create-pr.md ├──review.md └──…/ WordCamp Bretagne 2026 · Harness engineering ├── skills/ ├──creating-a-new-custom-posttype/ └──SKILL.md ├──create-block/ ├──create-taxonomy/ └──…/ ├── agents/ ├──backend-developer.md ├──block-editor.md ├──version-control.md └──…/ └── hooks/ ├──hooks.json ├──block-rm-outside.sh ├──protect-env.sh └──…/ 47 / 54
  45. ACTE 4 · ROADMAP 01 · CARTE Je ne laisse

    pas mon IA dans le flou. À FAIRE Je lui donne les infos essentielles dans AGENTS.md. WordCamp Bretagne 2026 · Harness engineering 49 / 54
  46. ACTE 4 · ROADMAP 02 · POSTURE Je ne fais

    plus. Je fais faire. À FAIRE Je crée mes premières skills pour bien déléguer. WordCamp Bretagne 2026 · Harness engineering 50 / 54
  47. ACTE 4 · ROADMAP 03 · SURVEILLANCE Autonomie, sous surveillance.

    À FAIRE Un écart : j'ajuste et je cadre avec mes premières rules. WordCamp Bretagne 2026 · Harness engineering 51 / 54
  48. ACTE 4 · ROADMAP 04 · PROCESS Je processise le

    flow agentique. À FAIRE Je systématise les commandes méthodologiques. (/plan, /implement, /review /commit /pr etc.) WordCamp Bretagne 2026 · Harness engineering 52 / 54
  49. ACTE 4 · ROADMAP 05 · ORCHESTRATION Je construis maintenant

    un système. À FAIRE Organisation des métiers avec agents dédiés. Et hooks pour que le système ne puisse plus se tromper. WordCamp Bretagne 2026 · Harness engineering 53 / 54
  50. Merci On passe de l'outil à la méthode systémique et

    agnostique. Questions LINKEDIN jeremydesvaux SLIDES en ligne WordCamp Bretagne 2026 · Harness engineering · Jeremy Desvaux de Marigny 54 / 54