Fonctionnalités non documentées de Claude Code : Hooks, mémoire, classificateur YOLO et plus

André Figueira a lu le code source de Claude Code (v2.1.87) et a découvert des dizaines d'options de configuration non documentées. La documentation officielle couvre les bases, mais le package réel—librement inspectable dans node_modules—expose des champs pour les hooks, la mémoire de l'agent, les règles de mode automatique, et plus encore. Voici ce que vous pouvez réellement configurer dès maintenant.
Classificateur YOLO : Auto-approbation des actions en français courant
Appelé en interne le "Classificateur YOLO" (yoloClassifier.ts), ce système vous permet de décrire votre environnement en français courant pour décider quand Claude peut approuver automatiquement des opérations. Dans settings.json, ajoutez une description comme "ceci est un serveur de staging, les opérations destructrices sont acceptables" pour autoriser certaines actions sans demande de confirmation.
Valeurs de retour des hooks qui modifient le comportement en plein vol
Les hooks reçoivent du JSON sur stdin et peuvent renvoyer du JSON spécifique à l'événement sur stdout. Voici les champs de retour clés :
- PreToolUse :
updatedInput(réécrit l'entrée de l'outil avant exécution),permissionDecision(force autorisation/refus),permissionDecisionReason,additionalContext - SessionStart :
watchPaths(surveillance automatique de fichiers déclenchant des événements FileChanged),initialUserMessage(ajoute du contenu au premier message utilisateur),additionalContext - PostToolUse :
updatedMCPToolOutput,additionalContext - PermissionRequest :
decision(autorisation/refus programmatique avecupdatedInputouupdatedPermissions)
Exemple : un hook PreToolUse qui ajoute --dry-run à chaque commande git push. Dans .claude/settings.json :
{
"hooks": {
"PreToolUse": [{
"matcher": "Bash",
"hooks": [{
"type": "command",
"command": "~/.claude/hooks/dry-run-pushes.sh"
}]
}]
}
}Script dans ~/.claude/hooks/dry-run-pushes.sh :
#!/bin/bash INPUT=$(jq -r '.tool_input.command'Ceci réécrit la commande avant exécution, un champ non documenté.
Contexte de session et surveillance de fichiers
Les hooks SessionStart peuvent définir watchPaths pour surveiller des fichiers comme package.json, .env et tsconfig.json en cas de modifications, déclenchant des événements FileChanged. Ils peuvent aussi injecter initialUserMessage pour ajouter du contexte, par exemple la branche git actuelle et le nombre de modifications non commitées.
Exemple de script renvoyant des chemins de surveillance et un message initial :
#!/bin/bash
BRANCH=$(git branch --show-current 2>/dev/null)
CHANGES=$(git status --porcelain 2>/dev/null | wc -l | tr -d ' ')
jq -n \
--arg branch "$BRANCH" \
--arg changes "$CHANGES" \
'{
"watchPaths": ["package.json", ".env", "tsconfig.json"],
"initialUserMessage": "Branche actuelle : \($branch), modifications non commitées : \($changes)"
}'Mémoire persistante de l'agent et règles de mode automatique
La mémoire de l'agent peut être configurée pour persister entre les sessions en utilisant des champs dans le répertoire ~/.claude/agents/. Les règles de mode automatique peuvent être décrites dans des fichiers en français courant, indiquant à Claude quand approuver automatiquement des actions. Le code source fait également allusion à des "boucles de rêve auto-améliorantes" où Claude peut affiner ses propres configurations.
Emplacements des fichiers
- Paramètres :
~/.claude/settings.json(personnel) ou.claude/settings.json(projet, partageable via git) - Compétences :
~/.claude/skills/<nom>/SKILL.md(personnel) ou.claude/skills/<nom>/SKILL.md(projet) - Agents :
~/.claude/agents/<nom>.md(personnel) ou.claude/agents/<nom>.md(projet) - Scripts de hooks : par convention dans
~/.claude/hooks/, doivent être exécutables (chmod +x)
Ces fonctionnalités sont pratiques pour les développeurs qui souhaitent personnaliser Claude Code au-delà des API documentées. Attendez-vous à ce que ces fonctionnalités changent entre les versions.
📖 Lire la source complète : HN AI Agents
👀 See Also

Orc : Orchestrateur Multi-Projets Open Source pour Agents d'IA de Codage
Orc est un orchestrateur au niveau du système d'exploitation qui coordonne des agents de codage IA sur plusieurs projets en utilisant bash, tmux et des git worktrees. Il résout les conflits de fusion, le travail dupliqué et la surcharge de coordination grâce à un système de relecture à deux niveaux et une consommation nulle de tokens pour l'orchestration.

Baton : Une Application de Bureau pour Gérer Plusieurs Agents d'IA de Codage
Baton est une application de bureau qui aide les développeurs à gérer plusieurs agents d'IA de codage dans des espaces de travail isolés. Il fournit des sessions de terminal en temps réel, une isolation des worktrees git et une surveillance de l'état des agents comme Claude Code, Codex CLI, OpenCode et Gemini CLI.

AI Claw : Le pont sans serveur connecte Alexa à OpenClaw local avec livraison double.
AI Claw est un pipeline Python AWS Lambda qui connecte les enceintes Amazon Echo aux instances locales d'OpenClaw, contournant le délai d'attente de 8 secondes d'Amazon grâce à une architecture de type « fire-and-forget » avec double livraison vers Telegram et la sortie audio native de l'Echo.

Compétence OpenClaw 'Conseils d'Attente' Affiche des Astuces d'Apprentissage Pendant les Temps d'Attente des Réponses IA
La compétence 'Waiting Tips' pour OpenClaw envoie immédiatement un conseil d'apprentissage aléatoire lorsqu'un utilisateur envoie un message, comblant ainsi les 5 à 10 secondes d'attente des réponses IA avec du contenu utile. Elle comprend 75 conseils bilingues dans cinq catégories et fonctionne sur plusieurs plateformes de messagerie.