Programación agente, explicada: desde autocompletado hasta agentes autónomos
Qué es realmente la programación agente, cómo difiere del autocompletado estilo Copilot, y los seis estados mentales (Trabajo, Plan, Chat, Enseñanza, Seguridad, Lluvia de ideas) detrás de Ava Supernova.
Hace cuatro años, la 'programación con IA' significaba autocompletado: un modelo adivinaba la siguiente línea de código basada en el contexto del cursor. Ahora significa algo mucho más grande. Las herramientas de programación agente planean cambios multarchivo, ejecutan pruebas, leen logs, llaman a APIs, escriben PRs, y deciden cuándo detenerse y preguntarte algo. La brecha entre las dos categorías es mayor de lo que la mayoría de los desarrolladores se dan cuenta.
Autocompletado vs agente: la versión corta
El autocompletado es reactivo. Espera a tu cursor, predice y se detiene. Un agente es proactivo. Le das un objetivo ('refactoriza este módulo para usar el nuevo patrón de autenticación, ejecuta las pruebas, abre un PR'), y lo descompone en pasos, ejecuta cada uno, verifica su propio trabajo y reporta de vuelta. Los mismos modelos subyacentes pueden hacer cualquiera de los dos — la diferencia está en cómo la herramienta los envuelve.
Lo que hace que una herramienta sea 'agente' es un ciclo: planear, actuar, observar, decidir. En cada turno el agente elige una herramienta (leer un archivo, escribir un archivo, ejecutar una prueba, buscar en la web, preguntarte), la ejecuta, mira el resultado y decide qué hacer a continuación. 60 llamadas de herramientas para cerrar un ticket es normal.
Por qué un modelo no sirve para todas las solicitudes
Un buen agente no trata cada solicitud como el mismo tipo de problema. 'Corrige este error tipográfico' no tiene la misma forma que 'audita la capa de autenticación por fugas de token.' Quieren diferentes modelos, diferentes herramientas y diferentes cantidades de precaución.
Ava Supernova maneja esto con siete modos — estados de pensamiento, no capas de UI. Cada modo tiene una mentalidad diferente, una paleta de herramientas diferente y, en muchos casos, diferentes personalidades especializadas corriendo debajo.
- Trabajo — mentalidad de constructor, la paleta completa de herramientas de más de 120, escribe código y lo lanza.
- Plan — mentalidad de arquitecto, solo lectura, piensa antes de tocar nada.
- Chat — mentalidad de amigo, para el lado no técnico de tu cerebro (memoria, diario, clima, noticias).
- Enseñar — mentalidad de tutor, cinco especialistas que elaboran un plan de estudios, redactan contenido, verifican datos, realizan tests y orientan.
- Seguridad — mentalidad de auditor, reconocimiento + escáner + investigador de CVE + verificador + reportero.
- Lluvia de ideas — mentalidad de ideación, cinco especialistas que exploran, investigan, generan ideas, las cuestionan y refinan.
Qué significa "memoria" para un agente
Las herramientas de autocompletado son sin estado — cada solicitud empieza desde cero. Los agentes necesitan memoria para realizar trabajo real durante semanas y meses. Sin ella, tienes que volver a explicar el proyecto en cada sesión. Ava utiliza una memoria de 5 capas (extraer, reflexionar, acumular, analizar, consolidar) que construye lo relevante sobre ti, tus proyectos, tus preferencias y la retroalimentación que has proporcionado.
Cómo empezar a pensar con mentalidad de agente
Si has estado usando autocompletado y quieres avanzar hacia un trabajo con mentalidad de agente, el cambio es menos sobre ingeniería de prompts y más sobre el encuadre de tareas. En lugar de "escribe una función que haga X", prueba: "aquí hay un objetivo y las restricciones, decide cómo llegar allí y avísame si te topas con un obstáculo." Los buenos agentes convierten eso en un plan, revelan el obstáculo antes de que desperdicie una hora de cómputo, y ganan tu confianza con el tiempo.
La fricción de ganar confianza progresivamente a medida que el agente acumula memoria. Al principio verificará más; a medida que recibes su retroalimentación, pregunta menos. Las acciones críticas nunca se automatizan por completo — el agente siempre hace una pausa antes de movimientos destructivos.
Programar con agentes no es un autocompletado más grande. Es una relación diferente con tus herramientas — más cercana a un compañero de equipo que a una macro de teclado. Las herramientas que entiendan esto primero remodelarán la forma en que se construye el software.