Guide · Reviewing agent PRs

Revisa la intención, deja que las máquinas comprueben el resto

Cuando los agentes abren más pull requests de los que puedes leer línea por línea, la revisión tiene que cambiar. Deja que las máquinas comprueben todo lo que puedan antes de que un PR llegue a ti — y revisa contra la story, no solo contra el diff.

Por Equipo de Aerunit · Última actualización

El problema

Por qué los PR de agentes son distintos

Los pull requests de agentes llegan en mayor número, se ven seguros de sí mismos, y luego no puedes preguntarle al autor "¿en qué estabas pensando?". La investigación temprana empieza a mostrar qué significa eso en la práctica.

Un estudio de 7156 PR de agentes encontró que el tipo de tarea importa más que qué agente la escribió: "documentation tasks achieve 82.1% acceptance compared to 66.1% for new features." Ningún agente ganó en todas las categorías. [2] Un segundo estudio analizó 654 PR de agentes rechazados y encontró siete modos de rechazo que ocurren solo en PR de agentes — y que "a large proportion of rejected PRs (67.9%) lack explicit reviewer feedback." [1] En otras palabras: la mayoría de las veces, nadie le dice al agente por qué.

Ambos estudios usan el mismo conjunto de datos público de PR de agentes (AIDev), y ambos se publicaron en febrero de 2026; los agentes han cambiado desde entonces — lee las cifras como tendencia, no como una clasificación.

Antes de que te llegue

Mueve las comprobaciones a la izquierda

Todo lo que una máquina pueda comprobar nunca debería llegar a una persona: formateo, tipos, lint, complejidad, tests. Cada uno de ellos pertenece a un punto anterior en la cadena — en la edición del agente, en el commit, en la CI. Explicamos cómo configurarlo en nuestra guía de feedback instantáneo para agentes de código.

La guía de revisión de código de Google sigue aplicando a los agentes: el revisor mira el diseño, la funcionalidad, la complejidad, los tests, los nombres y los comentarios — lo que hace que una base de código sea más saludable con el tiempo. [3] La diferencia con los agentes es que la parte mecánica de esa lista se puede automatizar casi por completo.

La entrega

Pide al agente evidencia, no afirmaciones

"Listo, todos los tests pasan" es una afirmación. Pide evidencia en su lugar. Añade una línea de entrega en cada story pidiendo al agente que "summarize changed files, checks run, failures encountered, and any remaining risk." [8] Los Cloud Agents de Cursor también pueden adjuntar capturas de pantalla, vídeos y referencias de logs al pull request, para que puedas ver el cambio funcionando sin hacer checkout de la rama. [7]

Ejemplo de entrega de un PR
## What changed
- auth/login-form.tsx — locked-account message + reset link
- auth/login-form.test.tsx — new test for the locked case

## Checks run
- npm run typecheck ✔
- npm test -- auth ✔ (14 passed)

## Failures hit
- First run broke the signup error style; fixed by reusing ErrorBanner.

## Remaining risk
- Copy not reviewed by product. Lockout threshold unchanged (non-goal).
Ojos frescos

Un segundo revisor, independiente

No dejes que el agente califique su propio trabajo. Un revisor automático en un contexto nuevo detecta cosas para las que el autor está ciego. La documentación de Claude Code describe un patrón escritor/revisor: "A fresh context improves code review since Claude won't be biased toward code it just wrote." [4] Cursor Bugbot "analyzes PR diffs and leaves comments with explanations and fix suggestions" [5], y GitHub Copilot code review hace lo mismo en GitHub. [6] Claude Code en la web puede ir un paso más allá y auto-arreglar pull requests: vigila un PR y responde a fallos de CI y comentarios de revisión — un buen ejemplo de devolver los hallazgos al agente. [9]

Hay una cara menos amable, y la misma documentación es honesta al respecto:

"A reviewer prompted to find gaps will usually report some, even when the work is sound, because that is what it was asked to do. Chasing every finding leads to over-engineering." [4]

