agentsclimarketplace

Mm focus

Skill mworldorg/markdown-memory/skills/mm-focus

Stage-scoped reload файлов текущего GSD-этапа в свежий контекст ПОСЛЕ ручного /clear, mid-phase. Не сводка «где мы» (это /mm resume), а ЗАГРУЗКА самих рабочих файлов этапа (STATE + CONTEXT/PLAN/SUMMARY по статусу), чтобы сразу продолжать работу. Только для GSD-проектов. Read-only. Use when user says "/mm-focus", "/mm focus", "перечитай этап", "перечитай файлы этапа после clear", "scoped reload", "загрузи текущий этап", "вернуть контекст этапа после /clear".From its SKILL.md

Install
npx -y skills add mworldorg/markdown-memory --skill mm-focus

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • 23 stars23 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
  • runs commandsInstructs the agent to run 1 command, including `sqlite3 "<project_root>/.gsd/gsd.db" "SELECT title, status FROM tasks WHERE slice_id=(SELECT id FROM slices WHERE active=1) LIMIT 20;"`.

SKILL.md

8.9 KB, ~2.3k tokens by cl100k_base, as published. Nobody here has run it

mm-focus — Stage-Scoped Reload after /clear

Решает узкую проблему: ты сделал ручной /clear посреди GSD-фазы, контекст пуст, и нужно снова втянуть в контекст рабочие файлы именно текущего этапа — не сводку, а сами файлы, чтобы продолжить работу с того же места.

Отличие от /mm resume: resume даёт компактную СВОДКУ «где мы» (passport + git + last session + выжимки). mm-focus НИЧЕГО не пересказывает — он загружает полное содержимое минимального scoped-набора файлов текущего этапа в контекст и выдаёт одну строку-ориентир. Это не дубль resume.

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

  • ПОСЛЕ ручного /clear, mid-phase, когда работа над фазой не закончена.
  • Когда нужно «вернуть в голову» файлы текущего этапа, не читая весь проект.
  • Цикл: GSD-этап в работе → /clear/mm-focus → продолжаешь.

Чего скилл НЕ делает:

  • НЕ выполняет /clear сам — это клиентская операция, недоступная из скилла. Скилл рассчитан на запуск ПОСЛЕ ручного /clear.
  • НЕ пишет ничего — ни в .planning/*, ни в .gsd/*, ни куда-либо ещё (там file-lock'и/хуки). Только чтение.
  • НЕ делает resume-стиль дамп — только scoped-набор этапа.
  • Не для не-GSD проектов — там используй /mm resume.

Процесс

Шаг 1. Определи проект (worktree-aware)

То же, что в mm-resume Шаг 1:

  • Если cwd внутри .claude/worktrees/... — resolve до main repo через .git файл-указатель.
  • Иначе — поднимись до корня (где .git/, package.json, pyproject.toml, и т.п.).
  • Имя проекта = из passport.md frontmatter (если есть) ИЛИ basename корневой папки.

Если нет passport.md ИЛИ проект не под GSD (см. Шаг 2 — ни .planning/, ни .gsd/) — скажи: GSD-фаз тут нет, используй /mm resume. и остановись.

Шаг 2. Dual-detection GSD (v1/core/v2) — как в mm-resume

Определи версию:

  • <project_root>/.planning/ существует:
    • есть <project_root>/.planning/config.jsonGSD Core
    • иначе → GSD v1
  • <project_root>/.gsd/ существует → GSD v2
  • Оба → возьми gsd_version из passport frontmatter; если нет — спроси.
  • Ничего нет → остановись с подсказкой /mm resume (см. Шаг 1).

Шаг 3. Определи текущую фазу и ЭТАП

GSD v1 / Core (.planning/):

  1. Прочитай .planning/STATE.md — оттуда текущий milestone и position (номер/имя текущей фазы).
  2. Найди папку текущей фазы .planning/phases/<NN-current>/.
  3. Определи ЭТАП по статусу фазы в STATE.md (draft/discussed/planned/in-progress/verified/complete) И по наличию артефактов — артефакты приоритетнее, если расходятся:
    • нет CONTEXT.mdDiscuss
    • есть CONTEXT.md, нет PLAN.mdPlan
    • есть PLAN.md, нет SUMMARY.mdExecute
    • есть SUMMARY.md ИЛИ статус verified/completeVerify

GSD v2 (.gsd/): этапная модель в файлах слабее — определи позицию из .gsd/STATE.md (rendered dashboard) и, если доступен sqlite3, из gsd.db (активный slice/tasks). Per-phase PLAN.md/SUMMARY.md может не быть — грузи что есть (см. Шаг 4).

Шаг 4. Прочитай scoped-набор (ЗАГРУЗИ ПОЛНОЕ содержимое в контекст, НЕ пересказывай)

Цель шага — чтобы файлы оказались в контексте целиком. Читай их Read-инструментом полностью. Не выжимай, не суммируй.

GSD v1 / Core (.planning/):

  • Всегда: STATE.md + HANDOFF.json (если есть).
  • Discuss+ строка текущей фазы из ROADMAP.md + PROJECT.md (vision/scope; если файл большой — раздел целей/scope или первые ~40 строк) + CONTEXT.md (если уже есть).
  • Plan+ CONTEXT.md + PLAN.md (если уже частично есть).
  • Execute+ PLAN.md + CONTEXT.md.
  • Verify+ PLAN.md + SUMMARY.md.

Все per-phase файлы — из .planning/phases/<NN-current>/.

GSD v2 (.gsd/):

  • Всегда: .gsd/STATE.md + .gsd/AGENTS.md (≈ CONTEXT).
  • Задачи текущего slice из .gsd/gsd.db через sqlite3, если он в PATH:
    sqlite3 "<project_root>/.gsd/gsd.db" "SELECT title, status FROM tasks WHERE slice_id=(SELECT id FROM slices WHERE active=1) LIMIT 20;"
    
    Если sqlite3 недоступен — пропусти, набор беднее но не падает.
  • Per-phase PLAN.md/SUMMARY.md в v2 может не быть — грузи только то, что реально существует.

Шаг 5. Вывод — МИНИМАЛЬНЫЙ

Это не resume-сводка. Суть в том, что файлы уже в контексте. Выдай только:

📍 Фаза <NN> «<title>» · этап <Discuss|Plan|Execute|Verify> · загружено: <file1>, <file2>, ...

И, если в HANDOFF.json есть «Точка возврата» / what_next — добавь её ОДНОЙ строкой:

↩️ Точка возврата: <следующий конкретный шаг>

Всё. Не делай развёрнутую сводку, не дублируй resume, не пересказывай содержимое загруженных файлов.

Шаг 6. После вывода — жди

Контекст загружен. Пользователь сам решит, что делать дальше.

Edge cases

  • Артефакт этапа отсутствует (напр. на Discuss ещё нет CONTEXT.md): грузи что есть, в строке «загружено» отметь чего нет (CONTEXT.md — нет), не падай.
  • GSD есть, но нет активной фазы (между milestone'ами): скажи GSD: активной фазы нет — /mm resume или /gsd-new-milestone. и остановись.
  • HANDOFF.json отсутствует: пропусти строку «Точка возврата».
  • Расхождение статуса STATE.md и артефактов: верь артефактам (наличие файлов важнее декларации), упомяни расхождение одной фразой.

Жёсткие правила

  • Read-only по GSD. НИКОГДА не писать в .planning/* или .gsd/* (file-lock'и/охраняющие хуки). Никаких git-мутаций, никаких авто-коммитов.
  • Не выполнять /clear — это клиентская операция вне скилла; mm-focus запускается ПОСЛЕ ручного /clear.
  • Не дублировать /mm resume — никакого полного дампа и сводки, только scoped-набор текущего этапа и одна строка-ориентир.
  • Только GSD-проекты — нет GSD → отправляй на /mm resume.

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.