Skip to main content

checkpoint

Cursor-style checkpoint & undo for Claude Code. Instantly revert to any previous state. Trigger: '/checkpoint', '/cp', 'undo changes', 'revert changes', 'go back to before', 'restore previous version', 'undo last prompt'.

Datos de origen

Repositorio
Manavarya09/checkpoint
Última actividad en el origen
15 de abril de 2026 a las 09:59
Idioma detectado de SKILL.md
inglés
Estrellas
8
Forks
0

Opciones de instalación

De forma predeterminada está seleccionado el prompt que primero revisa el origen. Puedes cambiar a un comando directo o descargar una copia local.

Revisa los archivos de origen

Lee SKILL.md y los archivos complementarios que muestra SkillsMP antes de decidir si quieres instalarlo.

Mostrando SKILL.md

SKILL.md
Instrucciones de origen · Vista previa de solo lectura
name
checkpoint
description
Cursor-style checkpoint & undo for Claude Code. Instantly revert to any previous state. Trigger: '/checkpoint', '/cp', 'undo changes', 'revert changes', 'go back to before', 'restore previous version', 'undo last prompt'.
argument-hint
[list|undo|undo N|diff N|status|clean]
allowed-tools
Bash, Read, Write
# checkpoint — Instant Undo for Claude Code Auto-snapshots your files before each prompt. Revert instantly — no tokens wasted, no reimplementation. ## Commands ### `/checkpoint` or `/cp` — List all checkpoints ```bash CLAUDE_SESSION_ID="${CLAUDE_SESSION_ID}" PROJECT_ROOT="${PWD}" node "${CLAUDE_SKILL_DIR}/../../scripts/store.js" list ``` Display the result as a formatted table: ``` # | Time | Files | Preview ---|------------|-------|-------- 1 | 14:23:01 | 0 | session start 2 | 14:23:45 | 3 | Add auth to login page... 3 | 14:25:12 | 5 | Refactor the header comp... ``` ### `/checkpoint undo` or `/cp undo` — Undo last prompt's changes ```bash CLAUDE_SESSION_ID="${CLAUDE_SESSION_ID}" PROJECT_ROOT="${PWD}" node "${CLAUDE_SKILL_DIR}/../../scripts/store.js" undo ``` This restores all files to their state at the most recent checkpoint (before the last prompt ran). Files created by the last prompt are deleted. A safety checkpoint is auto-created first so the undo itself can be undone. Display result: "Restored to checkpoint #N. X files restored, Y new files removed." ### `/checkpoint undo N` or `/cp undo N` — Undo to specific checkpoint ```bash CLAUDE_SESSION_ID="${CLAUDE_SESSION_ID}" PROJECT_ROOT="${PWD}" node "${CLAUDE_SKILL_DIR}/../../scripts/store.js" restore N ``` Replace N with the checkpoint number. Restores all tracked files to their state at checkpoint N. All files created after checkpoint N are deleted. Display result: "Restored to checkpoint #N. X files restored, Y new files removed." ### `/checkpoint diff N` or `/cp diff N` — See what changed since checkpoint N ```bash CLAUDE_SESSION_ID="${CLAUDE_SESSION_ID}" PROJECT_ROOT="${PWD}" node "${CLAUDE_SKILL_DIR}/../../scripts/store.js" diff N ``` Shows which files differ between checkpoint N and the current state, with line count changes. ### `/checkpoint status` or `/cp status` — Show checkpoint stats ```bash CLAUDE_SESSION_ID="${CLAUDE_SESSION_ID}" PROJECT_ROOT="${PWD}" node "${CLAUDE_SKILL_DIR}/../../scripts/store.js" status ``` Shows: session ID, number of checkpoints, tracked files count, storage used. ### `/checkpoint clean` or `/cp clean` — Clean up all checkpoints ```bash CLAUDE_SESSION_ID="${CLAUDE_SESSION_ID}" PROJECT_ROOT="${PWD}" node "${CLAUDE_SKILL_DIR}/../../scripts/store.js" cleanup ``` Removes all checkpoint data for the current session. ## Natural Language Triggers When the user says things like: - "undo that" / "revert that" / "go back" → run `/checkpoint undo` - "undo to before the auth changes" → list checkpoints, find the right one, run `/checkpoint undo N` - "what did you change?" → run `/checkpoint diff` with the last checkpoint - "I don't like these changes" → run `/checkpoint undo` ## How It Works 1. **SessionStart hook** initializes the checkpoint session 2. **UserPromptSubmit hook** creates a checkpoint before each prompt (snapshots all tracked files) 3. **PreToolUse hook** watches Write/Edit calls and registers target files for tracking 4. **Undo** = copy snapshot files back + delete newly created files 5. Every undo creates a safety checkpoint first (so you can undo the undo) ## Auto-Expiry Old checkpoints are automatically pruned to prevent unbounded disk growth. After each new checkpoint is created, if the total count exceeds the limit, the oldest checkpoints are removed. - **Default limit:** 50 checkpoints per session - **Configure via environment variable:** set `CHECKPOINT_MAX` to a custom number (e.g. `CHECKPOINT_MAX=100`) - Pruned checkpoint directories are deleted from disk immediately - The manifest is updated to reflect the removal ## Important Notes - Checkpoints only track files Claude modifies — not the entire project - Storage is in `~/.claude-checkpoints/<session-id>/` - Checkpoints persist for the session lifetime (up to the `CHECKPOINT_MAX` limit) - Works with or without git — completely independent - Zero token cost to undo — it's just file copies
Ver en GitHub