En muy poco tiempo, la inteligencia artificial ha pasado de sugerir la siguiente línea de código a completar tareas enteras: leer un proyecto, planificar un cambio, editar varios ficheros, ejecutar las pruebas y corregir lo que falla. Esa es la diferencia entre un asistente y un agente de código. Explicamos qué es, cómo funciona, qué hace bien, dónde falla y cómo se trabaja con él en un equipo profesional.
Del autocompletado al agente
La evolución ha tenido tres etapas:
- Autocompletado: el editor sugiere la línea o la función que estás escribiendo.
- Asistente conversacional: le pides algo en un chat y te devuelve código para copiar y pegar.
- Agente: le das un objetivo y actúa por su cuenta sobre tu proyecto. Lee ficheros, busca en el código, propone un plan, edita, ejecuta comandos y pruebas, observa el resultado y vuelve a intentarlo.
La diferencia clave es que el agente trabaja en un bucle y usa herramientas. No solo genera texto: actúa en tu entorno.
Cómo funciona por dentro
Un agente de código combina tres piezas:
- Un modelo de lenguaje que razona y decide el siguiente paso.
- Un conjunto de herramientas: leer y escribir ficheros, buscar en el proyecto, ejecutar comandos en la terminal, consultar documentación.
- Un contexto: la tarea, las instrucciones del proyecto, los ficheros relevantes y el historial de lo que ha hecho.
En cada vuelta del bucle, el modelo decide qué herramienta usar, ve el resultado y decide qué hacer después, hasta que considera la tarea terminada o necesita tu confirmación.
Qué hace bien hoy
- Implementar una funcionalidad a partir de una especificación clara.
- Escribir pruebas y corregir el código hasta que pasen.
- Refactorizar, renombrar y reorganizar en varios ficheros a la vez.
- Documentar un proyecto existente y explicar código que no conoces.
- Migrar código entre versiones de una librería o entre lenguajes.
- Reproducir y corregir errores cuando le das una forma de comprobarlos.
Dónde falla
- Inventa funciones o parámetros que no existen, sobre todo en librerías poco conocidas.
- Hace cambios demasiado amplios cuando la tarea es ambigua.
- Pierde el hilo en proyectos grandes si no tiene buen contexto.
- Puede ejecutar comandos peligrosos si no tiene límites, y es vulnerable a instrucciones maliciosas escondidas en ficheros o páginas web.
- Suena seguro aunque se equivoque.
Cómo trabajar bien con un agente
Planificar antes de tocar código
Pídele primero un plan y revísalo. Muchas herramientas tienen un modo de planificación en el que el agente analiza y propone sin editar nada. Corregir un plan cuesta segundos; deshacer cien líneas mal enfocadas, bastante más.
Especificar: spec driven development
Escribe una especificación funcional y técnica antes de pedir el código: qué debe hacer, qué no, qué casos límite hay y cómo se comprobará. La especificación ancla el contexto del agente y se convierte en documentación del proyecto.
Dar contexto al proyecto
Un fichero de instrucciones con la estructura del proyecto, las convenciones, cómo se ejecutan las pruebas y qué no se debe tocar mejora mucho los resultados. El propio agente puede ayudarte a generarlo.
Conectarlo a tus herramientas con MCP
El Model Context Protocol (MCP) es un protocolo abierto para conectar agentes con herramientas y fuentes de datos externas: bases de datos, APIs, sistemas de incidencias o de documentación. Con MCP, el agente puede consultar el esquema real de la base de datos en lugar de suponerlo.
Controlar permisos y cambios
Decide qué acciones puede hacer sin preguntarte y cuáles requieren tu aprobación. Trabaja siempre en una rama de Git, haz commits pequeños y usa las opciones de deshacer de la herramienta.
Revisar como revisarías a un compañero
Lee el código antes de aceptarlo. Comprueba que las pruebas prueban algo, que no se han tocado ficheros que no tocaban y que las dependencias nuevas existen y son necesarias.
Herramientas
Hay agentes comerciales integrados en editores y terminales, y alternativas de código abierto como OpenCode, que permite elegir el proveedor del modelo y está orientada a la privacidad. Las ideas de este artículo valen para todos: cambian los atajos, no el método.
Qué significa para quien programa
El perfil que se está imponiendo es el del ingeniero aumentado: delega lo repetitivo, supervisa lo importante y mantiene el control de las decisiones de arquitectura, la seguridad y la calidad. Saber programar sigue siendo imprescindible. Lo nuevo es saber dirigir a un agente.