/restore
Restore project to a previous checkpoint
How it fires
How this command gets triggered: by you, by Claude, or both.
- Fires itselfClaude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/restore
Context preview
What this command does when you run it.
Restore project to a previous checkpoint
Command definition
restore.mddescription: Restore project to a previous checkpoint
category: workflow
allowed-tools: Bash(git stash:*), Bash(git status:*), Bash(git reset:*), Bash(grep:*), Bash(head:*)
argument-hint: "<checkpoint-number|latest>"
Restore to checkpoint
Restore your project files to a previous checkpoint created with /checkpoint.
Available checkpoints
!`git stash list | grep "claude-checkpoint" | head -10`
Current status
!`git status --short`
Task
Restore the project to a previous checkpoint. Based on $ARGUMENTS:
1. Parse the argument:
- If empty or "latest": Find the most recent claude-checkpoint stash
- If a number (e.g. "2"): Use stash@{2} if it's a claude-checkpoint
- Otherwise: Show error and list available checkpoints
2. Check for uncommitted changes with `git status --porcelain`. If any exist:
- Create a temporary backup stash: `git stash push -m "claude-restore-backup: $(date +%Y-%m-%d_%H:%M:%S)"`
- Note the stash reference for potential recovery
3. Apply the checkpoint:
- Use `git stash apply stash@{n}` (not pop, to preserve the checkpoint)
- If there's a conflict due to uncommitted changes that were stashed, handle gracefully
4. Show what was restored:
- Display which checkpoint was applied
- If uncommitted changes were backed up, inform user how to recover them
Example outputs:
- For `/restore`: "Restored to checkpoint: before major refactor (stash@{0})"
- For `/restore 3`: "Restored to checkpoint: working OAuth implementation (stash@{3})"
- With uncommitted changes: "Backed up current changes to stash@{0}. Restored to checkpoint: before major refactor (stash@{1})"
Read more
description: Restore project to a previous checkpoint category: workflow allowed-tools: Bash(git stash:*), Bash(git status:*), Bash(git reset:*), Bash(grep:*), Bash(head:*) argument-hint: "<checkpoint-number|latest>"
Restore to checkpoint
Restore your project files to a previous checkpoint created with /checkpoint.
Available checkpoints
!`git stash list | grep "claude-checkpoint" | head -10`
Current status
!`git status --short`
Task
Restore the project to a previous checkpoint. Based on $ARGUMENTS:
1. Parse the argument:
- If empty or "latest": Find the most recent claude-checkpoint stash
- If a number (e.g. "2"): Use stash@{2} if it's a claude-checkpoint
- Otherwise: Show error and list available checkpoints
2. Check for uncommitted changes with `git status --porcelain`. If any exist:
- Create a temporary backup stash: `git stash push -m "claude-restore-backup: $(date +%Y-%m-%d_%H:%M:%S)"`
- Note the stash reference for potential recovery
3. Apply the checkpoint:
- Use `git stash apply stash@{n}` (not pop, to preserve the checkpoint)
- If there's a conflict due to uncommitted changes that were stashed, handle gracefully
4. Show what was restored:
- Display which checkpoint was applied
- If uncommitted changes were backed up, inform user how to recover them
Example outputs:
- For `/restore`: "Restored to checkpoint: before major refactor (stash@{0})"
- For `/restore 3`: "Restored to checkpoint: working OAuth implementation (stash@{3})"
- With uncommitted changes: "Backed up current changes to stash@{0}. Restored to checkpoint: before major refactor (stash@{1})"
Smart guardrails and workflow automation for Claude Code - catch errors in real-time, save checkpoints, and enhance AI coding with expert subagents
Repo: carlrannaberg/claudekit
Other commands on claudekit.
cli
Capture CLI tool help documentation and add it to CLAUDE.md for AI assistant reference

