Версия: 1.0.0
Дата: 2026-03-05
Последняя неделя Старые чаты (архивы)
~/.claude/projects/ → $INFRA_BACKUPS/L4-CLAUDE/sessions/
(в памяти сервера) sessions-2026-W09.tar.gz
sessions-2026-W10.tar.gz
sessions-2026-W11.tar.gz
...
~/.claude/projects/ (доступны напрямую)$INFRA_BACKUPS/L4-CLAUDE/sessions/
# = /mnt/beget-infra/dev-pro/backup/L4-CLAUDE/sessions/
ls $INFRA_BACKUPS/L4-CLAUDE/sessions/
# sessions-2026-W09.tar.gz
# sessions-2026-W10.tar.gz
ls -lh $INFRA_BACKUPS/L4-CLAUDE/sessions/
# Распаковать во временную папку
mkdir -p /tmp/sessions-W10
tar -xzf $INFRA_BACKUPS/L4-CLAUDE/sessions/sessions-2026-W10.tar.gz \
-C /tmp/sessions-W10/
ls /tmp/sessions-W10/
# Через стандартный скрипт платформы
python3 $WORKSPACE/system/scripts/sessions.py list \
--dir /tmp/sessions-W10/
# Или вручную
ls /tmp/sessions-W10/-opt-claude-workspace/
# Через session_extract
python3 $WORKSPACE/system/scripts/session_extract.py \
/tmp/sessions-W10/-opt-claude-workspace/SESSION_ID.jsonl
# Или напрямую (сырой JSON)
cat /tmp/sessions-W10/-opt-claude-workspace/SESSION_ID.jsonl | \
python3 -c "import sys,json; [print(json.dumps(json.loads(l), ensure_ascii=False, indent=2)) for l in sys.stdin]"
Каждый чат — файл .jsonl (JSON Lines):
- Одна строка = одно сообщение
- Поля: role (user/assistant), content, timestamp
Пример:
{"role": "user", "content": "режим оператор", "timestamp": "2026-03-05T02:00:00"}
{"role": "assistant", "content": "HOOK OK...", "timestamp": "2026-03-05T02:00:01"}
bash $WORKSPACE/infra/@backup.service/scripts/backup-sessions.sh
python3 $WORKSPACE/system/scheduler/run.py --list | grep sessions
infra/@backup.service/scripts/backup-sessions.shsystem/scheduler/schedule.yaml → backup_sessionssystem/scripts/sessions.pysystem/config/platform-vars.sh → $INFRA_BACKUPS