Integración con Bash
Combina inteligencia de IA con el poder del shell. Ejecuta comandos, procesa outputs y automatiza flujos de trabajo.
Contenido de Curso Premium
Esta lección es parte de un curso premium. Mejora a Pro para desbloquear todos los cursos premium y su contenido.
- Acceso a todos los cursos premium
- Más de 1000 plantillas de skills de IA incluidas
- Contenido nuevo cada semana
Poder del Shell + Inteligencia de IA
🔄 Repaso rápido: En la lección anterior, exploramos operaciones de archivos de forma segura con git como red de seguridad. Ahora vamos a dar otro paso: dejar que Claude ejecute comandos de shell para crear automatización inteligente.
Los comandos de shell son poderosos pero tontos. Hacen exactamente lo que les dices, nada más.
Claude es inteligente pero no puede afectar tu sistema directamente.
¿Juntos? Obtienes automatización inteligente. Claude ejecuta comandos, interpreta outputs y decide los siguientes pasos.
Ejecución Básica de Comandos
Pídele a Claude que ejecute comandos:
> Corre los tests y muéstrame el output
Claude ejecuta npm test (o el comando de tests de tu proyecto) y muestra los resultados.
> Checa si el puerto 3000 está en uso
Claude ejecuta lsof -i :3000 e interpreta lo que encuentra.
> ¿Qué está usando más espacio en disco en este proyecto?
Claude ejecuta du -sh * y resume.
El Patrón Ejecutar-e-Interpretar
Aquí es donde la integración con Bash brilla.
> Corre los tests. Si alguno falla, analiza por qué y arréglalo.
Claude:
- Ejecuta tests
- Ve los fallos
- Analiza los mensajes de error
- Identifica el problema
- Arregla el código
- Corre tests otra vez
- Confirma que pasan
Lo que te tomaría varios ciclos manuales sucede automáticamente.
Flujos de Trabajo Prácticos con Bash
Flujo de Debugging
> El servidor no arranca. Diagnostica y arregla.
Claude podría:
- Checar si el puerto está en uso
- Ver cambios recientes
- Buscar dependencias faltantes
- Revisar logs de error
- Encontrar y arreglar el problema
Manejo de Dependencias
> Checa las dependencias desactualizadas y dime cuáles son seguras de actualizar.
Claude ejecuta npm outdated, investiga breaking changes y da recomendaciones.
Operaciones de Git
> Muéstrame qué cambió desde ayer
Claude ejecuta los comandos apropiados de git log y diff.
> Crea una rama de feature, haz este cambio y hazle commit
Claude maneja el flujo completo de git.
Verificaciones de Entorno
> Verifica que el entorno de desarrollo esté configurado correctamente
> para este proyecto.
Claude checa versión de Node, dependencias, variables de entorno, conexiones a base de datos, etc.
Categorías de Comandos
Seguros para Ejecutar Libremente
- Comandos de solo lectura:
ls,cat,git status,git log - Comandos de tests:
npm test,pytest - Comandos de build:
npm run build - Linting:
eslint,prettier --check
Revisar Antes de Ejecutar
- Operaciones de escritura de git:
git commit,git push - Instalación de paquetes:
npm install,pip install - Modificaciones de archivos vía shell:
mv,cp - Reinicios de servicios:
pm2 restart
Tener Cuidado Con
- Comandos destructivos:
rm, especialmente con-rf - Cambios a nivel de sistema:
sudocualquier cosa - Operaciones de red:
curla URLs desconocidas - Instalaciones globales:
npm install -g
✅ Revisión Rápida: Si Claude te sugiere ejecutar
rm -rf node_modules && npm install, ¿por qué deberías revisarlo antes de aceptar? ¿Qué podría salir mal?
Claude normalmente pide confirmación en operaciones riesgosas. Pon atención.
Construyendo Flujos de Trabajo Automatizados
Bug Fix con TDD
> Hay un bug donde los usuarios no pueden hacer login con emails
> que contienen '+'. Escribe un test que falle, luego arregla el bug,
> luego corre tests para confirmar.
Claude:
- Escribe test que demuestra el bug
- Corre test (falla como se espera)
- Arregla el código
- Corre tests (todos pasan)
Flujo de Migración
> Crea una migración de base de datos para agregar la columna
> 'phone_number' a users. Corre la migración y verifica que funcionó.
Claude:
- Crea archivo de migración
- Ejecuta el comando de migración
- Checa el schema de la base de datos
- Confirma éxito
Preparación para Deploy
> Corre todas las verificaciones necesarias antes del deploy:
> - Tests
> - Linting
> - Type checking
> - Build
> Reporta cualquier problema.
Claude ejecuta todo y te da un resumen de aprobado/no aprobado.
Manejo de Errores
Cuando los comandos fallan, Claude ve el output de error.
> Corre los tests
# Los tests fallan con output de error
Claude: "Los tests fallaron. Viendo los errores...
El problema está en login.test.js línea 45. El mock no está devolviendo
la forma esperada. ¿Lo arreglo?"
Claude interpreta errores y sugiere arreglos. Este es el poder del feedback loop.
Procesamiento de Output
Claude puede procesar output de comandos:
> Corre git log --oneline para los últimos 20 commits.
> Resume qué features y fixes se shippearon.
> Corre npm audit.
> Categoriza las vulnerabilidades por severidad y dime cuáles
> necesitan atención inmediata.
> Corre el benchmark de performance.
> Compara con el baseline y señala cualquier regresión.
Prácticas de Seguridad
1. Revisa comandos destructivos
Cuando Claude propone algo destructivo, lee antes de confirmar.
2. Usa dry-run cuando esté disponible
> Usa rm --dry-run primero para mostrar qué se borraría
3. Haz sandbox de experimentos riesgosos
> Crea un archivo de prueba en el scratchpad para probar este enfoque
> No modifiques el código fuente real todavía
4. Revisa antes de pushear
> Muéstrame qué commits se van a pushear a origin/main
Revisa antes de cualquier operación remota.
Conclusiones Clave
- La integración con Bash crea feedback loops inteligentes
- Claude puede ejecutar comandos, interpretar outputs y adaptarse
- Usa el patrón “ejecutar e interpretar” para troubleshooting automatizado
- Conoce qué categorías de comandos necesitan revisión extra
- Deja que Claude maneje procesos repetitivos de múltiples pasos
- Siempre revisa operaciones destructivas antes de confirmar
Lo que sigue: flujos de trabajo avanzados que combinan todo lo que hemos aprendido.
Siguiente: En la próxima lección, nos sumergiremos en los Flujos de Trabajo Avanzados.
Comprobación de Conocimientos
Primero completa el quiz de arriba
¡Lección completada!