Deshacer cambios de Claude Code: rewind, git, checkpoints

Deshaz los cambios de Claude Code con /rewind, git o los checkpoints de AgentVera: qué restaura cada uno, qué se le escapa y cómo revertir un turno con seguridad.

Solviera Teknoloji 7 min de lectura

Para deshacer los cambios de Claude Code, usa /rewind para las ediciones de la sesión actual, git para todo lo que hayas confirmado o puedas restaurar desde el repositorio, y los checkpoints de AgentVera cuando quieras devolver toda la carpeta de trabajo al inicio de un turno concreto de un agente. Cada uno cubre un hueco distinto. Saber cuál usar te evita perder trabajo mientras deshaces el del agente.

Esta guía compara los tres, muestra los pasos exactos de cada uno y lista lo que a cada uno se le escapa. Esa última parte suele ser la que muerde.

La respuesta corta

Quieres deshacerUsaOjo con
Las últimas ediciones de esta sesión de Claude Code/rewind o Esc dos vecesLos cambios de comandos de shell no se registran
Cambios en un archivo con seguimientogit restore <file>Las ediciones sin confirmar de ese archivo se pierden
Todo desde el último commitgit stash -u o git reset --hard + git cleanclean borra los archivos sin seguimiento para siempre
Un cambio confirmadogit revert <commit>Crea un commit nuevo que lo invierte
Un turno del agente, incluidos los archivos que creó con comandos de shellCheckpoints de AgentVeraTambién revierte a otros agentes en la misma carpeta

Opción 1: /rewind dentro de Claude Code

Claude Code guarda checkpoints mientras edita archivos. Para volver atrás, pulsa Esc dos veces o ejecuta /rewind. Eliges un mensaje de la sesión y luego qué restaurar:

  • Solo el código: los archivos vuelven a como estaban en ese mensaje, y la conversación se queda.
  • Solo la conversación: la conversación vuelve atrás, y los archivos se quedan como están.
  • Ambos: un paso atrás limpio hasta ese punto.

Es el deshacer más rápido mientras sigues en la sesión, y es el primer movimiento correcto cuando el agente acaba de hacer una mala edición.

Lo que se le escapa: los checkpoints de Claude Code registran las ediciones que hacen sus propias herramientas de archivos. Los cambios hechos por comandos de shell, como rm, mv, un generador de código o un script de migración, no se registran. Tampoco los cambios de otras sesiones u otras herramientas en la misma carpeta. /rewind es una comodidad, no un sustituto del control de versiones.

Opción 2: git

Git es el deshacer que funciona con cualquier herramienta, siempre que el trabajo que quieres conservar o descartar sea algo que git pueda ver.

# See what changed
git status
git diff

# Throw away changes to one tracked file
git restore src/api/user.ts

# Park everything, including new files, and keep it in case you need it
git stash -u

# Drop all uncommitted changes to tracked files
git reset --hard

# Delete untracked files and folders (check first with -n)
git clean -n -d
git clean -f -d

# Reverse a commit the agent already made
git revert <commit>

Dos hábitos hacen de git un deshacer mucho mejor para el trabajo de los agentes:

  1. Haz commit antes de poner a un agente con una tarea. Así git diff muestra exactamente lo que hizo el agente, y git stash -u o git reset --hard te devuelve atrás.
  2. Dale a cada agente su propio worktree. Así deshacer a un agente nunca toca el trabajo de otro. Consulta git worktrees para agentes en paralelo.

Lo que se le escapa: todo lo que haya entre commits. Si hiciste tus propias ediciones en los mismos archivos mientras trabajaba el agente, git reset --hard también se lleva las tuyas. git clean borra los archivos sin seguimiento para siempre, así que ejecútalo siempre antes con -n.

Opción 3: checkpoints de AgentVera

AgentVera añade un deshacer por turno que queda entre los dos. Funciona con cualquier CLI de agente que se ejecute en una carpeta local, no solo con Claude Code.

Cómo funcionan las instantáneas

Al inicio de cada turno, AgentVera toma una instantánea de la carpeta de trabajo del agente (su worktree, o la carpeta del proyecto). La instantánea cubre los archivos con y sin seguimiento y respeta .gitignore. Se guarda como un commit bajo una ref oculta, refs/agentvera/checkpoints/…. Tus ramas, el índice, el stash y HEAD no cambian, y nada aparece en git log ni en git status.

Se guardan los últimos 60 turnos por agente. Al borrar el agente se descartan sus instantáneas. El proyecto tiene que ser un repositorio Git. La primera instantánea se toma cuando le envías un mensaje al agente (o escribes a Claude en la terminal).

Revertir un turno

  1. En la cabecera del panel del agente, pulsa Turns («Turns and rollback»). En un panel estrecho está en Options.
  2. La lista muestra los turnos del más reciente al más antiguo, cada uno con su número, su prompt y la hora. Un turno escrito directamente en la terminal aparece como «Turn typed in the terminal».
  3. Expande un turno para ver los archivos que cambió, marcados como added, modified o deleted, con el recuento de líneas.
  4. Pulsa Roll back this turn y confirma con Roll back turn.

