Créer une équipe d’agents IA qui font des reviews comme de vrais Coréens (fork de Harness + 1 million de personas NVIDIA)
(github.com/hongsw)TL;DR
Pour un harness centré sur la review — code review, review de documentation, recherche UX, simulation d’entretien — il n’y a de vraie valeur que si 5 reviewers apportent 5 points de vue différents. Dans une équipe d’agents IA classique, les 5 ont en pratique un ton et une perspective très proches, si bien qu’on répète essentiellement le même avis 5 fois.
Ce fork récupère à l’exécution les données de NVIDIA Nemotron-Personas-Korea (1 million de lignes, CC BY 4.0) via une recherche dynamique, puis habille les agents avec des profils réalistes du monde du travail coréen — métier, génération, région, jusqu’à la situation familiale — afin de produire des reviews vraiment différentes dans leurs points de vue.
Pourquoi un harness de review a besoin de personas profonds
Même face au même code, au même document ou au même design, chacun regarde les choses sous un angle différent :
-
Chef d’équipe backend de 45 ans, issu des SI
→ « Du point de vue de la gestion du risque, partons sur un déploiement par étapes. Bien valider en amont nous fera gagner du temps au final. » -
Growth marketer de 24 ans, génération MZ
→ « J’aime bien la réactivité pour poser vite des hypothèses quand les chiffres sortent de l’ordinaire, mais le niveau de significativité est un peu faible. On relance un peu plus de A/B testing ? » -
PM de 38 ans, mère active
→ « En résumé, si on ne peut pas livrer dans le trimestre, merci de revoir les priorités une fois. » -
Designer de 27 ans venant de la fintech
→ « Dans les données qualitatives des entretiens utilisateurs, le commentaire “le moment où l’on reçoit le coupon manque un peu d’impact” revenait souvent. »
→ Face au même code, 4 personnes identifient des risques, de la valeur et des priorités différents. C’est l’essence même d’une équipe de review.
Ce qui a été ajouté (3 nouveaux skills, non intrusifs)
revfactory/harness existant reste inchangé, avec un branchement automatique des triggers via des mots-clés dans la description :
korean-persona-search— filtrage multidimensionnel Parquet predicate pushdown (métier, région, âge, niveau d’études, génération) + échantillonnage pour la diversitékorean-voice-adapter— matrice de registres honorifiques + culture du travail coréenne (ligne de reporting, étiquette en réunion, formulations indirectes) + lexique sectoriel de 13 industrieskorean-persona-harness— méta-orchestrateur (pipeline de 5 sous-agents : analyste de scénario → curateur de personas → adaptateur de style → builder d’agents → QA de diversité)
Compatible à la fois avec Claude Code et Codex CLI — même format SKILL.md, cache de dataset partagé.
Validation — même LLM, même tâche, même volume (102 lignes vs 103 lignes)
Simulation d’un compte rendu de stand-up hebdomadaire pour une équipe de 5 personnes. La précision métier est équivalente. La différence se voit dans la diversité des points de vue.
Résultat du harness standard :
- Identifiabilité des voix : faible (les 5 ont presque le même ton)
- Savoir-vivre en entreprise coréenne : minimal
- Réponses mutuelles, encouragements, remerciements : 0 occurrence
- Ton de demande / confirmation : 5 occurrences
- Exposition de contraintes personnelles : 0 cas
Résultat de korean-persona-harness :
- Identifiabilité des voix : très élevée (identifiables même en masquant les noms)
- Savoir-vivre en entreprise coréenne : riche (évite l’affirmation tranchée, mentoring, ton de confirmation)
- Réponses mutuelles, encouragements, remerciements : 4 occurrences
- Ton de demande / confirmation : 11 occurrences
- Exposition de contraintes personnelles : 2 cas (agenda familial, appel à l’autorité)
Détail humain apparu uniquement dans le Run B :
Backend (père de deux enfants) : « La semaine prochaine, j’ai quelques contraintes liées aux enfants, donc je me dis qu’on pourrait peut-être organiser la rotation à l’avance. »
- Savoir-vivre en entreprise coréenne : minimal
- Savoir-vivre en entreprise coréenne : minimal
- Réponses mutuelles, encouragements, remerciements : 0 occurrence
- Ton de demande / confirmation : 5 occurrences
- Exposition de contraintes personnelles : 0 cas
Résultat de korean-persona-harness :
- Identifiabilité des voix : très élevée (identifiables même en masquant les noms)
- Savoir-vivre en entreprise coréenne : riche (évite l’affirmation tranchée, mentoring, ton de confirmation)
- Réponses mutuelles, encouragements, remerciements : 4 occurrences
- Ton de demande / confirmation : 11 occurrences
- Exposition de contraintes personnelles : 2 cas (agenda familial, appel à l’autorité)
Détail humain apparu uniquement dans le Run B :
Backend (père de deux enfants) : « La semaine prochaine, j’ai quelques contraintes liées aux enfants, donc je me dis qu’on pourrait peut-être organiser la rotation à l’avance. »
Chef d’équipe (45 ans) → Marketer (24 ans) : « La façon dont vous posez rapidement des hypothèses sur les causes quand les chiffres s’emballent, continuez comme ça. »
Marketer : « Ah, merci chef ! »
Chef d’équipe : « En revanche, il y a des signes indiquant que notre politique de retry a été trop agressive, ce qui a partiellement amplifié l’incident. Je préfère ne conclure qu’avec la version finale du RCA. »
→ Les personas familiaux, générationnels et métier se combinent naturellement dans les prises de parole. On n’est plus dans un abstrait “priorité à la stabilité” : on sent pourquoi cette personne porte cette priorité à travers son comportement.
Matrice de valeur — où cela peut servir
- Code review (5 points de vue différents) → très élevé
- Simulation d’entretiens avec utilisateurs virtuels → très élevé
- Review de copy marketing destinée aux utilisateurs coréens → très élevé
- Recherche UX et ateliers personas → élevé
- Simulations de réunions et de collaboration → élevé
- RFC et documentation technique → moyen
- Conception infra et architecture → faible (
harnessstandard convient mieux)
Installation (1 ligne)
Claude Code :
/plugin marketplace add hongsw/harness
/plugin install harness@harness
Codex CLI :
python3 ~/.codex/skills/.system/skill-installer/scripts/install-skill-from-github.py \
--repo hongsw/harness \
--path skills/korean-persona-search \
--path skills/korean-voice-adapter \
--path skills/korean-persona-harness
Cache du dataset (partagé entre les deux runtimes) :
pip install huggingface_hub pyarrow
python3 $SKILL_DIR/korean-persona-search/scripts/download.py
⚠️ Attention : l’installateur existant de revfactory/harness utilise le même nom de marketplace et de plugin, donc une migration en 4 étapes est nécessaire :
/plugin uninstall harness@harness
/plugin marketplace remove harness-marketplace
/plugin marketplace add hongsw/harness
/plugin install harness@harness
Liens
- Fork du dépôt : github.com/hongsw/harness
- PR #9 vers l’upstream (en attente de merge) : github.com/revfactory/harness/pull/9
- Artefacts de validation : _workspace/comparison_test
- Dataset : huggingface.co/.../Nemotron-Personas-Korea (CC BY 4.0)
- Harness original : github.com/revfactory/harness
1 commentaires
C’est intéressant haha. Nous aussi, nous avançons dans un domaine similaire mais par une autre voie — ClawSouls (clawsouls.ai), une plateforme de registre et de partage pour stocker des personas. Une persona enregistrée peut être appliquée à des plateformes d’agents comme OpenClaw, Claude Code, Cursor et Hermes Agent via le package npm
clawsouls. Nous vous serions reconnaissants de bien vouloir la publier. Cette plateforme a déjà été présentée sur GeekNews. Show GN: ClawSouls – un registre open de personas pour agents IA à changer en une ligne Si vous souhaitez collaborer, merci de nous contacter ^^ ( contact@clawsouls.ai )