claudient 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.
Files changed (283) hide show
  1. package/.claude-plugin/plugin.json +42 -0
  2. package/CONTEXT.md +58 -0
  3. package/README.md +165 -0
  4. package/agents/build-resolvers/de/python-resolver.md +64 -0
  5. package/agents/build-resolvers/de/typescript-resolver.md +65 -0
  6. package/agents/build-resolvers/es/python-resolver.md +64 -0
  7. package/agents/build-resolvers/es/typescript-resolver.md +65 -0
  8. package/agents/build-resolvers/fr/python-resolver.md +64 -0
  9. package/agents/build-resolvers/fr/typescript-resolver.md +65 -0
  10. package/agents/build-resolvers/nl/python-resolver.md +64 -0
  11. package/agents/build-resolvers/nl/typescript-resolver.md +65 -0
  12. package/agents/build-resolvers/python-resolver.md +62 -0
  13. package/agents/build-resolvers/typescript-resolver.md +63 -0
  14. package/agents/core/architect.md +64 -0
  15. package/agents/core/code-reviewer.md +78 -0
  16. package/agents/core/de/architect.md +66 -0
  17. package/agents/core/de/code-reviewer.md +80 -0
  18. package/agents/core/de/planner.md +63 -0
  19. package/agents/core/de/security-reviewer.md +93 -0
  20. package/agents/core/es/architect.md +66 -0
  21. package/agents/core/es/code-reviewer.md +80 -0
  22. package/agents/core/es/planner.md +63 -0
  23. package/agents/core/es/security-reviewer.md +93 -0
  24. package/agents/core/fr/architect.md +66 -0
  25. package/agents/core/fr/code-reviewer.md +80 -0
  26. package/agents/core/fr/planner.md +63 -0
  27. package/agents/core/fr/security-reviewer.md +93 -0
  28. package/agents/core/nl/architect.md +66 -0
  29. package/agents/core/nl/code-reviewer.md +80 -0
  30. package/agents/core/nl/planner.md +63 -0
  31. package/agents/core/nl/security-reviewer.md +93 -0
  32. package/agents/core/planner.md +61 -0
  33. package/agents/core/security-reviewer.md +91 -0
  34. package/guides/agent-orchestration.md +231 -0
  35. package/guides/de/agent-orchestration.md +174 -0
  36. package/guides/de/getting-started.md +164 -0
  37. package/guides/de/hooks-cookbook.md +160 -0
  38. package/guides/de/memory-management.md +153 -0
  39. package/guides/de/security.md +180 -0
  40. package/guides/de/skill-authoring.md +214 -0
  41. package/guides/de/token-optimization.md +156 -0
  42. package/guides/es/agent-orchestration.md +174 -0
  43. package/guides/es/getting-started.md +164 -0
  44. package/guides/es/hooks-cookbook.md +160 -0
  45. package/guides/es/memory-management.md +153 -0
  46. package/guides/es/security.md +180 -0
  47. package/guides/es/skill-authoring.md +214 -0
  48. package/guides/es/token-optimization.md +156 -0
  49. package/guides/fr/agent-orchestration.md +174 -0
  50. package/guides/fr/getting-started.md +164 -0
  51. package/guides/fr/hooks-cookbook.md +227 -0
  52. package/guides/fr/memory-management.md +169 -0
  53. package/guides/fr/security.md +180 -0
  54. package/guides/fr/skill-authoring.md +214 -0
  55. package/guides/fr/token-optimization.md +158 -0
  56. package/guides/getting-started.md +164 -0
  57. package/guides/hooks-cookbook.md +423 -0
  58. package/guides/memory-management.md +192 -0
  59. package/guides/nl/agent-orchestration.md +174 -0
  60. package/guides/nl/getting-started.md +164 -0
  61. package/guides/nl/hooks-cookbook.md +160 -0
  62. package/guides/nl/memory-management.md +153 -0
  63. package/guides/nl/security.md +180 -0
  64. package/guides/nl/skill-authoring.md +214 -0
  65. package/guides/nl/token-optimization.md +156 -0
  66. package/guides/security.md +229 -0
  67. package/guides/skill-authoring.md +226 -0
  68. package/guides/token-optimization.md +169 -0
  69. package/hooks/lifecycle/cost-tracker.md +49 -0
  70. package/hooks/lifecycle/cost-tracker.sh +59 -0
  71. package/hooks/lifecycle/pre-compact-save.md +56 -0
  72. package/hooks/lifecycle/pre-compact-save.sh +37 -0
  73. package/hooks/lifecycle/session-start.md +50 -0
  74. package/hooks/lifecycle/session-start.sh +47 -0
  75. package/hooks/post-tool-use/audit-log.md +53 -0
  76. package/hooks/post-tool-use/audit-log.sh +53 -0
  77. package/hooks/post-tool-use/prettier.md +53 -0
  78. package/hooks/post-tool-use/prettier.sh +49 -0
  79. package/hooks/pre-tool-use/block-dangerous.md +48 -0
  80. package/hooks/pre-tool-use/block-dangerous.sh +76 -0
  81. package/hooks/pre-tool-use/git-push-confirm.md +46 -0
  82. package/hooks/pre-tool-use/git-push-confirm.sh +36 -0
  83. package/mcp/configs/github.json +11 -0
  84. package/mcp/configs/postgres.json +11 -0
  85. package/mcp/de/recommended-servers.md +170 -0
  86. package/mcp/es/recommended-servers.md +170 -0
  87. package/mcp/fr/recommended-servers.md +170 -0
  88. package/mcp/nl/recommended-servers.md +170 -0
  89. package/mcp/recommended-servers.md +168 -0
  90. package/package.json +45 -0
  91. package/prompts/project-starters/de/fastapi-project.md +62 -0
  92. package/prompts/project-starters/de/nextjs-project.md +82 -0
  93. package/prompts/project-starters/es/fastapi-project.md +62 -0
  94. package/prompts/project-starters/es/nextjs-project.md +82 -0
  95. package/prompts/project-starters/fastapi-project.md +60 -0
  96. package/prompts/project-starters/fr/fastapi-project.md +62 -0
  97. package/prompts/project-starters/fr/nextjs-project.md +82 -0
  98. package/prompts/project-starters/nextjs-project.md +80 -0
  99. package/prompts/project-starters/nl/fastapi-project.md +62 -0
  100. package/prompts/project-starters/nl/nextjs-project.md +82 -0
  101. package/prompts/system-prompts/ai-product.md +80 -0
  102. package/prompts/system-prompts/data-pipeline.md +76 -0
  103. package/prompts/system-prompts/de/ai-product.md +82 -0
  104. package/prompts/system-prompts/de/data-pipeline.md +78 -0
  105. package/prompts/system-prompts/de/saas-backend.md +71 -0
  106. package/prompts/system-prompts/es/ai-product.md +82 -0
  107. package/prompts/system-prompts/es/data-pipeline.md +78 -0
  108. package/prompts/system-prompts/es/saas-backend.md +71 -0
  109. package/prompts/system-prompts/fr/ai-product.md +82 -0
  110. package/prompts/system-prompts/fr/data-pipeline.md +78 -0
  111. package/prompts/system-prompts/fr/saas-backend.md +71 -0
  112. package/prompts/system-prompts/nl/ai-product.md +82 -0
  113. package/prompts/system-prompts/nl/data-pipeline.md +78 -0
  114. package/prompts/system-prompts/nl/saas-backend.md +71 -0
  115. package/prompts/system-prompts/saas-backend.md +69 -0
  116. package/prompts/task-specific/changelog.md +81 -0
  117. package/prompts/task-specific/de/changelog.md +83 -0
  118. package/prompts/task-specific/de/debugging.md +78 -0
  119. package/prompts/task-specific/de/pr-description.md +69 -0
  120. package/prompts/task-specific/debugging.md +76 -0
  121. package/prompts/task-specific/es/changelog.md +83 -0
  122. package/prompts/task-specific/es/debugging.md +78 -0
  123. package/prompts/task-specific/es/pr-description.md +69 -0
  124. package/prompts/task-specific/fr/changelog.md +83 -0
  125. package/prompts/task-specific/fr/debugging.md +78 -0
  126. package/prompts/task-specific/fr/pr-description.md +69 -0
  127. package/prompts/task-specific/nl/changelog.md +83 -0
  128. package/prompts/task-specific/nl/debugging.md +78 -0
  129. package/prompts/task-specific/nl/pr-description.md +69 -0
  130. package/prompts/task-specific/pr-description.md +67 -0
  131. package/rules/common/coding-style.md +45 -0
  132. package/rules/common/de/coding-style.md +47 -0
  133. package/rules/common/de/git.md +48 -0
  134. package/rules/common/de/performance.md +40 -0
  135. package/rules/common/de/security.md +45 -0
  136. package/rules/common/de/testing.md +45 -0
  137. package/rules/common/es/coding-style.md +47 -0
  138. package/rules/common/es/git.md +48 -0
  139. package/rules/common/es/performance.md +40 -0
  140. package/rules/common/es/security.md +45 -0
  141. package/rules/common/es/testing.md +45 -0
  142. package/rules/common/fr/coding-style.md +47 -0
  143. package/rules/common/fr/git.md +48 -0
  144. package/rules/common/fr/performance.md +40 -0
  145. package/rules/common/fr/security.md +45 -0
  146. package/rules/common/fr/testing.md +45 -0
  147. package/rules/common/git.md +46 -0
  148. package/rules/common/nl/coding-style.md +47 -0
  149. package/rules/common/nl/git.md +48 -0
  150. package/rules/common/nl/performance.md +40 -0
  151. package/rules/common/nl/security.md +45 -0
  152. package/rules/common/nl/testing.md +45 -0
  153. package/rules/common/performance.md +38 -0
  154. package/rules/common/security.md +43 -0
  155. package/rules/common/testing.md +43 -0
  156. package/rules/language-specific/de/go.md +48 -0
  157. package/rules/language-specific/de/python.md +38 -0
  158. package/rules/language-specific/de/typescript.md +51 -0
  159. package/rules/language-specific/es/go.md +48 -0
  160. package/rules/language-specific/es/python.md +38 -0
  161. package/rules/language-specific/es/typescript.md +51 -0
  162. package/rules/language-specific/fr/go.md +48 -0
  163. package/rules/language-specific/fr/python.md +38 -0
  164. package/rules/language-specific/fr/typescript.md +51 -0
  165. package/rules/language-specific/go.md +46 -0
  166. package/rules/language-specific/nl/go.md +48 -0
  167. package/rules/language-specific/nl/python.md +38 -0
  168. package/rules/language-specific/nl/typescript.md +51 -0
  169. package/rules/language-specific/python.md +36 -0
  170. package/rules/language-specific/typescript.md +49 -0
  171. package/scripts/cli.js +161 -0
  172. package/scripts/link-skills.sh +35 -0
  173. package/scripts/list-skills.sh +34 -0
  174. package/skills/ai-engineering/agent-construction.md +285 -0
  175. package/skills/ai-engineering/claude-api.md +248 -0
  176. package/skills/ai-engineering/de/agent-construction.md +287 -0
  177. package/skills/ai-engineering/de/claude-api.md +250 -0
  178. package/skills/ai-engineering/es/agent-construction.md +287 -0
  179. package/skills/ai-engineering/es/claude-api.md +250 -0
  180. package/skills/ai-engineering/fr/agent-construction.md +287 -0
  181. package/skills/ai-engineering/fr/claude-api.md +250 -0
  182. package/skills/ai-engineering/nl/agent-construction.md +287 -0
  183. package/skills/ai-engineering/nl/claude-api.md +250 -0
  184. package/skills/backend/dotnet/csharp.md +304 -0
  185. package/skills/backend/dotnet/de/csharp.md +306 -0
  186. package/skills/backend/dotnet/es/csharp.md +306 -0
  187. package/skills/backend/dotnet/fr/csharp.md +306 -0
  188. package/skills/backend/dotnet/nl/csharp.md +306 -0
  189. package/skills/backend/go/de/go.md +307 -0
  190. package/skills/backend/go/es/go.md +307 -0
  191. package/skills/backend/go/fr/go.md +307 -0
  192. package/skills/backend/go/go.md +305 -0
  193. package/skills/backend/go/nl/go.md +307 -0
  194. package/skills/backend/nodejs/de/nestjs.md +274 -0
  195. package/skills/backend/nodejs/de/nextjs.md +222 -0
  196. package/skills/backend/nodejs/es/nestjs.md +274 -0
  197. package/skills/backend/nodejs/es/nextjs.md +222 -0
  198. package/skills/backend/nodejs/fr/nestjs.md +274 -0
  199. package/skills/backend/nodejs/fr/nextjs.md +222 -0
  200. package/skills/backend/nodejs/nestjs.md +272 -0
  201. package/skills/backend/nodejs/nextjs.md +220 -0
  202. package/skills/backend/nodejs/nl/nestjs.md +274 -0
  203. package/skills/backend/nodejs/nl/nextjs.md +222 -0
  204. package/skills/backend/python/de/django.md +285 -0
  205. package/skills/backend/python/de/fastapi.md +244 -0
  206. package/skills/backend/python/django.md +283 -0
  207. package/skills/backend/python/es/django.md +285 -0
  208. package/skills/backend/python/es/fastapi.md +244 -0
  209. package/skills/backend/python/fastapi.md +242 -0
  210. package/skills/backend/python/fr/django.md +285 -0
  211. package/skills/backend/python/fr/fastapi.md +244 -0
  212. package/skills/backend/python/nl/django.md +285 -0
  213. package/skills/backend/python/nl/fastapi.md +244 -0
  214. package/skills/data-ml/dbt-data-pipelines.md +155 -0
  215. package/skills/data-ml/de/dbt-data-pipelines.md +157 -0
  216. package/skills/data-ml/de/pandas-polars.md +147 -0
  217. package/skills/data-ml/de/pytorch-tensorflow.md +171 -0
  218. package/skills/data-ml/es/dbt-data-pipelines.md +157 -0
  219. package/skills/data-ml/es/pandas-polars.md +147 -0
  220. package/skills/data-ml/es/pytorch-tensorflow.md +171 -0
  221. package/skills/data-ml/fr/dbt-data-pipelines.md +157 -0
  222. package/skills/data-ml/fr/pandas-polars.md +147 -0
  223. package/skills/data-ml/fr/pytorch-tensorflow.md +171 -0
  224. package/skills/data-ml/nl/dbt-data-pipelines.md +157 -0
  225. package/skills/data-ml/nl/pandas-polars.md +147 -0
  226. package/skills/data-ml/nl/pytorch-tensorflow.md +171 -0
  227. package/skills/data-ml/pandas-polars.md +145 -0
  228. package/skills/data-ml/pytorch-tensorflow.md +169 -0
  229. package/skills/database/de/graphql.md +181 -0
  230. package/skills/database/es/graphql.md +181 -0
  231. package/skills/database/fr/graphql.md +181 -0
  232. package/skills/database/graphql.md +179 -0
  233. package/skills/database/nl/graphql.md +181 -0
  234. package/skills/devops-infra/de/docker.md +133 -0
  235. package/skills/devops-infra/de/github-actions.md +179 -0
  236. package/skills/devops-infra/de/kubernetes.md +129 -0
  237. package/skills/devops-infra/de/terraform.md +130 -0
  238. package/skills/devops-infra/docker.md +131 -0
  239. package/skills/devops-infra/es/docker.md +133 -0
  240. package/skills/devops-infra/es/github-actions.md +179 -0
  241. package/skills/devops-infra/es/kubernetes.md +129 -0
  242. package/skills/devops-infra/es/terraform.md +130 -0
  243. package/skills/devops-infra/fr/docker.md +133 -0
  244. package/skills/devops-infra/fr/github-actions.md +179 -0
  245. package/skills/devops-infra/fr/kubernetes.md +129 -0
  246. package/skills/devops-infra/fr/terraform.md +130 -0
  247. package/skills/devops-infra/github-actions.md +177 -0
  248. package/skills/devops-infra/kubernetes.md +127 -0
  249. package/skills/devops-infra/nl/docker.md +133 -0
  250. package/skills/devops-infra/nl/github-actions.md +179 -0
  251. package/skills/devops-infra/nl/kubernetes.md +129 -0
  252. package/skills/devops-infra/nl/terraform.md +130 -0
  253. package/skills/devops-infra/terraform.md +128 -0
  254. package/skills/finance-payments/de/stripe.md +187 -0
  255. package/skills/finance-payments/es/stripe.md +187 -0
  256. package/skills/finance-payments/fr/stripe.md +187 -0
  257. package/skills/finance-payments/nl/stripe.md +187 -0
  258. package/skills/finance-payments/stripe.md +185 -0
  259. package/workflows/code-review.md +151 -0
  260. package/workflows/de/code-review.md +153 -0
  261. package/workflows/de/debugging-session.md +146 -0
  262. package/workflows/de/feature-development.md +155 -0
  263. package/workflows/de/new-project-bootstrap.md +175 -0
  264. package/workflows/de/refactor-safely.md +150 -0
  265. package/workflows/debugging-session.md +144 -0
  266. package/workflows/es/code-review.md +153 -0
  267. package/workflows/es/debugging-session.md +146 -0
  268. package/workflows/es/feature-development.md +155 -0
  269. package/workflows/es/new-project-bootstrap.md +175 -0
  270. package/workflows/es/refactor-safely.md +150 -0
  271. package/workflows/feature-development.md +153 -0
  272. package/workflows/fr/code-review.md +153 -0
  273. package/workflows/fr/debugging-session.md +146 -0
  274. package/workflows/fr/feature-development.md +155 -0
  275. package/workflows/fr/new-project-bootstrap.md +175 -0
  276. package/workflows/fr/refactor-safely.md +150 -0
  277. package/workflows/new-project-bootstrap.md +173 -0
  278. package/workflows/nl/code-review.md +153 -0
  279. package/workflows/nl/debugging-session.md +146 -0
  280. package/workflows/nl/feature-development.md +155 -0
  281. package/workflows/nl/new-project-bootstrap.md +175 -0
  282. package/workflows/nl/refactor-safely.md +150 -0
  283. package/workflows/refactor-safely.md +148 -0
