checkpoint
Git checkpoint system
Manage git checkpoints (stashes) for safe code exploration and recovery.
When to invoke
- Before making risky changes or refactoring
- When you want a quick save point without committing
- To restore previous state after experiments fail
- To maintain multiple work-in-progress states
Usage
/checkpoint create [name] # Create a named checkpoint
/checkpoint list # List checkpoints
/checkpoint restore [name] # Restore a specific checkpoint
/checkpoint pop # Restore the most recent checkpoint
/checkpoint clear # Remove checkpoints
Instructions
Create checkpoint
- Check if in a git repository
- Check for uncommitted changes
- Create a git stash with the name:
claude-checkpoint_YYYYMMDD_HHMMSS: [name] - Confirm the checkpoint creation
List checkpoints
- Run
git stash list - Filter stashes that start with
claude-checkpoint - Display in a formatted table:
- Index (stash@{N})
- Timestamp
- Description
- Number of files changed
Restore checkpoint
- Find the stash matching the given name or index
- Apply the stash with
git stash apply stash@{N} - Do NOT drop the stash (keep it for safety)
- Report restoration details
Pop checkpoint
- Find the recent
claude-checkpointstash - Apply it with
git stash pop stash@{N} - Report restoration details
Clear checkpoints
- List
claude-checkpointstashes - Ask for confirmation before proceeding
- Drop each matching stash
- Report removal count
Examples
# Create checkpoint before risky changes
/checkpoint create "before refactoring auth module"
# List checkpoints
/checkpoint list
# Restore if something went wrong
/checkpoint restore "before refactoring auth module"
# Quick restore of the recent one
/checkpoint pop
# Clean up old checkpoints
/checkpoint clear
Notes
- Checkpoints rely on git stash under the hood
- Include untracked files in checkpoints
- Checkpoints persist across sessions
- Apply descriptive names for identification
More from htlin222/dotfiles
cpp
Write modern C++ with RAII, smart pointers, and STL. Use for C++ development, memory safety, or performance optimization.
130refactor
Refactor code for quality and maintainability. Use for cleanup and tech debt reduction.
74data-science
Data analysis, SQL queries, BigQuery operations, and data insights. Use for data analysis tasks and queries.
52c-lang
Write efficient C code with proper memory management and system calls. Use for C optimization, memory issues, or system programming.
46quarto-book
Generate Quarto Book project structure with chapters, configuration, and output settings. Use when user wants to create a book, multi-chapter document, technical manual, or asks about Quarto book setup.
45scientific-figure-assembly
Assemble multi-panel scientific figures with panel labels (A, B, C) at publication quality (300 DPI) using R. Use when combining individual plots into journal-ready figures.
43