Почему это важно именно вам
Есть определённый тип задач, которые не решаются за один подход. Сложный договор, который нужно изучать частями. Стратегический документ, к которому возвращаешься три дня подряд. Переписка с подрядчиком, которую анализируешь по мере поступления новых писем.
В браузере для этого есть история чатов: нашёл нужный разговор, продолжил. В Claude Code это работает через флаги --continue и --resume. Разница: браузерная история — это интерфейс. Флаги Claude Code — это возможность встроить «продолжение разговора» в скрипт.
Для директора это ценно в ситуациях, когда контекст накапливается постепенно: сначала собрали требования, потом добавили ограничения, потом появились новые данные. Каждый раз начинать заново — значит каждый раз заново объяснять всё с начала.
Что это такое
Каждая сессия Claude Code имеет уникальный идентификатор (session ID). По умолчанию каждый запуск — это новая сессия с пустой памятью.
--continue — продолжает самую последнюю сессию, ID знать не нужно. Нюанс: обычный claude --continue пропускает сессии, запущенные через -p, — для них добавляйте -p (claude -p --continue "...") или возобновляйте по ID.
--resume <ID или имя> — возобновляет конкретную сессию. По имени удобнее: имя задаётся флагом --name при запуске или командой /rename.
Аналогия: представьте стопку папок с документами. Каждая сессия — это папка. --continue говорит «открой последнюю папку». --resume — «открой папку с номером 7823».
Где хранятся сессии
Claude Code хранит историю сессий локально. Место хранения зависит от операционной системы, обычно это ~/.claude/. Сессии доступны между перезапусками терминала.
Как работает на практике
Продолжить последнюю сессию
claude --continue
Открывает интерактивный режим с контекстом из последней сессии. Claude «помнит» всё, что обсуждалось.
В headless-режиме:
claude --continue -p "добавь к предыдущему анализу раздел о рисках"
Это мощный паттерн: строить документ итеративно, добавляя части через отдельные -p-команды.
Получить ID последней сессии
claude --output-format json -p "привет" | jq '.session_id'
Или посмотреть список сессий:
claude --resume
Возобновить конкретную сессию
claude --resume abc123def456
Здесь abc123def456 — идентификатор сессии из списка claude --resume.
В headless-режиме:
claude --resume abc123def456 -p "итак, о чём мы говорили — сделай итоговый список договорённостей"
Сохранить ID для возврата к сессии
Паттерн для работы с долгим проектом:
# Начало работы с договором — сохраняем ID сессии
SESSION_ID=$(claude --output-format json -p "это договор с подрядчиком на разработку. начнём анализ рисков с раздела 3" < договор.txt | jq -r '.session_id')
echo $SESSION_ID > договор_сессия.txt
# На следующий день — продолжаем
SESSION_ID=$(cat договор_сессия.txt)
claude --resume $SESSION_ID -p "теперь проанализируй раздел 5 про штрафные санкции" < раздел5.txt
Итеративное построение документа
Один из самых полезных паттернов: строить длинный документ частями, каждый раз добавляя контекст.
# Шаг 1: создать структуру
claude -p "создай структуру отчёта о состоянии проекта с разделами: Статус, Риски, Следующие шаги" > отчёт.md
SESSION_ID=$(claude --output-format json -p "запомни: мы пишем отчёт о проекте 'Новый портал', дедлайн 30 июня, бюджет 2М руб" | jq -r '.session_id')
# Шаг 2: заполнить раздел Статус
claude --resume $SESSION_ID -p "напиши раздел Статус: выполнено 40% работ, дизайн готов, разработка идёт с задержкой 2 недели" >> отчёт.md
# Шаг 3: добавить Риски
claude --resume $SESSION_ID -p "напиши раздел Риски на основе того, что знаешь о проекте" >> отчёт.md
--continue vs --resume
--continue удобен в интерактивной работе: продолжил то, над чем работал час назад. --resume нужен для структурированных рабочих процессов, где конкретная сессия привязана к конкретному проекту или документу.
Просмотр истории сессий
claude --resume
Выводит список сессий с идентификаторами и временными метками. Помогает найти нужную сессию, если не сохранили ID.
Частые ошибки
Ошибка 1. Ожидать, что --continue помнит всё вечно
Сессии хранятся локально и могут быть ограничены по времени или объёму. Для долгосрочных проектов (недели и месяцы) надёжнее сохранять ключевой контекст в CLAUDE.md или в файлах, которые передаёте в каждый запрос. Об этом в Дне 11.
Ошибка 2. Использовать --continue для разных задач
Если работаете над несколькими проектами, --continue приносит контекст предыдущей задачи в новую. Это путаница. Для каждого проекта — своя сессия с сохранённым ID.
Ошибка 3. Не сохранять ID важных сессий
Если начали важную работу и хотите вернуться — сразу сохраните ID. claude --resume поможет найти нужную, но если сессий много — искать неудобно.
Ошибка 4. Ожидать, что сессия помнит файлы на диске
Сессия помнит содержимое разговора, а не файлы. Если в прошлый раз передавали договор через stdin — сессия помнит его текст (если он вошёл в контекст). Но при следующем запуске Claude не «откроет» файл сам — нужно снова передавать.
Когда нужно / когда нет
--continue нужен, если:
- Продолжаете работу, начатую в последней сессии
- Добавляете к уже созданному документу
- Хотите уточнить что-то из предыдущего разговора
--resume нужен, если:
- Работаете над несколькими проектами параллельно
- Возвращаетесь к конкретному разговору через несколько дней
- Строите скрипт с явной привязкой к сессии проекта
Сессии не нужны, если:
- Каждый запрос независим и самодостаточен
- Контекст целиком передаётся через stdin каждый раз
- Используете CLAUDE.md для постоянного контекста (День 11)
Связь с другими уроками
- День 11 — CLAUDE.md: альтернативный способ сохранять контекст, который работает между любыми сессиями
- День 35 — именованные сессии
--name: более удобный способ управлять несколькими параллельными проектами - День 19 — компакция контекста: что делать, когда сессия становится слишком большой
Задание на сегодня
Создайте двухшаговый рабочий процесс с продолжением сессии:
# Шаг 1: начните сессию и сохраните ID
SESSION=$(claude --output-format json \
-p "мы работаем над планом встречи с ключевым клиентом. Клиент — крупный застройщик, нужно обсудить продление договора на следующий год" \
| jq -r '.session_id')
echo "Session: $SESSION"
# Шаг 2: продолжите в той же сессии
claude --resume $SESSION -p "теперь составь повестку встречи из 5 пунктов"
Критерий выполнено: второй запрос использует контекст первого — в повестке отражено, что речь о застройщике и продлении договора.
Резюме
--continue— продолжить последнюю сессию--resume ID— продолжить конкретную сессию по идентификаторуclaude --resumeбез аргументов — интерактивный список сессий: имена, время, ID (внутри сессии то же делает/resume)- Сохраняйте ID через
jq '.session_id'для долгосрочных проектов - Сессии хранят контекст разговора, но не файлы на диске
- Для постоянного контекста между сессиями — CLAUDE.md (День 11)