Loading...
    • Guide du développeur
    • Référence API
    • MCP
    • Ressources
    • Notes de version
    Search...
    ⌘K

    Premiers pas

    Introduction à ClaudeDémarrage rapide

    Modèles et tarification

    Aperçu des modèlesChoisir un modèleNouveautés dans Claude 4.5Migration vers Claude 4.5Dépréciations de modèlesTarification

    Créer avec Claude

    Aperçu des fonctionnalitésTravailler avec l'API MessagesFenêtres de contexteMeilleures pratiques de prompting

    Capacités

    Mise en cache des invitesÉdition du contexteRéflexion étendueMessages en streamingTraitement par lotsCitationsSupport multilingueComptage de tokensEmbeddingsVisionSupport PDFAPI FilesRésultats de rechercheExtension Google Sheets

    Outils

    AperçuComment implémenter l'utilisation d'outilsUtilisation efficace des outils en termes de jetonsStreaming d'outils à granularité fineOutil BashOutil d'exécution de codeOutil d'utilisation d'ordinateurOutil d'éditeur de texteOutil de récupération webOutil de recherche webOutil de mémoire

    Compétences de l'Agent

    Compétences d'AgentCommencer avec les Agent Skills dans l'APIBonnes pratiques de création de SkillsUtilisation des compétences

    SDK Agent

    AperçuRéférence du SDK Agent - TypeScriptRéférence du SDK Agent - Python

    Guides

    Entrée en StreamingGestion des PermissionsGestion des SessionsHébergement du SDK AgentModification des invites systèmeMCP dans le SDKOutils PersonnalisésSous-agents dans le SDKCommandes Slash dans le SDKCompétences d'agent dans le SDKSuivi des Coûts et de l'UtilisationListes de TâchesPlugins dans le SDK

    MCP dans l'API

    Connecteur MCPServeurs MCP distants

    Claude sur les plateformes tierces

    Amazon BedrockVertex AI

    Ingénierie des prompts

    AperçuGénérateur de promptsUtiliser des modèles de promptsAméliorateur de promptsSoyez clair et directUtiliser des exemples (prompting multishot)Laissez Claude réfléchir (CoT)Utiliser les balises XMLDonner un rôle à Claude (invites système)Préremplissez la réponse de ClaudeEnchaîner des prompts complexesConseils contexte longConseils pour la réflexion étendue

    Tester et évaluer

    Définir les critères de réussiteDévelopper des cas de testUtilisation de l'outil d'évaluationRéduction de la latence

    Renforcer les garde-fous

    Réduire les hallucinationsAméliorer la cohérenceAtténuer les jailbreakshandle-streaming-refusalsRéduire la fuite de promptGarder Claude dans son rôle

    Administration et surveillance

    Aperçu de l'API AdminAPI d'utilisation et de coûtAPI Claude Code Analytics
    Console
    Outils

    Outil Bash

    L'outil bash permet à Claude d'exécuter des commandes shell dans une session bash persistante, permettant les opérations système, l'exécution de scripts et l'automatisation en ligne de commande.

    L'outil bash permet à Claude d'exécuter des commandes shell dans une session bash persistante, permettant les opérations système, l'exécution de scripts et l'automatisation en ligne de commande.

    Aperçu

    L'outil bash fournit à Claude :

    • Une session bash persistante qui maintient l'état
    • La capacité d'exécuter n'importe quelle commande shell
    • L'accès aux variables d'environnement et au répertoire de travail
    • Les capacités de chaînage de commandes et de script

    Compatibilité des modèles

    ModèleVersion de l'outil
    Modèles Claude 4 et Sonnet 3.7 (obsolète)bash_20250124

    Les versions d'outils plus anciennes ne sont pas garanties d'être rétro-compatibles avec les modèles plus récents. Utilisez toujours la version de l'outil qui correspond à votre version de modèle.

    Cas d'utilisation

    • Flux de travail de développement : Exécuter des commandes de construction, des tests et des outils de développement
    • Automatisation système : Exécuter des scripts, gérer des fichiers, automatiser des tâches
    • Traitement des données : Traiter des fichiers, exécuter des scripts d'analyse, gérer des ensembles de données
    • Configuration de l'environnement : Installer des packages, configurer des environnements

    Démarrage rapide

    Python
    import anthropic
    
    client = anthropic.Anthropic()
    
    response = client.messages.create(
        model="claude-sonnet-4-5",
        max_tokens=1024,
        tools=[
            {
                "type": "bash_20250124",
                "name": "bash"
            }
        ],
        messages=[
            {"role": "user", "content": "List all Python files in the current directory."}
        ]
    )
    Shell
    curl https://api.anthropic.com/v1/messages \
      -H "content-type: application/json" \
      -H "x-api-key: $ANTHROPIC_API_KEY" \
      -H "anthropic-version: 2023-06-01" \
      -d '{
        "model": "claude-sonnet-4-5",
        "max_tokens": 1024,
        "tools": [
          {
            "type": "bash_20250124",
            "name": "bash"
          }
        ],
        "messages": [
          {
            "role": "user",
            "content": "List all Python files in the current directory."
          }
        ]
      }'

    Fonctionnement

    L'outil bash maintient une session persistante :

    1. Claude détermine quelle commande exécuter
    2. Vous exécutez la commande dans un shell bash
    3. Retournez la sortie (stdout et stderr) à Claude
    4. L'état de la session persiste entre les commandes (variables d'environnement, répertoire de travail)

    Paramètres

    ParamètreRequisDescription
    commandOui*La commande bash à exécuter
    restartNonDéfinir à true pour redémarrer la session bash

    *Requis sauf si vous utilisez restart

    Exemple : Automatisation multi-étapes

    Claude peut chaîner des commandes pour accomplir des tâches complexes :

    # Demande de l'utilisateur
    "Install the requests library and create a simple Python script that fetches a joke from an API, then run it."
    
    # L'outil de Claude utilise :
    # 1. Installer le package
    {"command": "pip install requests"}
    
    # 2. Créer un script
    {"command": "cat > fetch_joke.py << 'EOF'\nimport requests\nresponse = requests.get('https://official-joke-api.appspot.com/random_joke')\njoke = response.json()\nprint(f\"Setup: {joke['setup']}\")\nprint(f\"Punchline: {joke['punchline']}\")\nEOF"}
    
    # 3. Exécuter le script
    {"command": "python fetch_joke.py"}

    La session maintient l'état entre les commandes, donc les fichiers créés à l'étape 2 sont disponibles à l'étape 3.


    Implémenter l'outil bash

    L'outil bash est implémenté comme un outil sans schéma. Lors de l'utilisation de cet outil, vous n'avez pas besoin de fournir un schéma d'entrée comme avec d'autres outils ; le schéma est intégré au modèle de Claude et ne peut pas être modifié.

    1. 1

      Configurer un environnement bash

      Créez une session bash persistante avec laquelle Claude peut interagir :

      import subprocess
      import threading
      import queue
      
      class BashSession:
          def __init__(self):
              self.process = subprocess.Popen(
                  ['/bin/bash'],
                  stdin=subprocess.PIPE,
                  stdout=subprocess.PIPE,
                  stderr=subprocess.PIPE,
                  text=True,
                  bufsize=0
              )
              self.output_queue = queue.Queue()
              self.error_queue = queue.Queue()
              self._start_readers()
    2. 2

      Gérer l'exécution des commandes

      Créez une fonction pour exécuter des commandes et capturer la sortie :

      def execute_command(self, command):
          # Envoyer la commande à bash
          self.process.stdin.write(command + '\n')
          self.process.stdin.flush()
          
          # Capturer la sortie avec délai d'attente
          output = self._read_output(timeout=10)
          return output
    3. 3

      Traiter les appels d'outils de Claude

      Extrayez et exécutez les commandes des réponses de Claude :

      for content in response.content:
          if content.type == "tool_use" and content.name == "bash":
              if content.input.get("restart"):
                  bash_session.restart()
                  result = "Bash session restarted"
              else:
                  command = content.input.get("command")
                  result = bash_session.execute_command(command)
              
              # Retourner le résultat à Claude
              tool_result = {
                  "type": "tool_result",
                  "tool_use_id": content.id,
                  "content": result
              }
    4. 4

      Implémenter des mesures de sécurité

      Ajoutez la validation et les restrictions :

      def validate_command(command):
          # Bloquer les commandes dangereuses
          dangerous_patterns = ['rm -rf /', 'format', ':(){:|:&};:']
          for pattern in dangerous_patterns:
              if pattern in command:
                  return False, f"Command contains dangerous pattern: {pattern}"
          
          # Ajouter plus de validation selon les besoins
          return True, None

    Gérer les erreurs

    Lors de l'implémentation de l'outil bash, gérez divers scénarios d'erreur :

    Suivre les meilleures pratiques d'implémentation

    Sécurité

    L'outil bash fournit un accès direct au système. Implémentez ces mesures de sécurité essentielles :

    • Exécution dans des environnements isolés (Docker/VM)
    • Implémentation du filtrage des commandes et des listes blanches
    • Définition des limites de ressources (CPU, mémoire, disque)
    • Enregistrement de toutes les commandes exécutées

    Recommandations clés

    • Utilisez ulimit pour définir les contraintes de ressources
    • Filtrez les commandes dangereuses (sudo, rm -rf, etc.)
    • Exécutez avec des permissions utilisateur minimales
    • Surveillez et enregistrez toute exécution de commande

    Tarification

    The bash tool adds 245 input tokens to your API calls.

    Additional tokens are consumed by:

    • Command outputs (stdout/stderr)
    • Error messages
    • Large file contents

    Voir tarification de l'utilisation des outils pour les détails complets de la tarification.

    Modèles courants

    Flux de travail de développement

    • Exécuter des tests : pytest && coverage report
    • Construire des projets : npm install && npm run build
    • Opérations Git : git status && git add . && git commit -m "message"

    Opérations sur les fichiers

    • Traiter les données : wc -l *.csv && ls -lh *.csv
    • Rechercher dans les fichiers : find . -name "*.py" | xargs grep "pattern"
    • Créer des sauvegardes : tar -czf backup.tar.gz ./data

    Tâches système

    • Vérifier les ressources : df -h && free -m
    • Gestion des processus : ps aux | grep python
    • Configuration de l'environnement : export PATH=$PATH:/new/path && echo $PATH

    Limitations

    • Pas de commandes interactives : Impossible de gérer vim, less ou les invites de mot de passe
    • Pas d'applications GUI : Ligne de commande uniquement
    • Portée de la session : Persiste dans la conversation, perdue entre les appels API
    • Limites de sortie : Les grandes sorties peuvent être tronquées
    • Pas de streaming : Résultats retournés après la fin

    Combiner avec d'autres outils

    L'outil bash est plus puissant lorsqu'il est combiné avec l'éditeur de texte et d'autres outils.

    Prochaines étapes

    Aperçu de l'utilisation des outils

    En savoir plus sur l'utilisation des outils avec Claude

    Outil d'éditeur de texte

    Afficher et modifier des fichiers texte avec Claude

    • Aperçu
    • Compatibilité des modèles
    • Cas d'utilisation
    • Démarrage rapide
    • Fonctionnement
    • Paramètres
    • Implémenter l'outil bash
    • Gérer les erreurs
    • Suivre les meilleures pratiques d'implémentation
    • Sécurité
    • Recommandations clés
    • Tarification
    • Modèles courants
    • Flux de travail de développement
    • Opérations sur les fichiers
    • Tâches système
    • Limitations
    • Combiner avec d'autres outils
    • Prochaines étapes
    © 2025 ANTHROPIC PBC

    Products

    • Claude
    • Claude Code
    • Max plan
    • Team plan
    • Enterprise plan
    • Download app
    • Pricing
    • Log in

    Features

    • Claude and Slack
    • Claude in Excel

    Models

    • Opus
    • Sonnet
    • Haiku

    Solutions

    • AI agents
    • Code modernization
    • Coding
    • Customer support
    • Education
    • Financial services
    • Government
    • Life sciences

    Claude Developer Platform

    • Overview
    • Developer docs
    • Pricing
    • Amazon Bedrock
    • Google Cloud’s Vertex AI
    • Console login

    Learn

    • Blog
    • Catalog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Company

    • Anthropic
    • Careers
    • Economic Futures
    • Research
    • News
    • Responsible Scaling Policy
    • Security and compliance
    • Transparency

    Help and security

    • Availability
    • Status
    • Support center

    Terms and policies

    • Privacy policy
    • Responsible disclosure policy
    • Terms of service: Commercial
    • Terms of service: Consumer
    • Usage policy

    Products

    • Claude
    • Claude Code
    • Max plan
    • Team plan
    • Enterprise plan
    • Download app
    • Pricing
    • Log in

    Features

    • Claude and Slack
    • Claude in Excel

    Models

    • Opus
    • Sonnet
    • Haiku

    Solutions

    • AI agents
    • Code modernization
    • Coding
    • Customer support
    • Education
    • Financial services
    • Government
    • Life sciences

    Claude Developer Platform

    • Overview
    • Developer docs
    • Pricing
    • Amazon Bedrock
    • Google Cloud’s Vertex AI
    • Console login

    Learn

    • Blog
    • Catalog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Company

    • Anthropic
    • Careers
    • Economic Futures
    • Research
    • News
    • Responsible Scaling Policy
    • Security and compliance
    • Transparency

    Help and security

    • Availability
    • Status
    • Support center

    Terms and policies

    • Privacy policy
    • Responsible disclosure policy
    • Terms of service: Commercial
    • Terms of service: Consumer
    • Usage policy
    © 2025 ANTHROPIC PBC