Programación con IA
Del vibe coding a programar con IA en serio
Pedirle a un agente «hazme una app» y aceptar lo que salga es *vibe coding*: genial para probar una idea y peligroso para algo que tiene que durar. Esta guía es el puente entre las dos cosas.
Qué cambia y qué no
Cambia: escribir código es casi gratis y rápido; puedes probar tres enfoques en lo que antes costaba uno. No cambia: alguien tiene que decidir qué se construye, comprobar que funciona, mantenerlo y responder si falla. Ese alguien eres tú.
El flujo profesional en seis pasos
- Contexto: el agente lee tu
AGENTS.mdoCLAUDE.md(comandos, convenciones y trampas). - Plan antes de código: pídele un plan con los ficheros que tocará y cómo lo probará; revísalo.
- Pruebas primero: que escriba la prueba que demuestra el requisito y vea que falla.
- Cambio pequeño: que implemente lo justo para que pase.
- Revisión: lee el diff, no solo el resultado. Pide una revisión crítica.
- Cierre: pruebas en verde, documentación al día y un commit con un mensaje claro.
Plan antes de código
Quiero [cambio]. Lee primero [ficheros o carpetas] y AGENTS.md. Propón un plan: ficheros que tocarás, qué cambia en cada uno, riesgos y cómo lo probarás. No escribas código hasta que te diga «adelante».Revisión adversarial
Revisa el último cambio como un revisor senior desconfiado: errores de lógica, casos límite sin probar, problemas de seguridad (entradas, secretos, permisos), rendimiento y legibilidad. Lista los hallazgos de más a menos grave, con el fichero y la línea. No los arregles todavía.Las trampas habituales
- La prueba «arreglada» quitándola: si el agente cambia una prueba para que pase, para y pregunta por qué.
- Dependencias inventadas: comprueba que cada paquete nuevo existe y es el que crees (hay paquetes maliciosos con nombres parecidos).
- Secretos en el código: nunca claves ni contraseñas en el repositorio; usa variables de entorno.
- Cambios gigantes: si el diff no se puede revisar en 10 minutos, es demasiado grande.
- Arreglar el síntoma: pide la causa raíz antes que el parche.
Seguridad básica con agentes
- Trabaja en una rama o en una copia del repositorio.
- Configura los permisos: que pida confirmación antes de borrar, desplegar o ejecutar comandos con red.
- No le des acceso a producción ni a datos reales de clientes.
- Revisa los servidores MCP y las herramientas que instalas.
Permisos de ejemplo para Claude Code (.claude/settings.json)
{
"permissions": {
"allow": ["Bash(npm test:*)", "Bash(npm run lint:*)", "Bash(git status)", "Bash(git diff:*)"],
"deny": ["Bash(rm -rf:*)", "Bash(git push:*)", "Read(./.env)", "Read(./secrets/**)"]
}
}Cuándo sí vale el vibe coding
Para prototipos, scripts personales, demos y para aprender cómo podría hacerse algo. La regla: si mañana alguien depende de ello, pásalo por el flujo profesional antes.
Cómo seguir
Fuentes
- Claude Code: buenas prácticas y documentación (se abre en otra pestaña)
- Claude Code: ajustes y permisos (se abre en otra pestaña)
- OWASP: Top 10 para aplicaciones con LLM (se abre en otra pestaña)
Siguiente guía: Casos de uso por oficio, con su prompt