Skip to content
| Marketplace
Sign in
Visual Studio Code>SCM Providers>Diff Review for Claude CodeNew to Visual Studio Code? Get it now.
Diff Review for Claude Code

Diff Review for Claude Code

Jose Malpica

|
3 installs
| (0) | Free
Revisión nativa de los cambios que hace Claude Code sobre tu workspace.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Diff Review for Claude Code

Revisa, hunk por hunk, todo lo que Claude Code escribe en tu código — sin salir de VSCode y sin depender de Git.

Claude Code aplica sus ediciones directamente sobre los archivos del workspace: no hay una etapa intermedia donde ver qué cambió y decidir qué se conserva. Cuando el turno toca diez archivos, la única forma de auditarlo es leer el git diff completo o confiar. Esta extensión agrega esa etapa intermedia: cada cambio queda pendiente de revisión, pintado sobre el archivo real, y tú decides qué se queda y qué se descarta.

Todo con primitivas nativas del editor —diff inline, CodeLens, decoraciones, árbol lateral—: sin webviews, sin paneles HTML, sin temas propios.

Y cuando no la quieras encima, se apaga con un interruptor: DiffReview deja de observar el workspace hasta que la vuelvas a encender, sin desinstalar nada.

Instalación

Busca Diff Review for Claude Code en la vista de Extensiones (Ctrl+Shift+X / Cmd+Shift+X) e instala. Desde la terminal:

code --install-extension malpi-dev.diffreview

Funciona con Claude Code en cualquiera de sus superficies: la extensión de VSCode, la CLI o la app de escritorio.

Cómo se usa

  1. Trabaja con Claude Code como siempre.
  2. Al terminar el turno de edición, DiffReview abre el primer archivo tocado y aparece la vista DiffReview en la barra lateral con la lista de archivos pendientes. La barra de estado muestra cuántos quedan.
  3. Sobre el archivo verás el diff inline: las líneas eliminadas en su sitio, las añadidas resaltadas, y un CodeLens ✓ Keep · ↩ Undo encima de cada hunk. Los mismos dos botones están en la barra de título del editor mientras el archivo tenga cambios pendientes, por si el CodeLens se te pierde entre el código.
  4. Acepta o descarta a la granularidad que quieras:
Acción Dónde
Un hunk CodeLens sobre el hunk, botones ✓ / ↩ de la barra de título del editor, o Alt+Enter / Alt+Backspace con el cursor dentro
Un archivo Botones ✓ y ↩ al pasar el ratón sobre el archivo en el panel
Toda la sesión Botones Conservar todo / Descartar todo en la cabecera del panel

Alt+↓ y Alt+↑ saltan al hunk siguiente y al anterior.

Keep deja el cambio tal cual y lo quita de la revisión. Undo restaura el contenido previo de esas líneas. Si editaste a mano un hunk antes de descartarlo, DiffReview pide confirmación antes de pisar lo que escribiste.

Los archivos que Claude crea aparecen como añadidos completos; los que borra se abren en un editor virtual de solo lectura con su contenido original, para que puedas leer lo que se fue antes de aceptar el borrado.

La revisión pendiente sobrevive a recargar la ventana e incluso a cerrar VSCode: al volver, la sesión se restaura con los hunks que ya habías resuelto marcados.

Todos los comandos están en la paleta bajo DiffReview:.

Activar y desactivar el monitoreo

El botón de ojo en la cabecera del panel apaga y enciende DiffReview sin desinstalarlo. Apagado (el ojo aparece cerrado), la extensión deja de observar el workspace: ningún watcher, ninguna decoración, ningún archivo en el panel —como si no estuviera instalada—. El indicador de la barra de estado sigue ahí para volver a encenderla, y también puedes usar el ajuste diffReview.enabled o los comandos DiffReview: Activar / Desactivar monitoreo.

Apagar no toca tus archivos: lo que Claude ya escribió se queda escrito y la revisión pendiente simplemente se descarta. Si el proyecto tiene hooks instalados, DiffReview te ofrece quitarlos también.

Ajustes

