Aller au contenu principal
Référence

CLI : Référence complète des commandes Claude Code

Référence exhaustive de la commande claude : tous les flags, sous-commandes, modes d'exécution et exemples. claude, claude config, claude mcp, claude doctor.

Commande principale : claude

claude [OPTIONS] [PROMPT]

Flags généraux

FlagAliasTypeDescription
--model <id>-mstringModèle à utiliser (claude-haiku-4-5, claude-sonnet-4-6, claude-opus-4-6, etc.)
--print-pbooleanMode non-interactif : affiche la réponse et quitte
--output-format <fmt>stringFormat de sortie : text (défaut), json, stream-json
--verbosebooleanAffiche les appels d'outils et métadonnées (debug)
--no-cachebooleanDésactive le cache de prompt (évite les résultats mis en cache)
--dangerously-skip-permissionsbooleanDéconseillé : ignore toutes les demandes de confirmation
--continue-cbooleanReprend la dernière session de la conversation
--resume <id>stringReprend une session spécifique par son identifiant
--max-turns <n>numberLimite le nombre de tours d'échange (mode agentic)
--allowedTools <liste>stringOutils autorisés (séparés par virgule : Bash,Read,Write)
--disallowedTools <liste>stringOutils interdits (séparés par virgule)
--system-prompt <texte>-sstringSystem prompt à injecter (surcharge CLAUDE.md)
--append-system-prompt <texte>stringTexte ajouté au system prompt existant
--add-dir <chemin>stringAjoute un répertoire dans le contexte des fichiers accessibles
--worktree-wbooleanLance la session dans un git worktree isolé
--barebooleanMode minimal : pas de CLAUDE.md, pas de MCP, pas de plugins
--teleportbooleanRécupère une session web (claude.ai/code) pour la continuer en local
--agent <nom>stringUtilise un agent custom depuis .claude/agents/ comme system prompt
--max-budget-usd <montant>numberLimite le budget de la session en dollars
--debugbooleanMode debug étendu (logs internes)
--version-vbooleanAffiche la version installée de Claude Code
--help-hbooleanAffiche l'aide

Exemples : Commande claude

# Session interactive standard
claude
# Session interactive avec un modèle spécifique
claude --model claude-opus-4-6
# Mode print : exécuter une tâche et quitter
claude --print "Explique le code dans src/auth.ts"
claude -p "Génère des tests unitaires pour utils/date.ts"
# Mode print avec format JSON
claude --print --output-format json "Liste les fonctions de ce fichier"
# Mode stream-json (pour traitement en temps réel)
claude --print --output-format stream-json "Analyse ce projet"
# Limiter le nombre de tours (mode agentic)
claude --max-turns 5 "Refactorise le module auth"
# Restreindre les outils disponibles
claude --allowedTools "Read,Bash" "Analyse sans modifier les fichiers"
# Reprendre la dernière session
claude --continue
# Reprendre une session par son ID
claude --resume abc123
# Verbose (debug)
claude --verbose "Pourquoi ce test échoue-t-il ?"

Flags avancés

--worktree / -w : sessions parallèles sans conflits

Quand on travaille sur plusieurs features en même temps, le problème classique c'est que les branches se marchent dessus. --worktree crée un git worktree isolé pour la session : chaque instance de Claude a sa propre copie du repo et peut faire des modifications sans interférer avec les autres.

# Démarrer une session dans un worktree isolé
claude --worktree "Implémente la feature de paiement"
# Avec un modèle spécifique
claude -w --model claude-opus-4-5 "Refactorise le module auth"

--bare : démarrage rapide sans contexte

Par défaut, Claude Code charge le CLAUDE.md, connecte les serveurs MCP et initialise les plugins. Tout ça prend du temps. En mode --bare, tout ce chargement est court-circuité : la session démarre quasi instantanément.

C'est le mode idéal pour les scripts où vous n'avez pas besoin du contexte projet, et pour les pipelines CI/CD où chaque milliseconde compte.

# Démarrage minimal, sans aucun contexte projet
claude --bare --print "Génère un UUID v4 en TypeScript"
# Dans un script shell (démarrage ~10x plus rapide)
claude --bare --print --output-format json "Analyse ce JSON" < data.json
# En CI/CD pour une tâche ponctuelle
claude --bare --print --max-turns 1 "Vérifie la syntaxe de ce fichier YAML" < config.yml

