Как удалить сессии Claude Code и что при этом теряется

сессии лежат в ~/.claude/projects в виде файлов .jsonl: удалить можно через rm, claude project purge или таймер cleanupPeriodDays

Каждая сессия Claude Code записывается на диск в реальном времени в каталог ~/.claude/projects — по одной папке на проект и по одному файлу .jsonl на сессию. О существовании этих файлов обычно узнают, когда они разрастаются до гигабайтов (на рабочей машине с 13 проектами за два месяца набралось 875 файлов на 1,6 ГБ, причём один файл весил 586 МБ).

Перед запуском rm или claude project purge: удалённый .jsonl навсегда пропадает из claude --resume и любого будущего поиска. Проиндексируйте историю с помощью deja-vu за ~10 секунд (индекс занимает ~10% от исходного размера, секреты вырезаются) — тогда удалённые сессии останутся доступны для поиска, а deja resume <id> --write-back позволит вернуть нужную сессию обратно в claude --resume.

Команды для удаления сессий Claude Code

Начиная с Claude Code 2.1.126, удалить все сессии проекта целиком можно одной командой claude project purge (сначала запустите с --dry-run). Для удаления одной конкретной сессии отдельной команды в Claude Code нет — достаточно удалить её файл .jsonl или выбрать сессию в терминальном списке deja (клавиша D или deja delete <id>).

Команда /clear внутри чата ничего с диска не удаляет: она лишь открывает новую сессию с чистым контекстом, оставляя старый .jsonl на месте.

# все сессии текущего проекта (сначала проверьте список через --dry-run)
claude project purge --dry-run
claude project purge

# все проекты сразу
claude project purge --all

# одна сессия: посмотреть самые свежие или самые крупные и удалить файл
ls -lhS ~/.claude/projects/-Users-you-project/*.jsonl | head
rm ~/.claude/projects/-Users-you-project/<session-id>.jsonl

# или через deja (для любого из 43 агентов):
deja delete <session-id> --dry-run
deja delete <session-id>

# автоочистка сессий старше N дней в ~/.claude/settings.json
{ "cleanupPeriodDays": 7 }

Автоматическое удаление через 30 дней (cleanupPeriodDays)

По умолчанию Claude Code хранит транскрипты только 30 дней, после чего фоновая очистка удаляет их без уведомлений. Если вы хотите хранить файлы дольше, увеличьте cleanupPeriodDays в ~/.claude/settings.json:

{ "cleanupPeriodDays": 3650 }

Если вы используете deja-vu, все проиндексированные сессии остаются в локальном индексе даже после того, как Claude Code удалит исходные .jsonl. Во вкладке Deleted интерактивного экрана deja можно просмотреть такие сессии и нажать R (или выполнить deja resume <id> --write-back), чтобы записать диалог обратно в ~/.claude/projects для claude --resume.

Как освободить место без потери истории

Основной объём в ~/.claude/projects занимают не сотни старых диалогов, а 5–10 гигантских сессий с длинным выводом сборщиков и тестов. Чтобы быстро освободить гигабайты:

# найти файлы крупнее 50 МБ
find ~/.claude/projects -name '*.jsonl' -size +50M -ls

# сначала проиндексировать всё в deja, чтобы сохранить поиск
curl -fsSL https://raw.githubusercontent.com/vshulcz/deja-vu/main/install.sh | sh
deja install --auto

Быстрый старт deja · state.vscdb в Cursor слишком большой · История сессий Codex CLI

Пригодилось? Поставьте deja-vu звезду на GitHub.