skills/meeting/SKILL.md
Lance une réunion simulée avec plusieurs personas experts pour analyser un sujet sous des perspectives diverses, prendre une décision et proposer une solution avant implémentation. Peut optionnellement publier l'analyse de la réunion sur une issue GitLab ou GitHub liée.
npx skillsauth add dedalus-erp-pas/foundation-skills meetingInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Simulate a structured meeting with multiple expert personas to analyze a subject, debate perspectives, and converge on the best course of action. The output is a decision-ready analysis that the user validates before any implementation begins.
brew install ghbrew install glabActivate when the user:
Gather context about the subject to discuss:
#123 or GitHub #123):
Output a one-line summary of the decision question before proceeding.
Example: "Question: Should we migrate the authentication system from session-based to JWT tokens?"
Choose 3-5 personas relevant to the subject. Each persona has:
Use these heuristics as a starting point. The user can override the selection before the meeting starts.
| Le sujet concerne... | Personas suggérés | |---------------------|-------------------| | Backend / API / base de données | SOLID Alex (Backend), Whiteboard Damien (Architecte), EXPLAIN PLAN Isabelle (DBA Oracle) | | Frontend / UI / UX | Pixel-Perfect Hugo (Frontend), Figma Fiona (UX/UI), Sprint Zero Sarah (PO), Whiteboard Damien (Architecte) | | Sécurité / auth / contrôle d'accès | Paranoid Shug (Sécurité), RGPD Raphaël (DPO), SOLID Alex (Backend), Whiteboard Damien (Architecte) | | Infrastructure / déploiement / CI-CD | Pipeline Mo (DevOps), SOLID Alex (Backend), Whiteboard Damien (Architecte) | | Données / migration / ETL | Schema JB (Data), EXPLAIN PLAN Isabelle (DBA Oracle), Whiteboard Damien (Architecte) | | Interopérabilité / HL7 / FHIR / HPK | RFC Santiago (PO Interop), HL7 Victor (Dev Interop), SOLID Alex (Backend) | | Legacy / Uniface / modernisation | Legacy Larry (Uniface), Whiteboard Damien (Architecte), SOLID Alex (Backend) | | Tests / qualité / régression | Edge-Case Nico (QA), SOLID Alex (Backend), Pipeline Mo (DevOps) | | Produit / fonctionnalité / décision UX | Sprint Zero Sarah (PO), Pixel-Perfect Hugo (Frontend), Figma Fiona (UX/UI), Whiteboard Damien (Architecte) | | Santé / workflows cliniques | Dr. Workflow Wendy (Santé), Sprint Zero Sarah (PO), RGPD Raphaël (DPO) | | RGPD / données personnelles / conformité | RGPD Raphaël (DPO), Paranoid Shug (Sécurité), Whiteboard Damien (Architecte) | | BI / tableaux de bord / reporting / finance / comptabilité | Dashboard Estelle (BI Finance), Pixel-Perfect Hugo (Frontend), EXPLAIN PLAN Isabelle (DBA Oracle), Whiteboard Damien (Architecte) | | Full-stack / sujet transverse | Whiteboard Damien (Architecte), SOLID Alex (Backend), Sprint Zero Sarah (PO), Edge-Case Nico (QA) |
Si le sujet couvre plusieurs domaines, choisir les 3-5 personas les plus pertinents. Toujours inclure Whiteboard Damien (Architecte) pour les décisions techniques. Toujours inclure Sprint Zero Sarah (PO) pour les décisions produit.
After announcing the selected personas, ask the user to confirm or adjust before starting the meeting.
Full persona pool with roles, perspectives, and biases: see reference/personas.md.
Announce the selected personas and their roles before starting the meeting.
The meeting uses sub-agents to run each persona independently and in parallel, then brings their perspectives together for debate and convergence.
IMPORTANT: Use the Agent tool to launch each persona as a separate sub-agent. This produces richer, more authentic perspectives because each agent fully embodies its persona without being influenced by the others.
Launch one sub-agent per persona in parallel using the Agent tool. Each sub-agent receives:
Sub-agent prompt template:
You are {name}, a {role}.
Your perspective: {perspective}
Your natural bias: {bias}
You are participating in a meeting about: {decision_question}
Context:
{context}
As {name}, provide your opening statement:
1. What is your recommended approach? Be specific and concrete.
2. Why do you recommend this, from your role's perspective? Give concrete examples.
3. What are the top 2-3 risks you see? Be specific about failure scenarios.
4. What questions would you ask the other participants?
Stay fully in character. Use concrete examples, not abstract platitudes.
A security engineer talks about specific attack vectors, not vague "security concerns".
A product owner talks about user impact and delivery timelines, not code patterns.
This is a research task — do NOT write or edit any files.
Launch ALL persona sub-agents in a single message so they run in parallel. Use subagent_type: "general-purpose" and a short description like "Persona: {name} opening".
Collect all opening statements from the sub-agent results. Present them to the user formatted as quotes:
SOLID Alex (Senior Backend Engineer): "I think we should..."
Once all opening statements are collected, launch a second round of parallel sub-agents — one per persona. Each sub-agent receives:
Sub-agent prompt template for Round 2:
You are {name}, a {role}.
Your perspective: {perspective}
Your natural bias: {bias}
You are in a meeting about: {decision_question}
Here are the opening statements from all participants:
{all_opening_statements}
As {name}, react to the other participants' positions:
1. Which positions do you agree with and why?
2. Which positions do you challenge? Be specific about what's wrong or missing.
3. What trade-offs have the others missed?
4. Have any of the other statements changed your thinking? If so, how?
5. State your updated position after considering the others' arguments.
Be direct and create genuine debate. Challenge assumptions. Reference specific points from the other statements. It's OK to disagree strongly. It's also OK to change your mind if convinced.
This is a research task — do NOT write or edit any files.
Launch ALL persona sub-agents in a single message for Round 2.
This round should produce genuine tension. If the sub-agents all agree, add a follow-up prompt to one agent asking it to play devil's advocate on the majority position.
After collecting all Round 2 responses, you (the facilitator, not a sub-agent) synthesize the discussion using a structured approach:
Weight positions by domain relevance:
Identify consensus and disagreements:
Assess confidence level:
If confidence is low:
Extract each persona's final position in one sentence
Write a structured analysis in French with the following format:
## Analyse de réunion : [Sujet]
### Question posée
[La question de décision claire]
### Participants
| Persona | Rôle | Position finale |
|---------|------|-----------------|
| ... | ... | ... |
### Synthèse de la discussion
[2-3 paragraphs summarizing the key arguments, tensions, and agreements]
### Recommandation
**Niveau de confiance :** [Élevé / Moyen / Faible]
**Option recommandée :** [The recommended approach]
**Justification :**
- [Reason 1]
- [Reason 2]
- [Reason 3]
**Risques identifiés :**
- [Risk 1 + mitigation]
- [Risk 2 + mitigation]
**Points non résolus :** [List any unresolved disagreements, or "Aucun" if full consensus]
### Alternatives considérées
| Option | Avantages | Inconvénients | Verdict |
|--------|-----------|---------------|---------|
| Option A | ... | ... | Recommandée / Rejetée / À explorer |
| Option B | ... | ... | Recommandée / Rejetée / À explorer |
### Prochaines étapes proposées
1. [Step 1]
2. [Step 2]
3. [Step 3]
Present the analysis to the user and ask:
"Voici l'analyse de la réunion. Souhaitez-vous :
- Valider cette recommandation et passer à l'implémentation (→ Step 8)
- Approfondir un point spécifique avec une réunion de suivi (→ Step 7)
- Poster cette analyse sur l'issue [#ID] (→ Step 6, si applicable)
- Modifier la recommandation"
Do NOT start implementing anything until the user explicitly selects option 1.
If the subject is linked to a GitLab or GitHub issue and the user asks to post, format the comment for Product Owners and stakeholders — focus on business value, user impact, and strategic reasoning, not technical implementation details.
## Analyse de réunion avec personas IA
### Question posée
[La question de décision formulée en termes métier]
### Participants
| Expert | Rôle | Position |
|--------|------|----------|
| ... | ... | [Position résumée en termes d'impact métier] |
### Synthèse
[2-3 paragraphes résumant les arguments clés en termes de valeur utilisateur, impact business et risques projet — pas de détails techniques]
### Décision recommandée
**Niveau de confiance :** [Élevé / Moyen / Faible]
**Approche retenue :** [Explication en termes de bénéfice utilisateur et valeur métier]
**Pourquoi cette décision :**
- [Bénéfice utilisateur / métier 1]
- [Bénéfice utilisateur / métier 2]
- [Alignement avec les objectifs produit]
### Risques projet
- [Risque 1 formulé en impact métier → Mitigation]
- [Risque 2 formulé en impact métier → Mitigation]
### Impact
- **Utilisateurs concernés :** [Qui est impacté et comment]
- **Dépendances :** [Autres équipes ou fonctionnalités impactées]
### Alternatives considérées
| Option | Valeur métier | Risques | Verdict |
|--------|--------------|---------|---------|
| Option A | ... | ... | Recommandée / Rejetée / À explorer |
| Option B | ... | ... | Recommandée / Rejetée / À explorer |
### Prochaines étapes
1. [Step 1]
2. [Step 2]
3. [Step 3]
---
_Analyse générée automatiquement par IA 🤖_
_Analyse générée automatiquement par IA_
Post the comment using the appropriate tool:
glab issue note <iid> --message "<comment>"gh issue comment <number> --body "<comment>"When the user selects option 2 ("Approfondir un point spécifique"), run a follow-up meeting with the following protocol:
Carry forward context:
Narrow the scope:
Adjust the persona panel:
Run a 2-round follow-up (Round 1 + Round 2 only, skip Round 3's full synthesis):
Produce a delta analysis:
## Suite de réunion : Focus sur [point]Present the updated analysis and return to Step 5 (validate again)
When the user selects option 1 ("Valider cette recommandation et passer à l'implémentation"):
Ask the user which implementation mode they prefer:
"Recommandation validée. Comment souhaitez-vous procéder ?
- Implémentation rapide — Je lance un
/fast-meetingavec la recommandation déjà validée (pas de nouvelle réunion, implémentation directe + MR/PR)- Implémentation guidée — J'implémente pas à pas, vous validez chaque étape"
If option 1 (fast implementation):
meeting/<short-kebab-case-topic>MR/PR Description Template (French — Developer / Technically Oriented):
## Résumé technique
### Contexte
[Brève description du problème technique ou de la décision d'architecture qui a motivé ces changements]
### Approche retenue
[L'approche technique choisie et pourquoi — patterns utilisés, alternatives considérées et rejetées techniquement]
### Changements implémentés
| Fichier | Modification | Justification technique |
|---------|-------------|------------------------|
| `path/to/file` | [Ce qui a changé] | [Pourquoi ce choix technique] |
| ... | ... | ... |
### Points d'attention pour la revue
- [Point technique à vérifier — ex: gestion d'erreurs, performance, rétrocompatibilité]
- [Impact potentiel sur d'autres modules]
- [Cas limites à valider]
### Tests
- [Résultats des tests : nombre exécutés, passés, échoués]
- [Couverture des cas limites identifiés]
### Prochaines étapes
- [ ] Revue de code par l'équipe
- [ ] Validation des tests
- [ ] Merge après approbation
---
_Implémentation générée automatiquement par IA 🤖_
_Implémentation générée automatiquement par IA_
If option 2 (guided implementation):
Do NOT implement anything if the user hasn't selected option 1 in Step 5.
User: Lance une réunion pour savoir si on doit utiliser GraphQL ou REST pour la nouvelle API
Participants : SOLID Alex (Backend), Sprint Zero Sarah (PO), Pipeline Mo (DevOps), Pixel-Perfect Hugo (Frontend)
Decision question: "Devons-nous utiliser GraphQL ou REST pour la nouvelle API ?"
User: Fais une réunion sur l'issue #234 - migration du monolithe vers des microservices
Participants : Whiteboard Damien (Architecte), SOLID Alex (Backend), Pipeline Mo (DevOps), Sprint Zero Sarah (PO), Edge-Case Nico (QA)
Decision question: "Comment migrer du monolithe vers des microservices pour le module facturation ?"
Analysis posted to GitLab issue #234 after user validation
User: Organisons une réunion sur l'ajout de notifications temps réel dans l'application
Participants : Sprint Zero Sarah (PO), Pixel-Perfect Hugo (Frontend), SOLID Alex (Backend), Paranoid Shug (Sécurité)
Decision question: "Quelle approche adopter pour les notifications temps réel ?"
gh label list for GitHub, or check existing issue labels for GitLab) and pick from the available ones. If no suitable label exists, skip labeling rather than creating a new one.databases
Exécute des requêtes SQL en lecture seule sur plusieurs bases de données PostgreSQL. À utiliser pour : (1) interroger des bases PostgreSQL, (2) explorer les schémas/tables, (3) exécuter des requêtes SELECT pour l'analyse de données, (4) vérifier le contenu des bases. Supporte plusieurs connexions avec descriptions pour une sélection automatique intelligente. Bloque toutes les opérations d'écriture (INSERT, UPDATE, DELETE, DROP, etc.) par sécurité.
development
Automatisation complète du navigateur et tests web avec Playwright. Détecte automatiquement les serveurs de développement, gère le cycle de vie des serveurs, écrit des scripts de test propres dans /tmp. Tester des pages, remplir des formulaires, capturer des screenshots, vérifier le responsive design, valider l'UX, tester les flux de connexion, vérifier les liens, déboguer des webapps dynamiques, automatiser toute tâche navigateur. À utiliser quand l'utilisateur veut tester des sites web, automatiser des interactions navigateur, valider des fonctionnalités web ou effectuer tout test basé sur le navigateur.
documentation
Boîte à outils complète pour la manipulation de PDF : extraction de texte et tableaux, création de nouveaux PDF, fusion/découpage de documents et gestion de formulaires. Quand Claude doit remplir un formulaire PDF ou traiter, générer ou analyser des documents PDF de manière programmatique et à grande échelle.
development
Génère automatiquement un compte-rendu de réunion en français à partir d'une transcription Teams (.vtt) et optionnellement d'un rapport de présence (.csv). Propose ensuite optionnellement de créer des issues de suivi GitLab/GitHub à partir du compte-rendu. Agnostique par défaut, avec un mode enrichi auto-détecté pour le projet hexagone-monorepo. À utiliser quand l'utilisateur dépose un ou deux chemins de fichiers Teams dans le prompt et demande la génération d'un compte-rendu.