Потеря данных сессии Claude Code: скрипт резервного копирования для Windows и Mac

✍️ OpenClawRadar📅 Опубликовано: 7 июня 2026 г.🔗 Source
Потеря данных сессии Claude Code: скрипт резервного копирования для Windows и Mac
Ad

Несколько пользователей в r/ClaudeAI сообщают, что Claude Code молча теряет данные сессий: название сессии остается в боковой панели, но при клике открывается пустой транскрипт. Ни предупреждения, ни ошибки, ни возможности восстановления. Это происходит при сжатии контекста, неожиданном завершении или проблемах с хранилищем.

Ad

Решение резервного копирования

Скрипт от сообщества копирует все данные Claude Code (sessions, projects, plans, drafts, memory) из ~/.claude в отдельную папку, запускается ежедневно через Task Scheduler (Windows) или launchd (Mac) и хранит 7 дней резервных копий с ротацией.

Windows (PowerShell + Task Scheduler)

Создайте папку для бэкапов:

mkdir C:\Users\%USERNAME%\ClaudeBackups

Сохраните следующий код как backup-claude-sessions.ps1 в этой папке:

$ErrorActionPreference = "Stop"
$source = "$env:USERPROFILE\.claude"
$backupRoot = "$env:USERPROFILE\ClaudeBackups"
$logFile = Join-Path $backupRoot "backup.log"
$keepDays = 7
$timestamp = Get-Date -Format "yyyy-MM-dd_HHmmss"
$backupDir = Join-Path $backupRoot $timestamp
$dirs = @("sessions", "projects", "plans", "drafts", "memory")

function Write-Log($msg) { $line = "$(Get-Date -Format 'yyyy-MM-dd HH:mm:ss') - $msg" Add-Content -Path $logFile -Value $line -Encoding utf8 }

try { Write-Log "=== Backup started ===" New-Item -ItemType Directory -Path $backupDir -Force | Out-Null foreach ($d in $dirs) { $src = Join-Path $source $d if (Test-Path $src) { $dst = Join-Path $backupDir $d Copy-Item -Path $src -Destination $dst -Recurse -Force $count = (Get-ChildItem $dst -Recurse -File -ErrorAction SilentlyContinue | Measure-Object).Count Write-Log " Copied $d ($count files)" } else { Write-Log " Skipped $d (not found)" } } $size = (Get-ChildItem $backupDir -Recurse -File | Measure-Object -Property Length -Sum).Sum Write-Log " Total backup size: $([math]::Round($size/1MB, 2)) MB" $cutoff = (Get-Date).AddDays(-$keepDays) Get-ChildItem $backupRoot -Directory | Where-Object { $.Name -match '^\d{4}-\d{2}-\d{2}\d{6}$' -and $.CreationTime -lt $cutoff } | ForEach-Object { Remove-Item $.FullName -Recurse -Force -Confirm:$false Write-Log " Rotated old backup: $($.Name)" } Write-Log "=== Backup completed successfully ===" } catch { Write-Log "!!! BACKUP FAILED: $" exit 1 }

Создайте install-schedule.ps1 и выполните от имени администратора один раз:

$action = New-ScheduledTaskAction     -Execute "powershell.exe"
    -Argument "-ExecutionPolicy Bypass -WindowStyle Hidden -File "$env:USERPROFILE\ClaudeBackups\backup-claude-sessions.ps1""
