Alex Saez

Alex Saez

Engineering Manager & Software Craftsman

Sin categoría

Como hacer pairing con un agente

Como hacer pairing con un agente

Con Claude Opus los agentes de codificación tomarón un hype tremendo y me empecé a preguntar cuales son las mejores prácticas para usarlos. Investigando me topé con un post la gente de AmpCode y esto es lo que aprendí:

La brecha entre quienes usan agentes de forma efectiva y quienes no lo hacen se está agrandando. Mucha gente empieza improvisando: reaccionando a cada respuesta del modelo, ajustando el prompt sobre la marcha, pero sin un destino claro.. Al final, terminan prácticamente en el mismo lugar donde empezaron.

La diferencia entre quienes avanzan y quienes no, es la visión. Sin visión, solo estás reaccionando a lo que va pasando.

Estamos llegando a un punto donde los agentes pueden resolver casi cualquier cosa que seamos capaz de especificar. Por lo tanto, el principal modo de falla hoy es la poca claridad en lo que se pide. Cuando le das a un agente un prompt sin restricciones, obtenés resultados sin restricciones, que casi nunca son lo que querías. Cuanto más puedas especificar, mejor.

Veamos ejemplos reales.


Foto de Brey en Unsplash

Te asignan un bug. El botón de volver no anda en la página de settings. Tu primer impulso puede ser tratar al agente como si fuera una versión más sofisitcada de google.

Probá algo diferente: imaginá a un par competente sentado al lado tuyo. Nunca vio tu codebase, pero se mueve a más de 10x tu velocidad. Sus únicas limitaciones son las herramientas a las que puede acceder, lo que puede ver y tu capacidad para liderarlo.

Prompt tirado así nomás:

En vez de hacerle una pregunta, dale dirección.

Prompt especificado:

Misma tarea. Resultado distinto. La diferencia es el contexto.

Cuando quedás atrapado en la “speed trap”, terminás invirtiendo más tiempo corrigiendo lo que hace el agente que el que te habría llevado resolver el problema vos mismo.

No pidas solo la feature. Dale una definición de done y armá puntos de control dentro del propio prompt.

Prompt vago:

¿Cómo sabe si lo hizo bien? Especificá, dale feedback.

Le diste una referencia a seguir y una forma de chequear su propio trabajo. Ahora te podés correr. Dejá que el agente itere hasta que los tests pasen.

Volvés más tarde. Funcionó.

No porque la IA se haya vuelto “más inteligente” de un día para el otro, sino porque le construiste un mejor entorno para tener éxito.

La confianza no es una sensación: es una suite de tests pasando en verde.

A veces, mejorar el resultado no pasa por insistir más con el mismo enfoque, sino por cambiar el ángulo del problema. Por ejemplo, hoy estaba intentando convertir un JSON en una serie de INSERT en SQL y el agente no terminaba de resolverlo bien, incluso después de varios intentos. En lugar de seguir empujando por ahí, le pedí que escribiera un script en Python que hiciera la conversión. El resultado fue mucho más simple: menos tokens consumidos, ejecución más rápida y una solución más clara de validar.

Foto de Alexandr Podvalny en Unsplash


Definí roles con claridad: cuándo lidera la persona y cuándo toma la iniciativa el agente. Por ejemplo, la persona define estrategia y arquitectura, mientras que el agente se encarga del boilerplate y de proponer soluciones.

Dale contexto y constraints claros: así evitás que el agente se vaya para cualquier lado. Esto refuerza la idea central del artículo sobre la importancia de los prompts bien especificados.

Planteá ciclos de iteración y refinamiento: no esperes que salga perfecto en el primer intento. Iterar es clave tanto para la productividad como para la corrección del resultado.

Revisá y validá siempre el output del agente: antes de aceptar cualquier cambio en el codebase, miralo con ojo crítico.

Foto de Daria Nepriakhina 🇺🇦 en Unsplash

Foto de Daría Nepriakhina en Unsplash


Incluso trabajando con buena intención, el pairing con agentes suele fallar por algunos patrones bastante repetidos. Identificarlos a tiempo hace una diferencia enorme.

La speed trap: el agente produce código mucho más rápido de lo que vos podés leerlo y evaluarlo. El resultado es que terminás aprobando cambios que no entendés del todo. Para evitarlo, frená el ritmo: dividí el trabajo en pasos chicos y agregá puntos de validación claros (tests, checks, ejemplos esperados) antes de avanzar.

Delegar demasiado y perder contexto: cuando confiás ciegamente en el agente, es fácil perder el entendimiento del dominio o del problema real que estás resolviendo. Usá al agente como acelerador, pero mantenete atento a lo que no deberías dejar de atender: la responsabilidad del diseño y del criterio sigue siendo tuya.

Prompts vagos que llevan a código incorrecto o irrelevante: cuando el pedido es ambiguo, el agente llena los huecos como puede. Eso suele terminar en soluciones que “parecen bien” pero no encajan en tu sistema. La salida es simple pero exige disciplina: más contexto, más restricciones y una definición clara de qué significa que la tarea esté bien hecha.


Foto de Todd Quackenbush en Unslash

El artículo original estaba pensado alrededor de amp, pero hoy en algunos espacios la herramienta más popular es Claude Code. También Open Code viene ganando tracción, y el OpenAI Codex CLI mejoró muchísimo en el último tiempo. Al mismo tiempo, muchos desarrolladores siguen haciendo pairing directamente desde VS Code o Cursor, mientras que otros están experimentando con entornos más nuevos como Antigravity.

Más allá de la herramienta puntual, el pairing efectivo suele compartir los mismos patrones de ecosistema:

Integraciones con el IDE que le dan al agente contexto real del proyecto (archivos, estructura, convenciones).

Herramientas automáticas de revisión o linting que detectan errores comunes temprano.

APIs de agentes u orquestadores que permiten componer flujos de trabajo del tipo generar → revisar → testear.

Estas herramientas no reemplazan los buenos hábitos de pairing, pero hacen que sea mucho más fácil aplicarlos de forma consistente en el trabajo del día a día.