Integrando AI al desarrollo
Una guia practica basada en una presentacion y paper academico para usar IA en desarrollo sin comerse ruido, alucinaciones ni context overflow.
Integrando IA al desarrollo, pero con criterio
La IA te acelera mucho en analisis, prototipado y documentacion. Permite cambiar el foco cognitivo, podes pasar muchisimo menos tiempo escribiendo codigo y tenemos mas tiempo para pensar en que caminos elegir a la hora de implementar una nueva solucion. El problema arranca cuando usamos el chat como basurero universal: metemos todo junto, mezclamos objetivos y despues nos sorprendemos cuando la salida cae o no corresponde con la solucion que queriamos.
La IA no reemplaza pensamiento tecnico, es una herramienta que debe ayudarnos a potenciarlo. Si no hay claridad de objetivo el modelo rellena huecos con su promedio estadistico y eso casi siempre deriva en ruido, sobreingenieria o soluciones que no se ajustan a lo que realmente necesitamos.
- Agilidad operativa: iteraciones cortas y pruebas de concepto rapidas.
- Cambio de foco: menos boilerplate, mas arquitectura y decisiones.
- Calidad tecnica: mejor documentacion y exploracion de alternativas.
Que es el contexto y como lo procesan los LLMs
Contexto es todo lo que entra al modelo en cada llamada: instrucciones de sistema, historial, mensajes del usuario, herramientas y resultados previos.
Es clave entender que, el modelo no "memoriza" nada, no tiene memoria persistente entre turnos como la entendemos los humanos, sino que en cada iteracion se le envia el contexto completo de la conversacion.
Cada iteracion es una request nueva. El sistema vuelve a enviar el paquete completo de contexto, por eso el payload crece en cada turno: mas tokens, mas costo y mas chance de ruido.
Si no gestionas esa carga, el modelo no "recuerda mejor" por conversar mas tiempo: solo recibe mas texto acumulado. O sea, no es memoria real, es relectura continua del historial con riesgo de truncacion y perdida de foco o informacion clave.
- Turno nuevo = request nueva al LLM.
- Se reenvia el historial (usuario + asistente + tool calls relevantes).
- Cuando la ventana de contexto se acerca al limite, se recorta o resume informacion.
- Mas turnos no implican mas memoria estable: muchas veces implican mas ruido.
Contexto finito y ruido
En chats largos aparecen tres efectos: overflow de ventana, anclaje a errores previos y verbosidad acumulada. Esto no solo baja precision: tambien vuelve inestable la calidad entre corridas.
Otro concepto clave a entender es que, aunque no alcancemos el limite de tokens de entrada del modelo, el mismo empeora drasticamente su funcionamiento mucho antes de llegar, por la acumulacion de ruido.
Si el modelo asumio algo mal temprano y seguimos corrigiendo dentro del mismo hilo, muchas veces queda sesgado por ese estado sucio y cuesta remontarlo. Esto aplica con una mayor intensidad en los casos donde el modelo ya dio una salida como solucion, mas que nada en codigo. Lo que suele ocurrir es que basicamnete si la salida inicial no es la esperada, en vez de crearla de nuevo, tiende a corregirla en vez de generarla nuevamente.
- Mucho historial irrelevante = menor foco en la tarea actual.
- Correcciones en cadena = mayor probabilidad de contradicciones.
- La salida puede parecer segura aunque la base este contaminada.
Como se degrada una conversacion larga
Renderizando grafico...
Que dice el paper LLMs Get Lost In Multi-Turn Conversations
El paper confirma una intuicion de campo: al pasar de single-turn completo a multi-turn subespecificado, cae fuerte el rendimiento promedio. Lo interesante es que la mayor parte de la caida se explica por aumento de no confiabilidad, no solo por perdida de capacidad.
Tambien prueban estrategias de recap/snowball (repetir info) y ayudan parcialmente, pero no igualan el escenario single-turn limpio. O sea: parchea, pero no arregla de raiz.


