5.1 Introducción
Las herramientas de Vibe Coding no se distinguen únicamente por el modelo de inteligencia artificial que utilizan. También importa dónde se ejecutan y cómo se conectan con nuestro trabajo.
Un chat aislado conoce lo que escribimos o adjuntamos. Una extensión del IDE puede observar archivos del proyecto. Un agente de terminal puede ejecutar comandos. Una plataforma en el navegador puede ofrecer un entorno completo para construir, previsualizar y publicar.
5.2 Modelo, herramienta e interfaz
Antes de comparar las opciones conviene separar tres conceptos:
- Modelo: sistema que interpreta la entrada y genera una respuesta.
- Herramienta: aplicación que conecta el modelo con archivos, comandos u otros servicios.
- Interfaz: espacio desde el que la persona conversa, revisa y autoriza acciones.
Un mismo modelo puede aparecer en varias herramientas, y una herramienta puede permitir elegir entre distintos modelos. Por eso dos productos con un modelo similar pueden comportarse de forma diferente.
5.3 Herramientas basadas en chat
El chat es la forma más directa de comenzar. La persona escribe una pregunta o instrucción y recibe texto, explicaciones o bloques de código.
Resulta especialmente útil para:
- Aprender un concepto o comparar alternativas.
- Solicitar ejemplos pequeños y aislados.
- Explicar un mensaje de error.
- Preparar pseudocódigo o un plan inicial.
- Revisar un fragmento que pegamos manualmente.
Su principal limitación es el contexto. Si el chat no tiene acceso al proyecto, debemos seleccionar y proporcionar toda la información relevante.
5.4 Flujo típico en un chat
- Describimos el problema.
- Pegamos el código o el error relacionado.
- La IA propone una explicación o solución.
- Copiamos la respuesta al proyecto.
- Ejecutamos y comprobamos el resultado.
- Volvemos al chat con nueva información si es necesario.
Este flujo ofrece control manual, pero copiar fragmentos puede introducir errores, omitir dependencias o desactualizar el contexto de la conversación.
5.5 Herramientas integradas en el IDE
Un IDE o editor de código reúne archivos, búsqueda, terminal, depurador y control de versiones. Cuando la IA está integrada en ese entorno, puede trabajar cerca del código real.
Según la herramienta y los permisos, puede:
- Completar código mientras escribimos.
- Explicar una selección o un archivo.
- Buscar definiciones y referencias dentro del proyecto.
- Proponer cambios en uno o varios archivos.
- Mostrar diferencias antes de aplicarlas.
- Utilizar diagnósticos del editor como contexto.
La integración reduce el trabajo de copiar y pegar, pero requiere revisar cuidadosamente qué archivos fueron incluidos y cuáles fueron modificados.
5.6 Ventajas y límites del IDE
| Ventajas | Limitaciones |
|---|---|
| Acceso al código y su estructura. | Puede seleccionar contexto incompleto o irrelevante. |
| Edición directa sin copiar manualmente. | Un cambio puede alcanzar más archivos de los esperados. |
| Revisión visual de diferencias. | Aceptar todo rápidamente reduce el control. |
| Integración con errores y pruebas. | No todos los diagnósticos revelan problemas funcionales. |
5.7 Herramientas basadas en terminal
La terminal permite interactuar con el sistema mediante comandos. Un agente integrado allí puede combinar la conversación con operaciones reales sobre el proyecto.
Puede utilizar herramientas existentes para:
- Buscar texto, archivos y dependencias.
- Crear o modificar código.
- Instalar paquetes cuando recibe autorización.
- Ejecutar la aplicación, pruebas y analizadores.
- Consultar el estado del repositorio y sus diferencias.
- Automatizar tareas repetitivas.
La terminal es potente porque concentra muchas capacidades del sistema. Esa misma potencia obliga a limitar permisos y revisar las acciones destructivas o difíciles de revertir.
5.8 Riesgos particulares de la terminal
| Acción | Riesgo | Control |
|---|---|---|
| Eliminar o mover archivos | Pérdida de trabajo o modificación fuera del proyecto. | Confirmar rutas exactas y usar control de versiones. |
| Instalar dependencias | Cambios incompatibles o paquetes innecesarios. | Revisar el paquete, la versión y el archivo de bloqueo. |
| Ejecutar scripts | Acciones no comprendidas sobre el sistema o los datos. | Inspeccionar el comando y trabajar en un entorno limitado. |
| Usar credenciales | Exposición de secretos o acceso indebido. | No incluir secretos en instrucciones ni archivos públicos. |
5.9 Herramientas basadas en navegador
Las herramientas basadas en navegador ofrecen una experiencia accesible sin configurar inicialmente un entorno local. Algunas proporcionan chat, editor, vista previa, almacenamiento temporal y publicación desde una misma página.
Pueden utilizarse para:
- Crear prototipos a partir de una descripción.
- Generar interfaces y observarlas inmediatamente.
- Editar archivos dentro de un entorno remoto.
- Compartir una demostración mediante un enlace.
- Conectar repositorios o servicios externos.
Son adecuadas para comenzar rápido, pero debemos conocer dónde se almacenan el código y los datos, qué límites tiene el entorno y qué ocurre si dejamos de utilizar el servicio.
5.10 Navegador como herramienta de prueba
El navegador no solo puede alojar el entorno de creación. También es el lugar donde verificamos una aplicación web.
Un agente con control del navegador podría:
- Abrir una página y recorrer su interfaz.
- Completar formularios y activar botones.
- Observar mensajes, estados y cambios visuales.
- Inspeccionar errores de consola o solicitudes de red.
- Tomar capturas para comparar resultados.
Estas acciones ayudan a comprobar el comportamiento visible, aunque no reemplazan la revisión del código ni las pruebas de seguridad.
5.11 Comparación de las cuatro superficies
| Superficie | Contexto habitual | Fortaleza principal | Atención especial |
|---|---|---|---|
| Chat | Conversación y archivos adjuntos. | Explicación y exploración de ideas. | Contexto manual y desactualización. |
| IDE | Código, selecciones y estructura del proyecto. | Edición integrada y revisión de diferencias. | Alcance real de los cambios. |
| Terminal | Archivos, comandos y resultados de ejecución. | Automatización y verificación técnica. | Permisos y acciones destructivas. |
| Navegador | Página, interfaz y entorno remoto. | Prototipado y prueba visual. | Privacidad, portabilidad y límites del servicio. |
5.12 Cómo elegir una herramienta
La elección debe partir de la tarea, no de la popularidad del producto.
| Necesidad | Superficie inicial recomendada |
|---|---|
| Comprender un concepto o error aislado | Chat |
| Modificar código mientras lo revisamos | IDE |
| Ejecutar pruebas y automatizar cambios | Terminal |
| Crear y compartir un prototipo rápidamente | Navegador |
| Verificar una interfaz web terminada | Navegador combinado con IDE o terminal |
La recomendación es un punto de partida. Las herramientas modernas suelen combinar varias superficies.
5.13 Un flujo combinado
Para agregar un formulario de contacto podríamos utilizar las cuatro superficies de forma coordinada:
- Chat: aclarar qué campos y validaciones necesita el formulario.
- IDE: pedir que se incorporen los componentes respetando el diseño existente.
- Terminal: ejecutar pruebas y comprobar que el proyecto compile.
- Navegador: completar el formulario, provocar errores y revisar su adaptación a celulares.
- IDE nuevamente: inspeccionar y corregir los problemas encontrados.
El proceso no pertenece a una sola herramienta. Cada superficie aporta información diferente.
5.14 Contexto y privacidad
Antes de entregar información a una herramienta debemos conocer qué datos necesita y cuáles no debe recibir.
- No pegar contraseñas, claves de API ni credenciales.
- No incluir datos personales o empresariales sin autorización.
- Revisar qué carpetas puede leer una integración.
- Separar ejemplos ficticios de datos de producción.
- Conocer las políticas de conservación y uso de la información.
- Retirar archivos irrelevantes del contexto.
5.15 Criterios para comparar productos
Al evaluar herramientas concretas conviene observar:
- Qué modelos permite utilizar.
- Cuánto contexto puede obtener del proyecto.
- Cómo muestra y permite revertir los cambios.
- Qué acciones requieren confirmación.
- Si funciona localmente, en la nube o de ambas formas.
- Cómo administra permisos, datos y credenciales.
- Qué límites de uso, costos y dependencias introduce.
- Si permite exportar el código y continuar fuera del servicio.
Una herramienta rápida pero opaca puede ser menos conveniente que otra que facilite la revisión y el control.
5.16 Actividad de comprensión
Elegí una superficie principal y una complementaria para cada situación:
- Comprender un algoritmo sin modificar el proyecto.
- Renombrar una función utilizada en muchos archivos y ejecutar pruebas.
- Crear una demostración visual para compartir con un cliente.
- Investigar por qué un botón no envía una solicitud al servidor.
- Revisar un cambio sin permitir que la IA edite archivos.
Una posible respuesta sería: chat para 1; IDE y terminal para 2; navegador para 3; navegador junto con IDE para 4; y chat con fragmentos seleccionados para 5. Otras combinaciones pueden ser válidas si se justifican por el contexto y el nivel de control requerido.