# Session Catchup

> Работа прервалась и контекст потерян — восстановить его из git, файлов состояния и истории диалога: что уже сделано, на чём остановились, что осталось. Только чтение, ничего не правит. Используй когда пользователь говорит «возобнови работу», «возобнови сессию», «на чём мы остановились», «resume», приходит после перерыва, перезагрузки компьютера или компактификации контекста, либо открывает проект, которым давно не занимался. Не про сохранение сессии и не про передачу её другому агенту.

- Skill: `goldenprofile/session-catchup` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add goldenprofile/session-catchup`
- Raw SKILL.md: https://api.skillmd.com/api/skills/goldenprofile/session-catchup/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: goldenprofile (https://skillmd.com/u/goldenprofile)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/goldenprofile/session-catchup

---


# Session Catchup

Возобновляет прерванную работу: собирает состояние из всех источников, подводит итог сделанного, при необходимости гоняет быструю диагностику и предлагает следующие шаги. **Только чтение** — ничего не правит и не коммитит.

Если переданы аргументы (`$ARGUMENTS`) — сфокусируй сбор состояния, итоги и диагностику на этой области (конкретный модуль, подсистема, фича).

## Quick start

1. Собери состояние (см. чек-лист ниже). Для каждого источника пометь: доступен / пуст / нет.
2. Восстанови контекст одним абзацем: над чем шла работа, на каком шаге прервалась.
3. Подведи итог выполненного (со ссылками `file:line` / хешами коммитов).
4. Реши, нужна ли диагностика (см. «Критерий запуска»). Если да — прогони её.
5. Выдай сводку по шаблону из 6 секций (см. «Формат вывода»).

## Workflow

### Шаг 1. Сбор состояния

Проверь каждый источник, не угадывай его наличие:

- [ ] **git** — `git status`, `git log --oneline -15`, текущая ветка, незакоммиченный `git diff --stat`, `git stash list` (отложенные изменения легко забыть).
- [ ] **История диалога** — о чём шла речь в этой сессии (включая summary после компактификации, если был).
- [ ] **TODO/план** — велся ли план задачи в этой сессии.
- [ ] **Файлы состояния** — если проект их ведёт: `.claude/`, `docs/`, notepad/state-механики плагинов.
- [ ] **Канонические документы** — `CLAUDE.md`, `ARCHITECTURE.md`, `CHANGELOG`, `ROADMAP` (если есть).

«Сессия» = совокупность этих источников, а не только текст чата. Детали и приоритеты — в [references/reference.md](references/reference.md).

### Шаг 2. Решение о диагностике

**Критерий запуска** — запусти экспресс-диагностику, если выполнено ХОТЯ БЫ ОДНО:

- в git есть незакоммиченные изменения;
- сессия прервалась посреди задачи (есть незавершённый код/план);
- контекст частично потерян и его надо валидировать кодом;
- последние изменения затронули критичные зоны (миграции, settings, деплой-конфиги, зависимости).

Если ничего из этого нет (чистое дерево, задача завершена) — **диагностику пропусти и явно сообщи об этом**.

### Шаг 3. Экспресс-диагностика (если критерий выполнен)

«Экспресс» = быстрые read-only проверки, БЕЗ глубокого аудита:

1. **Команды проекта.** Узнай реальные команды test/lint/build из `Makefile` / `package.json` / `pyproject.toml` / `CLAUDE.md` — **не угадывай**. Запусти их. Долгие — через `run_in_background`.
2. **Git-состояние.** `git status` + `git diff --stat` — что несогласовано.
3. **Red flags в изменённых файлах.** Свежие `TODO`/`FIXME`/`HACK`, оборванные импорты, синтаксис, забытые `print`/`console.log`/`debugger`/`breakpoint()`, частичные правки (изменён вызов, но не определение — или наоборот).
4. **Незакрытые конфликты слияния.** Маркеры `<<<<<<<`, `=======`, `>>>>>>>` в изменённых файлах — это блокер.
5. **Рассинхрон доков и кода.** Если менялась структура — обновлены ли `ARCHITECTURE`/`CHANGELOG`.

**НЕ входит в «экспресс»:** полный security-аудит, рефакторинг, покрытие тестами, профилирование. Нашёл повод для глубокого аудита — предложи отдельно (например, скилл `python-project-audit` или `code-review`), но **не запускай без подтверждения**.

### Шаг 4. Формат вывода

Выдай компактную структуру без «воды». Шаблон (опускай пустые секции, кроме «Контекст» и «Следующие шаги»):

```
## Контекст сессии
<1 абзац: над чем работали, на каком шаге прервались>

## Выполнено
- <изменение со ссылкой file:line / хешем коммита>

## Не завершено / запланировано
- <что начато но не доделано; что планировалось но не начато>

## Диагностика
- сборка: <ok / проблема / не запускалась>
- тесты: <ok / проблема / не запускались>
- прочее: <линтер, типы, TODO/FIXME, конфликты слияния — только значимое>
(или: пропущена, причина: <критерий не выполнен>)

## Риски и блокеры
- <что сломает продолжение; внешние предусловия; вопросы к пользователю>

## Следующие шаги
1. <шаг по приоритету>
2. <шаг>

Подтвердите план или скорректируйте — после этого приступлю к изменениям.
```

Если найдены **блокеры** (падает сборка, сломаны миграции, незакрытые конфликты) — вынеси их в самое начало, до «Контекста».

## Граничные случаи

- **Пустая/новая сессия, контекст потерян** — не выдумывай историю. Сообщи, что восстановить не удалось, предложи начать с `git status` + канонических документов.
- **Не git-репозиторий** — пропусти git-проверки, опирайся на файлы состояния и документы.
- **Нет команд test/lint/build** — сообщи об этом, не выдумывай команды.
- **Найдены блокеры** (падает сборка, сломаны миграции) — вынеси их в НАЧАЛО сводки, до остального отчёта.

## Ограничения

- **Только чтение и диагностика.** Не правь код, не коммить и не запускай деструктивных операций без явного подтверждения плана пользователем: `git push`, `git reset --hard`, `git rebase`, `git stash drop/pop`, удаление файлов, миграции.
- Не превращай «экспресс» в полный аудит — соблюдай границы Шага 3.
- Ответ пользователю — на русском (язык проектных инструкций пользователя).