Así que actúa solo sobre los hallazgos que afectan a la corrección o a los requisitos indicados. Todo lo demás es opcional.

La parte humana

Lo que solo tú puedes revisar

Intención

¿Es este el comportamiento que pedía la story — y no solo un comportamiento que pasa los tests?

Sensación de producto

¿Se siente bien al usarlo? Las capturas y los vídeos ayudan aquí.

Nombres

¿Entenderá la siguiente persona (o agente) estos nombres sin la descripción del PR?

Dirección de arquitectura

¿Mueve esto la base de código hacia donde quieres, o solo a algún sitio que funciona?

Cualquier cosa fuera de la story

Los cambios que la story no pedía son una pregunta, no un extra.

Cierra el ciclo

Deja feedback que el agente pueda usar

Recuerda el 67,9 %: la mayoría de los PR de agentes rechazados no llevan un motivo explícito. [1] Cuando rechaces un PR o pidas cambios, di por qué — en el PR o en la story. "Mal" no enseña nada. "Esto debería reutilizar el ErrorBanner existente, ver signup-form.tsx" arregla esta ejecución y la siguiente. Si el mismo feedback se repite, pertenece a vuestras convenciones compartidas, no a otro comentario.

Dónde entramos nosotros

Dónde encaja Aerunit

El argumento de esta guía es que la revisión debería ser por capas: primero las máquinas, luego un revisor independiente, tú al final — medido contra la story. Aerunit cubre la capa intermedia y la vara de medir. Cuando un agente abre un pull request, Aerunit lo revisa automáticamente y puede devolver los hallazgos a la misma sesión del agente para que los arregle, así el PR que abres ya ha pasado por una ronda.

La vara de medir es la propia story: el story writer de Aerunit propone issues de Linear con alcance, criterios de aceptación y no-objetivos, para que revises contra un objetivo con nombre. Y las convenciones de equipo que de otro modo repetirías en comentarios de revisión viven una vez en contexto y skills compartidos, y alimentan cada story y cada ejecución.

Revisión automática

Cada PR de agente se revisa, los hallazgos vuelven a la sesión del agente.

Una vara de medir clara

Criterios de aceptación y no-objetivos en la story contra la que revisas.

Arreglado en la misma sesión

Los hallazgos vuelven al agente que escribió el PR, así revisas una segunda pasada, no un primer borrador.

Respuestas rápidas

Preguntas frecuentes

¿Debo revisar cada línea que escribe un agente?

No línea por línea, no una vez que tienes las comprobaciones automáticas en marcha. Deja que el formateo, los tipos, el lint, los tests y un revisor automático cubran lo que pueden. Tu revisión debe cubrir lo que ellos no pueden: ¿es este el comportamiento que pedía la story, la forma correcta, los nombres correctos, la dirección correcta para la base de código?

¿Puede una IA revisar código de otra IA?

Sí, y ayuda — siempre que sea un revisor independiente en un contexto nuevo, no el mismo agente calificando su propio trabajo. La documentación de Claude Code señala que un contexto nuevo mejora la revisión porque el revisor no está sesgado hacia código que acaba de escribir. Productos como Cursor Bugbot y GitHub Copilot code review hacen esto en pull requests. [4] [5] [6]

¿De qué tamaño debe ser un PR de un agente?

Lo bastante pequeño para que puedas juzgar la intención de una sentada — una story, una porción. Si un PR toca áreas que la story no mencionaba, es una señal para dividir la story, no para leer con más esfuerzo.

¿Qué hago con un PR que está 90% correcto?

No arregles el último 10% a mano en silencio. Deja el motivo como comentario de revisión o actualiza la story, y luego devuélveselo al agente. Así el arreglo queda registrado, y la siguiente ejecución parte del encargo corregido.

Aerunit

Mantén ocupados a los agentes. Tú pones el criterio.

Aerunit está en acceso anticipado solo por invitación. Paga por lo que usas: sin suscripciones que olvidar, y los equipos comparten un fondo de créditos sin coste adicional.

Solicitar acceso anticipado