26 KiB
created, updated, tags, status
| created | updated | tags | status | |||||
|---|---|---|---|---|---|---|---|---|
| 2026-05-15 | 2026-05-15 |
|
research-complete |
Obsidian Vault Strategy & LLM Wiki Plan
Deep research 2026-05-15. Источники: Karpathy LLM Wiki gist (5000+ stars), LLM Wiki v2 (rohitg00, 1200+ stars), claude-obsidian (PyShine), Ar9av/obsidian-wiki (DeepWiki), Tom Nguyen 6-month report, Nodus Labs knowledge graph extension, mathisgauthey (r/ObsidianMD, 1000+ upvotes), MOC+Dataview guide, Obsidian+Claude Code integration, LifeOS, Obsidian Forum.
Часть 1 — Текущее состояние vault
Что есть
| Тип контента | Примеры | Где лежит |
|---|---|---|
| Личные списки | Список дел, Фильмы, Книги, Покупки | personal/documents/, family/documents/ |
| Брифы и планы | Daily brief, weekly plan, inbox triage | work/briefs/ |
| Проектные заметки | executor, media-pipeline, wiki | personal/projects/, family/projects/ |
| How-to документация | HTPC, Кракен, WireGuard | family/how-to/ |
| Knowledge wiki | Архитектура personal-os, схема БД | wiki/ |
Что не работает
- Граф пустой — 90% заметок без frontmatter, aliases, wikilinks. Поиск находит только по точному имени файла.
- Воркер переименовал файлы без aliases →
✅ Список дел→todo-list.md, поиск сломан. - Wiki-curation делает лишнее — Task 3b (раскладка файлов по папкам) не относится к Karpathy, добавлен ошибочно.
- Нет накопления знаний — каждый research-сеанс начинается с нуля. Пример: анализ Obsidian PKM занял 15 минут и 10+ web запросов, которые нужно будет повторять снова.
- Нет проактивных исследований — агент реагирует на запросы, не инициирует изучение пробелов.
Часть 2 — Анализ подходов из research
Karpathy LLM Wiki (оригинал, апрель 2026)
Суть: LLM читает сырые источники → строит wiki с entity/concept pages → cross-references → compounding knowledge base. Человек почти не пишет в wiki руками.
Ключевые цифры: Karpathy вырастил wiki на одну тему до ~100 статей, 400k слов, не написав ни одной напрямую. Tom Nguyen (6 месяцев в production): 77 wiki pages, 30+ источников, 13 custom skills читают из wiki.
Три операции:
- Ingest — дропаешь источник, агент создаёт/обновляет 10-15 wiki pages
- Query — агент читает index.md, находит нужные pages, даёт ответ со ссылками
- Lint — проверка orphan pages, противоречий, stale claims, пробелов
Применимость к нам: Wiki для накопления knowledge (техника, workflows, инфраструктура, AI tools) — да. Для личных списков — нет.
LLM Wiki v2 (rohitg00) — production extensions
Ключевые расширения:
4-tier memory pipeline:
Working Memory → сырые наблюдения текущей сессии
Episodic Memory → сжатые саммари сессий
Semantic Memory → кросс-сессионные факты (wiki)
Procedural Memory → паттерны, workflows, skills
Confidence scoring: каждый факт имеет score (кол-во источников, свежесть, противоречия). Устаревает со временем, усиливается при подтверждении.
Event-driven automation:
On new source → auto-ingest, extract entities, update graph
On session end → compress session into observations, file insights
On query → check if answer worth filing back
On schedule → periodic lint, consolidation
Кристаллизация: завершённые debug/research сессии автоматически дистиллируются в wiki pages.
claude-obsidian / Ar9av/obsidian-wiki — автономные skills
Наиболее зрелые production реализации. Ключевые skills:
wiki-synthesize — сканирует vault, находит concept pairs которые часто co-occur но не имеют synthesis page. Строит Concept A × Concept B pages автоматически.
wiki-research (3-round autonomous loop):
- Round 1: decompose topic → 3-5 angles → broad search
- Round 2: find gaps/contradictions → targeted search
- Round 3: resolve contradictions → synthesis
wiki-capture — конвертирует AI-human сессии в declarative wiki notes. Эта сессия (анализ Obsidian PKM) должна была бы стать wiki pages автоматически.
autoresearch (claude-obsidian):
/autoresearch topic
→ Round 1: query wiki → identify gaps → ingest sources
→ Round 2: re-query → find remaining gaps → more sources
→ Round 3: synthesis → comprehensive result with citations
Session hooks:
SessionStart→ load hot cache, read schemaPostToolUse→ auto-commit if files changedStop→ save final state, update manifest
Knowledge Graph extension (Nodus Labs)
Добавляет структурную самоосознанность поверх Karpathy:
Gap detection: находит disconnected clusters в wiki graph. Там, где два тематических кластера не связаны — это часто место для нового insight или исследования.
Prompt-to-structure: вместо "объясни X" → "как A связан с B, учитывая что они в разных кластерах?" → более точные, оригинальные ответы.
Проактивные исследования — PersonalAgent pattern (arxiv 2512.15302)
Идея: агент строит user profile → из профиля выводит гипотезы что пользователю может быть интересно → инициирует исследования без запроса.
Применительно к нам: агент знает что ты работаешь над personal-os, media-pipeline, executor — и проактивно исследует смежные темы: новые подходы к orchestration, медиа-библиотеки, home automation.
Реализация: weekly cron который читает wiki + профиль + последние сессии → формирует список hypothesis → запускает wiki-research по каждой → результаты в inbox для review.
Часть 3 — Что реально нужно нам
Три разных задачи (не смешивать!)
Задача A: Vault enrichment — сделать личные заметки searchable и связными
- frontmatter + aliases на существующие файлы
- wikilinks между связанными заметками
- MOC/index files для навигации
Задача B: LLM Wiki для knowledge accumulation — накапливать research результаты
wiki/как compounding knowledge base- Research сессии → wiki pages
- Lint + gap detection
Задача C: Проактивные автономные исследования — агент сам генерирует гипотезы и исследует
- User profile → hypothesis generation
- Scheduled research runs
- Results → inbox для review
Часть 4 — План: три проекта
Проект 1: Vault Enrichment
Цель: граф живой, поиск работает по aliases, Dataview агрегирует.
Шаги:
- Убрать Task 3b из wiki-curation промпта
- Создать enrichment cron (еженедельно):
- Проходит по
personal/documents/,family/documents/ - Для каждого файла без frontmatter: добавляет
aliases,tags - Для переименованных файлов: alias = оригинальное имя
- Добавляет wikilinks к связанным файлам
- НЕ переименовывает, НЕ перекладывает
- Проходит по
- Создать
personal/index.mdиfamily/index.mdс Dataview секциями - Создать
VAULT-INDEX.mdв корне — живой dashboard для агента
Стек: Hermes cron + obsidian MCP + terminal toolset
Оценка: 1-2 дня работы агента
Проект 2: LLM Wiki — Knowledge Accumulation
Цель: каждая research сессия накапливается. Следующий вопрос про Obsidian PKM → читаю 2 страницы wiki вместо 10 web запросов.
Шаги:
- Добавить
wiki-captureв workflow wiki-curation:- После каждой research сессии (как сегодня) → автоматически создаёт wiki page
- Ключевой механизм: я говорю "сохрани это в wiki" или агент сам идентифицирует valuable content
- Добавить
wiki-synthesizeв wiki-curation cron:- Находит co-occurring concepts без synthesis page
- Строит
Concept A × Concept Bpages
- Добавить
wiki-researchкак отдельный skill/cron:- 3-round autonomous research loop
- Результаты →
wiki/concepts/илиwiki/synthesis/
- Session hooks:
Stop→ compress session → file insights - Crystallization: значимые debug/research сессии → wiki pages
Что войдёт в wiki: AI/ML tooling, Obsidian PKM, home infrastructure patterns, personal-os architecture decisions, Swift/iOS patterns, media pipeline learnings.
Стек: расширить wiki-curation skill + новые cron jobs
Оценка: 3-5 дней
Проект 3: Proactive Research Agent
Цель: агент сам инициирует исследования исходя из профиля и пробелов в wiki.
Архитектура:
User Profile (интересы, проекты, домены, семья)
↓
Gap Detector (читает wiki, находит слабосвязанные области)
↓
Hypothesis Generator (формирует вопросы для исследования)
↓
Research Queue (приоритизированный список)
↓
Autonomous Research Runs (по расписанию, по одному вопросу)
↓
Results → wiki/inbox → review
Проект 4: Cross-domain Enrichment Agent
Цель: универсальный агент который берёт любой список/заметку из vault, читает user profile, обогащает данными из внешних источников.
Принципы (без хардкода конкретных файлов):
- Target Discovery — агент сам находит заметки которые поддаются обогащению: списки без внешних данных, заметки с тегом
enrich-me, файлы давно не обновлявшиеся - Profile-aware — всегда читает
wiki/user-profile.mdперед обогащением, фильтрует под конкретный контекст - Output isolation — результат сохраняется как отдельная заметка рядом с исходной, исходник не трогает
- Source tagging — каждый enriched факт содержит источник + дату → можно обновлять
User Profile (создать wiki/user-profile.md) — единый источник правды о пользователе:
## Alex
- Интересы: [заполнить]
- Текущие проекты: [заполнить]
- Домены: [заполнить]
## Семья
- [заполнить — состав, возрасты, интересы]
Примеры цепочек: см. Часть 5a
Стек: Hermes cron + web toolset + terminal (git change detection) + obsidian MCP
Оценка: зависит от количества target notes; архитектура универсальная
Цель: агент сам инициирует исследования исходя из профиля и пробелов в wiki.
Архитектура:
User Profile (интересы, проекты, домены)
↓
Gap Detector (читает wiki, находит слабосвязанные области)
↓
Hypothesis Generator (формирует вопросы для исследования)
↓
Research Queue (приоритизированный список)
↓
Autonomous Research Runs (по расписанию, по одному вопросу)
↓
Results → wiki/inbox → review
User Profile — файл wiki/user-profile.md:
- Технические домены: Swift/iOS, home infrastructure, AI agents, media pipeline
- Текущие проекты: personal-os, executor, media-toolbox
- Интересы: home automation, music production, cycling, parenting
Gap Detector (еженедельно):
- Читает wiki/index.md
- Смотрит на последние сессии (briefs/daily)
- Находит: что упоминается но нет страницы? что давно не обновлялось? где кластеры не связаны?
- Генерирует список hypothesis: "исследовать X", "сравнить A vs B", "что нового в Y"
Research Queue — wiki/research-queue.md:
## Priority Queue
- [ ] Obsidian Bases vs Dataview — что использовать в 2026?
- [ ] Home Assistant integrations для RPi5
- [ ] Swift Concurrency patterns актуальные
- [ ] Personal OS orchestration alternatives
Scheduled Research (например, еженедельно по субботам):
- Берёт top-1 из queue
- Запускает 3-round research loop
- Сохраняет в wiki
- Репортирует тебе с саммари
Стек: новый cron + wiki-research skill + research-queue.md
Оценка: 1-2 недели (зависит от wiki-research skill)
Часть 5 — Последовательность
Сейчас → Проект 1 (enrichment) — быстро, ощутимый результат
↓
Проект 2 (wiki accumulation) — параллельно или после
↓
Проект 3 (proactive research) — когда wiki достаточно наполнена
Проект 3 имеет смысл только когда в wiki есть достаточно контента чтобы gap detection давал сигнал. Сначала нужно наполнить wiki (Проект 2).
Часть 5a — Паттерн: Personal Context → External Signal → Insight
Это отдельный класс задач — cross-domain enrichment с внешними данными. Агент читает личные данные из vault, учитывает профиль пользователя, обогащает внешними сигналами и возвращает персонализированный результат.
Ключевое отличие от Google: контекст про тебя уже внутри — агент не ищет абстрактный ответ, а фильтрует под конкретного человека.
Общий паттерн
Заметка/список в vault
+ Связанные заметки (через wikilinks / поиск)
+ User Profile (возраст, интересы, текущий стек, предпочтения)
+ External signal (web, API, RSS, marketplace)
↓
Enrichment Agent (по триггеру или расписанию)
↓
Enriched note в vault (insights + cross-links + источники)
Два режима агента
Примеры выше делятся на два разных паттерна — важно не смешивать:
Enrichment — обогащаешь данные один раз (или при изменении)
- Исходная заметка есть, нужно добавить внешний контекст
- Запускается по триггеру (новая запись) или периодически
- Результат стабилен, обновляется редко
- Примеры: анализ идей приложений, learning path по списку книг, фильтрация игр под профиль
Monitoring — следишь за потоком внешнего мира, фильтруешь через твой контекст
- Внешний мир меняется, vault — точка отсчёта для фильтрации
- Запускается регулярно (ежедневно / еженедельно)
- Результат — дайджест / алерт, не постоянная заметка
- Примеры: новые заведения в Бишкеке, распродажи билетов под планы поездок, конференции по твоим темам, апдейты инструментов из стека
Enrichment: Vault (данные) + External (контекст) → Enriched note в vault
Monitoring: External (поток) → фильтр через Vault (профиль) → Алерт / Дайджест
Оба нужны, но реализуются по-разному: enrichment — разовый агент с obsidian MCP, monitoring — регулярный cron с web toolset и доставкой в inbox/Zulip.
Иллюстративные примеры (не задачи, а цепочки мышления)
1. Список идей приложений → конкурентный анализ Читает каждую идею → ищет по YC directory / ProductHunt / web по ключевым словам → кто уже делает, funding, незакрытые ниши → сохраняет анализ рядом с идеей
2. Активности с ребёнком × список игр × профиль ребёнка Читает списки активностей + игр → читает профиль (возраст, интересы, темперамент, что работает) → cross-links между файлами → фильтрует игры под совместную игру → ищет новые по интересам → персонализированные рекомендации с обоснованием
3. Список для чтения → learning path Книги/статьи + текущие знания из wiki → определяет prerequisites, оптимальный порядок, находит пробелы в теме
4. Wishlist путешествий → план поездок Список мест + сезонность + текущие проекты (когда реально есть время) → какие места удобно совмещать, оптимизированный план на год
5. Профили контактов → напоминания о связи Список людей с датой последнего общения + интересы → "давно не писал X, вот повод" (вышла статья по его теме, etc.)
6. Wishlist умного дома → совместимость и реализация Хотелки + текущий стек (Zigbee, HA версия) → что реально интегрируется, community-решения, очерёдность
7. Дневник тренировок → инсайты Лог активностей + самочувствие + погода → что коррелирует с хорошими результатами, когда лучше тренироваться
8. Скетчи музыкальных идей → рыночный контекст Заметки по трекам (BPM, настроение, референсы) → Spotify анализ похожих, что в тренде в жанре
9. Список подарков → актуальные варианты Профили близких (интересы, что уже есть) × ближайшие даты → marketplace search с обоснованием почему подходит
10. Wishlist ресторанов → фильтр по контексту Список + предпочтения + что уже посетил → фильтр под конкретный контекст (с ребёнком / романтический / деловой), актуальные часы
11. Темы для изучения → дайджест новостей Список интересующих тем → еженедельный дайджест из HN / arxiv / RSS, отфильтрованный от шума под твои конкретные темы
12. Финансовый watchlist → контекст для решений Список активов/инструментов → агрегация сигналов (не трейдинг, а понимание контекста для своих решений)
13. Проекты и интересы → конференции, семинары, learning events Текущие рабочие и личные проекты + домены интереса → поиск конференций, митапов, онлайн-курсов, воркшопов по теме → дайджест "что скоро, что стоит посетить" с приоритизацией по релевантности
14. Планы поездок × текущее местоположение → акции на билеты и туры Wishlist мест + даты отпуска (если есть) + текущий город → поиск распродаж, горящих туров, пакетов (не только авиа) → алерт когда появляется подходящее предложение
15. Контакты → дни рождения и поводы Профили людей с датами рождения + история общения → заблаговременное напоминание + идея подарка по интересам человека
16. Проекты и интересы → новые идеи, best practices, апдейты инструментов Текущий технический стек + активные проекты → мониторинг HN / changelog / блогов → "вышел X, релевантно для твоего проекта Y", "новый паттерн для Z", "есть решение лучше чем то что ты сейчас используешь"
17. Место проживания → новые заведения и места Текущий город + категории интереса (рестораны, кофейни, etc.) → мониторинг новых открытий → периодический дайджест "что открылось, что стоит попробовать"
Триггеры обогащения
- По изменению — новая запись в списке → автоматически запускает анализ (git diff)
- По расписанию — раз в неделю проходит по спискам, обновляет что устарело
- По запросу — "проведи анализ по этой теме"
Что НЕ нужно делать
- ❌ Task 3b в wiki-curation (убрать)
- ❌ Переименовывать файлы с кириллицей/эмодзи
- ❌ Применять Karpathy-wiki к личным спискам (разные задачи)
- ❌ Глубже вкладывать папки
- ❌ Внешние сервисы (LifeOS plugin, Todoist) — у нас есть Asana + Hermes