Démarrage
Installation et lancement
npm install -g @anthropic-ai/claude-code claude # démarrer une session interactive claude --version # vérifier la version claude update # mettre à jour vers la dernière version
Authentification
claude login # OAuth via navigateur export ANTHROPIC_API_KEY="sk-ant-..." claude logout # effacer la session
Commandes slash
Commandes de session
/helpAfficher les commandes disponibles
/clearEffacer l'historique de conversation
/compactCondenser le contexte pour économiser des tokens
/costAfficher l'utilisation de tokens et le coût
/statusAfficher les infos de session et le modèle
/newDémarrer une nouvelle conversation
/configOuvrir ou consulter la configuration
/doctorDiagnostiquer les problèmes de configuration
/initCréer un CLAUDE.md pour le projet
/loginS'authentifier avec Anthropic
/logoutEffacer l'authentification
Commandes de workflow
/bugSignaler un bug
/reviewDemander une revue de code
/prCréer ou mettre à jour une pull request
/commitValider les changements indexés avec un message
Raccourcis clavier
Ctrl+CAnnuler la génération en cours
Ctrl+DQuitter Claude Code (EOF)
EscapeAnnuler la saisie / l'édition en cours
TabAutocomplétion des chemins et commandes
Haut/BasNaviguer dans l'historique des saisies
Options CLI
Options courantes
-p, --printMode non-interactif (headless)
--modelDéfinir le modèle : opus, sonnet, haiku
--output-formatSortie en text, json, stream-json
--allowedToolsRestreindre les outils : Edit,Read,Bash
--max-turns NLimiter le nombre de tours
--debugActiver la journalisation de débogage
-n, --nameNommer la session
Mode headless / scripting
claude -p "explain this error" < log.txt claude -p "list todos" --output-format json echo "fix typos" | claude -p
Fichiers de configuration
Hiérarchie CLAUDE.md
./CLAUDE.mdInstructions au niveau projet (dans le dépôt)
./.claude/settings.jsonParamètres projet (permissions, hooks)
~/.claude/CLAUDE.mdInstructions globales utilisateur (tous projets)
~/.claude/settings.jsonParamètres globaux utilisateur
~/.claude/projects/*/CLAUDE.mdInstructions utilisateur par projet (hors dépôt)
Variables d'environnement
ANTHROPIC_API_KEYClé API pour l'authentification directe
CLAUDE_MODELModèle par défaut à utiliser
CLAUDE_CONFIG_DIRChemin du répertoire de configuration personnalisé
Permissions
settings.json
{ "permissions": { "allow": ["Read", "Glob", "Grep"], "deny": ["Bash(rm *)"] } }
Modes de permission
defaultDemander avant les outils à risque
--dangerously-skip-permissionsAutoriser tous les outils (CI/scripts uniquement)
--allowedToolsOption CLI pour restreindre les outils
Serveurs MCP
Qu'est-ce que les serveurs MCP ?
Les serveurs Model Context Protocol étendent Claude Code avec des outils personnalisés — bases de données, API, services. Gérés via CLI ou `.mcp.json`.
Gestion CLI
claude mcp add server-name -- cmd arg1 arg2 claude mcp list claude mcp remove server-name
Config .mcp.json
{ "mcpServers": { "my-db": { "command": "python", "args": ["-m", "mcp_server_db"], "env": { "DB_URL": "${DATABASE_URL}" } } } }
Portée
.mcp.jsonServeurs MCP au niveau projet
~/.claude/mcp.jsonServeurs MCP globaux utilisateur
claude mcp add -s userAjouter à la portée utilisateur
claude mcp add -s projectAjouter à la portée projet
Hooks
Événements de hook
PreToolUseS'exécute avant l'exécution d'un outil
PostToolUseS'exécute après la fin d'un outil
NotificationS'exécute quand Claude envoie une notification
StopS'exécute quand Claude termine une réponse
Exemple settings.json
{ "hooks": { "PreToolUse": [{ "matcher": "Bash", "hooks": [{ "type": "command", "command": "check-command.sh $INPUT" }] }] } }
Comportement des hooks
exit 0Autoriser l'exécution de l'outil
exit 2Bloquer l'exécution de l'outil
stdoutRetour JSON à Claude
SDK et automatisation
Scripting headless
# Prompt unique, sortie JSON claude -p "summarize main.py" \ --output-format json # Entrée via pipe git diff | claude -p "review this diff"
CI / GitHub Actions
- uses: anthropics/claude-code-action@v1 with: claude_args: > --max-turns 5 --model claude-sonnet-4-6
Conseils
Utiliser `--max-turns` pour limiter les coûts en automatisation. Utiliser `--output-format json` pour analyser les résultats programmatiquement. Combiner avec `--allowedTools` pour la sécurité.
Modèles
Sélection du modèle
claude --model opus # le plus performant claude --model sonnet # équilibré (par défaut) claude --model haiku # le plus rapide et économique
Raccourcis de modèles
opusClaude Opus — capacité maximale
sonnetClaude Sonnet — par défaut, équilibré
haikuClaude Haiku — rapide et économique
--model full-nameex. claude-sonnet-4-6
Bonnes pratiques
Rédiger CLAUDE.md
Mettre les conventions du projet, la stack technique, les commandes de build et les instructions de test dans CLAUDE.md. Rester concis — Claude le lit à chaque session. Utiliser `/init` pour le créer.
Gestion des coûts
/costVérifier l'utilisation de tokens en cours
/compactCompresser le contexte quand il devient grand
--max-turnsLimiter les tours en automatisation
sonnet / haikuUtiliser des modèles moins chers pour les tâches simples
Prompting efficace
Être précis"Corriger la vérification null dans auth.ts:42" > "corriger le bug"
Donner du contexteRéférencer des fichiers, fonctions, messages d'erreur
Utiliser @fichierRéférencer directement : @src/main.ts
Utiliser des imagesGlisser-déposer des captures d'écran pour le contexte visuel
ItérerAffiner avec des suivis ; utiliser /clear pour réinitialiser