Herramienta bash
La herramienta bash permite a Claude ejecutar comandos de shell en una sesión bash persistente, permitiendo operaciones del sistema, ejecución de scripts y automatización de línea de comandos.
La herramienta bash permite a Claude ejecutar comandos de shell en una sesión bash persistente, permitiendo operaciones del sistema, ejecución de scripts y automatización de línea de comandos.
Descripción general
La herramienta bash proporciona a Claude:
- Sesión bash persistente que mantiene el estado
- Capacidad de ejecutar cualquier comando de shell
- Acceso a variables de entorno y directorio de trabajo
- Capacidades de encadenamiento de comandos y scripting
Versiones de herramientas
Modelo | Versión de Herramienta |
---|---|
Claude 4 & Sonnet 3.7 | bash_20250124 |
Claude Sonnet 3.5 | bash_20241022 |
Claude Sonnet 3.5 requiere el encabezado beta computer-use-2024-10-22
al usar la herramienta bash.
La herramienta bash está generalmente disponible en Claude 4 y Sonnet 3.7.
Casos de uso
- Flujos de trabajo de desarrollo: Ejecutar comandos de construcción, pruebas y herramientas de desarrollo
- Automatización del sistema: Ejecutar scripts, gestionar archivos, automatizar tareas
- Procesamiento de datos: Procesar archivos, ejecutar scripts de análisis, gestionar conjuntos de datos
- Configuración del entorno: Instalar paquetes, configurar entornos
Inicio rápido
Cómo funciona
La herramienta bash mantiene una sesión persistente:
- Claude determina qué comando ejecutar
- Ejecutas el comando en un shell bash
- Devuelves la salida (stdout y stderr) a Claude
- El estado de la sesión persiste entre comandos (variables de entorno, directorio de trabajo)
Parámetros
Parámetro | Requerido | Descripción |
---|---|---|
command | Sí* | El comando bash a ejecutar |
restart | No | Establecer en true para reiniciar la sesión bash |
*Requerido a menos que se use restart
Ejemplo: Automatización de múltiples pasos
Claude puede encadenar comandos para completar tareas complejas:
La sesión mantiene el estado entre comandos, por lo que los archivos creados en el paso 2 están disponibles en el paso 3.
Implementar la herramienta bash
La herramienta bash se implementa como una herramienta sin esquema. Al usar esta herramienta, no necesitas proporcionar un esquema de entrada como con otras herramientas; el esquema está integrado en el modelo de Claude y no se puede modificar.
Configurar un entorno bash
Crea una sesión bash persistente con la que Claude pueda interactuar:
Manejar la ejecución de comandos
Crea una función para ejecutar comandos y capturar la salida:
Procesar las llamadas de herramientas de Claude
Extraer y ejecutar comandos de las respuestas de Claude:
Implementar medidas de seguridad
Agregar validación y restricciones:
Manejar errores
Al implementar la herramienta bash, maneja varios escenarios de error:
Seguir las mejores prácticas de implementación
Seguridad
La herramienta bash proporciona acceso directo al sistema. Implementa estas medidas de seguridad esenciales:
- Ejecutar en entornos aislados (Docker/VM)
- Implementar filtrado de comandos y listas de permitidos
- Establecer límites de recursos (CPU, memoria, disco)
- Registrar todos los comandos ejecutados
Recomendaciones clave
- Usar
ulimit
para establecer restricciones de recursos - Filtrar comandos peligrosos (
sudo
,rm -rf
, etc.) - Ejecutar con permisos mínimos de usuario
- Monitorear y registrar toda la ejecución de comandos
Precios
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
Ver precios de uso de herramientas para detalles completos de precios.
Patrones comunes
Flujos de trabajo de desarrollo
- Ejecutar pruebas:
pytest && coverage report
- Construir proyectos:
npm install && npm run build
- Operaciones Git:
git status && git add . && git commit -m "mensaje"
Operaciones de archivos
- Procesar datos:
wc -l *.csv && ls -lh *.csv
- Buscar archivos:
find . -name "*.py" | xargs grep "patrón"
- Crear respaldos:
tar -czf backup.tar.gz ./data
Tareas del sistema
- Verificar recursos:
df -h && free -m
- Gestión de procesos:
ps aux | grep python
- Configuración del entorno:
export PATH=$PATH:/new/path && echo $PATH
Limitaciones
- Sin comandos interactivos: No puede manejar
vim
,less
, o solicitudes de contraseña - Sin aplicaciones GUI: Solo línea de comandos
- Alcance de sesión: Persiste dentro de la conversación, se pierde entre llamadas API
- Límites de salida: Las salidas grandes pueden ser truncadas
- Sin streaming: Los resultados se devuelven después de completarse
Combinar con otras herramientas
La herramienta bash es más poderosa cuando se combina con el editor de texto y otras herramientas.