Deepseek ArtifactsDeepseek Artifacts
Сессии Claude Code

Возобновление сессии Claude Code: --resume, --continue и починка

Как снова открыть прошлый разговор Claude Code — через claude --continue, селектор claude --resume или ID сессии. Плюс где хранятся сессии, как работают имена и что делать, если resume ничего не находит.

Коротко

  • claude --continue (claude -c) заново открывает последний разговор в текущей папке — без вопросов. claude --resume (claude -r) открывает интерактивный селектор прошлых сессий или прыгает сразу в нужную по ID сессии или имени.
  • Каждая сессия лежит на диске как текстовый .jsonl-транскрипт в ~/.claude/projects/<папка-проекта>/<session-id>.jsonl и по умолчанию хранится 30 дней (настройка cleanupPeriodDays).
  • Назовите сессию, пока она открыта — /rename (или --name при запуске) — и возобновите ее через claude --resume <имя>. Имя должно совпадать точь-в-точь, до последнего символа.
  • "No sessions match" почти всегда означает неверную папку или опечатку в имени: сессии привязаны к каталогу, где они стартовали. И обновите Claude Code — одна только версия 2.1.288 починила четыре бага resume.

How to Resume an Old Session in Claude Code

Канал: Prompt & Flow2:37

Смотреть видео

Resume Claude Code Conversations FAST with One Simple Command

Канал: Vinod Sharma1:33

Смотреть видео

Save and Resume Any Claude Code Session | Next Session Prompt Skill

Канал: Kyle Chalmers | Data + AI4:27

Смотреть видео

CLI reference — official documentation

Официальная документация: code.claude.com/docs

Смотреть видео

Каждый флаг, путь и состояние селектора на этой странице сверены с официальной CLI-справкой и документацией data-usage. Запись терминала — визуальный источник, включая всю цепочку восстановления после забытого имени сессии; два видео с лицом в кадре — только фактические источники: обзор resume-процесса и рабочий процесс markdown-переноса сессий между машинами.

Скриншоты принадлежат своим авторам и ссылаются на соответствующий таймкод; кадры с лицами не используются.

Возобновление сессии Claude Code, шаг за шагом

