mdma-cli 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 privaloops
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,78 @@
1
+ # mdma
2
+
3
+ > Skill Claude Code pour configurer les préférences de travail d'un agent
4
+
5
+ Configure ton agent de code (Claude Code, Cursor...) en répondant à quelques questions. Génère des rules files adaptés à tes préférences.
6
+
7
+ ## Installation
8
+
9
+ ```bash
10
+ npx mdma-cli add
11
+ ```
12
+
13
+ Cela installe la skill dans `.claude/skills/mdma/` de ton projet.
14
+
15
+ ## Utilisation
16
+
17
+ 1. Lance Claude Code dans ton projet
18
+ 2. (Optionnel) Tape `/init` pour générer le contexte projet (stack, structure)
19
+ 3. Tape `/mdma`
20
+ 4. Réponds aux questions
21
+ 5. Rules générés dans `.claude/rules/`
22
+
23
+ ## Ce que ça fait
24
+
25
+ L'agent te pose des questions sur :
26
+
27
+ | Phase | Questions |
28
+ |-------|-----------|
29
+ | **Personnalité** | Niveau dev, style de réponse, autonomie, principes (DRY, YAGNI, KISS) |
30
+ | **Workflow Agent** | Points d'arrêt, stratégie tests, review auto, documentation auto |
31
+ | **Workflow Git** | Branches, commits, PR, tests requis |
32
+ | **Review** | Validation et ajustements |
33
+
34
+ Puis génère 3 fichiers dans `.claude/rules/` :
35
+ - `workflow.md` : comment l'agent travaille
36
+ - `git.md` : workflow git
37
+ - `style.md` : préférences de réponse
38
+
39
+ ## Séparation des responsabilités
40
+
41
+ - **`/init`** (Claude Code natif) : contexte projet (stack, structure) → `CLAUDE.md`
42
+ - **`/mdma`** : préférences de travail → `.claude/rules/`
43
+
44
+ ## Structure de la skill
45
+
46
+ ```
47
+ .claude/skills/mdma/
48
+ ├── SKILL.md # Point d'entrée (phases, objectifs, trame)
49
+ ├── TEMPLATES.md # Formats de sortie selon le niveau
50
+ └── EXAMPLES.md # Exemples concrets
51
+ ```
52
+
53
+ ## Exemples de sortie
54
+
55
+ ### Dev Junior
56
+
57
+ Rules détaillés avec explications, points d'attention, style pédagogique.
58
+
59
+ ### Dev Senior
60
+
61
+ Rules concis : bullet points, va droit au but.
62
+
63
+ ## Pourquoi mdma ?
64
+
65
+ **Context engineering > Prompt engineering**
66
+
67
+ Un bon contexte vaut mieux que des prompts répétitifs. Configure une fois, utilise partout.
68
+
69
+ ## Contribuer
70
+
71
+ Les questions et templates sont dans `skills/mdma/`. PRs bienvenues pour :
72
+ - Ajouter des questions pertinentes
73
+ - Améliorer les templates
74
+ - Ajouter des exemples
75
+
76
+ ## Licence
77
+
78
+ MIT
package/bin/init.js ADDED
@@ -0,0 +1,72 @@
1
+ #!/usr/bin/env node
2
+
3
+ import { copyFileSync, mkdirSync, existsSync, readdirSync } from 'fs';
4
+ import { join, dirname } from 'path';
5
+ import { fileURLToPath } from 'url';
6
+
7
+ const __dirname = dirname(fileURLToPath(import.meta.url));
8
+ const SKILLS_SRC = join(__dirname, '..', 'skills', 'mdma');
9
+ const SKILLS_DEST = join(process.cwd(), '.claude', 'skills', 'mdma');
10
+ const CLAUDE_MD = join(process.cwd(), 'CLAUDE.md');
11
+
12
+ function copyDir(src, dest) {
13
+ mkdirSync(dest, { recursive: true });
14
+ for (const file of readdirSync(src)) {
15
+ copyFileSync(join(src, file), join(dest, file));
16
+ }
17
+ }
18
+
19
+ function showHelp() {
20
+ console.log('mdma-cli - Générateur de config pour agents de code\n');
21
+ console.log('Usage:');
22
+ console.log(' npx mdma-cli add Installe la skill /mdma dans ton projet');
23
+ console.log(' npx mdma-cli help Affiche cette aide\n');
24
+ }
25
+
26
+ function add() {
27
+ console.log('mdma-cli - Installation de la skill\n');
28
+
29
+ if (existsSync(SKILLS_DEST)) {
30
+ console.log('La skill mdma existe deja dans .claude/skills/mdma');
31
+ console.log('Supprime le dossier si tu veux reinstaller.\n');
32
+ process.exit(1);
33
+ }
34
+
35
+ copyDir(SKILLS_SRC, SKILLS_DEST);
36
+
37
+ console.log('Skill installee dans .claude/skills/mdma/\n');
38
+
39
+ // Guidance selon presence de CLAUDE.md
40
+ if (existsSync(CLAUDE_MD)) {
41
+ console.log('CLAUDE.md detecte - /mdma ajoutera les rules sans y toucher.\n');
42
+ } else {
43
+ console.log('Pas de CLAUDE.md detecte.');
44
+ console.log('Pense a lancer "claude /init" pour generer le contexte projet.\n');
45
+ }
46
+
47
+ console.log('Utilisation :');
48
+ console.log(' 1. Lance Claude Code dans ton projet');
49
+ console.log(' 2. Tape /mdma');
50
+ console.log(' 3. Reponds aux questions');
51
+ console.log(' 4. Rules generes dans .claude/rules/\n');
52
+ }
53
+
54
+ function main() {
55
+ const command = process.argv[2];
56
+
57
+ switch (command) {
58
+ case 'add':
59
+ add();
60
+ break;
61
+ case 'help':
62
+ case '--help':
63
+ case '-h':
64
+ showHelp();
65
+ break;
66
+ default:
67
+ showHelp();
68
+ break;
69
+ }
70
+ }
71
+
72
+ main();
package/package.json ADDED
@@ -0,0 +1,30 @@
1
+ {
2
+ "name": "mdma-cli",
3
+ "version": "0.1.0",
4
+ "description": "Skill Claude Code pour configurer les préférences de travail d'un agent",
5
+ "type": "module",
6
+ "license": "MIT",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "git+https://github.com/privaloops/mdma.git"
10
+ },
11
+ "author": "privaloops",
12
+ "bin": {
13
+ "mdma": "./bin/init.js"
14
+ },
15
+ "files": [
16
+ "bin",
17
+ "skills"
18
+ ],
19
+ "keywords": [
20
+ "claude",
21
+ "claude-code",
22
+ "agent",
23
+ "config",
24
+ "context",
25
+ "skill"
26
+ ],
27
+ "engines": {
28
+ "node": ">=18"
29
+ }
30
+ }
@@ -0,0 +1,215 @@
1
+ # Exemples concrets
2
+
3
+ Ce document montre des exemples de rules files générés par `/mdma`.
4
+
5
+ **Note** : `/mdma` ne génère que les rules files. Le CLAUDE.md est géré par `/init` ou manuellement.
6
+
7
+ ---
8
+
9
+ ## Exemple 1 : Dev Junior
10
+
11
+ ### Préférences collectées
12
+
13
+ - Personnalité : Junior, pédagogique, demande avant d'agir
14
+ - Workflow : STOP à chaque étape, 5 itérations tests, auto-doc
15
+ - Git : feature/xxx, conventional commits, issue + PR obligatoires
16
+
17
+ ### Fichiers générés
18
+
19
+ #### .claude/rules/workflow.md
20
+
21
+ ```markdown
22
+ # Workflow Agent
23
+
24
+ ## Étapes obligatoires
25
+
26
+ ### 1. Plan
27
+ - Explore le codebase
28
+ - Propose un plan d'implémentation
29
+ - **STOP** → attend validation avant de coder
30
+
31
+ ### 2. Code
32
+ - Implémente selon le plan validé
33
+ - Petits commits logiques
34
+ - **STOP** → montre les modifications, attend validation
35
+
36
+ ### 3. Test
37
+ - Lance les tests
38
+ - Si fail → tente de fixer
39
+ - Max 5 itérations
40
+ - Si toujours fail → **STOP** → demande quoi faire
41
+ - Si pass → **STOP** → attend validation
42
+
43
+ ### 4. Review
44
+ - Review ton propre code
45
+ - Vérifie : sécurité, performance, lisibilité
46
+ - **STOP** → attend validation
47
+
48
+ ### 5. Compound
49
+ - Apprends des feedbacks de cette session
50
+
51
+ ### 6. Document
52
+ - Met à jour LEARNINGS.md, DECISIONS.md, CHANGELOG.md
53
+
54
+ ### 7. Git
55
+ - Exécute le workflow défini dans git.md
56
+ ```
57
+
58
+ #### .claude/rules/git.md
59
+
60
+ ```markdown
61
+ # Workflow Git
62
+
63
+ ## Règles absolues
64
+
65
+ 1. **JAMAIS push sur main**
66
+ 2. **JAMAIS commit sans branche** `feature/xxx` ou `fix/xxx`
67
+ 3. **JAMAIS branche sans issue GitHub**
68
+ 4. **JAMAIS merge sans PR**
69
+
70
+ ## Process
71
+
72
+ ### Avant de coder
73
+ 1. Créer une issue GitHub (titre + description)
74
+ 2. Créer une branche : `feature/xxx` ou `fix/xxx`
75
+ 3. `git checkout -b feature/ma-feature`
76
+
77
+ ### Commits
78
+ - Convention : conventional commits
79
+ - `feat:`, `fix:`, `docs:`, `refactor:`, `test:`
80
+
81
+ ### Après validation
82
+ 1. `git add` + `git commit`
83
+ 2. `git push -u origin feature/ma-feature`
84
+ 3. `gh pr create --fill`
85
+ 4. Attendre validation
86
+ 5. `gh pr merge --merge --delete-branch`
87
+
88
+ ### Tests
89
+ Les tests DOIVENT passer avant merge.
90
+ ```
91
+
92
+ #### .claude/rules/style.md
93
+
94
+ ```markdown
95
+ # Style de réponse
96
+
97
+ ## Profil
98
+ - **Niveau** : Junior
99
+ - **Style** : Pédagogique
100
+
101
+ ## Comment répondre
102
+
103
+ - Explique le "pourquoi" de chaque choix
104
+ - Donne des exemples concrets
105
+ - Propose des alternatives quand pertinent
106
+ - N'hésite pas à détailler les étapes
107
+ - Utilise des commentaires dans le code
108
+
109
+ ## Autonomie
110
+ - Demande TOUJOURS avant d'agir
111
+
112
+ ## À éviter
113
+ - Les réponses trop longues sans action concrète
114
+ - Supposer que je connais des concepts avancés
115
+ ```
116
+
117
+ ---
118
+
119
+ ## Exemple 2 : Dev Senior
120
+
121
+ ### Préférences collectées
122
+
123
+ - Personnalité : Senior, concis, autonome
124
+ - Workflow : STOP uniquement après tests, 3 itérations, auto-doc
125
+ - Git : feat/xxx, conventional, PR sans issue
126
+
127
+ ### Fichiers générés
128
+
129
+ #### .claude/rules/workflow.md
130
+
131
+ ```markdown
132
+ # Workflow Agent
133
+
134
+ ### 1. Plan
135
+ - Propose un plan
136
+ - **STOP** → validation
137
+
138
+ ### 2. Code
139
+ - Implémente
140
+
141
+ ### 3. Test
142
+ - Lance tests, fix si fail (max 3)
143
+ - **STOP** → validation
144
+
145
+ ### 4. Review
146
+ - Review auto
147
+
148
+ ### 5-7. Compound, Document, Git
149
+ - Auto
150
+ ```
151
+
152
+ #### .claude/rules/git.md
153
+
154
+ ```markdown
155
+ # Workflow Git
156
+
157
+ ## Process
158
+
159
+ - Branches : `feat/xxx`, `fix/xxx`
160
+ - Commits : conventional
161
+ - PR obligatoire, pas d'issue requise
162
+ - Tests doivent passer
163
+ ```
164
+
165
+ #### .claude/rules/style.md
166
+
167
+ ```markdown
168
+ # Style de réponse
169
+
170
+ ## Profil
171
+ Senior, concis
172
+
173
+ ## Comment répondre
174
+ - Va droit au but
175
+ - Code > explications
176
+ - Autonome, signale ce qui est fait
177
+
178
+ ## À éviter
179
+ - Blabla
180
+ - Explications évidentes
181
+ ```
182
+
183
+ ---
184
+
185
+ ## Exemple 3 : Dev Mid
186
+
187
+ ### Préférences collectées
188
+
189
+ - Personnalité : Mid, détaillé, suggère
190
+ - Workflow : STOP à chaque étape, 5 itérations
191
+ - Git : feature/xxx, conventional, issue + PR
192
+
193
+ ### Fichiers générés
194
+
195
+ #### .claude/rules/style.md
196
+
197
+ ```markdown
198
+ # Style de réponse
199
+
200
+ ## Profil
201
+ - **Niveau** : Intermédiaire
202
+ - **Style** : Détaillé
203
+
204
+ ## Comment répondre
205
+
206
+ - Équilibre entre explication et efficacité
207
+ - Détaille si demandé
208
+ - Propose des alternatives sur les choix importants
209
+
210
+ ## Autonomie
211
+ - Suggère et attend validation
212
+
213
+ ## À éviter
214
+ - Les solutions over-engineered
215
+ ```
@@ -0,0 +1,156 @@
1
+ ---
2
+ name: mdma
3
+ description: Configure les préférences de travail d'un agent de code via conversation. Génère des rules files personnalisés.
4
+ allowed-tools: Read, Write, Glob, Grep, Bash
5
+ ---
6
+
7
+ # MDMA - Agent de configuration
8
+
9
+ Tu configures les préférences de travail d'un agent de code (Claude Code, Cursor, etc.) via une conversation naturelle.
10
+
11
+ ## Ta mission
12
+
13
+ Collecter les préférences de travail du développeur : style de réponse, workflow agent, workflow git.
14
+
15
+ Ensuite, générer les rules files adaptés.
16
+
17
+ **Note** : Le contexte projet (stack, structure) est géré par `/init` ou manuellement dans CLAUDE.md. Tu ne génères que les rules.
18
+
19
+ ## Ton style
20
+
21
+ - Direct et concis
22
+ - Une question à la fois
23
+ - Pas d'emojis
24
+ - Pas de blabla ni de compliments
25
+ - Propose une option "par défaut" si pertinent
26
+ - En français
27
+
28
+ ## Règle absolue
29
+
30
+ Tu es en mode configuration uniquement. Tu ne fais QUE configurer l'agent.
31
+
32
+ Si l'utilisateur demande autre chose (coder, expliquer, chercher, etc.) :
33
+ 1. Refuse poliment
34
+ 2. Rappelle qu'on est en `/mdma`
35
+ 3. Propose : "On continue la configuration ou tu veux arrêter ?"
36
+
37
+ Aucune exception.
38
+
39
+ ## Phases
40
+
41
+ Tu passes par 4 phases dans l'ordre. Pour chaque phase, tu as un objectif et des données à extraire. Tu poses les questions qui te semblent pertinentes selon le contexte — pas de script rigide.
42
+
43
+ ### 1. Personnalité
44
+
45
+ **Objectif** : Comprendre le développeur et ses préférences.
46
+
47
+ **À extraire** : `personality.level`, `personality.style`, `personality.autonomy`, `personality.hates`, `personality.devPrinciples`
48
+
49
+ **Trame** : Identifier le niveau (junior, mid, senior), le style de réponse souhaité (concis, détaillé, pédagogique), l'autonomie attendue de l'agent. Demander ce qu'il déteste chez un assistant de code. Proposer des principes de dev à respecter (DRY, YAGNI, KISS, etc.) comme options multi-select.
50
+
51
+ **Critère de sortie** : Tu sais comment t'adresser à ce dev et ce qu'il faut éviter.
52
+
53
+ ### 2. Workflow Agent
54
+
55
+ **Objectif** : Définir comment l'agent doit travailler.
56
+
57
+ **À extraire** : `workflow.stopAtEachStep`, `workflow.maxTestIterations`, `workflow.testStrategy`, `workflow.autoReview`, `workflow.autoDocument`
58
+
59
+ **Trame** : Comprendre s'il veut des points d'arrêt (STOP) à chaque étape majeure, combien de tentatives pour fixer les tests, la stratégie de tests (isoler le test qui échoue vs relancer tout), s'il veut une review automatique, s'il veut de la documentation automatique.
60
+
61
+ **Critère de sortie** : Tu peux décrire le workflow attendu de l'agent.
62
+
63
+ ### 3. Workflow Git
64
+
65
+ **Objectif** : Comprendre le workflow Git du projet.
66
+
67
+ **À extraire** : `git.branchFormat`, `git.commitConvention`, `git.createIssue`, `git.prRequired`, `git.testRequired`, `git.teamSize`
68
+
69
+ **Trame** : Format des branches, convention de commits, process (issue → branche → PR → merge ?), tests requis, solo ou équipe. Adapter les questions selon le contexte (solo = pas de questions équipe).
70
+
71
+ **Critère de sortie** : Tu peux générer les règles git adaptées.
72
+
73
+ ### 4. Review
74
+
75
+ **Objectif** : Valider et ajuster.
76
+
77
+ **Trame** : Résumer ce que tu as compris, demander si c'est correct, ajuster si besoin. Proposer d'ajouter des contraintes (trucs à ne jamais faire, trucs obligatoires).
78
+
79
+ **Critère de sortie** : L'utilisateur valide le résumé.
80
+
81
+ ## Règles
82
+
83
+ - Si l'utilisateur dit "je ne sais pas" ou "par défaut" → utilise des valeurs sensées
84
+ - Si tu as scanné le repo au préalable → propose les valeurs détectées
85
+ - Ne pose pas de questions inutiles (solo = pas de questions équipe)
86
+ - Adapte le niveau de détail au niveau du dev
87
+
88
+ ## Fichiers générés
89
+
90
+ À la fin, génère ces fichiers dans `.claude/rules/` :
91
+
92
+ ### .claude/rules/workflow.md
93
+ Le workflow agent :
94
+ ```
95
+ ## Workflow Agent
96
+
97
+ ### 1. Plan
98
+ - Explore le codebase
99
+ - Propose un plan d'implémentation
100
+ - **STOP** → attend validation
101
+
102
+ ### 2. Code
103
+ - Implémente selon le plan validé
104
+ - **STOP** → montre les modifications, attend validation
105
+
106
+ ### 3. Test
107
+ - Lance les tests
108
+ - Si fail → tente de fixer (max {iterations} itérations)
109
+ - Si toujours fail → **STOP** → demande quoi faire
110
+ - Si pass → **STOP** → attend validation
111
+
112
+ ### 4. Review
113
+ - Review son propre code (sécurité, perf, lisibilité)
114
+ - Propose des améliorations si besoin
115
+ - **STOP** → attend validation
116
+
117
+ ### 5. Compound
118
+ - Apprend des feedbacks de la session
119
+ - Mémorise les préférences exprimées
120
+
121
+ ### 6. Document
122
+ - Met à jour LEARNINGS.md si apprentissage
123
+ - Met à jour DECISIONS.md si nouvelle décision
124
+ - Met à jour CHANGELOG.md si feature complète
125
+
126
+ ### 7. Git
127
+ - Exécute le workflow défini dans git.md
128
+ ```
129
+
130
+ ### .claude/rules/git.md
131
+ Le workflow git personnalisé :
132
+ - Format des branches
133
+ - Convention de commits
134
+ - Process issue/PR/merge
135
+ - Règles absolues (jamais push sur main, etc.)
136
+
137
+ ### .claude/rules/style.md
138
+ Les préférences de style :
139
+ - Niveau du dev
140
+ - Ton des réponses
141
+ - Autonomie souhaitée
142
+ - Ce qu'il faut éviter
143
+
144
+ ## Nettoyage
145
+
146
+ Après avoir généré les fichiers, propose de supprimer le skill :
147
+
148
+ "Tu veux supprimer .claude/skills/mdma/ ? Il n'est plus nécessaire."
149
+
150
+ - Si oui → supprime le dossier avec `rm -rf .claude/skills/mdma/`
151
+ - Si non → laisse-le (l'utilisateur pourra relancer /mdma plus tard)
152
+
153
+ ## Références
154
+
155
+ Consulte [TEMPLATES.md](TEMPLATES.md) pour les formats de sortie.
156
+ Consulte [EXAMPLES.md](EXAMPLES.md) pour des exemples concrets.
@@ -0,0 +1,231 @@
1
+ # Templates de sortie
2
+
3
+ Ce document contient les templates pour les fichiers générés par `/mdma`.
4
+
5
+ **Note** : `/mdma` ne génère que les rules files. Le CLAUDE.md (contexte projet, stack) est géré par `/init` ou manuellement.
6
+
7
+ ## Fichiers générés
8
+
9
+ | Fichier | Contenu |
10
+ |---------|---------|
11
+ | `.claude/rules/workflow.md` | Workflow agent |
12
+ | `.claude/rules/git.md` | Workflow git |
13
+ | `.claude/rules/style.md` | Préférences de style |
14
+
15
+ ---
16
+
17
+ ## .claude/rules/workflow.md
18
+
19
+ Le workflow de l'agent, étape par étape.
20
+
21
+ ### Template
22
+
23
+ ```markdown
24
+ # Workflow Agent
25
+
26
+ ## Étapes obligatoires
27
+
28
+ ### 1. Plan
29
+ - Explore le codebase
30
+ - Propose un plan d'implémentation
31
+ - **STOP** → attend validation avant de coder
32
+
33
+ ### 2. Code
34
+ - Implémente selon le plan validé
35
+ - Petits commits logiques
36
+ - **STOP** → montre les modifications, attend validation
37
+
38
+ ### 3. Test
39
+ - Lance les tests
40
+ - Si fail → arrête et fixe CE test uniquement
41
+ - Si le test passe → relance la suite complète
42
+ - Max {workflow.maxTestIterations} itérations
43
+ - Si toujours fail → **STOP** → demande quoi faire
44
+ - Si pass → **STOP** → attend validation
45
+
46
+ ### 4. Review
47
+ - Review ton propre code
48
+ - Vérifie : sécurité, performance, lisibilité
49
+ - Propose des améliorations si pertinent
50
+ - **STOP** → attend validation
51
+
52
+ ### 5. Compound
53
+ - Consulte `CHANGELOG.md`, `DECISIONS.md`, `LEARNINGS.md` pour contexte
54
+ - Apprends des feedbacks de cette session
55
+ - Note les préférences exprimées pour les appliquer ensuite
56
+
57
+ ### 6. Document
58
+ - Met à jour `LEARNINGS.md` si apprentissage important
59
+ - Met à jour `DECISIONS.md` si décision structurante
60
+ - Met à jour `CHANGELOG.md` si feature/fix complète
61
+
62
+ ### 7. Git
63
+ - Exécute le workflow défini dans `git.md`
64
+ ```
65
+
66
+ ---
67
+
68
+ ## .claude/rules/git.md
69
+
70
+ Le workflow git personnalisé.
71
+
72
+ ### Template (avec issue/PR)
73
+
74
+ ```markdown
75
+ # Workflow Git
76
+
77
+ ## Règles absolues
78
+
79
+ 1. **JAMAIS push sur main**
80
+ 2. **JAMAIS commit sans branche** `{git.branchFormat}`
81
+ 3. **JAMAIS branche sans issue GitHub**
82
+ 4. **JAMAIS merge sans PR**
83
+
84
+ ## Process
85
+
86
+ ### Avant de coder
87
+ 1. Créer une issue GitHub (titre + description)
88
+ 2. Créer une branche depuis main : `{git.branchFormat}`
89
+ 3. `git checkout -b {branche}`
90
+
91
+ ### Commits
92
+ - Convention : {git.commitConvention}
93
+ - Messages clairs et concis
94
+ - Un commit = un changement logique
95
+
96
+ ### Après validation
97
+ 1. `git add` + `git commit`
98
+ 2. `git push -u origin {branche}`
99
+ 3. Créer PR avec `gh pr create`
100
+ 4. Attendre validation
101
+ 5. Merger avec `gh pr merge --merge --delete-branch`
102
+
103
+ ### Tests
104
+ {git.testRequired ? "Les tests DOIVENT passer avant merge." : "Tests optionnels."}
105
+ ```
106
+
107
+ ### Template (sans issue, push direct)
108
+
109
+ ```markdown
110
+ # Workflow Git
111
+
112
+ ## Process simplifié
113
+
114
+ ### Branches
115
+ - Format : `{git.branchFormat}`
116
+ - Créer une branche pour chaque feature/fix
117
+
118
+ ### Commits
119
+ - Convention : {git.commitConvention}
120
+ - Messages clairs
121
+
122
+ ### Merge
123
+ - Push direct sur main autorisé
124
+ - Ou PR si tu préfères une review
125
+ ```
126
+
127
+ ---
128
+
129
+ ## .claude/rules/style.md
130
+
131
+ Les préférences de style et de réponse.
132
+
133
+ ### Template Junior
134
+
135
+ ```markdown
136
+ # Style de réponse
137
+
138
+ ## Profil
139
+ - **Niveau** : Junior
140
+ - **Style** : Pédagogique
141
+
142
+ ## Comment répondre
143
+
144
+ - Explique le "pourquoi" de chaque choix
145
+ - Donne des exemples concrets
146
+ - Propose des alternatives quand pertinent
147
+ - N'hésite pas à détailler les étapes
148
+ - Utilise des commentaires dans le code
149
+
150
+ ## Autonomie
151
+ - {personality.autonomy === 'ask' ? "Demande TOUJOURS avant d'agir" : ""}
152
+ - {personality.autonomy === 'suggest' ? "Suggère et attend validation" : ""}
153
+ - {personality.autonomy === 'auto' ? "Agis de manière autonome quand c'est clair" : ""}
154
+
155
+ ## À éviter
156
+ {personality.hates}
157
+
158
+ ## Principes de dev
159
+ {personality.devPrinciples}
160
+
161
+ ## Points d'attention
162
+ - Points forts du dev : {personality.strengths}
163
+ - Points faibles : {personality.weaknesses} → être plus pédagogue sur ces sujets
164
+ ```
165
+
166
+ ### Template Mid
167
+
168
+ ```markdown
169
+ # Style de réponse
170
+
171
+ ## Profil
172
+ - **Niveau** : Intermédiaire
173
+ - **Style** : {personality.style}
174
+
175
+ ## Comment répondre
176
+
177
+ - Équilibre entre explication et efficacité
178
+ - Détaille si demandé, sinon va droit au but
179
+ - Propose des alternatives sur les choix importants
180
+
181
+ ## Autonomie
182
+ - {personality.autonomy === 'ask' ? "Demande avant d'agir sur les choix structurants" : ""}
183
+ - {personality.autonomy === 'suggest' ? "Suggère et attend validation" : ""}
184
+ - {personality.autonomy === 'auto' ? "Autonome sur les choix évidents" : ""}
185
+
186
+ ## À éviter
187
+ {personality.hates}
188
+
189
+ ## Principes de dev
190
+ {personality.devPrinciples}
191
+ ```
192
+
193
+ ### Template Senior
194
+
195
+ ```markdown
196
+ # Style de réponse
197
+
198
+ ## Profil
199
+ - **Niveau** : Senior
200
+ - **Style** : Concis
201
+
202
+ ## Comment répondre
203
+
204
+ - Va droit au but
205
+ - Pas de blabla
206
+ - Code > explications
207
+ - Signale uniquement les points importants
208
+
209
+ ## Autonomie
210
+ - {personality.autonomy === 'ask' ? "Demande sur les décisions d'archi uniquement" : ""}
211
+ - {personality.autonomy === 'suggest' ? "Suggère brièvement, agis si évident" : ""}
212
+ - {personality.autonomy === 'auto' ? "Autonome, signale juste ce qui est fait" : ""}
213
+
214
+ ## À éviter
215
+ {personality.hates}
216
+
217
+ ## Principes de dev
218
+ {personality.devPrinciples}
219
+ ```
220
+
221
+ ---
222
+
223
+ ## Règles de génération
224
+
225
+ 1. **Ne pas inclure de sections vides** : si une donnée n'existe pas, omets la section
226
+ 2. **Adapter au niveau** :
227
+ - Junior : détaillé, pédagogique
228
+ - Mid : équilibré
229
+ - Senior : minimal, direct
230
+ 3. **Cohérence** : le ton des fichiers doit correspondre au style choisi
231
+ 4. **Langue** : français par défaut, anglais si demandé