Aller au contenu principal

L'outil Text Editor

Le Text Editor Tool est une capacite integree de Claude qui lui donne acces au systeme de fichiers et des capacites d’edition de texte. Contrairement aux autres outils ou vous ecrivez le schema et l’implementation, Claude sait deja comment demander des operations d’edition de texte — vous n’avez qu’a gerer ces demandes.

Ce que fait le Text Editor Tool

Cet outil permet a Claude de travailler avec les fichiers comme un developpeur :

  • Voir le contenu de fichiers ou de repertoires
  • Voir des plages de lignes specifiques
  • Remplacer du texte dans des fichiers
  • Creer de nouveaux fichiers
  • Inserer du texte a des numeros de ligne specifiques
  • Annuler des modifications recentes

Fonctionnement

La difference avec les outils personnalises : seul le schema JSON est integre a Claude. Vous devez quand meme fournir l’implementation reelle. Claude sait demander des operations d’edition, mais vous devez ecrire les fonctions qui les executent.

Configuration

Les noms d’outils varient selon la version de Claude :

# Pour Claude 3.7
text_editor = "text_editor_20250124"

# Pour Claude 3.5
text_editor = "text_editor_20241022"

Consultez la documentation AWS pour les identifiants a jour : documentation Bedrock

Gerer les commandes

Quand Claude veut utiliser le text editor, il envoie des demandes avec des commandes specifiques :

def run_tool(tool_name, tool_input):
    if tool_name == "str_replace_editor":
        command = tool_input.get("command", "")
        if command == "view":
            path = tool_input.get("path", "")
            return text_editor_tool.view(path)
        elif command == "str_replace":
            path = tool_input.get("path", "")
            old_str = tool_input.get("old_str", "")
            new_str = tool_input.get("new_str", "")
            return text_editor_tool.str_replace(path, old_str, new_str)
        # ... gerer les autres commandes

Applications pratiques

Le Text Editor Tool transforme essentiellement Claude en assistant de code capable de :

  • Lire du code existant et fournir une analyse
  • Creer de nouveaux fichiers et fonctions
  • Modifier du code existant
  • Configurer des fichiers de test
  • Refactoriser du code a travers plusieurs fichiers

Par exemple, vous pourriez demander a Claude “Ecrivez une fonction pour calculer pi a 5 decimales dans main.py, puis creez un fichier test.py pour la tester.” Claude lira le fichier existant, ajoutera la nouvelle fonction, creera le fichier de test et ecrira des tests complets — le tout automatiquement via les commandes du text editor.

Cela rend possible la construction d’outils de developpement assistes par IA, similaires aux editeurs de code modernes avec des fonctionnalites IA integrees.