Automatisation Hooks
Scripts qui s'exécutent automatiquement
à des moments clés d'une session Claude Code.
Un script lancé à un événement précis
Trigger sur événement
PreToolUse, PostToolUse, OnSessionStart, OnSessionEnd. Le hook se déclenche automatiquement au bon moment.
Configuration JSON
Dans .claude/settings.json à la racine du projet. Configuration versionable, partageable avec l'équipe.
Script bash ou node
Le hook exécute un script de votre choix. Linting auto, log, notification, validation, génération de doc.
Code arbitraire
ATTENTION : un hook peut exécuter n'importe quel code. Ne pas activer aveuglément des hooks venant d'ailleurs sans audit.
Quatre moments-clés
PreToolUse
Juste avant qu'un tool soit appelé (Write, Edit, Bash...). Permet de valider, bloquer, logger. Retourne false pour empêcher l'action.
PostToolUse
Juste après qu'un tool a été exécuté. Idéal pour formatter automatiquement, lancer un linter, déclencher des tests.
OnSessionStart
Au démarrage de la session Claude Code. Pour précharger du contexte, vérifier les dépendances, afficher un rappel.
OnSessionEnd
À la fin de la session. Pour archiver les logs, créer un résumé de session, envoyer une notification.
Éditer settings.json
Dans .claude/settings.json à la racine du projet.
Hook PostToolUse
Sur Write et Edit, lance prettier sur le fichier modifié.
Tester
Demander une modification de fichier → prettier se déclenche.
Vérifier le log
Le hook a tourné, le fichier est formatté.
Quatre exemples concrets
Auto-format + lint
PostToolUse sur Write/Edit. Prettier + ESLint à chaque modification. Le code reste propre sans effort.
Run tests on Edit
PostToolUse sur les fichiers src/. Lance npm test ciblé. Vous détectez les régressions immédiatement.
Logging d'actions
PostToolUse sur Bash. Log de chaque commande shell exécutée par Claude dans un fichier d'audit.
Bloquer écriture sensible
PreToolUse sur Write. Refuse l'écriture sur certains chemins (production config, secrets). Retourne false.
Pouvoir = responsabilité
Code arbitraire = risque
Un hook PostToolUse peut exécuter n'importe quoi. C'est puissant et dangereux. Ne copiez jamais aveuglément un settings.json trouvé en ligne.
Audit avant activation
Lisez chaque commande du hook. Comprenez ce qu'elle fait. Si quelque chose vous échappe, n'activez pas.
Versionner = partager
Le settings.json est dans Git. Quand vous le partagez à l'équipe, vous partagez aussi les hooks. L'équipe doit auditer.
Pas de secrets dans le JSON
Les hooks accèdent à l'environnement. Tokens, mots de passe : variables d'environnement, jamais dans le settings.json.