Как найти расположение JSONL-файла сессии Claude Code?
Все файлы сессий лежат в одном фиксированном каталоге: ~/.claude/projects/. Если sessionId известен, поиск занимает секунды; если нет — можно искать по содержимому или времени.
Сначала разберитесь с правилом именования
Каждый подкаталог ~/.claude/projects/ соответствует одному проекту (рабочему каталогу). Имя образуется из пути проекта: символы /, _ и прочие не-буквенно-цифровые заменяются дефисами -. Например:
Путь проекта Каталог сессий
/Users/you/Documents/my_app → -Users-you-Documents-my-app
/home/you/projects/shop-api → -home-you-projects-shop-api
Каждая сессия — отдельный файл: <sessionId>.jsonl (UUID вида 9a1b2c3d-…).
Случай 1: sessionId известен — просто find
find ~/.claude/projects -name "<sessionId>.jsonl"
Откуда взять sessionId? Проще всего ввести слэш-команду /status прямо в разговоре — в выводе есть текущий Session ID. Также его видно в списке claude --resume, в сообщениях об ошибках или в поле «Session ID» боковой панели просмотрщика.
Случай 2: sessionId нет — поиск по содержимому
Если помните фразу из разговора (например, свой вопрос), сделайте grep:
# Искать ключевую фразу во всех сессиях, показать файлы
grep -l "починить страницу логина" ~/.claude/projects/*/*.jsonl
# Искать только в каталоге одного проекта
grep -l "починить страницу логина" ~/.claude/projects/-Users-you-Documents-my-app/*.jsonl
Случай 3: свежие сессии по времени
# 10 последних изменённых файлов сессий
ls -t ~/.claude/projects/*/*.jsonl | head -10
Графический способ: пусть CCViewer сделает всё сам
Не хочется вводить команды? CCViewer позволяет выбрать (или перетащить) всю папку ~/.claude/projects/: он рекурсивно просканирует все .jsonl, сгруппирует по проектам, отсортирует по времени и покажет название, путь, диапазон времени, число сообщений и стоимость каждой сессии — клик и открыли, знать расположение файла не нужно.
Советы для macOS: открытие скрытых папок
- В Finder нажмите ⌘⇧G, введите
~/.claude/projectsи Enter; - В диалогах выбора файлов ⌘⇧. показывает скрытые папки (каталоги, начинающиеся с
., по умолчанию невидимы).
Откройте страницу и перетащите файл
.jsonl — или всю папку ~/.claude/projects/. Markdown, блоки размышлений, вызовы инструментов, статистика токенов и расходов — всё обрабатывается локально в браузере, ничего не отправляется.