Référence des outils
Référence complète des outils que Claude Code peut utiliser, y compris les exigences de permission.
Claude Code a accès à un ensemble d'outils intégrés qui l'aident à comprendre et modifier votre base de code. Les noms d'outils sont les chaînes exactes que vous utilisez dans les règles de permission spécifiques aux outils, les listes d'outils subagent, et les correspondances de hook. Pour désactiver complètement un outil, ajoutez son nom au tableau deny dans vos paramètres de permission.
Pour ajouter des outils personnalisés, connectez un serveur MCP. Pour étendre Claude avec des flux de travail réutilisables basés sur des invites, écrivez une skill, qui s'exécute via l'outil Skill existant plutôt que d'ajouter une nouvelle entrée d'outil.
| Outil | Description | Permission requise |
|---|---|---|
Agent |
Crée un subagent avec sa propre fenêtre de contexte pour gérer une tâche | Non |
AskUserQuestion |
Pose des questions à choix multiples pour recueillir les exigences ou clarifier l'ambiguïté | Non |
Bash |
Exécute des commandes shell dans votre environnement. Voir comportement de l'outil Bash | Oui |
CronCreate |
Planifie une invite récurrente ou ponctuelle dans la session actuelle. Les tâches sont limitées à la session et restaurées sur --resume ou --continue si non expirées. Voir tâches planifiées |
Non |
CronDelete |
Annule une tâche planifiée par ID | Non |
CronList |
Liste toutes les tâches planifiées dans la session | Non |
Edit |
Effectue des modifications ciblées sur des fichiers spécifiques | Oui |
EnterPlanMode |
Bascule en mode plan pour concevoir une approche avant de coder | Non |
EnterWorktree |
Crée un git worktree isolé et y bascule. Passez un path pour basculer dans un worktree existant du référentiel actuel au lieu d'en créer un nouveau. Non disponible pour les subagents |
Non |
ExitPlanMode |
Présente un plan pour approbation et quitte le mode plan | Oui |
ExitWorktree |
Quitte une session worktree et revient au répertoire d'origine. Non disponible pour les subagents | Non |
Glob |
Trouve des fichiers en fonction de la correspondance de motifs | Non |
Grep |
Recherche des motifs dans le contenu des fichiers | Non |
ListMcpResourcesTool |
Liste les ressources exposées par les serveurs MCP connectés | Non |
LSP |
Intelligence du code via les serveurs de langage : accéder aux définitions, trouver les références, signaler les erreurs de type et les avertissements. Voir comportement de l'outil LSP | Non |
Monitor |
Exécute une commande en arrière-plan et renvoie chaque ligne de sortie à Claude, afin qu'il puisse réagir aux entrées de journal, aux modifications de fichiers, ou au statut interrogé en milieu de conversation. Voir outil Monitor | Oui |
NotebookEdit |
Modifie les cellules de notebook Jupyter | Oui |
PowerShell |
Exécute des commandes PowerShell nativement. Voir outil PowerShell pour la disponibilité | Oui |
Read |
Lit le contenu des fichiers | Non |
ReadMcpResourceTool |
Lit une ressource MCP spécifique par URI | Non |
SendMessage |
Envoie un message à un coéquipier de l'équipe d'agents, ou reprend un subagent par son ID d'agent. Les subagents arrêtés se reprennent automatiquement en arrière-plan. Disponible uniquement quand CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 est défini |
Non |
Skill |
Exécute une skill dans la conversation principale | Oui |
TaskCreate |
Crée une nouvelle tâche dans la liste des tâches | Non |
TaskGet |
Récupère les détails complets d'une tâche spécifique | Non |
TaskList |
Liste toutes les tâches avec leur statut actuel | Non |
TaskOutput |
(Obsolète) Récupère la sortie d'une tâche en arrière-plan. Préférez Read sur le chemin du fichier de sortie de la tâche |
Non |
TaskStop |
Arrête une tâche en arrière-plan en cours d'exécution par ID | Non |
TaskUpdate |
Met à jour le statut de la tâche, les dépendances, les détails, ou supprime les tâches | Non |
TeamCreate |
Crée une équipe d'agents avec plusieurs coéquipiers. Disponible uniquement quand CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 est défini |
Non |
TeamDelete |
Dissout une équipe d'agents et nettoie les processus des coéquipiers. Disponible uniquement quand CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 est défini |
Non |
TodoWrite |
Gère la liste de contrôle des tâches de la session. Disponible en mode non interactif et dans le SDK Agent ; les sessions interactives utilisent TaskCreate, TaskGet, TaskList et TaskUpdate à la place | Non |
ToolSearch |
Recherche et charge les outils différés quand la recherche d'outils est activée | Non |
WebFetch |
Récupère le contenu d'une URL spécifiée | Oui |
WebSearch |
Effectue des recherches web | Oui |
Write |
Crée ou remplace des fichiers | Oui |
Les règles de permission peuvent être configurées en utilisant /permissions ou dans les paramètres de permission. Voir aussi Règles de permission spécifiques aux outils.
Comportement de l'outil Bash
L'outil Bash exécute chaque commande dans un processus séparé avec le comportement de persistance suivant :
- Quand Claude exécute
cddans la session principale, le nouveau répertoire de travail persiste dans les commandes Bash ultérieures tant qu'il reste à l'intérieur du répertoire du projet ou d'un répertoire de travail supplémentaire que vous avez ajouté avec--add-dir,/add-dir, ouadditionalDirectoriesdans les paramètres. Les sessions subagent ne reportent jamais les modifications de répertoire de travail.- Si
cdaboutit en dehors de ces répertoires, Claude Code réinitialise au répertoire du projet et ajouteShell cwd was reset to <dir>au résultat de l'outil. - Pour désactiver ce report afin que chaque commande Bash démarre dans le répertoire du projet, définissez
CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR=1.
- Si
- Les variables d'environnement ne persistent pas. Un
exportdans une commande ne sera pas disponible dans la suivante.
Activez votre environnement virtualenv ou conda avant de lancer Claude Code. Pour que les variables d'environnement persistent entre les commandes Bash, définissez CLAUDE_ENV_FILE sur un script shell avant de lancer Claude Code, ou utilisez un hook SessionStart pour le remplir dynamiquement.
Comportement de l'outil LSP
L'outil LSP donne à Claude l'intelligence du code à partir d'un serveur de langage en cours d'exécution. Après chaque modification de fichier, il signale automatiquement les erreurs de type et les avertissements afin que Claude puisse corriger les problèmes sans une étape de compilation séparée. Claude peut également l'appeler directement pour naviguer dans le code :
- Accéder à la définition d'un symbole
- Trouver toutes les références à un symbole
- Obtenir les informations de type à une position
- Lister les symboles dans un fichier ou un espace de travail
- Trouver les implémentations d'une interface
- Tracer les hiérarchies d'appels
L'outil est inactif jusqu'à ce que vous installiez un plugin d'intelligence du code pour votre langage. Le plugin regroupe la configuration du serveur de langage, et vous installez le binaire du serveur séparément.
Outil Monitor
L'outil Monitor nécessite Claude Code v2.1.98 ou version ultérieure.
L'outil Monitor permet à Claude de surveiller quelque chose en arrière-plan et de réagir quand cela change, sans mettre en pause la conversation. Demandez à Claude de :
- Suivre un fichier journal et signaler les erreurs au fur et à mesure qu'elles apparaissent
- Interroger une PR ou un travail CI et signaler quand son statut change
- Surveiller un répertoire pour les modifications de fichiers
- Suivre la sortie de tout script de longue durée que vous lui pointez
Claude écrit un petit script pour la surveillance, l'exécute en arrière-plan, et reçoit chaque ligne de sortie à son arrivée. Vous continuez à travailler dans la même session et Claude intervient quand un événement arrive. Arrêtez une surveillance en demandant à Claude de l'annuler ou en terminant la session.
Monitor utilise les mêmes règles de permission que Bash, donc les motifs allow et deny que vous avez définis pour Bash s'appliquent ici aussi. Il n'est pas disponible sur Amazon Bedrock, Google Vertex AI, ou Microsoft Foundry. Il n'est également pas disponible quand DISABLE_TELEMETRY ou CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC est défini.
Les plugins peuvent déclarer des moniteurs qui démarrent automatiquement quand le plugin est actif, au lieu de demander à Claude de les démarrer. Voir moniteurs de plugin.
Outil PowerShell
L'outil PowerShell permet à Claude d'exécuter des commandes PowerShell nativement. Sur Windows, cela signifie que les commandes s'exécutent dans PowerShell au lieu d'être acheminées via Git Bash. Sur Windows sans Git Bash, l'outil est activé automatiquement. Sur Windows avec Git Bash installé, l'outil est en déploiement progressif. Sur Linux, macOS et WSL, l'outil est opt-in.
Activer l'outil PowerShell
Définissez CLAUDE_CODE_USE_POWERSHELL_TOOL=1 dans votre environnement ou dans settings.json :
{
"env": {
"CLAUDE_CODE_USE_POWERSHELL_TOOL": "1"
}
}
Sur Windows, définissez la variable à 0 pour refuser le déploiement. Sur Linux, macOS et WSL, l'outil nécessite PowerShell 7 ou version ultérieure : installez pwsh et assurez-vous qu'il est sur votre PATH.
Sur Windows, Claude Code détecte automatiquement pwsh.exe pour PowerShell 7+ avec un repli sur powershell.exe pour PowerShell 5.1. Lorsque l'outil est activé, Claude traite PowerShell comme le shell principal. L'outil Bash reste disponible pour les scripts POSIX lorsque Git Bash est installé.
Sélection du shell dans les paramètres, les hooks et les skills
Trois paramètres supplémentaires contrôlent où PowerShell est utilisé :
"defaultShell": "powershell"danssettings.json: achemine les commandes interactives!via PowerShell. Nécessite que l'outil PowerShell soit activé."shell": "powershell"sur les hooks de commande individuels : exécute ce hook dans PowerShell. Les hooks lancent PowerShell directement, donc cela fonctionne indépendamment deCLAUDE_CODE_USE_POWERSHELL_TOOL.shell: powershelldans le frontmatter de skill : exécute les blocs!`command`dans PowerShell. Nécessite que l'outil PowerShell soit activé.
Le même comportement de réinitialisation du répertoire de travail de la session principale décrit dans la section de l'outil Bash s'applique aux commandes PowerShell, y compris la variable d'environnement CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR.
Limitations de l'aperçu
L'outil PowerShell a les limitations connues suivantes pendant l'aperçu :
- Les profils PowerShell ne sont pas chargés
- Sur Windows, le sandboxing n'est pas pris en charge
Vérifier quels outils sont disponibles
Votre ensemble d'outils exact dépend de votre fournisseur, de votre plateforme et de vos paramètres. Pour vérifier ce qui est chargé dans une session en cours d'exécution, demandez directement à Claude :
What tools do you have access to?
Claude donne un résumé conversationnel. Pour les noms d'outils MCP exacts, exécutez /mcp.
Voir aussi
- Serveurs MCP : ajouter des outils personnalisés en connectant des serveurs externes
- Permissions : système de permission, syntaxe des règles, et motifs spécifiques aux outils
- Subagents : configurer l'accès aux outils pour les subagents
- Hooks : exécuter des commandes personnalisées avant ou après l'exécution des outils