Часть 1 — Возобновление через claude --resume

  1. 1

    Назовите сессию, прежде чем закрывать

    Сессию легко возобновить, когда ее легко опознать. На записи автор просит Claude Code назвать открытый разговор, выполняет /rename [open session 1] и получает подтверждение "Session renamed to: [open session 1]" — бейдж с именем появляется рядом с полем ввода. Затем /exit закрывает сессию. Ничего не удаляется: транскрипт остается на диске.

    Claude Code session ending with the /rename open session 1 command confirmed by Session renamed to output and /exit typed at the prompt
    /rename [open session 1] с подтверждением "Session renamed to: [open session 1]", затем /exit — транскрипт переживает закрытие.Смотреть с 0:27
  2. 2

    Запустите claude --resume из папки проекта

    В свежем терминале наберите claude --resume (краткая форма claude -r). Без аргумента откроется селектор прошлых сессий; с аргументом Claude Code идет прямо в сессию, чей ID или имя совпали — здесь claude --resume [session 1]. Ловушка, которую запись сейчас продемонстрирует: запускать нужно в той папке, где начиналась исходная сессия. Здесь запуск был из C:\Users\Z — домашнего каталога.

    Windows PowerShell prompt running claude --resume session 1 to reopen a previous Claude Code conversation by name
    claude --resume [session 1] в PowerShell — из домашнего каталога, и это сейчас выстрелит.Смотреть с 1:04
  3. 3

    Подтвердите запрос доверия к папке

    Когда Claude Code впервые открывает папку, он задает быстрый проверочный вопрос: "Is this a project you created or one you trust?" Выберите "1. Yes, I trust this folder" и нажмите Enter. Этот запрос про доступ к файлам, а не про сессии — он появляется, потому что папка еще не была помечена доверенной, и в любом случае предшествует resume-процессу.

    Claude Code folder trust prompt for the C drive user folder with 1. Yes I trust this folder and 2. No exit choices before a resume attempt
    "Quick safety check" — 1. Yes, I trust this folder / 2. No, exit — перед тем как Claude Code откроет папку.Смотреть с 1:12
  4. 4

    Ищите в селекторе Resume session

    Без точного совпадения claude --resume открывает интерактивный селектор с заголовком "Resume session": поле поиска поверх списка сессий текущего проекта. Вводите для фильтрации, Enter — выбрать, Esc — очистить или отменить. Переданное имя предзаполняет поиск — здесь [session — и список обновляется по мере набора.

    Claude Code Resume session picker searching for the name session and returning No sessions match with type to search hints
    Селектор "Resume session" фильтрует по мере ввода — Enter выбирает, Esc очищает поиск.Смотреть с 1:16

Часть 2 — Если селектор ничего не находит

  1. 5

    "No sessions match" — вы не в том каталоге

    Главный урок записи: селектор отвечает "No sessions match "[session 1]".", хотя сессия существует — сессии принадлежат папке, где стартовали, а селектор смотрит сначала только текущий проект. Строка подсказки дает запасной выход — "Ctrl+A to show all projects" — а с версии v2.1.223 --resume автоматически ищет и в других ваших проектах; сборка v2.1.220 в видео старше этого.

    Claude Code resume picker showing No sessions match session 1 with the Ctrl+A show all projects hint after searching in the wrong directory
    "No sessions match "[session 1]"." — сессия существует, но селектор ограничен домашним каталогом.Смотреть с 1:22
  2. 6

    Запустите обычную сессию claude для расследования

    Чтобы вернуть разговор по содержимому, а не угадыванием имен, запустите обычную сессию claude. Приветственный баннер на записи даже указывает на прежнюю ошибку — "Note: You have launched claude in your home directory" — подтверждая: пустой селектор был проблемой каталога, а не пропавшей сессией.

    Claude Code v2.1.220 welcome banner in the home directory where a fresh session is started to recover a lost conversation
    Приветственный баннер Claude Code v2.1.220 в C:\Users\Z — пометка про home directory объясняет пустой селектор.Смотреть с 1:33
  3. 7

    Попросите Claude найти вашу последнюю сессию

    Внутри свежей сессии опишите желание обычным языком: "I forgot the name of my last session. Name it so I can resume it." Claude Code умеет читать собственную историю транскриптов с диска — это работает даже там, где селектор не помог.

    Claude Code prompt asking I forgot the name of my last session, name it so I can resume it with the Gallivanting thinking indicator
    Отправлено "i forgot the name of my last session name it so i can resume it" — Claude начинает копать.Смотреть с 1:50
  4. 8

    Claude перечисляет ~/.claude/projects по свежести

    В ответ Claude запускает shell-команду по собственному хранилищу: Get-ChildItem "C:\Users\Z\.claude\projects" -Recurse -Filter *.jsonl | Sort-Object LastWriteTime -Descending. Это ровно та структура, что задокументирована — каждый разговор это .jsonl-транскрипт под ~/.claude/projects, разложенный по подпапкам проектов, хранится 30 дней по умолчанию.

    Claude Code running Get-ChildItem on the .claude projects folder sorted by LastWriteTime to list recent session transcripts
    Get-ChildItem по C:\Users\Z\.claude\projects, только *.jsonl, сначала новые — вот где на самом деле живут сессии.Смотреть с 1:54

Часть 3 — Возвращаем сессию по ID

  1. 9

    Claude опознает каждый транскрипт по первому сообщению

    Самый свежий транскрипт — текущая сессия, поэтому Claude вытаскивает первое сообщение пользователя из каждого недавнего — файлы вида C:\Users\Z\.claude\projects\C--Users-Z\<session-id>.jsonl — и называет их: исследовательский проект по WiFi-сигналу, запуск "lets go to phase 2", настройка проекта WhatsApp. Первые сообщения — надежный способ различить сессии одного проекта.

    Claude Code pulling the first user message from each session jsonl transcript under the .claude projects folder to identify past sessions
    Извлечение первого сообщения пользователя из каждого .jsonl в projects\C--Users-Z — сессии становится не спутать.Смотреть с 2:07
  2. 10

    Claude отвечает: возобновите через claude --resume <id>

    Ответ называет победителя и печатает точную команду — "Resume it with: claude --resume 7d824e2f-2592-4625-b863-43d5f24670ab" — затем таблицу остальных недавних сессий с колонками Session ID, Last active и Opened with, плюс пометку, что один ID был пустым, оборванным началом и к возобновлению не стоит.

    Claude Code answer listing past sessions in a Session ID, Last active and Opened with table with a claude --resume command to reopen one
    "Resume it with: claude --resume 7d824e2f-…" плюс таблица Session ID, Last active, Opened with.Смотреть с 2:18
  3. 11

    Возобновите сессию по ее ID

    ID сессии — это ваш ключ. Закройте вспомогательную сессию, cd в папку проекта и выполните claude --resume <session-id> — или передайте абсолютный путь к .jsonl-транскрипту. Добавьте --fork-session, чтобы получить новый ID сессии вместо продолжения исходной. Разговор откроется со всем своим контекстом.

    Claude Code prompt with resume 7d824e2f-2592-4625-b863-43d5f24670ab typed to reopen that exact past session by its session ID
    ID сессии, набранный в строке запроса — claude --resume <id> заново открывает именно этот разговор.Смотреть с 2:32

--resume против --continue против селектора сессий

В Claude Code несколько перекрывающихся дорог назад, в разговор. Отличаются они тем, сколько решений оставляют вам:

  • 1claude --continue (claude -c) — ноль решений. Заново открывает последний разговор в текущем каталоге, с версии v2.1.257 включая завершенную фоновую сессию. Для случая "я только что закрыл не то окно".
  • 2claude --resume (claude -r) без аргумента — интерактивный селектор. Перечисляет сессии этого проекта (живые фоновые помечены bg); Ctrl+A расширяет на все проекты, Esc отменяет. Лучший вариант, когда в папке несколько сессий.
  • 3claude --resume <id | имя | путь> — напрямик. Принимает ID сессии, точное имя, заданное через /rename или --name, или абсолютный путь к .jsonl-транскрипту. С v2.1.223 при отсутствии ID в этом проекте он ищет и в других ваших.
  • 4/resume и /rename внутри сессии — переключайте разговоры, не выходя из REPL, и подпишите текущую сессию, чтобы завтрашний claude --resume <имя> попал в точку. Имена уникальны; при коллизии добавляется вариантный суффикс.
  • 5claude --resume <id> --fork-session — ветвиться, а не продолжать. Переиспользует транскрипт, но чеканит новый ID сессии, оставляя историю исходной сессии замороженной как чекпоинт.
  • 6claude attach <id> — для сессий, которые еще крутятся в фоне. Селектор помечает живые через bg; после attach ваш следующий запрос становится следующим ходом той сессии.

На записи упражняются только с --resume, а --continue не появляется ни в одном кадре — это охват видео, а не предел возможностей. Официальная CLI-справка документирует оба флага рядом; там, где видео молчит, сравнение выше следует документации.

Возобновление сессии Claude Code не работает — починки, которые помогают

Большинство жалоб "resume ничего не делает" сводятся к одному из пунктов. Пройдите список сверху вниз:

  • 1Не тот каталог. Селектор видит только сессии текущего проекта — запись проваливается именно так из C:\Users\Z. cd в папку, где начиналась сессия; с v2.1.223 --resume ищет и в других проектах, но правильная папка все равно самый быстрый путь.
  • 2Старая версия. Одна только v2.1.288 починила четыре вещи: --resume терял файлы, которые compaction только что восстановила; возобновленная сессия не сохраняла последний ответ хода (следующий resume показывал запрос как оставшийся без ответа); транскрипты грузились обрезанными; мышление терялось при возобновлении сессий из 2.1.286 и старше. v2.1.290 починила --resume <session-id>, v2.1.292 — режим планирования в селекторе.
  • 3Сессия истекла. Транскрипты хранятся 30 дней по умолчанию — настройка cleanupPeriodDays двигает окно — а headless-запуски с -p вообще не сохраняют сессии. claude rm лишь убирает сессию из списка; очищенный транскрипт не возобновит никто.
  • 4Имя не совпадает. --resume сравнивает имена буквально. claude --resume [session 1] с записи проваливается дважды: настоящее имя было "open session 1", а квадратные скобки стали частью поисковой строки. Уберите скобки, а имена с пробелами берите в кавычки.
  • 5--continue хватает не то. Он пропускает сессии print-режима (-p)/SDK и /loop и смотрит только в текущий каталог — если с тех пор папку трогала другая сессия, мимо; возобновляйте по ID.
  • 6Другой компьютер. ~/.claude/projects локален — сессия с ноутбука на десктопе не существует. Скопируйте папку проекта на другую машину, сохранив структуру, или перейдите на markdown-эстафету: попросите Claude записать состояние сессии, решения и следующие шаги в файл, синхронизируйте и продолжайте на другой машине.

Ничего не помогло? Откройте ~/.claude/projects и проверьте метку времени .jsonl-файла. Если файл на месте, claude --resume с абсолютным путем — путь в лоб; если нет — разговор так и не попал на диск.

FAQ: возобновление сессии Claude Code

Похожие гайды по Claude Code