Claude Code Annuler
Commandes et workflows complets de Claude Code Annuler pour annuler des modifications, gérer des points de contrôle et implémenter des fonctionnalités d’annulation granulaires sans gaspiller de tokens.
Vue d’ensemble
Les outils Claude Code Annuler fournissent des capacités de restauration de points de contrôle et d’annulation granulaire pour les sessions Claude Code, permettant aux développeurs d’annuler instantanément des modifications sans consommer de tokens API supplémentaires. Ces outils lisent les fichiers de session de Claude Code pour suivre les modifications de fichiers et permettre la restauration sélective d’états précédents, similaire à la fonctionnalité de point de contrôle de Cursor.
⚠️ Avis d’utilisation : Les outils d’annulation modifient les fichiers de session Claude Code et les fichiers de projet. Sauvegardez toujours les travaux importants et assurez-vous d’un contrôle de version approprié avant d’utiliser des opérations d’annulation.
Outils principaux
ccundo - Outil principal d’annulation
# Install ccundo globally
npm install -g ccundo
# Install from GitHub
git clone https://github.com/RonitSachdev/ccundo.git
cd ccundo
npm install
npm link
# Quick installation
npx ccundo --help
Annulation intégrée à Claude Code
# Native Claude Code undo commands
claude-code undo
claude-code undo --file filename.py
claude-code undo --last-edit
claude-code undo --to-checkpoint checkpoint-id
# Text editor tool undo
claude-code edit --undo-edit filename.py
Installation et configuration
Configuration de ccundo
# Initialize ccundo in project
ccundo init
# Configure ccundo
ccundo config --session-path ~/.claude/sessions
ccundo config --backup-dir ./backups
# Verify installation
ccundo --version
ccundo status
Intégration avec Claude Code
# Set up automatic checkpoint creation
export CCUNDO_AUTO_CHECKPOINT=true
export CCUNDO_CHECKPOINT_INTERVAL=10
# Configure session monitoring
ccundo monitor --auto-start
# Enable real-time tracking
ccundo track --enable
Commandes de base
Opérations d’annulation
| Commande | Description |
|---|---|
ccundo list | Lister les opérations d’annulation disponibles |
ccundo show | Afficher les modifications qui peuvent être annulées |
ccundo undo | Annuler dernière opération |
ccundo undo --file | Annuler les modifications d’un fichier spécifique |
ccundo undo --operation | Annuler l’opération spécifique |
ccundo redo | Rétablir l’opération précédemment annulée |
ccundo reset | Réinitialiser à l’état initial |
Gestion des points de contrôle
| Commande | Description |
|---|---|
ccundo checkpoint | Créer un point de contrôle manuel |
ccundo checkpoints | Lister tous les checkpoints |
ccundo restore | Restaurer au checkpoint |
ccundo delete-checkpoint | Supprimer un point de contrôle spécifique |
ccundo auto-checkpoint | Activer les points de contrôle automatiques |
ccundo checkpoint-info | Afficher les détails du point de contrôle |
Utilisation avancée
Annulation sélective
# View available operations
ccundo list --detailed
# Preview undo operation
ccundo preview --operation op-123
# Undo specific file changes
ccundo undo --file src/main.py --preview
# Undo multiple files
ccundo undo --files "src/*.py" --confirm
# Undo by time range
ccundo undo --since "10 minutes ago"
ccundo undo --between "1 hour ago" "30 minutes ago"
Mode interactif
# Start interactive undo session
ccundo interactive
# Interactive commands within session
> list # Show available operations
> show 5 # Show details of operation 5
> preview 5 # Preview undo of operation 5
> undo 5 # Undo operation 5
> checkpoint "milestone" # Create named checkpoint
> quit # Exit interactive mode
Opérations par lots
# Undo multiple operations
ccundo undo --operations 1,3,5,7
# Undo all operations since checkpoint
ccundo undo --since-checkpoint checkpoint-name
# Undo all file operations
ccundo undo --type file-edit
# Undo all operations by pattern
ccundo undo --pattern "*.js" --confirm
Configuration
Configuration de ccundo
{
"ccundo": {
"sessionPath": "~/.claude/sessions",
"backupDir": "./ccundo-backups",
"autoCheckpoint": true,
"checkpointInterval": 10,
"maxCheckpoints": 50,
"compressionEnabled": true
},
"monitoring": {
"enabled": true,
"realTime": true,
"trackFileChanges": true,
"trackConversation": false,
"excludePatterns": ["node_modules/", ".git/", "*.log"]
},
"safety": {
"confirmDestructive": true,
"backupBeforeUndo": true,
"maxUndoDepth": 100,
"preserveGitHistory": true
}
}
Règles automatiques de points de contrôle
{
"autoCheckpoints": {
"rules": [
{
"trigger": "file_count",
"threshold": 5,
"action": "create_checkpoint"
},
{
"trigger": "time_interval",
"interval": 600,
"action": "create_checkpoint"
},
{
"trigger": "significant_change",
"threshold": 0.3,
"action": "create_checkpoint"
}
],
"naming": {
"pattern": "auto-{timestamp}",
"includeDescription": true,
"maxLength": 50
}
}
}
Intégration des fichiers de session
Lecture des fichiers de session
# Analyze current session
ccundo analyze --session current
# Read specific session file
ccundo read --session ~/.claude/sessions/session-123.json
# Extract operation history
ccundo extract --session current --format json
# Validate session integrity
ccundo validate --session current
Surveillance de session
# Start session monitoring
ccundo monitor --session current --live
# Monitor multiple sessions
ccundo monitor --all-sessions
# Monitor with filters
ccundo monitor --filter "file-edit,tool-use"
# Export monitoring data
ccundo monitor --export monitoring.log
Suivi des modifications de fichiers
Détection des modifications
# Show file changes
ccundo changes --summary
# Detailed change analysis
ccundo changes --detailed --file src/app.py
# Compare with previous state
ccundo diff --operation 5
# Show change timeline
ccundo timeline --file src/app.py
# Export changes
ccundo changes --export changes.json
Gestion des états de fichiers
# Show file states
ccundo states --file src/app.py
# Restore file to specific state
ccundo restore-file --file src/app.py --state 3
# Compare file states
ccundo compare --file src/app.py --states 2,5
# Backup current file state
ccundo backup --file src/app.py
Intégration avec le contrôle de version
Intégration Git
# Create git checkpoint
ccundo checkpoint --git-commit
# Undo with git reset
ccundo undo --git-reset --soft
# Preserve git history
ccundo undo --preserve-git
# Sync with git branches
ccundo sync --git-branch feature/new-feature
Workflow Git
# Pre-commit checkpoint
git add .
ccundo checkpoint "pre-commit-$(date +%s)"
git commit -m "Feature implementation"
# Undo with git integration
ccundo undo --git-aware --operation 5
# Restore and create new branch
ccundo restore --checkpoint milestone-1 --git-branch fix/rollback
Fonctionnalités de sécurité
Système de sauvegarde
# Enable automatic backups
ccundo config --auto-backup true
# Create manual backup
ccundo backup --full
# Restore from backup
ccundo restore --backup backup-20250715-143000
# List available backups
ccundo backups --list
# Clean old backups
ccundo backups --clean --older-than 30d
Invites de confirmation
The translation maintains the original structure, markdown formatting, and keeps technical terms in English as requested.```bash
Enable confirmation for destructive operations
ccundo config —confirm-destructive true
Bypass confirmation (use with caution)
ccundo undo —force —operation 5
Dry run mode
ccundo undo —dry-run —operation 5
Preview mode
ccundo undo —preview-only —operation 5
```bash
# Intelligent operation grouping
ccundo undo --smart-group
# Undo related changes
ccundo undo --related --file src/app.py
# Undo by semantic meaning
ccundo undo --semantic "authentication logic"
# Undo by impact analysis
ccundo undo --impact-aware
```### Résolution de Conflits
```bash
# Handle undo conflicts
ccundo undo --resolve-conflicts interactive
# Merge strategies
ccundo undo --merge-strategy ours
ccundo undo --merge-strategy theirs
ccundo undo --merge-strategy manual
# Conflict preview
ccundo conflicts --preview --operation 5
```### Optimisation des Performances
```bash
# Optimize undo database
ccundo optimize --database
# Compress old operations
ccundo compress --older-than 7d
# Clean redundant data
ccundo clean --redundant
# Rebuild operation index
ccundo rebuild --index
```## Scripts et Automatisation
```bash
#!/bin/bash
# Automated undo script
# Create checkpoint before risky operation
ccundo checkpoint "before-experimental-changes"
# Perform risky operations
claude-code "implement experimental feature"
# Check if changes are satisfactory
if ! run_tests; then
echo "Tests failed, reverting changes"
ccundo restore --checkpoint "before-experimental-changes"
else
echo "Tests passed, keeping changes"
ccundo checkpoint "experimental-feature-complete"
fi
```### Scripts d'Annulation Automatiques
```javascript
// Node.js integration
const ccundo = require('ccundo');
// Create checkpoint before AI operation
await ccundo.checkpoint('before-ai-changes');
// Perform Claude Code operation
const result = await claudeCode.execute(prompt);
// Evaluate result quality
const quality = await evaluateCodeQuality(result);
if (quality < threshold) {
// Undo if quality is poor
await ccundo.undo({ operation: 'last' });
console.log('Reverted poor quality changes');
} else {
// Keep good changes
await ccundo.checkpoint('good-ai-changes');
}
```### Scripts d'Intégration
```bash
# Session file not found
ccundo diagnose --session-path
# Permission issues
ccundo fix --permissions
# Corrupted session data
ccundo repair --session current
# Missing operation history
ccundo rebuild --history
# Performance issues
ccundo optimize --performance
```## Dépannage
```bash
# Enable debug logging
DEBUG=ccundo:* ccundo undo --operation 5
# Verbose output
ccundo --verbose undo --operation 5
# Trace mode
ccundo --trace undo --operation 5
# Log to file
ccundo undo --log-file debug.log --operation 5
```### Problèmes Courants
```bash
# Recover from failed undo
ccundo recover --last-operation
# Emergency restore
ccundo emergency-restore --backup latest
# Rebuild corrupted data
ccundo rebuild --force
# Reset to clean state
ccundo reset --hard --confirm
```### Mode Débogage
```bash
# Regular checkpoints
ccundo checkpoint "milestone-$(date +%Y%m%d-%H%M)"
# Feature-based checkpoints
ccundo checkpoint "feature-auth-complete"
# Before major changes
ccundo checkpoint "before-refactor-$(git rev-parse --short HEAD)"
# After successful tests
ccundo checkpoint "tests-passing-$(date +%s)"
```### Opérations de Récupération
```bash
# 1. Review available operations
ccundo list --recent 10
# 2. Preview undo operation
ccundo preview --operation 5
# 3. Create safety checkpoint
ccundo checkpoint "before-undo-op5"
# 4. Perform undo
ccundo undo --operation 5
# 5. Verify results
ccundo verify --operation 5
# 6. Clean up if successful
ccundo clean --old-checkpoints
```## Meilleures Pratiques
```json
{
"ccundo.autoCheckpoint": true,
"ccundo.checkpointInterval": 300,
"ccundo.showInStatusBar": true,
"ccundo.confirmDestructive": true,
"ccundo.keybindings": {
"undo": "ctrl+alt+z",
"checkpoint": "ctrl+alt+s",
"list": "ctrl+alt+l"
}
}
```### Stratégie de Point de Contrôle
```yaml
# GitHub Actions workflow
name: Safe AI Development
on: [push, pull_request]
jobs:
test-with-undo:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Setup ccundo
run: npm install -g ccundo
- name: Create checkpoint
run: ccundo checkpoint "ci-start-${{ github.sha }}"
- name: Run AI-assisted development
run: |
claude-code "optimize performance"
npm test || ccundo restore --checkpoint "ci-start-${{ github.sha }}"
```### Workflow d'Annulation
https://github.com/RonitSachdev/ccundo#
# Ressources
https://docs.anthropic.com/en/docs/agents-and-tools/tool-use/text-editor-tool- [Dépôt GitHub ccundo](https://discord.gg/claude-undo)https://youtube.com/ccundo-tutorials- [Documentation Claude Code Undo](https://docs.ccundo.dev/best-practices)