Skip to content
Development
Skill

/mm-handoff

Генерирует handoff.md — компактную сводку для нового чата claude.ai когда контекст текущего заполнился. Включает 15-категорийный Session Guide (вдохновлено context-mode), выжимку последних сессий, текущее состояние, открытые вопросы, и (если есть GSD) — current phase + last 3

From plugin
markdown-memory
2514 skills
Install
$ npx -y skills add mworldorg/markdown-memory --skill mm-handoff --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/mm-handoff

Context preview

The summary Claude sees to decide when to auto-load this skill.

Генерирует handoff.md — компактную сводку для нового чата claude.ai когда контекст текущего заполнился. Включает 15-категорийный Session Guide (вдохновлено context-mode), выжимку последних сессий, текущее состояние, открытые вопросы, и (если есть GSD) — current phase + last 3

SKILL.md

mm-handoff.SKILL.md
name: mm-handoff
version: 0.7.2
description: Генерирует handoff.md — компактную сводку для нового чата claude.ai когда контекст текущего заполнился. Включает 15-категорийный Session Guide (вдохновлено context-mode), выжимку последних сессий, текущее состояние, открытые вопросы, и (если есть GSD) — current phase + last 3 SUMMARY.md. Use when user says "контекст заполнен", "новый чат", "handoff", "сводка для нового чата", "/mm-handoff", "пора закругляться, готовь следующий чат". НЕ путать с mm-save-session — этот про подготовку СЛЕДУЮЩЕГО чата, save-session про закрытие текущего.

mm-handoff — Snapshot for Next claude.ai Chat

Решает проблему: контекст в чате claude.ai заполнен. Дополняет Anthropic Memory структурированным компактным snapshot'ом, который загружается в Project Knowledge.

**Memory vs Handoff:** Memory (Anthropic, авто) хранит долгосрочные факты о тебе и проекте. Handoff (этот skill, ручной) — свежий контекст за 1-2 недели: что сделано, что в работе, что открыто. Не конкурируют — дополняют.

Когда вызывать

  • **Автоматически** — из `/mm-save-session` (шаг 5.6) при каждом закрытии сессии, чтобы handoff.md в Project Knowledge claude.ai всегда был свежим. Это основной путь, руками дёргать не надо.
  • **Вручную** (`/mm-handoff` или `/mm next`) — когда контекст текущего чата забился, а сессию закрывать рано: обновить handoff, не закрывая сессию.
  • Перед стартом нового чата в claude.ai по тому же проекту
  • В конце большой вехи (после серии сессий)
  • Перед паузой на несколько дней — чтобы вернуться без раскачки

> Скелет handoff.md создаётся ещё на `/mm-init-project`; первый же `/mm-save-session` заменяет его полноценной версией через этот skill.

Конфиг

Загрузи `mm-config.json` по алгоритму из `<repo>/docs/CONFIG-LOADING.md`. Поддержка `mm-config.local.json` overlay обязательна.

Понадобятся:

  • `paths.obsidian_projects`
  • `paths.obsidian_sessions`
  • `paths.obsidian_index` (INDEX.md)

Процесс

Шаг 1. Определи проект и хранилище Vault

  • Прочитай `passport.md` в текущей `cwd`. Если нет — спроси: «Для какого проекта handoff? Дай путь.» или «Запустить /mm-init-project сначала?»
  • Из паспорта возьми: имя, тип, путь.
  • Определи путь базы знаний `<vault_root>` (определяй по единому алгоритму: (1) из секции `## Obsidian Knowledge Vault` в `CLAUDE.md` со строкой `Хранилище знаний: <путь>`, если она есть; (2) локальная папка `.vault/` в корне проекта; (3) глобальная папка проекта `<obsidian_projects>/<name>/` из конфига).

Шаг 2. Собери сводку последних сессий — index-first, тела лениво

> **Progressive disclosure (достройка существующей 3-слойной структуры mm, не новый механизм).** Индекс однострочников уже есть — не вычитывай полные тела сессий ради «Что сделано». Раньше handoff читал 3-5 ПОЛНЫХ тел при каждом вызове; теперь основной источник — дешёвый индекс, а тела открываются лениво. Цель — экономия контекста на «толстых» проектах.

Определи окно: сессии этого проекта за последние 14 дней (по дате в имени файла `YYYY-MM-DD-HHMM-slug` или mtime).

