Para ver el git diff de tu agente en el navegador antes del commit, ejecuta diffle working en el repositorio. Diffle abre todos los cambios (preparados, sin preparar y archivos nuevos) en una pestaña que manejas solo con el teclado, con ir a la definición y tipos dentro del propio diff. Al terminar, un atajo copia todos tus comentarios como un prompt listo para pegarle de vuelta al agente.
Lo probamos antes de escribir esta nota: la versión 0.2.4 en Linux, sobre un pequeño repositorio de Python con pyrefly como language server. Grabamos el ciclo completo: recorrer el diff, inspeccionar una función, saltar a su definición, dejar un comentario y exportarlo. Es lo que ves en este video.
¿Qué es Diffle?
Diffle es un diff viewer de código abierto que revisa tus cambios de Git en local, en el navegador. Lo publicó Moritz Wilksch con licencia Apache-2.0 y lo presentó en Hacker News el 8 de octubre de 2026. Hace tres cosas que un git diff normal no hace:
- Lo recorres con atajos al estilo vim, sin tocar el mouse.
- Habla con un language server, así que puedes ir a la definición y ver tipos mientras revisas.
- Convierte tu revisión en algo útil: un prompt para tu agente o una revisión pendiente en un pull request de GitHub.
Todo corre en tu máquina. Diffle levanta un servidor local, abre una pestaña y se detiene cuando cierras la última, imprimiendo en la terminal los comentarios que sigan abiertos.
El autor reconoce a difit como su inspiración, y el diff se renderiza con la librería @pierre/diffs.
¿Cómo se instala Diffle?
Hay varias vías. El binario independiente es la única que no necesita ningún runtime.
# Binario independiente (Linux x64/arm64 con glibc, macOS con Apple silicon), sin Node.js
curl -fsSL https://diffle.app/install.sh | sh
# npm (requiere Node.js 24 o superior)
npm install -g @moritzwilksch/diffle
# conda-forge
pixi global install diffle
El binario se instala en ~/.local/bin. Para probarlo sin instalar nada:
npx @moritzwilksch/diffle working
Ojo con la vía de npm: el paquete declara Node.js 24 como versión mínima. Si usas una LTS anterior, instala el binario.
¿Funciona en Windows?
Sí. Hay un script de instalación para Windows en x64 y arm64, que se ejecuta desde PowerShell:
irm https://diffle.app/install.ps1 | iex
¿Cómo ver el git diff en el navegador antes del commit?
Ejecuta diffle working desde el repositorio. Compara HEAD con tu árbol de trabajo, incluyendo cambios preparados, sin preparar y archivos sin seguimiento, así que ves tanto lo que el agente editó como lo que creó desde cero.
Para comparar código entre otras revisiones, usa la misma sintaxis de git diff que ya conoces:
diffle develop # lo que esta rama agregó desde que salió de develop
diffle show a1b2c3d # un solo commit, como git show
diffle main..feat # cualquier revspec de git diff
diffle range-diff main..v1 main..v2 # cómo se reescribió una serie de commits
Con la pestaña abierta, el teclado hace el trabajo:
| Tecla | Acción |
|---|---|
j / k |
línea siguiente / anterior (10j baja diez líneas) |
J / K |
archivo siguiente / anterior |
] / [ |
hunk siguiente / anterior |
c |
comentar la línea |
C |
comentar el archivo completo |
V |
seleccionar un bloque |
v |
marcar el archivo como revisado |
/ / g/ |
buscar en este archivo / en todos los modificados |
? |
lista completa de atajos |
Los comentarios se guardan en <git-dir>/diffle/ y nunca tocan tu árbol de trabajo. Siguen a su texto mientras el código cambia y quedan obsoletos cuando ese texto sale del diff.
¿Cómo ir a la definición dentro de un diff?
Diffle arranca un language server para cada lenguaje del diff, siempre que encuentre uno en tu PATH. Eso te da navegación de editor sin salir de la revisión:
| Tecla | Acción |
|---|---|
gd (o Ctrl/Cmd + clic) |
ir a la definición |
gy |
ir a la definición del tipo |
gA |
referencias |
gs / gS |
símbolos del archivo / del repositorio |
gh |
hover: tipos y documentación |
w / b |
recorrer los símbolos de una línea |
Ctrl+o |
volver atrás |
En nuestra prueba, el cambio del agente agregaba una llamada a aplicar_descuento() en carrito.py. Con gh sobre ella vimos la firma y el docstring de la función que entregó pyrefly. Con gd se abrió precios.py, un archivo que no estaba en el diff, justo en la definición, y Ctrl+o nos devolvió a la revisión. Esa es la ganancia real frente a un pager de terminal: compruebas qué hace una llamada sin cambiar al editor. Los resultados fuera del diff se abren en modo de solo lectura.
Para ver qué servidor recibe cada lenguaje:
diffle lsp
Puedes cambiarlo o desactivarlo por lenguaje:
diffle config set-lsp rust "rust-analyzer" # persistente
diffle working --lsp python="pyrefly lsp" # solo esta ejecución
diffle working --no-lsp # ningún language server
Un detalle antes de activarlo: los language servers se ejecutan a través de un shell dentro del repositorio y pueden leer todo lo que puede leer tu usuario. En un repositorio que no es de confianza, usa --no-lsp.
¿Cómo devolverle la revisión a tu agente?
Pulsa yy. Diffle copia todos los comentarios abiertos, cada uno con su archivo, línea y el código al que se refiere, en un formato listo para pegar en Claude Code, Codex, Cursor o cualquier otro agente. Esto es lo que produjo nuestro único comentario:
tienda/carrito.py:21
> return aplicar_descuento(subtotal, self.cupon)
Si el cupón es 100, el total queda en 0. ¿Es intencional? Agrega un test para ese caso.
El agente recibe la ubicación exacta y el contexto, no un vago “revisa la lógica del descuento”. Ese es el ciclo para el que está pensado Diffle: el agente escribe, tú revisas con navegación de código real, y la revisión vuelve como una instrucción precisa.
Si te interesa otra forma de revisar lo que hace un agente, en yoDEV cubrimos también Open Code Review.
¿Puede revisar pull requests de GitHub?
Sí. diffle pr 27, o diffle pr sin número para el pull request de la rama actual, abre el PR para revisarlo. El icono de pull request agrega un hilo, o todos, a una revisión pendiente en GitHub. Diffle nunca envía la revisión por su cuenta: tú editas, descartas y envías los comentarios en GitHub.
Necesita un token, que toma en este orden de GITHUB_TOKEN, de GH_TOKEN o de una sesión iniciada en el CLI gh. La exportación solo funciona cuando la comparación coincide con el diff confirmado del PR, así que los commits sin subir y los cambios del árbol de trabajo la descartan.
No probamos el flujo de GitHub: lo descrito en esta sección viene del README del proyecto.
¿Está listo para usarlo a diario?
Es temprano y avanza rápido. Al momento de publicar esta nota (12 de octubre de 2026), la última versión es la 0.2.4, publicada en npm el 7 de octubre, con 17 versiones desde la primera, el 8 de septiembre. Espera cambios en atajos y opciones entre versiones: toma este artículo como una foto de la 0.2.4 y revisa el README para lo que haya cambiado después.
Dicho eso, el ciclo principal funcionó sin fricción en nuestra prueba: instalar, diffle working, revisar con el language server, yy y pegar.
¿Y tú? ¿Cómo revisas los cambios de tu agente antes de hacer commit?
- Con
git diffen la terminal - En la vista de diff de mi editor
- En el PR de GitHub, después de subirlo
- Prefiero otra opción (cuéntanos cuál)
Comenta abajo o, si este artículo te llegó por correo, responde directamente al email: tu respuesta se publica aquí.
Relacionado: Whiteboard: Cómo revisar el código que escribe tu agente de IA con diagramas de secuencia