--teleport : continuer une session web dans le terminal

Vous avez commencé une conversation sur claude.ai/code dans votre navigateur, et vous voulez maintenant l'ouvrir dans le terminal pour avoir accès aux outils fichiers et bash. C'est exactement ce que fait --teleport : il récupère la session en cours et vous permet de continuer là où vous en étiez, avec toute la puissance du CLI.

# Récupère la dernière session web active
claude --teleport
# Si plusieurs sessions sont disponibles, une liste vous est présentée

--agent <nom> : agents spécialisés

Claude Code permet de définir des agents custom dans .claude/agents/. Chaque agent est un fichier YAML ou Markdown qui définit un system prompt spécialisé. Le flag --agent charge cet agent au démarrage de la session.

# Utiliser l'agent "code-reviewer" défini dans .claude/agents/code-reviewer.md
claude --agent code-reviewer "Revois les changements dans src/api/"
# Agent de sécurité pour un audit
claude --agent security-auditor --print "Analyse ce fichier" < src/auth.ts
# Agent de rédaction technique
claude --agent tech-writer "Génère la documentation pour ce module"

--max-budget-usd <montant> : contrôle des coûts

Pour les tâches longues ou les pipelines automatisés, il peut être utile de plafonner les dépenses par session. Quand le budget est atteint, Claude s'arrête proprement plutôt que de continuer à consommer.

# Session limitée à 0.50 $
claude --max-budget-usd 0.50 "Analyse et refactorise le dossier src/"
# En CI/CD pour éviter les dérapages
claude \
--print \
--max-budget-usd 1.00 \
--max-turns 20 \
"Exécute les tests et corrige les erreurs"

Mode pipe (stdin → stdout)

Le mode --print est compatible avec les pipes Unix standard.

# Passer un fichier en entrée
cat src/auth.ts | claude --print "Ajoute des commentaires JSDoc à ce code"
# Chaîner des commandes
git diff HEAD~1 | claude --print "Résume ces changements en bullet points"
# Passer un prompt en entrée standard
echo "Explique le Design Pattern Observer" | claude --print
# Intégration dans un script shell
RESULT=$(claude --print --output-format json "Analyse ce code" < src/main.ts)
echo $RESULT | jq '.content[0].text'
# Lecture depuis un fichier
claude --print "Quels sont les risques de sécurité ici ?" < config/database.yml

Mode SDK / headless

Pour les scripts automatisés, les pipelines CI/CD et les applications qui intègrent Claude Code.

# Exécution non-interactive avec contrôle strict
ANTHROPIC_API_KEY="sk-ant-..." \
claude \
--print \
--max-turns 1 \
--output-format json \
"Vérifie la qualité du code dans src/"
# Mode agentic avec tours multiples
claude \
--print \
--max-turns 10 \
--dangerously-skip-permissions \
"Exécute la suite de tests et corrige les erreurs"
# Avec variables d'environnement dans la config
claude \
--print \
--allowedTools "Read,Bash,Write" \
--system-prompt "Tu es un expert en sécurité. Ne modifie aucun fichier." \
"Audite ce projet"

Sous-commande : claude agents

Liste tous les Background Agents configurés et en cours d'exécution, avec leur statut, branche Git et durée.

claude agents
# Exemple de sortie
# ID STATUS BRANCH SINCE
# agent-a3f2 running feat/refactor-auth 5m ago
# agent-b8c1 running feat/add-tests 2m ago
# agent-d9e4 completed fix/memory-leak 12m ago

Voir aussi la page Background Agents pour l'utilisation avec Git Worktree.


Sous-commande : claude config

Gère la configuration de Claude Code (fichier ~/.claude/settings.json par défaut).

claude config [SOUS-COMMANDE] [OPTIONS]
Sous-commandeDescription
claude config listListe toutes les options actives et leur valeur
claude config get <clé>Affiche la valeur d'une clé spécifique
claude config set <clé> <valeur>Définit la valeur d'une clé
claude config add <clé> <valeur>Ajoute une valeur à un tableau
claude config remove <clé> <valeur>Retire une valeur d'un tableau
# Exemples
claude config list
claude config get model
# → claude-sonnet-4-6
claude config set model claude-opus-4-6
claude config add allowedTools "Bash"
claude config remove allowedTools "Bash"
# Avec scope (global par défaut)
claude config --global set model claude-haiku-4-5

