Nota importante: los ID de herramienta actualizados para la herramienta de editor de texto se pueden encontrar en la documentación de AWS aquí: https://docs.aws.amazon.com/bedrock/latest/userguide/model-parameters-anthropic-claude-messages-tool-use.html#model-parameters-anthropic-anthropic-defined-tools(se abre en una pestaña nueva)
La herramienta de editor de texto es una capacidad integrada de Claude que le otorga acceso al sistema de archivos y capacidades de edición de texto. A diferencia de otras herramientas donde tú escribes tanto el esquema como la implementación, Claude ya sabe cómo solicitar operaciones de editor de texto; solo necesitas manejar esas solicitudes.
Qué hace la herramienta de editor de texto
Esta herramienta le da a Claude la capacidad de trabajar con archivos y directorios como lo haría un ingeniero de software:
- Ver el contenido de un archivo o directorio
- Ver rangos específicos de líneas en un archivo
- Reemplazar texto en archivos
- Crear archivos nuevos
- Insertar texto en números de línea específicos
Cómo funciona
La herramienta de editor de texto es diferente de las herramientas personalizadas porque solo el esquema JSON está integrado en Claude. Aun así, tú debes proporcionar la implementación real.

Cuando creas herramientas personalizadas, escribes ambos lados: el esquema que le indica a Claude sobre la herramienta, y la función que realmente hace el trabajo. Con la herramienta de editor de texto, Claude ya tiene el esquema, pero tú debes escribir las funciones para manejar las solicitudes de Claude de ver, editar o crear archivos.
Configuración de la herramienta
Para usar la herramienta de editor de texto, necesitas proporcionar la versión de herramienta que coincida con tu modelo:
# Para Claude 4 y modelos posteriores
text_editor = "text_editor_20250728"
# Para modelos Claude anteriores
text_editor = "text_editor_20250124"El resto de esta lección usa la versión de Claude 4 y posteriores; con text_editor_20250124 el nombre de la herramienta es str_replace_editor en su lugar, y también existe un comando undo_edit.
También necesitarás modificar tu función de chat para aceptar el parámetro de editor de texto e incluirlo en la configuración del modelo.
Comandos de la herramienta
Cuando Claude quiere usar el editor de texto, envía de vuelta solicitudes de uso de herramientas con comandos específicos:

Tu implementación necesita manejar los cuatro comandos: view, str_replace, create e insert. Aquí está la estructura básica para procesar estas solicitudes:
def run_tool(tool_name, tool_input):
if tool_name == "str_replace_based_edit_tool":
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)
# ... maneja otros comandosEjemplo: análisis de archivos
Así es como funciona la herramienta en la práctica. Cuando le pides a Claude que "escriba una descripción de una oración del código en el archivo ./main.py", sucede lo siguiente:

Claude envía una solicitud de uso de herramientas con {"command": "view", "path": "./main.py"}. Tu servidor usa la clase TextEditorTool para leer el archivo y devuelve el contenido. Claude luego proporciona su análisis basado en el código que leyó.
Aplicaciones prácticas
La herramienta de editor de texto esencialmente convierte a Claude en un asistente de código que puede:
- Leer código existente y proporcionar análisis
- Crear archivos y funciones nuevas
- Modificar código existente
- Configurar archivos de prueba
- Refactorizar código en múltiples archivos
Por ejemplo, podrías pedirle a Claude que "escriba una función para calcular pi hasta el quinto dígito en main.py, y luego cree un archivo test.py para probarla". Claude leerá el archivo existente, agregará la nueva función, creará el archivo de prueba y escribirá pruebas exhaustivas, todo automáticamente usando los comandos del editor de texto.
Esto hace posible construir herramientas de desarrollo impulsadas por IA similares a los editores de código modernos con funciones de IA integradas, donde puedes solicitar cambios de código y hacer que se implementen directamente en tu sistema de archivos.