$npx -y skills add mworldorg/markdown-memory --skill mm-resumeВосстановить контекст в начале сессии или после /clear. Читает passport.md + dashboard + последнюю сессию + git status + (если есть GSD) полный контекст планирования (.planning/ для v1 или .gsd/ для v2 — STATE, ROADMAP, текущий phase CONTEXT/PLAN, HANDOFF.json). Выдаёт компактную
| 1 | # mm-resume — Context Restore for Claude Code |
| 2 | |
| 3 | Решает проблему: после `/clear`, `exit && claude`, или после паузы на день — нет контекста. Этот skill за один вызов читает все источники и говорит «где мы, что в работе, что брать следующим». |
| 4 | |
| 5 | **Это аналог git status, но для проекта в целом** — не для рабочей копии, а для головы. |
| 6 | |
| 7 | ## Когда вызывать |
| 8 | |
| 9 | - В начале новой Claude Code сессии в проекте — первая команда |
| 10 | - После `/mm save` → `/clear` — восстановить контекст в той же сессии |
| 11 | - После недели паузы — догнать что вообще происходило |
| 12 | - Когда юзер пишет «где мы», «что у нас», «напомни» — сразу запускай, не переспрашивай |
| 13 | |
| 14 | ## Конфиг |
| 15 | |
| 16 | Загрузи `mm-config.json` по алгоритму из `<repo>/docs/CONFIG-LOADING.md`. Поддержка `mm-config.local.json` overlay обязательна. |
| 17 | |
| 18 | Понадобятся: |
| 19 | - `paths.obsidian_projects` |
| 20 | - `paths.obsidian_sessions` (на случай старого формата без папки проекта) |
| 21 | |
| 22 | ## Процесс |
| 23 | |
| 24 | ### Шаг 0. Фоновый автоапдейт mm-системы (неблокирующий) |
| 25 | |
| 26 | Выполни в фоновом режиме команду проверки обновлений: |
| 27 | - На macOS/Linux: `python3 $MM_REPO_ROOT/scripts/auto-update.py --background &` (или используя путь `~/.markdown-memory/scripts/auto-update.py` если переменная не задана) |
| 28 | - На Windows: запусти `python` со скриптом `auto-update.py --background` в фоновом режиме (скрипт сам сделает Popen detached-процесс и мгновенно вернет управление). |
| 29 | |
| 30 | ### Шаг 1. Определи проект (worktree-aware) |
| 31 | |
| 32 | То же что в `mm-init-project` Phase 0: |
| 33 | - Если cwd внутри `.claude/worktrees/...` — resolve до main repo через `.git` файл-указатель |
| 34 | - Иначе — поднимись до корня (где `.git/`, `package.json`, `pyproject.toml`, и т.п.) |
| 35 | - Имя проекта = из `passport.md` frontmatter (если есть) ИЛИ basename корневой папки |
| 36 | |
| 37 | Если в проекте **нет** `passport.md` — скажи: `Проект не инициализирован для mm. Запустить /mm new сначала?` и остановись. |
| 38 | |
| 39 | ### Шаг 2. Прочитай источники (параллельно если можно) |
| 40 | |
| 41 | #### 2a. Паспорт |
| 42 | - `<project_root>/passport.md` — frontmatter, секция 8 (контекст промптов), секция 10 (текущее состояние) |
| 43 | |
| 44 | #### 2b. Obsidian-артефакты (Obsidian Knowledge Vault) |
| 45 | - Определи путь к хранилищу `<vault_root>` (из секции `## Obsidian Knowledge Vault` в `CLAUDE.md`, либо дефолтная локальная папка `.vault/`, либо глобальная папка проекта `<obsidian_projects>/<name>/`). |
| 46 | - Прочитай `<vault_root>/00-home/текущие приоритеты.md` — извлеки текущие цели, WIP и следующие шаги. |
| 47 | - Прочитай `<vault_root>/00-home/index.md` — для понимания структуры доступных в `knowledge/` и `atlas/` заметок. |
| 48 | - `<vault_root>/handoff.md` (если есть) — последний snapshot для chat; обязательно вытащи секцию «Точка возврата» (следующий шаг + висящее: неотправленный промпт прошлой сессии, недоделанное, WIP). |
| 49 | - `<vault_root>/sessions/` — найди самый свежий .md по mtime; прочти секции «Что сделано», «Открытые вопросы», «Следующие шаги». |
| 50 | - Если текущая задача пользователя касается конкретных интеграций, решений или архитектурных вопросов, найди релевантные заметки в `<vault_root>/knowledge/` (или в `atlas/`) и предложи агенту прочитать их. |
| 51 | |
| 52 | #### 2c. Git-контекст |
| 53 | ```bash |
| 54 | git rev-parse --show-toplevel |
| 55 | git branch --show-current |
| 56 | git status --short # сколько uncommitted |
| 57 | git log --oneline -5 # последние коммиты |
| 58 | git stash list 2>/dev/null # есть ли stash'ы |
| 59 | ``` |
| 60 | |
| 61 | #### 2d. GSD-контекст (dual-detection v1/v2/core) |
| 62 | |
| 63 | Сначала определи версию: |
| 64 | - `<project_root>/.planning/` существует: |
| 65 | - Если `<project_root>/.planning/config.json` существует → **GSD Core** |
| 66 | - Иначе → **GSD v1** |
| 67 | - `<project_root>/.gsd/` существует → **GSD v2** |
| 68 | - Оба → используй `gsd_version` из passport frontmatter; если нет — спроси. |
| 69 | - Ничего нет → пропусти секцию. |
| 70 | |
| 71 | **Если GSD v1 или GSD Core (`.planning/`)** — прочитай в этом порядке (приоритет ↓): |
| 72 | |
| 73 | 1. **`.planning/STATE.md`** — главное. Из него: текущий milestone, position (phase/step), последние решения, blockers. |
| 74 | 2. **`.planning/HANDOFF.json`** (если существует) — самый свежий snapshot от `/gsd-pause-work`. Если его mtime > чем у последней mm-сессии — приоритет HANDOFF. |
| 75 | 3. **`.planning/ROADMAP.md`** — список фаз с `[x]/[~]/[ ]`. Покажи позицию: фаза X из Y, прогресс milestone'а. |
| 76 | 4. **`.planning/phases/<NN-current>/CONTEXT.md`** (если есть текущая фаза) — preferences и решения этой фазы. Это критично — покажет что мы решали в текущей фазе. |
| 77 | 5. **`.planning/phases/<NN-current>/PLAN.md`** — что планировали. Извлеки список задач, посчитай completed/pending. |
| 78 | 6. **`.planning/phases/<NN-current>/SUMMARY.md`** (ес |