1. **Индекс-слой (дёшево, основной источник для «Что сделано за период»):**

  • Прочитай `<vault_root>/00-home/index.md` И/ИЛИ `<obsidian_index>` (INDEX.md), отфильтровав строки по этому проекту за окно.
  • Каждая строка индекса — готовый однострочник сессии (формат `- <дата> · **<project>** · [[Sessions/<id>|<тема/что сделано>]]` или аналогичный).
  • **Парсинг ссылки сессии**: Парсер должен принимать любые форматы ссылок: `[[Sessions/<id>]]`, `[[sessions/<id>]]`, а также полные или относительные пути вроде `[[Projects/<name>/sessions/<id>]]` или `[[../Projects/<name>/sessions/<id>]]`. Всегда бери **`<id>` из самого хвоста пути** (имя файла без расширения). ID сессии = `<id>`.
  • «Что сделано за период» собирай **из этих однострочников**, БЕЗ открытия тел.

2. **Тело `sessions/<id>.md` (или по пути из ссылки) открывай ЛЕНИВО — точечно по ID, не все подряд — только когда:**

  • это **топ-1 самая свежая** сессия (нужны её «Ключевые решения» и «Открытые вопросы» дословно — см. п.3), ИЛИ
  • однострочника индекса **недостаточно** для внятного пункта (пустой / обрезанный / сессии нет в индексе), ИЛИ
  • пользователь явно просит детали по конкретному ID/теме.

3. **«Ключевые решения» и «Открытые вопросы» — ВСЕГДА полностью, не прятать в индекс:**

  • Источник: тело **топ-1 свежей** сессии (её читаем всегда) + `<vault_root>/00-home/текущие приоритеты.md` + passport §10.
  • Если важное решение/вопрос виден в однострочнике более старой сессии — **открой её тело**, чтобы не потерять. Детали не теряем — только откладываем чтение; тело остаётся каноном и подтягивается по ID/`[[ссылке]]`.

4. **No-op на мелких/молодых проектах:** если сессий **< 3** ИЛИ однострочники по сути равны телам (очень короткие сессии) — ленивость не даёт выигрыша, читай тела как раньше. Не усложняй там, где экономии нет.

5. **Fallback (мягкая деградация и защита от сбоев):**

  • Старые сессии без чистого однострочника в индексе → прочитай тело. Никогда не падай из-за отсутствия/неполноты индекса.
  • **Защита от падений**: генерация handoff **НИКОГДА** не должна аварийно завершаться из-за ошибок чтения или отсутствия файлов сессий. Если тело последней сессии (или любой другой) прочесть не удалось (например, неверный путь, удален файл, ошибка парсинга), не падай. Вместо этого заполни доступные секции, а в «Точке возврата» (Point of Return) явно укажи: «не удалось прочитать последнюю сессию (проверьте путь/ссылку)» вместо прерывания генерации.

Извлекаемое на сессию (как и раньше): Дата · Что сделано (1-3 пункта) · Ключевые решения · Открытые вопросы — но «Что сделано» теперь преимущественно из индекса, тела — лениво.

Шаг 3. Собери git-контекст (если репо)

git log --oneline --since="14 days ago"
git status --short
git branch --show-current

Из этого: последние ~10 коммитов, текущая ветка, есть ли несохранённые изменения.

Шаг 4. Прочитай текущие приоритеты

`<vault_root>/00-home/текущие приоритеты.md` — секция «Сейчас»

Read more
Ships withmarkdown-memory

A file-based memory and prompt bridge that connects claude.ai (where you think) ↔ Claude Code (where you build) ↔ Obsidian (shared long-term memory). -lightgrey.svg)

Get the whole plugin
Stats
25
Stars
3
Forks
Active
Maintenance
Python
Language
MIT
License
2d ago
Last commit
3mo ago
Created

Repo: mworldorg/markdown-memory

Other skills on markdown-memory.

mm-clear-gate
Skill

mm-clear-gate

Гейт перед /clear — read-only проверка «всё ли записано», вердикт из exit code скрипта, а не из реплики модели. Проверяет свежесть GSD-handoff в репозитории…

mm-doctor
Skill

mm-doctor

Самопроверка mm-системы — junction'ы, конфиг, vault, паспорта, bridge-архив, GSD-консистентность (passport vs PROJECT.md), наличие сторонних плагинов…

mm-focus
Skill

mm-focus

СНЯТ 2026-08-02 — команда больше ничего не грузит. Её детекция этапа дублировала /gsd-resume-work и расходилась с фактической раскладкой GSD, из-за чего…

mm-instructions
Skill

mm-instructions

Генерирует текст для claude.ai → Project → Instructions из шаблона + персонализирует под текущий проект. Кладёт результат в Obsidian для копипаста. Use when…