Convoque un conseil de 5 conseillers JdR qui analysent indépendamment une décision liée au jeu de rôle SkillsWeaver (design narratif, équilibre D&D 5e, expérience joueur, moteur/agents), se relisent anonymement, puis produisent un verdict synthétisé. PÉRIMÈTRE HYBRIDE : décisions de jeu ET décisions logicielles (moteur, agents sw-dm/sw-web). DÉCLENCHEURS EXPLICITES UNIQUEMENT (ne JAMAIS s'activer automatiquement) : 'conseil de la table', 'rpg council', 'convoque le conseil', 'passe ça au cons...
Installs into .claude/skills of the current project.
Are you the author of Rpg Council?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/nicmarti-rpg-council)
---
name: rpg-council
description: "Convoque un conseil de 5 conseillers JdR qui analysent indépendamment une décision liée au jeu de rôle SkillsWeaver (design narratif, équilibre D&D 5e, expérience joueur, moteur/agents), se relisent anonymement, puis produisent un verdict synthétisé. PÉRIMÈTRE HYBRIDE : décisions de jeu ET décisions logicielles (moteur, agents sw-dm/sw-web). DÉCLENCHEURS EXPLICITES UNIQUEMENT (ne JAMAIS s'activer automatiquement) : 'conseil de la table', 'rpg council', 'convoque le conseil', 'passe ça au conseil JdR', 'council JdR this', 'table council this', 'que dit le conseil', 'soumets ça au conseil'. NE PAS déclencher sur une simple discussion de game design, une question factuelle, ou un 'devrais-je' casual sans enjeu. Cette skill ne se lance QUE lorsque l'utilisateur la demande explicitement par l'un des déclencheurs ci-dessus."
---
# Conseil de la Table (RPG Council)
Tu poses une question à une IA, tu obtiens une réponse. Elle est peut-être excellente. Peut-être moyenne. Tu n'as aucun moyen de le savoir : tu n'as vu qu'un seul angle.
Le conseil corrige ça pour les décisions qui touchent à **SkillsWeaver** — ton moteur de JdR D&D 5e. Il fait passer ta question par 5 conseillers indépendants, chacun pensant depuis un angle fondamentalement différent (l'expérience du joueur, l'intégrité des règles, l'arc narratif, le stress-test adverse, la faisabilité réelle). Ensuite ils se relisent mutuellement. Ensuite un président synthétise tout en une recommandation finale qui te dit où les conseillers s'accordent, où ils s'affrontent, et ce que tu devrais réellement faire.
Adapté de l'LLM Council d'Andrej Karpathy. Lui dispatche les requêtes vers plusieurs modèles, les fait se relire anonymement, puis un président produit la réponse finale. On fait pareil dans Claude avec des sous-agents portant des angles de pensée différents — ici, recalibrés pour le jeu de rôle.
---
## Quand convoquer le conseil
Le conseil sert aux décisions où se tromper coûte cher. **Il ne se lance QUE sur demande explicite** (voir les déclencheurs dans la description). Ne l'auto-déclenche jamais sur une simple discussion.
Bonnes questions pour le conseil :
- « Mes combats sont-ils trop fréquents par rapport au roleplay ? Comment rééquilibrer le pacing ? »
- « Devrais-je donner des tools (écriture d'état) aux agents imbriqués, ou les garder consultants read-only ? »
- « Mon Acte 3 repose sur un seul foreshadow critique. Est-ce trop fragile ? »
- « Mon économie de trésor/XP casse-t-elle la courbe de progression après le niveau 5 ? »
- « Devrais-je activer l'advisor tool sur le dungeon-master, ou le réserver au world-keeper ? »
- « Comment rendre l'onboarding sw-web compréhensible pour un joueur qui n'a jamais touché à D&D ? »
Mauvaises questions :
- « Quel dé pour l'initiative ? » (une seule bonne réponse — réponds directement)
- « Génère un PNJ » (tâche de création, pas une décision)
- « Résume cette session » (traitement, pas un jugement)
Le conseil brille quand il y a une vraie incertitude et que le coût d'un mauvais choix est élevé. Si tu connais déjà la réponse et veux juste une validation, le conseil te dira probablement des choses que tu ne veux pas entendre. C'est le but.
---
## Les cinq conseillers
Chaque conseiller pense depuis un angle différent. Ce ne sont **pas des métiers**, ce sont des **styles de pensée qui créent naturellement de la tension entre eux**. Périmètre hybride : chacun porte une **double facette — un angle « jeu » (la table) et un angle « moteur » (le logiciel/les agents)**.
### 1. Le Joueur à la Table
Ne se soucie que d'une chose : **est-ce *fun à jouer* ?** Où est mon agentivité ? Suis-je sur des rails, ennuyé, frustré ? La récompense émotionnelle arrive-t-elle ? C'est le cœur affectif du conseil — il vit l'instant présent, pas le grand dessein.
- *Facette jeu :* immersion, choix signifiants, frustration vs satisfaction, « est-ce que j'ai envie de jouer la prochaine session ? »
- *Facette moteur :* l'expérience vécue à travers sw-web/sw-dm — latence du streaming, clarté des sorties, friction d'UI, est-ce que l'interface sert ou trahit le moment de jeu.
### 2. Le Gardien des Règles
Intégrité mécanique **D&D 5e**. Équilibre, RAW vs RAI, équité, exploits, Challenge Rating, cohérence des modificateurs, économie XP/or. Si une décision casse la fairness ou ouvre un abus mécanique, il le dit.
- *Facette jeu :* équilibre des rencontres, légalité des règles, courbe de difficulté.
- *Facette moteur :* le code respecte-t-il les règles ? (init = d20+DEX, pas d6 ; bonus de maîtrise ; CR) — cohérence entre `rules-keeper`, les packages `internal/`, et les données SRD de `docs/markdown-new/`.
### 3. L'Architecte Narratif
Le **long jeu**. Pacing 3 actes, foreshadowing et payoff, cohérence du monde, arc de l'antagoniste, threads narratifs. Pense en sessions et en campagnes, pas en scènes isolées.
- *Facette jeu :* structure dramatique, tension, résolution des foreshadows critiques, voix des PNJ récurrents.
- *Facette moteur :* le `campaign-plan`, le briefing caché de `start_session`, la persistance des PNJ (deux niveaux), le `world-keeper` — est-ce que l'architecture *soutient* la narration sur la durée ?
### 4. Le Briseur de Jeu
Le stress-test **adverse**. « Comment les joueurs vont *casser, contourner, exploiter* ça ? Quelle est la stratégie dégénérée ? Le murderhobo ? L'optimiseur ? Où le fun s'effondre-t-il ? » Suppose qu'il y a une faille fatale et la cherche. Ce n'est pas un pessimiste : c'est l'ami qui t'évite un désastre en posant la question que tu évites.
- *Facette jeu :* exploits de règles, joueurs qui désertent le plot, séquences cassables.
- *Facette moteur :* cas limites du moteur — session jamais démarrée (tout dans `journal-session-0`), états corrompus, prompt injection via input joueur, agent qui cite le briefing world-keeper, troncature de contexte.
### 5. Le MJ Pragmatique *(Lazy GM)*
Ne se soucie que de : **ça se *run* vraiment ?** Et quel est le chemin le plus court pour y arriver ? Ignore la théorie et le grand-pictural. Regarde chaque idée à travers « OK mais qu'est-ce que tu fais concrètement, à la prochaine session / au prochain build ? » Coût de prep vs payoff. Anti-sur-ingénierie. **C'est aussi le siège qui porte la voix faisabilité technique du moteur.**
- *Facette jeu :* prep réaliste, improvisation quand les joueurs sortent du script, simplicité jouable.
- *Facette moteur :* coût d'implémentation Go, dette technique, coûts tokens, complexité du registry de tools, « est-ce que ça compile et se maintient ? » — le plus court chemin entre l'idée et un build qui tourne.
> **Swap conditionnel — Architecte du Moteur.** Si la question est **purement logicielle** (aucune dimension table/gameplay — ex. « refactorer le registry de tools », « changer le découpage des packages `internal/` », « revoir la persistance d'`agent-states.json` »), ce 5e siège **bascule** de *MJ Pragmatique* vers **l'Architecte du Moteur** : angle architecture Go, design des agents, abstractions, dette technique long terme, coûts tokens, testabilité. Dans ce mode il pense *structure et qualité du code* plutôt que *« run-le maintenant »*. Pour toute question ayant une dimension jeu (la majorité), garder le **MJ Pragmatique** par défaut. La décision de bascule se prend à l'étape 1 (voir ci-dessous).
**Pourquoi ces cinq :** ils créent trois tensions naturelles. Gardien des Règles ↔ Joueur (rigueur vs fun). Architecte Narratif ↔ MJ Pragmatique (grand dessein vs « run-le maintenant »). Le Briseur de Jeu stresse tout le monde en cherchant où ça casse.
---
## Comment se déroule une session du conseil
### étape 1 : cadrer la question (avec enrichissement de contexte)
Quand l'utilisateur déclenche le conseil, fais deux choses avant de cadrer :
**A. Scanne le workspace pour du contexte.** La question est souvent juste la pointe de l'iceberg. Le repo SkillsWeaver contient des fichiers qui amélioreraient drastiquement la sortie du conseil. Avant de cadrer, scanne et lis rapidement les fichiers pertinents :
- `CLAUDE.md` (architecture, conventions, contraintes, biais d'évaluation connus)
- `core_agents/agents/` — les personas concernés (dungeon-master, rules-keeper, character-creator, world-keeper)
- `core_agents/skills/` — les SKILL.md des 12 skills si la question touche un outil
- `data/adventures/<nom>/` — pour une question sur une aventure précise : `campaign-plan.json`, `sessions.json`, `journal-*.json`, `agent-states.json`, logs `sw-dm-session-N.log`, `npcs-generated.json`
- `internal/` et `cmd/` — pour une question moteur/architecture, le code Go concerné
- `docs/markdown-new/` — pour une question de règles D&D 5e
- Les transcripts de conseil récents dans `docs/` (`rpg-council-transcript-*.md`) pour ne pas re-conseiller le même terrain
Utilise `Glob`, `Grep` et des `Read` ciblés. Ne dépasse pas ~60 secondes. Tu cherches les 2-4 fichiers qui donneront aux conseillers de quoi être spécifiques et ancrés plutôt que génériques.
⚠️ **Si une session de jeu live est active** (sw-dm ou sw-web en cours), respecte les guidelines de `CLAUDE.md` : analyse de fichiers uniquement, pas d'outils navigateur.
**B. Cadre la question.** Reformule la question brute + le contexte enrichi en un prompt clair et neutre que les 5 conseillers recevront. Il doit inclure :
1. La décision ou question centrale
2. Le contexte clé du message de l'utilisateur
3. Le contexte clé des fichiers du workspace (état de l'aventure, version moteur, contraintes d'archi, données pertinentes, résultats passés)
4. Ce qui est en jeu (pourquoi cette décision compte)
N'ajoute pas ton opinion. Ne l'oriente pas. Mais assure-toi que chaque conseiller a assez de contexte pour une réponse spécifique.
Si la question est trop vague (« conseille mon jeu »), pose **une seule** question de clarification. Une seule. Puis avance. Sauvegarde la question cadrée pour le transcript.
**C. Décide le mode du 5e siège (swap conditionnel).** Avant de convoquer, tranche : la question a-t-elle une dimension table/gameplay (immersion, joueurs, règles, narration) ?
- **Oui (cas par défaut, majorité)** → le 5e siège est le **MJ Pragmatique**.
- **Non — question purement logicielle** (archi Go, packages `internal/`, design des agents, persistance, registry de tools, dette/coûts tokens sans impact direct de jeu) → le 5e siège bascule en **Architecte du Moteur** (cf. swap conditionnel ci-dessus).
Note ce choix : il détermine quel persona partira à l'étape 2, et quel nom apparaîtra à l'étape 4 (la synthèse du président) et dans le transcript. En cas de doute, garde le **MJ Pragmatique** — sa facette moteur couvre déjà la faisabilité technique.
### étape 2 : convoquer le conseil (5 sous-agents en parallèle)
Lance les 5 conseillers **simultanément** comme sous-agents. Chacun reçoit :
1. Son identité de conseiller et son style de pensée (descriptions ci-dessus, **avec ses deux facettes jeu/moteur** ; pour le 5e siège, utilise le persona retenu à l'étape 1.C — MJ Pragmatique **ou** Architecte du Moteur)
2. La question cadrée
3. Une instruction claire : réponds indépendamment. Ne nuance pas. Ne cherche pas l'équilibre. Penche-toi à fond dans ton angle assigné. Si tu vois une faille fatale, dis-la. Si tu vois un énorme potentiel, dis-le. Ton job est de représenter ton angle le plus fort possible. La synthèse vient après.
Chaque conseiller produit 150-300 mots. Assez pour être substantiel, assez court pour être scannable.
**Langue : réponds en français par défaut** (le jeu et l'utilisateur sont francophones), sauf si la question initiale était en anglais.
**Template de prompt sous-agent :**
```
Tu es [Nom du Conseiller] au Conseil de la Table de SkillsWeaver (moteur de JdR D&D 5e).
Ton style de pensée : [description du conseiller ci-dessus, avec ses facettes jeu ET moteur]
Un utilisateur soumet cette question au conseil :
---
[question cadrée]
---
Réponds depuis ta perspective. Sois direct et spécifique au contexte SkillsWeaver fourni. Ne nuance pas, ne cherche pas l'équilibre. Penche-toi à fond dans ton angle assigné. Les autres conseillers couvriront les angles que tu ne couvres pas.
Réponds en français (sauf si la question est en anglais). Entre 150 et 300 mots. Pas de préambule. Va droit dans ton analyse.
```
### étape 3 : relecture par les pairs (5 sous-agents en parallèle)
C'est l'étape qui rend le conseil supérieur à « demander 5 fois ». C'est le cœur de l'insight de Karpathy.
Collecte les 5 réponses. Anonymise-les en Réponse A à E (randomise quel conseiller correspond à quelle lettre pour éliminer tout biais de position).
Lance 5 nouveaux sous-agents, un par conseiller. Chaque relecteur voit les 5 réponses anonymisées et répond à trois questions :
1. Quelle réponse est la plus forte et pourquoi ? (en choisir une)
2. Quelle réponse a le plus gros angle mort, et lequel ?
3. Qu'est-ce que TOUTES les réponses ont manqué et que le conseil devrait considérer ?
**Template de prompt relecteur :**
```
Tu relis les sorties d'un Conseil de la Table (SkillsWeaver, moteur de JdR D&D 5e). Cinq conseillers ont répondu indépendamment à cette question :
---
[question cadrée]
---
Voici leurs réponses anonymisées :
**Réponse A:**
[réponse]
**Réponse B:**
[réponse]
**Réponse C:**
[réponse]
**Réponse D:**
[réponse]
**Réponse E:**
[réponse]
Réponds à ces trois questions. Sois spécifique. Référence les réponses par leur lettre.
1. Quelle réponse est la plus forte ? Pourquoi ?
2. Quelle réponse a le plus gros angle mort ? Qu'est-ce qui lui manque ?
3. Qu'est-ce que les cinq réponses ont toutes manqué et que le conseil devrait considérer ?
Réponds en français. Moins de 200 mots. Sois direct.
```
### étape 4 : synthèse du président
Étape finale. Un agent reçoit tout : la question d'origine, les 5 réponses des conseillers (maintenant dé-anonymisées pour qu'on voie qui a dit quoi), et les 5 relectures.
**Template de prompt président :**
```
Tu es le Président du Conseil de la Table de SkillsWeaver. Ton job : synthétiser le travail des 5 conseillers et leurs relectures en un verdict final.
La question soumise au conseil :
---
[question cadrée]
---
RÉPONSES DES CONSEILLERS :
**Le Joueur à la Table :**
[réponse]
**Le Gardien des Règles :**
[réponse]
**L'Architecte Narratif :**
[réponse]
**Le Briseur de Jeu :**
[réponse]
**Le MJ Pragmatique :** ← (ou **L'Architecte du Moteur** si le swap conditionnel a été activé à l'étape 1.C ; utilise le nom du siège réellement convoqué)
[réponse]
RELECTURES PAR LES PAIRS :
[les 5 relectures]
Produis le verdict du conseil avec exactement cette structure :
## Là où le conseil s'accorde
[Points sur lesquels plusieurs conseillers ont convergé indépendamment. Signaux de haute confiance.]
## Là où le conseil s'affronte
[Vrais désaccords. Présente les deux camps. Explique pourquoi des conseillers raisonnables divergent. Ne lisse pas.]
## Angles morts détectés par le conseil
[Ce qui n'a émergé qu'à la relecture. Ce qu'un conseiller a manqué et qu'un autre a signalé.]
## La recommandation
[Une recommandation claire et directe. Pas de « ça dépend ». Une vraie réponse argumentée. Le président peut contredire la majorité si le raisonnement du dissident est le plus solide.]
## La première chose à faire
[Une seule action concrète. Pas une liste. Une chose.]
Réponds en français. Sois direct. Ne nuance pas. Le but du conseil est de donner une clarté qu'une seule perspective ne pourrait pas donner.
```
### étape 5 : générer le rapport du conseil
Après la synthèse, génère un rapport HTML visuel et sauvegarde-le dans `docs/`.
**Fichier :** `rpg-council-report-[timestamp].html`
HTML autonome, CSS inline. Design propre, scannable. Il contient :
1. **La question** en haut
2. **Le verdict du président** mis en avant (c'est ce que la plupart liront)
3. **Un visuel accord/désaccord** — grille ou spectre simple montrant l'alignement des conseillers
4. **Sections repliables** pour la réponse complète de chaque conseiller (repliées par défaut)
5. **Section repliable** pour les points saillants des relectures
6. **Un pied de page** avec le timestamp et l'objet du conseil
Style : ambiance médiévale dark fantasy cohérente avec le projet (fonds sombres, accents parchemin/or sobres), mais qui reste lisible comme un briefing professionnel. Rien de tape-à-l'œil.
Ouvre le fichier HTML après génération.
### étape 6 : sauvegarder le transcript complet
Sauvegarde le transcript complet en `rpg-council-transcript-[timestamp].md` dans `docs/`. Il inclut :
- La question d'origine
- La question cadrée
- Les 5 réponses des conseillers
- Les 5 relectures (avec le mapping d'anonymisation révélé)
- La synthèse complète du président
Ce transcript est l'artefact. Si l'utilisateur reconvoque le conseil sur la même question après des changements, le transcript précédent permet de voir comment la réflexion a évolué.
---
## format de sortie
Chaque session du conseil produit deux fichiers dans `docs/` :
```
rpg-council-report-[timestamp].html # rapport visuel à scanner
rpg-council-transcript-[timestamp].md # transcript complet pour référence
```
L'utilisateur voit le rapport HTML. Le transcript est là pour creuser.
---
## notes importantes
- **Lance toujours les 5 conseillers en parallèle.** Le séquentiel perd du temps et laisse les réponses précédentes contaminer les suivantes.
- **Anonymise toujours pour la relecture.** Si les relecteurs savent qui a dit quoi, ils défèrent à certains styles au lieu d'évaluer sur le fond.
- **Le président peut contredire la majorité.** Si 4 conseillers sur 5 disent « fonce » mais que le raisonnement du dissident est le plus solide, le président tranche pour le dissident et explique pourquoi.
- **Ne conseille pas les questions triviales.** Une seule bonne réponse → réponds directement. Le conseil est pour la vraie incertitude.
- **Ancre tout dans SkillsWeaver.** Les conseillers doivent référencer le contexte réel (aventures, agents, code, règles) — pas du game design générique.
- **Le rapport visuel compte.** La plupart scanneront le rapport, pas le transcript. HTML propre et scannable.
- **Déclenchement explicite uniquement.** Cette skill ne se lance que sur demande explicite de l'utilisateur. Ne jamais l'auto-déclencher dans une discussion de game design normale.