Journal

Claude Code : piloter le développement depuis le terminal

Journal du lundi 24 août 2026, généré le 24 août à 09:56

Claude Code : piloter le développement depuis le terminal

Claude Code n'est pas un simple chatbot dans un shell : c'est un agent qui lit, modifie, exécute et commit du code de façon autonome, avec une boucle d'outils (lecture de fichiers, grep, exécution de commandes, édition, git) orchestrée par le modèle. Comprendre ses mécanismes d'extension change la façon de l'utiliser au quotidien.

Mémoire de projet avec CLAUDE.md

Un fichier CLAUDE.md à la racine du dépôt est chargé automatiquement dans le contexte de chaque session. On y documente les conventions du projet, les commandes de build/test, ou les pièges connus. Contrairement à un prompt système générique, ce fichier est versionné avec le code : il évolue avec le projet et peut être relu en revue de code comme n'importe quel autre fichier.

Mode headless pour l'automatisation

Le flag -p exécute Claude Code sans interface interactive, ce qui permet de l'intégrer dans un script ou une pipeline CI :

claude -p "Relis le diff staged et liste les régressions possibles" \
  --output-format json > review.json

La sortie JSON contient le texte de la réponse et les appels d'outils effectués, ce qui la rend exploitable par un autre programme (par exemple pour bloquer un merge si des problèmes critiques sont détectés).

Commandes personnalisées et sous-agents

Un fichier Markdown placé dans .claude/commands/ devient une slash command réutilisable :

---
description: Vérifie que les nouveaux endpoints ont des tests
---
Analyse le diff courant. Pour chaque nouvel endpoint HTTP,
vérifie qu'un test correspondant existe. Signale les manques.

Pour des tâches plus larges (audit multi-fichiers, recherche exploratoire), Claude Code peut déléguer à des sous-agents qui tournent dans un contexte isolé, évitant de saturer la fenêtre de contexte de la session principale avec des résultats intermédiaires volumineux.

MCP et hooks

Le protocole MCP (Model Context Protocol) permet de connecter des outils externes — base de données, tracker de tickets, API interne — que l'agent peut appeler comme s'il s'agissait de ses outils natifs. Les hooks, eux, exécutent une commande shell à des points précis du cycle de vie (avant/après un appel d'outil, à l'arrêt de session) : un hook PostToolUse sur les écritures de fichiers peut ainsi lancer automatiquement un formatter ou un linter, sans dépendre de la mémoire du modèle pour s'en souvenir.

Permissions

Chaque outil peut être autorisé, refusé ou soumis à confirmation via settings.json. C'est ce mécanisme, plutôt que le bon vouloir du modèle, qui garantit qu'une commande destructive comme rm -rf ou un git push --force ne s'exécute jamais sans validation explicite.