Sous-commande : claude mcp

Gère les serveurs MCP (Model Context Protocol).

claude mcp [SOUS-COMMANDE] [OPTIONS]

claude mcp add

claude mcp add [OPTIONS] <nom> -- <commande> [args...]
OptionDescription
--scope <portée>global (défaut), project, ou user
--transport <type>stdio (défaut) ou sse
-e <VAR=valeur>Définit une variable d'environnement pour le MCP
# Ajouter un MCP stdio (local, via npx)
claude mcp add filesystem -- npx -y @modelcontextprotocol/server-filesystem ~/projets
# Ajouter un MCP avec scope projet
claude mcp add --scope project postgres -- \
npx -y @modelcontextprotocol/server-postgres postgresql://localhost/mydb
# Ajouter un MCP avec variable d'environnement
claude mcp add github -e GITHUB_TOKEN=ghp_xxx -- \
npx -y @modelcontextprotocol/server-github
# Ajouter un MCP via transport SSE (HTTP)
claude mcp add --transport sse mon-api https://api.exemple.com/mcp
# Ajouter un MCP Python (via uvx)
claude mcp add mon-script -- uvx mon-package-python

claude mcp remove

claude mcp remove [--scope <portée>] <nom>
claude mcp remove filesystem
claude mcp remove --scope project postgres

claude mcp list

claude mcp list
# Affiche : nom, statut (connected/disconnected), outils disponibles, scope

claude mcp logs

# Afficher les logs d'un MCP (utile pour déboguer)
claude mcp logs github
# Suivre les logs en temps réel
claude mcp logs -f filesystem

claude mcp get

# Affiche la configuration complète d'un MCP
claude mcp get github

Sous-commande : claude doctor

Diagnostique l'installation et la configuration de Claude Code.

claude doctor

Vérifie notamment :

  • Version de Claude Code et disponibilité de mises à jour
  • Connectivité réseau vers l'API Anthropic
  • Validité de la clé API (ANTHROPIC_API_KEY)
  • État des MCP configurés (connexion, outils disponibles)
  • Permissions système (lecture/écriture de fichiers)
  • Configuration du shell et des variables d'environnement
# Exemple de sortie
claude doctor
# ✓ Claude Code v1.x.x (à jour)
# ✓ API Anthropic accessible
# ✓ ANTHROPIC_API_KEY valide
# ✓ MCP filesystem : connecté (5 outils)
# ✗ MCP github : erreur de connexion (GITHUB_TOKEN manquant)
# ✓ Permissions fichiers : OK

Sous-commande : claude update

# Met à jour Claude Code vers la dernière version
claude update
# Vérifie la version sans mettre à jour
claude --version

Options avancées : formats de sortie

--output-format text (défaut)

Texte brut formaté pour la lecture humaine. Inclut le markdown rendu dans le terminal.

--output-format json

Retourne un objet JSON complet avec la réponse et les métadonnées.

{
"type": "result",
"subtype": "success",
"cost_usd": 0.0023,
"is_error": false,
"duration_ms": 1842,
"num_turns": 1,
"result": "Texte de la réponse ici...",
"session_id": "abc123"
}

--output-format stream-json

Flux de messages JSON (newline-delimited) en temps réel, adapté au traitement en streaming.

# Traitement ligne par ligne
claude --print --output-format stream-json "prompt" | while IFS= read -r line; do
echo "$line" | jq -r 'select(.type == "content_block_delta") | .delta.text // empty'
done

Commandes slash en session interactive

Ces commandes sont tapées directement dans une session Claude Code interactive (pas en ligne de commande) :

CommandeDescription
/voiceActive/désactive le Voice Mode (push-to-talk avec Espace)
/loop <intervalle> <tâche>Lance une tâche récurrente (ex: /loop 5m /review-pr)
/helpAffiche l'aide et la liste des commandes disponibles
/compactCompresse le contexte de la conversation
/memoryAffiche la mémoire persistante (CLAUDE.md)
/initInitialise un fichier CLAUDE.md dans le projet courant
/reviewLance une revue de code du projet
/costAffiche le coût de la session en cours
/clearEfface la conversation et repart à zéro

Prochaines étapes