@@ -0,0 +1,174 @@
1
+ # Guide d'orchestration des agents
2
+
3
+ Comment déléguer, paralléliser et spécialiser le travail avec le système de sous-agents de Claude Code.
4
+
5
+ ---
6
+
7
+ ## Ce que sont les sous-agents
8
+
9
+ Un sous-agent est une instance Claude séparée lancée par la session parente pour gérer une tâche spécifique et délimitée. Il obtient :
10
+ - Une fenêtre de contexte fraîche (pas d'historique de session)
11
+ - Un sous-ensemble d'outils spécifique (si configuré)
12
+ - Une sélection de modèle (peut différer du parent)
13
+ - Un prompt que vous écrivez explicitement
14
+
15
+ Les sous-agents ne sont pas magiques — ce sont des outils spécifiques pour des problèmes spécifiques.
16
+
17
+ ---
18
+
19
+ ## Quand utiliser un sous-agent
20
+
21
+ Utilisez un sous-agent quand la tâche a des **entrées claires** et des **sorties claires** et est **indépendante de l'état de session actuel**.
22
+
23
+ **Bons candidats :**
24
+ - Réviser 10 fichiers pour des problèmes de sécurité
25
+ - Effectuer une recherche spécifique dans le code pour localiser un pattern
26
+ - Générer du code standard pour un nouveau module selon une spécification
27
+ - Analyser un fichier journal et retourner un résumé
28
+
29
+ **Mauvais candidats :**
30
+ - Tâches nécessitant le contexte complet de la session
31
+ - Tâches nécessitant des échanges — les sous-agents sont en une seule passe
32
+ - Tâches où le coût de lancement dépasse le travail lui-même
33
+
34
+ ---
35
+
36
+ ## 1. Pattern de délégation
37
+
38
+ La session parente identifie une tâche délimitée et la confie au sous-agent.
39
+
40
+ **Règle clé :** Le prompt du sous-agent doit être autonome. Il n'a pas accès à ce que la session parente a fait. Briefez-le comme un collègue qui vient d'entrer dans la pièce.
41
+
42
+ **Ce qu'il faut inclure dans le prompt du sous-agent :**
43
+ - Ce que vous essayez d'accomplir et pourquoi
44
+ - Les fichiers ou répertoires spécifiques à examiner
45
+ - Le format de résultat souhaité
46
+ - Les contraintes ou décisions déjà prises
47
+
48
+ ---
49
+
50
+ ## 2. Pattern de parallélisation
51
+
52
+ Plusieurs sous-agents s'exécutant simultanément sur des tâches indépendantes.
53
+
54
+ **Quand paralléliser :**
55
+ - La même opération doit être appliquée à de nombreux fichiers/modules
56
+ - Deux tâches genuinement indépendantes doivent toutes deux être complétées
57
+ - Des tâches de recherche couvrant différentes zones simultanément
58
+
59
+ **Utiliser git worktrees pour des modifications de code parallèles :**
60
+ ```bash
61
+ git worktree add ../feature-branch-a feature-a
62
+ git worktree add ../feature-branch-b feature-b
63
+ ```
64
+
65
+ **Anti-patterns de parallélisation :**
66
+ - Paralléliser des tâches qui partagent l'état (conflit d'écriture)
67
+ - Tâches parallèles où l'une dépend de la sortie de l'autre
68
+
69
+ ---
70
+
71
+ ## 3. Pattern de spécialisation (cavecrew)
72
+
73
+ Adaptez le modèle et les outils du sous-agent à la nature de la tâche. Inspiré du pattern **cavecrew** (source : [JuliusBrussee/caveman](https://github.com/JuliusBrussee/caveman)) — économise ~60% de tokens par rapport à l'utilisation d'Opus pour chaque sous-agent.
74
+
75
+ | Rôle | Modèle | Outils | Utiliser quand |
76
+ |---|---|---|---|
77
+ | Investigateur | Haiku 4.5 | Read, Bash (grep/find seulement) | Localiser des choses dans le code — lecture seule, rapide |
78
+ | Constructeur | Sonnet 4.6 | Read, Edit, Write, Bash | Modifications chirurgicales 1–2 fichiers |
79
+ | Réviseur | Haiku 4.5 | Read | Réviser un diff ou un ensemble de fichiers |
80
+ | Orchestrateur | Opus 4.7 | Tous | Coordination multi-étapes complexe, décisions d'architecture |
81
+
82
+ ---
83
+
84
+ ## 4. Pattern de transfert de contexte
85
+
86
+ Quand une session a accumulé un contexte significatif et que vous devez transférer le travail à un nouvel agent.
87
+
88
+ **Structure du prompt de transfert :**
89
+ ```
90
+ ## Context
91
+ [Ce que fait ce projet, brièvement]
92
+ [Sur quoi nous travaillions]
93
+ [Décisions prises pendant cette session]
94
+
95
+ ## Files modified
96
+ [Liste avec la raison de chaque modification]
97
+
98
+ ## Current state
99
+ [Ce qui est fait, pas fait, ce qui bloque]
100
+
101
+ ## Your task
102
+ [Tâche spécifique et délimitée pour le nouvel agent]
103
+
104
+ ## Constraints
105
+ [Décisions prises qui ne doivent pas être remises en question]
106
+ ```
107
+
108
+ ---
109
+
110
+ ## 5. Dépendances fortes vs faibles
111
+
112
+ **Dépendance forte :** La tâche échoue explicitement sans la configuration en amont.
113
+ - Signalez cela explicitement : "Cette compétence nécessite une configuration — exécutez `/setup` d'abord."
114
+
115
+ **Dépendance faible :** La tâche fonctionne mais produit une sortie de moindre qualité sans la configuration.
116
+ - Ne bloquez pas. Dégradez gracieusement et notez l'écart.
117
+
118
+ ---
119
+
120
+ ## 6. Contrôle de portée pour les sous-agents
121
+
122
+ Chaque sous-agent doit avoir une limite de portée explicite.
123
+
124
+ **À inclure dans chaque prompt de sous-agent :**
125
+ ```
126
+ ## Scope
127
+ - Read: yes
128
+ - Write/Edit: [fichiers spécifiques seulement OU non]
129
+ - Shell commands: [commandes spécifiques autorisées OU aucune]
130
+ - Network: [oui/non]
131
+
132
+ ## Do not
133
+ - Do not modify files outside [directory]
134
+ - Do not make git commits
135
+ - Do not install packages
136
+ ```
137
+
138
+ ---
139
+
140
+ ## 7. Retourner les résultats des sous-agents
141
+
142
+ **Préférez les fichiers pour :**
143
+ - Listes de résultats sur lesquelles le parent va itérer
144
+ - Code généré que le parent va réviser
145
+ - Rapports référencés plusieurs fois
146
+
147
+ **Préférez les messages de retour pour :**
148
+ - Réponses oui/non simples
149
+ - Données structurées courtes
150
+ - Rapports de statut
151
+
152
+ ---
153
+
154
+ ## Référence rapide
155
+
156
+ | Objectif | Pattern |
157
+ |---|---|
158
+ | Tâche délimitée et autonome | Délégation |
159
+ | Même tâche sur plusieurs fichiers | Parallélisation |
160
+ | Recherche/localisation lecture seule | Investigateur (Haiku) |
161
+ | Modification de code chirurgicale | Constructeur (Sonnet) |
162
+ | Révision de diff/fichier | Réviseur (Haiku) |
163
+ | Coordination multi-étapes complexe | Orchestrateur (Opus) |
164
+ | Transfert de session | Pattern de transfert de contexte |
165
+ | Grande sortie de sous-agent | Écrire dans un fichier, le parent le lit |
166
+ | Résultat structuré court | Message de retour |
167
+
168
+ ---
169
+
170
+ ## Travaillez avec nous
171
+
172
+ Claudient est soutenu par [Uitbreiden](https://uitbreiden.com/) — nous construisons des produits IA avec des communautés de développeurs et livrons des solutions IA B2B. Si vous concevez des systèmes multi-agents, des workflows autonomes ou une orchestration Claude Code de qualité production — nous l'avons construit en production et pouvons vous aider.
173
+
174
+ **[uitbreiden.com](https://uitbreiden.com/)**
@@ -0,0 +1,164 @@
1
+ # Premiers pas avec Claudient
2
+
3
+ Ce guide vous amène de zéro à un environnement Claude Code fonctionnel avec votre première compétence, votre premier agent et votre premier hook — en moins de 10 minutes.
4
+
5
+ ---
6
+
7
+ ## Prérequis
8
+
9
+ - [Claude Code](https://claude.ai/code) installé et authentifié
10
+ - Un répertoire de projet sur lequel vous travaillez activement
11
+
12
+ ---
13
+
14
+ ## Étape 1 — Cloner Claudient
15
+
16
+ ```bash
17
+ git clone https://github.com/Claudient/Claudient.git ~/Claudient
18
+ ```
19
+
20
+ Vous disposez maintenant de la bibliothèque complète en local. Rien ne s'exécute automatiquement — vous choisissez ce dont vous avez besoin.
21
+
22
+ ---
23
+
24
+ ## Étape 2 — Configurer le répertoire `.claude/` de votre projet
25
+
26
+ Claude Code recherche la configuration dans `.claude/` à la racine de votre projet.
27
+
28
+ ```bash
29
+ mkdir -p your-project/.claude/skills
30
+ mkdir -p your-project/.claude/hooks
31
+ ```
32
+
33
+ La structure de votre projet devrait ressembler à ceci :
34
+
35
+ ```
36
+ your-project/
37
+ ├── .claude/
38
+ │ ├── skills/ ← les compétences vont ici (standard actuel)
39
+ │ ├── hooks/ ← les scripts de hooks vont ici
40
+ │ └── settings.json ← la configuration des hooks va ici
41
+ ├── CLAUDE.md ← les règles vont ici
42
+ └── src/
43
+ ```
44
+
45
+ ---
46
+
47
+ ## Étape 3 — Ajouter votre première compétence
48
+
49
+ Les compétences sont des commandes slash. Copiez n'importe quel fichier `.md` depuis `skills/` dans `.claude/skills/` :
50
+
51
+ ```bash
52
+ # Exemple : ajouter la compétence FastAPI
53
+ cp ~/Claudient/skills/backend/python/fastapi.md your-project/.claude/skills/
54
+ ```
55
+
56
+ Ouvrez maintenant Claude Code dans votre projet et tapez `/fastapi` — la compétence s'active.
57
+
58
+ > **Note :** `.claude/commands/` fonctionne toujours (chemin hérité) mais `.claude/skills/` est le standard actuel. Quand les deux existent, les compétences ont la priorité.
59
+
60
+ **Comment choisir une compétence :**
61
+ - Parcourez `skills/` par catégorie
62
+ - Lisez la section "When to activate" en haut de chaque fichier
63
+ - Si elle correspond à votre tâche actuelle, copiez-la
64
+
65
+ ---
66
+
67
+ ## Étape 4 — Ajouter une règle
68
+
69
+ Les règles se trouvent dans `CLAUDE.md` à la racine de votre projet. Claude lit ce fichier au début de chaque session.
70
+
71
+ ```bash
72
+ # Copier un ensemble de règles communes dans le CLAUDE.md de votre projet
73
+ cat ~/Claudient/rules/common/coding-style.md >> your-project/CLAUDE.md
74
+ ```
75
+
76
+ Ou ouvrez `rules/common/` et copiez manuellement les sections pertinentes pour votre projet.
77
+
78
+ ---
79
+
80
+ ## Étape 5 — Ajouter votre premier hook
81
+
82
+ Les hooks s'exécutent automatiquement sur les événements Claude Code. Ils résident dans `.claude/settings.json`.
83
+
84
+ Créez ou ouvrez `.claude/settings.json` dans votre projet :
85
+
86
+ ```json
87
+ {
88
+ "hooks": {}
89
+ }
90
+ ```
91
+
92
+ Copiez un hook depuis `hooks/` — chaque fichier hook contient le JSON exact à coller. Par exemple, le hook de suivi des coûts :
93
+
94
+ ```json
95
+ {
96
+ "hooks": {
97
+ "PostToolUse": [
98
+ {
99
+ "matcher": "",
100
+ "hooks": [
101
+ {
102
+ "type": "command",
103
+ "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/cost-tracker.sh"
104
+ }
105
+ ]
106
+ }
107
+ ]
108
+ }
109
+ }
110
+ ```
111
+
112
+ Puis copiez le script correspondant :
113
+
114
+ ```bash
115
+ cp ~/Claudient/hooks/lifecycle/cost-tracker.sh your-project/.claude/hooks/
116
+ chmod +x your-project/.claude/hooks/cost-tracker.sh
117
+ ```
118
+
119
+ ---
120
+
121
+ ## Étape 6 — (Optionnel) Ajouter un agent
122
+
123
+ Les agents sont des définitions de sous-agents que vous référencez dans vos sessions Claude. Ils ne nécessitent pas de copie de fichier — vous les appelez par `subagent_type` dans un appel à l'outil Agent.
124
+
125
+ Parcourez `agents/` pour comprendre ce qui est disponible. Quand vous souhaitez que Claude délègue une tâche à un spécialiste (par exemple, un réviseur de sécurité, un spécialiste base de données), référencez la définition de l'agent pour comprendre ce qu'il attend et ce qu'il retourne.
126
+
127
+ ---
128
+
129
+ ## Que faire ensuite
130
+
131
+ | Objectif | Où chercher |
132
+ |---|---|
133
+ | Écrire votre propre compétence | [guides/skill-authoring.md](skill-authoring.md) |
134
+ | Réduire les coûts en tokens | [guides/token-optimization.md](token-optimization.md) |
135
+ | Comprendre la mémoire et l'état de session | [guides/memory-management.md](memory-management.md) |
136
+ | Sécuriser votre configuration Claude Code | [guides/security.md](security.md) |
137
+ | Construire des workflows automatisés multi-étapes | [guides/agent-orchestration.md](agent-orchestration.md) |
138
+ | Automatiser la qualité avec les hooks | [guides/hooks-cookbook.md](hooks-cookbook.md) |
139
+
140
+ ---
141
+
142
+ ## Dépannage
143
+
144
+ **La compétence n'apparaît pas comme commande slash**
145
+ — Vérifiez que le fichier est dans `.claude/skills/` (ou `.claude/commands/` pour l'ancien chemin)
146
+ — Vérifiez que l'extension du fichier est `.md`
147
+ — Redémarrez Claude Code
148
+
149
+ **Le hook ne se déclenche pas**
150
+ — Vérifiez que le nom de l'événement correspond exactement : `PreToolUse`, `PostToolUse`, `PreCompact`, `Notification`
151
+ — Vérifiez que le chemin du script est relatif à la racine du projet
152
+ — Vérifiez que le script est exécutable (`chmod +x`)
153
+
154
+ **CLAUDE.md n'est pas lu**
155
+ — Il doit se trouver à la racine du projet (au même niveau que `src/`, `package.json`, etc.)
156
+ — Redémarrez la session Claude Code après l'avoir modifié
157
+
158
+ ---
159
+
160
+ ## Travaillez avec nous
161
+
162
+ Claudient est soutenu par [Uitbreiden](https://uitbreiden.com/) — nous construisons des produits IA avec des communautés de développeurs et livrons des solutions IA B2B. Si vous construisez quelque chose de sérieux avec Claude Code et souhaitez une aide experte, un partenaire technique, ou simplement faire partie de la communauté — venez nous trouver.
163
+
164
+ **[uitbreiden.com](https://uitbreiden.com/)**
@@ -0,0 +1,227 @@
1
+ # Livre de recettes des hooks
2
+
3
+ Patterns de hooks réels et prêts à l'emploi pour automatiser la qualité, la sécurité et l'observabilité dans Claude Code.
4
+
5
+ ---
6
+
7
+ ## Fondamentaux des hooks
8
+
9
+ Les hooks sont des scripts shell ou des commandes que Claude Code exécute automatiquement en réponse à des événements. Ils s'exécutent en dehors du contexte de Claude — ce sont de vrais processus shell, pas des instructions Claude.
10
+
11
+ **Événements de hook :**
12
+ | Événement | Quand il se déclenche |
13
+ |---|---|
14
+ | `SessionStart` | Quand une session Claude Code commence |
15
+ | `PreToolUse` | Avant l'exécution de tout appel d'outil |
16
+ | `PostToolUse` | Après la fin d'un appel d'outil |
17
+ | `PreCompact` | Avant le déclenchement de la compaction de contexte |
18
+ | `PostCompact` | Après la compaction de contexte |
19
+ | `Stop` | Quand Claude finit de répondre |
20
+ | `Notification` | Quand Claude envoie une notification bureau |
21
+
22
+ **Structure de base d'un hook :**
23
+ ```json
24
+ {
25
+ "hooks": {
26
+ "EventName": [
27
+ {
28
+ "matcher": "ToolName",
29
+ "hooks": [
30
+ {
31
+ "type": "command",
32
+ "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/votre-script.sh",
33
+ "timeout": 30
34
+ }
35
+ ]
36
+ }
37
+ ]
38
+ }
39
+ }
40
+ ```
41
+
42
+ **Codes de sortie :** `0` = autoriser, `1` = avertir (Claude voit la sortie mais continue), `2` = bloquer (l'appel d'outil est annulé).
43
+
44
+ ---
45
+
46
+ ## Recette 1 — Auto-formatage Prettier à l'écriture
47
+
48
+ Formate automatiquement les fichiers après que Claude les écrit ou les modifie.
49
+
50
+ ```json
51
+ {
52
+ "hooks": {
53
+ "PostToolUse": [
54
+ {
55
+ "matcher": "Write|Edit",
56
+ "hooks": [
57
+ {
58
+ "type": "command",
59
+ "command": "npx prettier --write ${tool_input.file_path}",
60
+ "async": true
61
+ }
62
+ ]
63
+ }
64
+ ]
65
+ }
66
+ }
67
+ ```
68
+
69
+ ---
70
+
71
+ ## Recette 2 — Bloquer les commandes shell dangereuses
72
+
73
+ **.claude/hooks/block-dangerous.sh :**
74
+ ```bash
75
+ #!/usr/bin/env bash
76
+ INPUT=$(cat)
77
+ COMMAND=$(echo "$INPUT" | python3 -c "import sys,json; print(json.load(sys.stdin).get('command',''))")
78
+
79
+ BLOCKED_PATTERNS=("rm -rf" "sudo " "| bash" "| sh" "git push --force" "git reset --hard")
80
+
81
+ for pattern in "${BLOCKED_PATTERNS[@]}"; do
82
+ if echo "$COMMAND" | grep -qi "$pattern"; then
83
+ echo "BLOQUÉ : la commande correspond au pattern dangereux '$pattern'" >&2
84
+ exit 2
85
+ fi
86
+ done
87
+
88
+ exit 0
89
+ ```
90
+
91
+ ```json
92
+ {
93
+ "hooks": {
94
+ "PreToolUse": [
95
+ {
96
+ "matcher": "Bash",
97
+ "hooks": [{ "type": "command", "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-dangerous.sh", "timeout": 5 }]
98
+ }
99
+ ]
100
+ }
101
+ }
102
+ ```
103
+
104
+ ---
105
+
106
+ ## Recette 3 — Journal d'audit pour chaque appel d'outil
107
+
108
+ **.claude/hooks/audit-log.sh :**
109
+ ```bash
110
+ #!/usr/bin/env bash
111
+ INPUT=$(cat)
112
+ TOOL_NAME=$(echo "$INPUT" | python3 -c "import sys,json; d=json.load(sys.stdin); print(d.get('tool_name','unknown'))" 2>/dev/null)
113
+ TIMESTAMP=$(date -u +"%Y-%m-%dT%H:%M:%SZ")
114
+ LOG_FILE="${CLAUDE_PROJECT_DIR}/.claude/logs/audit.log"
115
+ mkdir -p "$(dirname "$LOG_FILE")"
116
+ echo "${TIMESTAMP} | ${TOOL_NAME}" >> "$LOG_FILE"
117
+ ```
118
+
119
+ ```json
120
+ {
121
+ "hooks": {
122
+ "PostToolUse": [
123
+ { "matcher": "", "hooks": [{ "type": "command", "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/audit-log.sh", "async": true }] }
124
+ ]
125
+ }
126
+ }
127
+ ```
128
+
129
+ ---
130
+
131
+ ## Recette 4 — Sauvegarde de session avant compaction
132
+
133
+ ```json
134
+ {
135
+ "hooks": {
136
+ "PreCompact": [
137
+ { "matcher": "", "hooks": [{ "type": "command", "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/pre-compact-save.sh" }] }
138
+ ]
139
+ }
140
+ }
141
+ ```
142
+
143
+ Associez avec une instruction CLAUDE.md : "Quand PreCompact se déclenche, résumez : tâche actuelle, fichiers modifiés, décisions ouvertes, prochaines étapes — ajoutez à `.claude/memory/session-state.md`."
144
+
145
+ ---
146
+
147
+ ## Recette 5 — Suivi des coûts
148
+
149
+ ```json
150
+ {
151
+ "hooks": {
152
+ "PostToolUse": [
153
+ { "matcher": "", "hooks": [{ "type": "command", "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/cost-tracker.sh", "async": true }] }
154
+ ]
155
+ }
156
+ }
157
+ ```
158
+
159
+ ---
160
+
161
+ ## Recette 6 — Vérification de types TypeScript à l'édition
162
+
163
+ ```json
164
+ {
165
+ "hooks": {
166
+ "PostToolUse": [
167
+ {
168
+ "matcher": "Write|Edit",
169
+ "hooks": [{ "type": "command", "command": "bash -c 'echo \"${tool_input.file_path}\" | grep -q \"\\.tsx\\?$\" && npx tsc --noEmit 2>&1 | head -20 || true'", "async": false, "timeout": 30 }]
170
+ }
171
+ ]
172
+ }
173
+ }
174
+ ```
175
+
176
+ Définissez `async: false` pour que Claude voie les erreurs de types et puisse les corriger immédiatement.
177
+
178
+ ---
179
+
180
+ ## Recette 7 — Rappel avant git push
181
+
182
+ ```bash
183
+ #!/usr/bin/env bash
184
+ INPUT=$(cat)
185
+ COMMAND=$(echo "$INPUT" | python3 -c "import sys,json; print(json.load(sys.stdin).get('command',''))" 2>/dev/null)
186
+ if echo "$COMMAND" | grep -q "git push"; then
187
+ echo "⚠️ Sur le point de pousser vers le distant. Confirmez que c'est intentionnel." >&2
188
+ exit 1
189
+ fi
190
+ exit 0
191
+ ```
192
+
193
+ ---
194
+
195
+ ## Recette 8 — Chargeur de contexte au démarrage de session
196
+
197
+ ```json
198
+ {
199
+ "hooks": {
200
+ "SessionStart": [
201
+ { "matcher": "", "hooks": [{ "type": "command", "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/session-start.sh" }] }
202
+ ]
203
+ }
204
+ }
205
+ ```
206
+
207
+ ---
208
+
209
+ ## Dépannage des hooks
210
+
211
+ **Le hook ne se déclenche pas :**
212
+ - Vérifiez que le nom de l'événement est exact : `PreToolUse`, `PostToolUse`, `SessionStart`, `PreCompact`
213
+ - Vérifiez que le script est exécutable : `chmod +x .claude/hooks/votre-script.sh`
214
+ - Vérifiez que le chemin utilise correctement `${CLAUDE_PROJECT_DIR}`
215
+
216
+ **Tester un hook manuellement :**
217
+ ```bash
218
+ echo '{"tool_name":"Bash","tool_input":{"command":"ls"}}' | bash .claude/hooks/votre-script.sh
219
+ ```
220
+
221
+ ---
222
+
223
+ ## Travaillez avec nous
224
+
225
+ Claudient est soutenu par [Uitbreiden](https://uitbreiden.com/) — nous construisons des produits IA avec des communautés de développeurs et livrons des solutions IA B2B. Si vous avez besoin de systèmes de hooks personnalisés, de portes qualité automatisées ou d'automatisation Claude Code de qualité production pour votre équipe — nous le construisons pour des clients.
226
+
227
+ **[uitbreiden.com](https://uitbreiden.com/)**