La carpeta de trabajo vuelve al inicio de ese turno. Los archivos añadidos después se borran, y los archivos cambiados o borrados se restauran. Luego AgentVera informa de cuántos archivos restauró. Si el agente sigue trabajando, el diálogo recomienda detenerlo antes, para que no siga editando mientras la carpeta cambia bajo sus pies.

Deshacer la reversión

Antes de revertir, AgentVera guarda aparte el estado actual. Aparece arriba de la lista como State before the rollback. Pulsa Return to this state para recuperar exactamente lo que tenías. Así que probar una reversión es seguro. Si resulta que el cambio del agente estaba bien, puedes volver a él.

Desde el móvil

Si controlas los agentes desde Telegram, los botones del agente incluyen ↩️ Undo last turn. Muestra la lista de archivos y te pide confirmar. Después todavía puedes deshacerlo desde la lista de checkpoints en el escritorio. Consulta control por Telegram.

Lo que se le escapa

  • Otros agentes en la misma carpeta. Una reversión restaura la carpeta, así que los cambios posteriores de otros agentes que trabajen en esa carpeta también se revierten. La confirmación lo dice. Los worktrees lo evitan.
  • Archivos ignorados. Los archivos que coinciden con .gitignore, como node_modules o un .env local, no forman parte de la instantánea.
  • Cosas fuera de la carpeta. Una base de datos que el agente migró, un paquete que publicó o un push que hizo no son archivos de la carpeta, así que ninguna instantánea de carpeta puede deshacerlos.
  • Agentes por SSH y terminales simples. No se toma checkpoint para los agentes de un servidor remoto, porque sus carpetas no están en este ordenador.

Cuál usar y cuándo

  • El agente acaba de hacer una mala edición y sigues en la sesión: /rewind.
  • El agente ejecutó un script que borró o generó archivos: checkpoints de AgentVera o git, no /rewind.
  • Varios turnos fueron por mal camino: revierte al inicio del primer turno malo en Turns. Puedes volver al estado actual si cambias de opinión.
  • El trabajo está confirmado: git revert.
  • Quieres empezar de cero toda la tarea: git stash -u o git reset --hard, si hiciste commit antes de empezar.

Menos deshacer desde el principio

Deshacer es la red de seguridad, no el plan. Unos cuantos hábitos hacen que la necesites menos:

  • Prompts pequeños y acotados. Un turno que cambia tres archivos es fácil de revisar y fácil de revertir.
  • Planifica primero el trabajo arriesgado. Pide al agente que describa el cambio antes de hacerlo.
  • Revisa cada turno. La revisión de código de AgentVera puede revisar el código de un agente al final de cada turno. Revisión de código con IA explica qué buscar.
  • Deja los comandos destructivos tras una aprobación. Seguridad de los agentes de código con IA cubre permisos, aislamiento con Docker y aprobaciones.

Para terminar

No hay un único deshacer para un agente de código con IA. /rewind es rápido para las ediciones de la sesión actual. Git cubre todo lo que puede ver, mejor si haces commit antes de cada tarea. Los checkpoints de AgentVera llenan el hueco entre ambos con una instantánea de toda la carpeta de trabajo en cada turno, una reversión que a su vez se puede deshacer y el mismo botón en tu móvil. La página de checkpoints y replay también cubre la reproducción de sesiones, que repite una sesión de Claude o Codex paso a paso para que veas dónde se torció.

Preguntas frecuentes

¿Cómo deshago lo último que hizo Claude Code?

En Claude Code, pulsa Esc dos veces o ejecuta /rewind, elige el mensaje al que volver y decide si restaurar el código, la conversación o ambos. En AgentVera, abre Turns en el panel del agente y elige Roll back this turn.

¿Por qué /rewind no recuperó un archivo borrado?

Los checkpoints de Claude Code registran las ediciones que hacen sus herramientas de archivos. Los archivos cambiados o borrados por comandos de shell, como rm o un script, no se registran. Para esos usa git o una instantánea de carpeta como los checkpoints de AgentVera.

¿Los checkpoints de AgentVera cambian mis ramas o mi stash?

No. Las instantáneas se guardan bajo una ref oculta de git. Tus ramas, el índice, el stash y HEAD no se tocan. El proyecto debe ser un repositorio Git.

¿Puedo deshacer una reversión?

Sí. Antes de una reversión, AgentVera guarda el estado actual como «State before the rollback». Elige Return to this state para volver a él.

¿Funcionan los checkpoints con Codex y otros agentes?

Sí. Los checkpoints se toman para cualquier CLI de agente que trabaje en una carpeta local, no solo Claude Code. No se toman para agentes en un servidor SSH ni para terminales simples.

Reúne a tus agentes en un mismo escritorio.

Descarga AgentVera gratis; tus CLI instaladas ya están listas.

Más artículos