$trigger = New-ScheduledTaskTrigger -Daily -At 8:00AM
$settings = New-ScheduledTaskSettingsSet     -AllowStartIfOnBatteries
    -DontStopIfGoingOnBatteries     -StartWhenAvailable Register-ScheduledTask
    -TaskName "ClaudeSessionsBackup"     -Action $action
    -Trigger $trigger     -Settings $settings
    -Description "Daily backup of Claude Code sessions" `
    -RunLevel Limited
Write-Host "Готово! Запускается ежедневно в 8:00." -ForegroundColor Green

Запустите установщик:

powershell -ExecutionPolicy Bypass -File "C:\Users%USERNAME%\ClaudeBackups\install-schedule.ps1"

Mac (launchd + shell script)

Создайте папку для бэкапов:

mkdir -p /ClaudeBackups

Сохраните как /ClaudeBackups/backup-claude-sessions.sh:

#!/bin/bash
set -euo pipefail
SOURCE="$HOME/.claude"
BACKUP_ROOT="$HOME/ClaudeBackups"
LOG_FILE="$BACKUP_ROOT/backup.log"
KEEP_DAYS=7
TIMESTAMP=$(date +"%Y-%m-%d_%H%M%S")
BACKUP_DIR="$BACKUP_ROOT/$TIMESTAMP"
DIRS=("sessions" "projects" "plans" "drafts" "memory")
log() { echo "$(date '+%Y-%m-%d %H:%M:%S') - $1" >> "$LOG_FILE"; }
log "=== Backup started ==="
mkdir -p "$BACKUP_DIR"
for d in "${DIRS[@]}"; do
    src="$SOURCE/$d"
    if [ -d "$src" ]; then
        cp -R "$src" "$BACKUP_DIR/$d"
        count=$(find "$BACKUP_DIR/$d" -type f | wc -l | tr -d ' ')
        log " Copied $d ($count files)"
    else
        log " Skipped $d (not found)"
    fi
done
size=$(du -sb "$BACKUP_DIR" | cut -f1)
log " Total backup size: $(echo "scale=2; $size/1048576" | bc) MB"
find "$BACKUP_ROOT" -maxdepth 1 -type d -name "????-??-??_??????" -mtime +$KEEP_DAYS -exec rm -rf {} + -exec log " Rotated old backup: {}" ;
log "=== Backup completed successfully ==="

Сделайте файл исполняемым и настройте через launchd (см. оригинальный пост для настройки plist).

Скрипт работает полностью независимо от Claude Code, поэтому даже если Claude упадет или потеряет данные, бэкапы сохраняются. Он записывает каждый запуск в backup.log для проверки.

📖 Читать полный источник: r/ClaudeAI

Ad

👀 Смотрите также

Lightpanda: Открытый headless-браузер для LLM-агентов со встроенным MCP-сервером и выводом в формате markdown
Инструменты

Lightpanda: Открытый headless-браузер для LLM-агентов со встроенным MCP-сервером и выводом в формате markdown

Lightpanda — это открытый headless-браузер, разработанный для агентов на основе LLM, который использует в 16 раз меньше памяти, чем Chrome (215 МБ против 2 ГБ), и выполняет тесты веб-краулинга за 5 секунд вместо 47. Он предоставляет нативный вывод в формате markdown, семантическое дерево с определением интерактивности и встроенный MCP-сервер.

OpenClawRadar
Постоянная память для Claude: локальный стек с MCP, 39 мс на поиск, снижение токенов на 82%
Инструменты

Постоянная память для Claude: локальный стек с MCP, 39 мс на поиск, снижение токенов на 82%

Разработчик создал уровень постоянной памяти для Claude, используя локальный векторный поиск (Qdrant + Qwen3) и интеграцию MCP, достигнув 82% сокращения токенов, 39 мс при горячем пути извлечения и кристаллизации сессий через узлы L4.

OpenClawRadar
Flotilla v0.5.0 перерабатывает фоновое выполнение, чтобы обойти лимиты кредитов Claude SDK
Инструменты

Flotilla v0.5.0 перерабатывает фоновое выполнение, чтобы обойти лимиты кредитов Claude SDK

Flotilla v0.5.0 заменяет последовательное выполнение агентов неблокирующими параллельными циклами, тайм-аутами по 30 минут на агента и локальным делегированием для снижения расхода кредитов SDK.

OpenClawRadar
100 популярных приложений, реконструированных в спецификации дизайна Markdown для клонирования интерфейса Claude
Инструменты

100 популярных приложений, реконструированных в спецификации дизайна Markdown для клонирования интерфейса Claude

Репозиторий с открытым исходным кодом содержит структурированные спецификации дизайна в формате Markdown для 100 популярных iOS-приложений, оптимизированные для клонирования UI через Claude. Ключевые техники: точные значения цветов, охват состояний, шкалы отступов и графы навигации.

OpenClawRadar