Como mejorar contexto usando distintos chats
La mejora mas efectiva y barata: separar conversaciones por objetivo. Un chat para planificar, otro para implementar, otro para revisar. Esto reduce contaminacion cruzada y te deja prompts mas cortos y verificables.
Si el modelo se pierde, en vez de seguir parchando en el mismo hilo, consolidas todo en un prompt limpio y reinicias. En la practica suele rendir mejor que seguir corrigiendo infinito.
- 1 tarea = 1 chat.
- Si cambias de modulo o endpoint, chat nuevo.
- Antes de reintentar: consolidar requerimientos en un resumen unico.
- Evitar pegar codigo irrelevante de otras partes.
Estrategia de chats por objetivo
Renderizando grafico...
Del contexto al agent harness
Si queremos ir un paso mas alla debemos tener en cuenta algunos otros conceptos. La capa que realmente define consistencia es el agent harness: el sistema de contexto, herramientas y guardrails que rodea al modelo.
Cuando digo harness, hablo literalmente de un arnes operativo: una estructura que sujeta, guia y limita al agente para que no se desvie, igual que un arnes de seguridad evita movimientos peligrosos en trabajo de altura.
La diferencia entre resultados random y resultados repetibles no suele ser el modelo, generalmente va mas por el lado de cuanto contexto util metes en cada iteracion y cuanto ruido dejas afuera.
- Harness = contexto + herramientas + validacion + reglas vivas.
- No se disena una vez: se itera con cada error real que aparece.
- El objetivo no es que el agente sea brillante una vez, sino confiable siempre.
- En equipos grandes, el harness pasa de opcion a requisito operativo.
Skills y AGENTS.md
AGENTS.md funciona como contrato base del repo: arquitectura, convenciones, comandos de verificacion y limites. Las skills son modulos especializados que el agente carga solo cuando toca esa capa (frontend, backend, testing, etc.).
Resultado practico: menos repeticion en prompts, menos desvio de estilo y mas velocidad para entrar en tarea. Es documentacion para humanos y para agentes a la vez.
- Estandariza decisiones tecnicas y estilo.
- Reduce tokens innecesarios en cada request.
- Permite onboarding mas rapido de nuevos agentes o miembros.
- Baja la probabilidad de que el modelo invente patrones.
Los 4 levers del agent harness
Un harness solido combina cuatro palancas que se potencian entre si. Si falta una, el sistema funciona, pero pierde estabilidad cuando crece la complejidad.
- Custom Rules: stack, convenciones, anti-patrones y limites claros del repo.
- MCP Servers: acceso a conocimiento y herramientas reales fuera del codigo local.
- Skills: conocimiento y ejecucion bajo demanda sin cargar todo siempre en contexto.
- Spec-Driven Development: especificar antes de implementar para reducir ambiguedad.
- La combinacion de las 4 da mejor control de calidad y costo de iteracion.
Delegacion con agentes: por que mejora el contexto
Si todavia queremos mejorar el rendimiento de los agentes, podemos usar sub-agentes a los que un agente principal (orquestador) delegue tareas especificas.
Que nos permite esto? Basicamente delegamos tokens a un modelo que nace y muere luego de iterar, permitiendonos ahorrarnos esos tokens de planificacion, implementacion y revision
Con un orquestador y subagentes separas roles: uno analiza y planifica, otro ejecuta, otro verifica. Cada subagente nace con contexto limpio y foco acotado, resuelve su tarea y termina.
El orquestador solo conoce lo que solicito y el resultado de cada subagente, sin acumular todo el ruido de las iteraciones intermedias.
Esta arquitectura evita el agente "dios" que acumula todo: tickets, debates, codigo viejo, errores previos y decisiones cruzadas.
Orquestador y subagentes
Renderizando grafico...
Feedback loop y hooks: donde se fuerza la calidad
El harness define que sabe el agente, pero el feedback loop define cuando puede dar una tarea por cerrada. Si no hay validacion automatica, todo depende de buena voluntad.
Tests, lint, typecheck y builds no son post-proceso: son parte del loop de autocorreccion del agente.
- Cada falla de validacion devuelve contexto accionable para corregir.
- Los hooks de parada permiten bloquear cierre si no pasan checks.
- Con feedback fuerte, baja la supervision manual repetitiva.
- La velocidad sube cuando el agente converge solo, no cuando escribe mas rapido.
Escalar en equipos: estandar global + ajuste por repo
A escala, el desafio no es solo tecnico: es de consistencia entre stacks, versiones y repos heredados. Por eso conviene separar reglas base organizacionales de reglas locales por proyecto.
Base comun para seguridad y calidad, capa local para no romper contextos legacy ni flujos particulares de cada equipo.
- Reglas org: seguridad, librerias aprobadas, estandares de review.
- Reglas repo: arquitectura concreta, convenciones locales y excepciones.
- Revision automatica en CI para priorizar hallazgos antes del review humano.
Comparacion de enfoques para manejar contexto
No todos los enfoques se comportan igual. La diferencia grande aparece en escalabilidad, consistencia y costo cognitivo.
| Enfoque | Contexto | Ventajas | Riesgos |
|---|---|---|---|
| 1 agente para todo | Unico hilo largo y acumulativo | Simple de arrancar | Se ensucia rapido, cae confiabilidad, mas alucinacion |
| 1 chat por objetivo | Separado por tarea | Mejor foco y recuperacion ante errores | Requiere disciplina manual |
| agent.md + skills | Reglas base + conocimiento modular | Consistencia tecnica y menos re-explicacion | Necesita mantener documentacion viva |
| Orquestador + delegacion | Contexto distribuido por rol | Escala mejor, menos ruido por agente | Mayor complejidad operativa inicial |
| Agent harness completo | Reglas + MCPs + skills + specs + feedback | Confiabilidad alta y resultados repetibles | Requiere disciplina de mantenimiento continuo |
Formas concretas de solucionar el problema
Esta checklist es la que mas retorno me dio para no romper flujo al trabajar con IA.
- Definir objetivo y criterio de aceptacion antes de pedir codigo.
- Separar Discovery -> Plan -> Implementacion -> Verificacion.
- Usar recap o consolidacion antes de reintentar en chat nuevo.
- Guardar patrones estables en agent.md y skills.
- Mantener reglas modulares y evitar instrucciones always-on innecesarias.
- Delegar subtareas en agentes especializados cuando crece la complejidad.
- Medir tiempo de resolucion, retrabajo y tasa de respuestas descartadas.
Riesgos y limites que no hay que maquillar
El paper mismo marca limitaciones de simulacion. No hay que venderlo como verdad absoluta, sino como evidencia fuerte alineada con experiencia real de uso.
Seguridad y responsabilidad siguen del lado humano: nada de credenciales en prompts y nada a produccion sin revision tecnica seria.
- No compartir API keys, tokens ni datos sensibles.
- No delegar decisiones que no podes auditar.
- No confundir velocidad de salida con calidad de arquitectura.
Fuentes
- Presentacion: Desarrollo de Software con IA y Agentes
- Documento base: Desarrollo de Software con IA y Agentes
- Claude Docs: Context windowsFuente del diagrama de acumulacion de contexto por turnos.
- Paper: LLMs Get Lost In Multi-Turn ConversationEstudio de simulacion multi-turn con foco en aptitud vs confiabilidad.
- Post en X: The Coding Agent HarnessMarco practico de context engineering con 4 levers, feedback loop y patrones de adopcion a escala.
- Blog: Context RotLectura complementaria sobre degradacion por acumulacion de contexto irrelevante.
- Video: ChatGPT tiene Alzheimer. Ayudalo.
- Video: El Sistema de Skills que Cambio Como Trabajo con IA
- Video: Como ser TONY STARK con IA