Ajuste Por defecto Qué hace
diffReview.enabled true Monitorear los cambios de Claude Code. Desactívalo para dejar la extensión inerte sin desinstalarla.
diffReview.detectionStrategy hooks Cómo se detectan los cambios: hooks, snapshot o git.
diffReview.autoOpenPanel true Abre la vista lateral al aparecer cambios pendientes.
diffReview.autoOpenFile true Abre el primer archivo modificado al terminar el turno.
diffReview.showInlineDiff true Pinta el diff sobre el archivo.
diffReview.showCodeLens true Muestra el CodeLens Keep · Undo por hunk.
diffReview.editSettleMs 500 Milisegundos de espera tras la última escritura antes de dar el turno por cerrado.
diffReview.exclude [] Patrones glob que quedan fuera de la revisión (p. ej. **/*.lock).

Estrategias de detección

Si la estrategia elegida no está disponible, DiffReview avisa una vez y cae a snapshot; nunca se queda callado.

Estrategia Cómo funciona Límite
hooks (por defecto) Instala hooks de Claude Code que anotan cada edición, más un watcher para lo que Claude edite con Bash. Es la más precisa. Requiere que la superficie ejecute los hooks del proyecto y que aceptes instalarlos.
snapshot Mantiene una copia sombra del workspace y compara en cada escritura. Funciona con cualquier superficie. No distingue por sí sola tus ediciones de las de Claude; se detiene en workspaces de más de 50 MB.
git Usa la baseline de HEAD vía la API de Git de VSCode. Sin estado propio. Necesita un repositorio Git, y arrastra los cambios que ya tuvieras sin commitear.

Con hooks, la primera vez que hace falta la extensión pregunta antes de escribir nada: puedes instalar, ver el diff exacto de la configuración propuesta, o decir que no. Si dices que no, la sesión sigue en modo snapshot. Al aceptar, escribe .claude/diffreview/hook.mjs y añade las entradas correspondientes a .claude/settings.local.json (el archivo local, no el compartido), y te ofrece añadir .claude/diffreview/ a tu .gitignore.

Con la estrategia hooks el orden importa: instala los hooks cuando la extensión lo proponga y arranca Claude Code después. Una sesión que ya estuviera abierta corre sin ellos.

Qué escribe en tu proyecto

Solo dentro de .claude/diffreview/, y todo es estado local y desechable:

Archivo Para qué
hook.mjs El script que Claude Code ejecuta en sus hooks.
events.jsonl Registro de las ediciones detectadas en el turno.
baselines/ El contenido "antes" de cada archivo, para poder reconstruir el diff.
session.json La sesión pendiente, para restaurarla al reabrir VSCode.

Fuera de esa carpeta, y solo si aceptas la estrategia hooks, escribe sus entradas en .claude/settings.local.json y —si dices que sí— una línea en tu .gitignore. Desactivar el monitoreo te ofrece retirar esas entradas y borrar el hook.mjs, que es la vuelta atrás completa.

Borrar esa carpeta no te hace perder nada que no esté ya en tus archivos o en Git. Fuera de ahí, lo único que la extensión modifica son los archivos que tú le pides conservar o descartar, y siempre a través de la API de edición de VSCode (deshacer con Ctrl+Z funciona con normalidad).

Si algo no aparece

El canal DiffReview del panel Output registra la estrategia activa, cada cambio detectado y cualquier error. Es el primer sitio donde mirar.

Desinstalar

code --uninstall-extension malpi-dev.diffreview

Para dejar un proyecto exactamente como estaba, borra ahí .claude/diffreview/ y las entradas de DiffReview en .claude/settings.local.json —o desactiva el monitoreo desde el panel y acepta cuando te ofrezca quitar los hooks—.

Si solo quieres silenciarla un rato, no hace falta desinstalar nada: usa el interruptor del panel.

Reportar un problema

Los bugs y las ideas van a GitHub Issues. Ayuda mucho adjuntar la estrategia de detección activa y las últimas líneas del canal DiffReview del panel Output.

Licencia

Uso gratuito, personal y comercial. Sin derecho de redistribución ni de obra derivada — ver LICENSE.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft