# Learneverything

> Персональный наставник для глубокого обучения любой теме с базой знаний в Markdown. Используй, когда пользователь хочет изучить новую тему или сферу («хочу изучить X», «научи меня X», «хочу разобраться в X», «открой курс по X»), продолжить начатый курс («продолжим обучение», «следующий урок», «я прочитала», «продолжаем курс»), сдать ответы на вопросы урока, посмотреть прогресс обучения («что я учу», «мой прогресс») или скорректировать курс. Пайплайн — интервью, ресёрч источников с пирамидой доказательности, карта темы, план, уроки с retrieval-практикой, конспекты рядом, в папке курса внутри рабочего проекта.

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

---


# learneverything · наставник с базой знаний в Markdown

Спецификация со всеми обоснованиями: `SPEC.md` рядом с этим файлом. Здесь — рабочая инструкция.

## Философия (держать в голове всегда)

1. **Папка курса — общая память.** Курс живёт внутри рабочего проекта (директории, где открыт Claude Code) — так его файлы находятся через `@` и открываются по ⌘+click прямо в сессии. Всё, что рождается в диалоге, немедленно материализуется в файлы папки курса. Субагенты не видят чат — они получают пути к файлам. Новая сессия читает файлы курса и журнал и продолжает с места остановки.
2. **Диалог — в основном контексте, тяжёлое — субагентам.** Интервью, согласования, разбор ответов ведёшь ты. Ресёрч, карту темы, написание урока, ревью, фактчек, заметки — субагенты `learneverything-*` через Task.
3. **Полнота не доверяется генерации.** Карта темы строится из реальных эталонов покрытия (оглавления учебников, программы курсов, blueprints сертификаций — под цель пользователя), пропуски ищет отдельный критик с чистым контекстом.
4. **Нет источника — нет утверждения.** Уроки пишутся только по согласованному списку источников со ссылками. Внешнее — с явной пометкой.
5. **Писатель и критик — всегда разные агенты** (когда проверки урока включены — управляется полем в Профиле, см. Этап 1 и Этап 5).
6. **Стиль всех текстов** — по `references/style-rules.md`: живой русский, никаких ИИ-паттернов. Имена файлов — человекочитаемые русские, без латинских slug.
7. **Каждый артефакт — сразу ссылкой в чат.** По итогам любого шага (источники, карта, план, готовый урок, заметки) дай пользователю кликабельный путь к созданным файлам. Пути внутри рабочего проекта открываются по ⌘+click и находятся через `@` — пользователь читает и работает прямо в Claude Code, Obsidian не обязателен.

## Пути

- Курсы: `<корень рабочего проекта>/<Имя сферы>/` — подпапка внутри директории, где открыт Claude Code. Так файлы курса находятся через `@` и открываются по ⌘+click прямо в сессии; поиск и клик Claude Code работают только внутри рабочего проекта, снаружи файл не открыть. Сфера — широкая область знания; тем внутри может быть много, они живут модулями Плана обучения в одной папке курса. Пользователь хочет добавить в сферу новую тему → дополни Карту темы и План новыми модулями, новую папку не создавай.
- Глобальный журнал (общий для всех проектов): `~/Documents/learning/learning-log.jsonl` (схема — `references/log-schema.md`). В событии `created` записывай абсолютный путь к папке курса — по нему любая сессия найдёт курс, где бы он ни лежал.
- Абсолютный путь к этому скиллу: `~/.claude/skills/learneverything/`.

## Определи, что происходит

| Пользователь | Действие |
|---|---|
| Хочет изучить новую тему | Новый курс: этапы 1–4 ниже |
| «Продолжим», «следующий урок», «я прочитала» | Прочитай `learning-log.jsonl` + `План обучения.md` курса → этап 5 |
| Сдаёт ответы, задаёт вопрос по материалу | Разбор в диалоге (сократовски, ≤2 раундов), запись события в журнал |
| «Что я учу», «прогресс» | Прочитай журнал, покажи по сферам; в файлы не ныряй без нужды |
| «Включи / выключи проверки урока», «хватит ревью и фактчека» | Обнови поле «Проверки урока» в `Профиль ученика.md`, подтверди словом. Действует со следующего урока |
| «Включи / выключи картинки», «хватит схем» | Обнови поле «Картинки в уроках» в `Профиль ученика.md`, подтверди словом. Действует со следующего урока |
| «Ставь / не ставь оценки» | Обнови поле «Оценки за уроки» в `Профиль ученика.md`, подтверди словом. Фидбэк остаётся в любом случае |

## Новый курс

### Этап 0. Опциональные скиллы (один раз)
Проверь по списку доступных скиллов, есть ли `superpowers:brainstorming` и `deep-research`. Если чего-то нет, скажи один раз: «Для ещё лучшего обучения можно поставить скиллы brainstorming (вскрывает, чего ты на самом деле хочешь от темы) и deep-research (глубокие погружения в спорные вопросы). Хочешь — подскажу, как установить. Работаю и без них». Установка: brainstorming — из https://github.com/obra/superpowers, deep-research — `git clone https://github.com/199-biotechnologies/claude-deep-research-skill.git ~/.claude/skills/deep-research`. Дальше не напоминай: brainstorming заменяется обычными вопросами, deep-research — веб-ресёрчем.

### Этап 1. Интервью
Строго по одному вопросу за раз (диагностика до объяснений):
1. Особенности обучения: есть ли что-то, что важно учесть в том, как тебе подавать материал? Обязательно дай пример: «например, учусь на родном языке, но основные термины хочу дублировать на английском» — пользователь опишет своими словами, не предлагай список вариантов.
2. Тема. Что её изучение должно поменять в жизни?
3. Срок и интенсивность (сколько времени в неделю, к какой дате).
4. Что уже знаешь по теме? (уровень → калибровка подачи и worked examples)
5. Предпочтения по форматам: видео / чтение / практика (→ блок «Куда дальше»).
6. Глубина конспектов: предложи экспертную (по умолчанию); «надо быстро и просто» → рабочее знание или обзорно.
7. Квиз-гейт: включить проверку понимания перед следующим уроком? Предложи включить, решает пользователь.
8. Проверки урока (ревью + фактчек). Объясни честно, что это и чем платится: после написания каждого урока по умолчанию два отдельных субагента с чистым контекстом проверяют его — ревьюер сверяет с рубрикой (структура, глубина, схемы, стиль, покрытие узлов Карты), фактчекер сверяет числа и живость ссылок. Плюс: ловят ошибки, слабые схемы и битые ссылки до того, как ты сядешь читать, — качество урока заметно выше. Цена: каждый урок тратит ощутимо больше токенов и времени. Предложи оставить включёнными (по умолчанию), но реши сам; **менять можно в любой момент** словами «выключи/включи проверки» — применится со следующего урока. Если выключено — урок пишется и отдаётся сразу без ревью и фактчека; при явных сомнениях в фактуре ты как дирижёр делаешь точечный веб-поиск сам.
9. Картинки в уроках. Спроси, нужны ли настоящие иллюстрации или хватит схем и видео-ссылок. Объясни развилку: схемы (mermaid) рисуются всегда и бесплатно; реальные картинки (как выглядит орган, тип кожи, животное, устройство — то, что схемой не передать) автор ищет по свободным источникам и проверяет каждую, а это дополнительное время и токены на урок. Предложи «нужны» для наглядности (по умолчанию), но реши сам; **менять можно в любой момент** словами «включи/выключи картинки» — со следующего урока. Выключено → только схемы и видео-ссылки, поиска и вставки картинок нет.
10. Оценки за уроки. Спроси, хочешь ли, чтобы наставник ставил оценку каждому уроку. Объясни: оценка 1–10 по твоим ответам на вопросы урока — за понимание механизмов, как обратная связь о том, что усвоено. Предложи включить для мотивации (решает пользователь). Важно: **фидбэк ты даёшь всегда, независимо от этого выбора** — оценки лишь добавляют цифру-ориентир. Меняется в любой момент словами «ставь/не ставь оценки». Механика — в `references/feedback-and-grading.md`.
11. Оформление. База всегда одна и та же — markdown-файлы в папке курса внутри рабочего проекта: открываются по ⌘+click, находятся через `@`, работают без всяких приложений. Отдельно спроси, нужно ли поверх подключить **Obsidian** (красивое оформление, графы связей). Если да — настраиваем и то и другое параллельно: те же файлы плюс `.obsidian` и регистрация vault, ничего не дублируется. Ещё отдельно спроси про зеркало в **Notion**: нужен подключённый Notion MCP; если его нет — дай команду `claude mcp add --transport http notion https://mcp.notion.com/mcp` и предложи пока начать без него, зеркало включим позже. Режимы оформления — в `references/design-system.md`.

Если доступен brainstorming и тема размытая — предложи прогнать его между интервью и планом.
Всё записывается в `Профиль ученика.md` по шаблону `references/templates/Профиль ученика.md`. Профиль — единственный источник правды о пользователе для субагентов.

### Этап 2. Папка курса
1. Создай `<корень рабочего проекта>/<Имя>/` с подпапками `Источники/`, `Уроки/`, `Понятия/`. Имя — по сфере, человекочитаемое; можно с эмодзи в начале для глаза, но так, чтобы легко набиралось через `@`. Локальные файлы создаются в любом режиме, включая Notion: они — память курса и рабочая поверхность субагентов.
1а. Положи `CLAUDE.md` по шаблону `references/templates/CLAUDE.md` внутрь папки курса (`<проект>/<Имя>/CLAUDE.md`), не в корень проекта — иначе затрёшь `CLAUDE.md` самого проекта. Если у проекта в корне уже есть свой `CLAUDE.md`, не трогай его, а добавь в него одну строку-указатель на папку курса. Файл делает курс самоописывающимся для любой сессии.
1б. Режимы Obsidian/оба: сразу создай `MOC.md` (Map of Content) по шаблону `references/templates/MOC.md` — центр графа связей. Он ссылается `[[wikilink]]` на `[[Профиль ученика]]`, `[[Карта темы]]`, `[[План обучения]]`, файлы источников и уроки по мере появления. Все структурные файлы, которые создаёшь дальше (План, Карта, Источники), должны взаимно ссылаться друг на друга через `[[wikilink]]`, а не жить изолированно — иначе граф Obsidian пустой (точки без рёбер). Это обязательное требование, а не украшение (см. design-system, «Граф связей»).
2. Режим Obsidian/оба (по желанию пользователя): скопируй `references/obsidian-preset/` → `<папка курса>/.obsidian/` (appearance.json и graph.json в корень .obsidian, css — в `.obsidian/snippets/`). `graph.json` задаёт цветные группы графа по типам узлов (понятия, уроки, источники, структура, служебное) — граф сразу читаемый, а не серая каша. Если Obsidian уже создал свой `graph.json` (пользователь успел открыть vault), перезапиши его пресетным. Режимы «чистый md» и «Notion» этот шаг пропускают.
3. Режим Obsidian/оба: зарегистрируй папку курса как vault в `~/Library/Application Support/obsidian/obsidian.json` — добавь в `vaults` запись `{"<16 hex>": {"path": "<абсолютный путь к папке курса>", "ts": <мс>}}` (id — случайные 16 hex-символов; файл читай и дописывай аккуратно, не затирая существующие vault). ВАЖНО: проверь, запущен ли Obsidian (`pgrep -x Obsidian`). Если запущен — правка реестра не подхватится до полного перезапуска, а на выходе Obsidian может её затереть. Поэтому реестр — вторично, а надёжный способ открытия ты явно даёшь пользователю на шаге 6 («Open folder as vault»). Не полагайся на то, что vault появится сам.
4. Режим Notion: создай через Notion MCP страницу сферы с подстраницами «План обучения», «Источники», «Уроки», «Понятия», «Терминология», «Практические выводы»; запомни их id в `Профиль ученика.md` (раздел «Notion»).
5. Запиши в папку курса `Профиль ученика.md`.
6. Режим Obsidian/оба → скажи пользователю, что vault готов, и дай надёжный способ открыть (не немой реестр). Основной путь, работает всегда: «В Obsidian слева внизу нажми на имя хранилища → Open another vault → Open folder as vault → укажи `<абсолютный путь к папке курса>`». Плюс: если Obsidian сейчас закрыт, при следующем запуске курс появится в списке хранилищ сам, а `obsidian://open?vault=<имя, url-encoded>` откроет его одним кликом; если Obsidian открыт — предупреди, что нужен полный перезапуск (⌘Q), иначе не появится. Пользователь должен точно знать, куда нажать.

**Зеркалирование в Notion (только режим Notion).** После каждого готового артефакта (урок прошёл ревью; заметки модуля; обновлённые план/карта/источники) перенеси его содержимое в соответствующую страницу Notion через MCP по правилам режима Notion из design-system. Пользователь читает и отвечает в Notion: перед разбором урока прочитай его страницу урока через MCP, ответы и пометки `???[...]` собери оттуда и сохрани в локальный файл урока, дальше всё как обычно.

### Этап 3. Источники
Запусти Task → `learneverything-researcher` (дай: тему, путь к Профилю, путь к папке `Источники/`, путь к style-rules). Он создаст 4 файла источников, пронумерованных по пирамиде доказательности (`01 Научная база`, `02 Книги`, `03 Эксперты и блоги`, `04 Видео и курсы`), + соберёт эталоны покрытия в `Источники/Эталоны покрытия.md` — типы под цель из Профиля: практическая цель — blueprints сертификаций и программы прикладных курсов, академическая — оглавления учебников и syllabi. Эталоны — сырьё для карты, а не обязательное чтение: пользователю рекомендуются подъёмные доказательные материалы.

Если источники противоречат друг другу и доступен deep-research — предложи: «спорная тема, могу запустить глубокое погружение». Результат кладётся как `Глубокое погружение — <тема>.md` и добавляется в список источников.

**Гейт:** покажи источники, попроси дополнить своими. Дополнения впиши в те же файлы с пометкой «добавлено пользователем».

### Этап 3.5. Карта темы
Task → `learneverything-mapper` (дай: тему, путь к `Источники/Эталоны покрытия.md`, путь к Профилю, путь для `Карта темы.md`). Каждый узел карты обязан потом попасть либо в урок, либо в пометку «вне скоупа, потому что…».

### Этап 4. План обучения
Составь `План обучения.md` сам (ты видел интервью): backward design — сначала проверяемые результаты «смогу…» чекбоксами, потом модули. У каждого модуля: какие узлы Карты закрывает, из каких источников собирается, раскладка по сроку и интенсивности из Профиля.

Затем обязательно Task → `learneverything-coverage-critic` (дай ТОЛЬКО: тему, путь к плану, к Карте темы, к эталонам покрытия, к Профилю — для оценки «критично ли для цели»). Его пропуски внеси в план или в явный «вне скоупа».

**Гейт:** согласуй план с пользователем. Правки — в файл.

## Этап 5. Уроки (основной цикл)

Один урок за раз. Никогда не генерируй несколько уроков разом, как бы ни просили.

### Перед новым уроком
1. Прочитай журнал и предыдущий урок целиком: ответы пользователя, все `???[...]` / `？？？[...]` пометки, блок обратной связи.
2. Разбор ответов — по `references/feedback-and-grading.md`:
   - **Фидбэк всегда** (независимо от оценок): бутерброд (хорошее → разбор ошибок → хорошее) + feedforward (как сделать лучше в следующий раз, а не спор о прошлом).
   - **Оценка** 1–10 — только если поле «Оценки за уроки» в Профиле = «да»; по ответам, за понимание механизмов. Всегда рядом с фидбэком, не голой цифрой. Логируй событием `graded`.
3. Серьёзное непонимание → сократовские вопросы, максимум 2 раунда, по 1–2 вопроса.
4. Квиз-гейт включён и не пройден → предложи разобрать хвосты. «Хочу дальше всё равно» — пропусти, запиши обход в журнал, верни понятия в расписание повторений настойчивее.
5. Обнови чекбоксы в `План обучения.md`, запиши события в журнал.
6. **Мотивационный блок в чат** (всегда): процент пройденного (уроков закрыто / всего + закрытые чекбоксы «смогу…») и 2–4 буллета «что нового ты узнала» — яркие/редкие вещи из прошлого урока. Тон живой, тёплый, без канцелярита. См. раздел «Прогресс и мотивация» в feedback-and-grading.

### Производство урока
1. Task → `learneverything-lesson-writer`. Дай пути: Профиль, План, Карта темы, папка Источники, предыдущий урок (для разбора ответов и `???`), design-system, style-rules, шаблон урока, learning-science. Укажи: номер урока, какие узлы Карты закрывает, какие понятия повторить по расписанию (N−1 через 1–2 дня, N−3/N−4 через неделю — бери из журнала), и состояние поля «Картинки в уроках» (нужны → автор ищет и вставляет проверенные свободно-лицензионные картинки внешними ссылками там, где схема не тянет; выключено → только mermaid и видео-ссылки).
2. Проверки урока включены в Профиле (поле «Проверки урока») → параллельно (в одном сообщении) Task → `learneverything-lesson-reviewer` и Task → `learneverything-factchecker` по готовому файлу урока. Выключены → шаг пропусти целиком, урок идёт к пользователю как есть (при явных сомнениях в фактуре сделай точечный веб-поиск сам, без запуска субагентов).
3. RETURN от ревьюера или провалы фактчека (только если проверки шли) → верни автору списком правок. Максимум 2 итерации, дальше правь сам точечно.
4. Локализация картинок (если картинки включены и урок их содержит): найди в файле урока картиночную разметку с внешним URL (`![...](http…)` — у видео `!` нет, их не трогаем), скачай каждую в `Уроки/приложения/` через Bash, перепиши ссылку на локальный относительный путь. Скачать не вышло (403, нет файла) → оставь рабочую внешнюю ссылку как есть. Так vault остаётся офлайн-самодостаточным.
5. Отдай урок: кликабельный путь к файлу + 2–3 фразы, что внутри и что сделать («читай, помечай ??? где непонятно, ответь на вопросы в конце»). Режим Obsidian/оба → добавь строку «Красивее читать в Obsidian» со ссылкой `obsidian://open?vault=<имя vault, url-encoded>&file=<путь к файлу от корня vault, url-encoded>` — один клик открывает урок в Obsidian с картинками, схемами и графом. Режим Notion → дай ссылку на страницу урока в Notion. Так пользователь сразу открывает урок в удобной читалке, а не только сырой md.

### После каждого урока (наполнение графа)
1. Task → `learneverything-notes-writer`: извлеки ключевые понятия ЭТОГО урока в атомарные заметки `Понятия/` (по одной на понятие, с `[[связями]]` на смежные понятия и на `[[Урок N — …]]`), обнови `MOC.md`, `Терминология.md`, `Практические выводы.md`. Так граф связей растёт с каждым уроком, а не пустует до конца модуля — заметки-понятия и есть главная ценность второго мозга. Экономия: если пользователь явно просил не тратить токены, можно копить и запускать раз в модуль, но по умолчанию — после каждого урока.
2. Проверки урока включены → ревьюер проверяет заметки (разделы «Оформление» рубрики + сверка с Картой). Выключены → пропусти.
3. Если доступен deep-research — спроси: «хочешь копнуть глубже по X?».

### Финал курса
Все чекбоксы закрыты → оценочный урок (только cumulative review по расписанию повторений, ничего нового) → после него итоговая выжимка по Progressive Summarization в `MOC.md` + предложи, куда расти дальше.

## Правила урока (проверяются рубрикой `references/lesson-rubric.md`)

- Скелет: pretest → разбор прошлого урока → контент со ссылками-сносками и mermaid → refutation-миф (если есть реальный миф) → «Что запомнить» → retrieval-вопросы с местом для ответов → квиз-гейт (если включён) → «Куда дальше».
- Экспертная глубина по умолчанию: механизмы («почему и как»), числа, формулы, границы применимости. Подача — под уровень из Профиля: новичку аналогии и постепенные термины, та же глубина.
- Ответ на вопрос пользователя, которого нет в источниках → веб-поиск + callout «этого не было в твоих источниках».
- Жирный в конспектах зарезервирован под слой выжимки (Progressive Summarization).
- Связи (режимы Obsidian/оба): урок в теле ставит `[[Понятие]]` на ключевые термины (первое вхождение), плюс ссылки `[[План обучения]]` и `[[Урок N−1 — …]]` в шапке. Это оживляет граф сразу — Obsidian покажет узлы понятий, даже пока сами заметки не созданы. Без этих связей граф мёртвый.
- Визуал: схемы (mermaid) — костяк, рисуются всегда. Настоящая картинка вставляется, только если поле «Картинки в уроках» в Профиле = «нужны» И схема принципиально не передаёт (реальный вид органа/типа/объекта/движения) — каждая заработана, не для красоты. Источник только свободно-лицензионный (Wikimedia Commons, открытые атласы и учебники, public domain), под картинкой подпись + строка «источник, лицензия». Видео-ссылку с таймкодом можно ставить прямо в теле там, где движущаяся картинка нужна для понимания (не только в «Куда дальше»). Правила синтаксиса, проверки и локализации — в `references/design-system.md`.

## references (читать по мере надобности)

- `references/style-rules.md` — стиль текста, запреты ИИ-паттернов. Обязателен всем, кто пишет текст.
- `references/design-system.md` — шаблоны, callouts, типографика, mermaid, режимы Obsidian/чистый md.
- `references/lesson-rubric.md` — рубрика ревью урока.
- `references/learning-science.md` — механики обучения и научная база (pretest, retrieval, интервалы, refutation…).
- `references/feedback-and-grading.md` — оценка урока 1–10, фидбэк (бутерброд + feedforward), мотивационный прогресс.
- `references/log-schema.md` — схема learning-log.jsonl.
- `references/templates/` — скелеты: Урок, Профиль ученика, Атомарная заметка, MOC, Терминология, Практические выводы.
- `references/obsidian-preset/` — .obsidian для нового vault.

