home / skills / adaptationio / skrillz / checkpoint-manager
npx playbooks add skill adaptationio/skrillz --skill checkpoint-managerReview the files below or copy the command above to add this skill to your agents.
---
name: checkpoint-manager
description: State snapshots and rollback for safe experimentation. Use when creating checkpoints, rolling back changes, managing recovery points, or implementing safe experimentation.
version: 1.0.0
category: autonomous-coding
layer: verification-recovery
---
# Checkpoint Manager
Creates and manages state checkpoints for safe rollback during autonomous coding.
## Quick Start
### Create Checkpoint
```python
from scripts.checkpoint_manager import CheckpointManager
manager = CheckpointManager(project_dir)
checkpoint = await manager.create_checkpoint(
name="before-refactor",
description="State before major refactoring"
)
```
### Rollback to Checkpoint
```python
await manager.rollback(checkpoint.id)
# or rollback to latest
await manager.rollback_to_latest()
```
## Checkpoint Workflow
```
┌─────────────────────────────────────────────────────────────┐
│ CHECKPOINT WORKFLOW │
├─────────────────────────────────────────────────────────────┤
│ │
│ CREATE CHECKPOINT │
│ ├─ Capture git state (commit hash, dirty files) │
│ ├─ Snapshot feature list │
│ ├─ Save progress file state │
│ ├─ Record context (session, tokens) │
│ └─ Store checkpoint metadata │
│ │
│ RISKY OPERATION │
│ ├─ Attempt operation │
│ ├─ If success → Continue │
│ └─ If failure → Rollback to checkpoint │
│ │
│ ROLLBACK │
│ ├─ Load checkpoint data │
│ ├─ Git reset to checkpoint commit │
│ ├─ Restore feature list │
│ ├─ Restore progress file │
│ └─ Clean up temporary files │
│ │
└─────────────────────────────────────────────────────────────┘
```
## Checkpoint Structure
```json
{
"id": "checkpoint-20250115-103000",
"name": "before-refactor",
"description": "State before major refactoring",
"timestamp": "2025-01-15T10:30:00",
"git_state": {
"commit_hash": "abc1234",
"branch": "main",
"dirty_files": ["src/app.ts"]
},
"feature_state": {
"current": "auth-003",
"completed": ["auth-001", "auth-002"],
"snapshot_path": ".claude/checkpoints/checkpoint-xxx/feature_list.json"
},
"context": {
"session_number": 5,
"token_usage": 45000
}
}
```
## Checkpoint Types
| Type | Trigger | Retention |
|------|---------|-----------|
| **Automatic** | Before risky operations | Last 5 |
| **Manual** | User/agent request | Until deleted |
| **Feature** | After feature complete | Permanent |
| **Session** | Start of session | Last 3 |
## Integration Points
- **error-recoverer**: Triggers rollback on failures
- **coding-agent**: Creates checkpoints before changes
- **autonomous-loop**: Manages checkpoint lifecycle
- **context-state-tracker**: Provides state to checkpoint
## References
- `references/CHECKPOINT-STRATEGY.md` - Strategy guide
- `references/ROLLBACK-PROCEDURES.md` - Rollback details
## Scripts
- `scripts/checkpoint_manager.py` - Core manager
- `scripts/git_snapshot.py` - Git state capture
- `scripts/state_snapshot.py` - Feature/progress capture
- `scripts/rollback_handler.py` - Rollback execution