Files
obsidian-vault/personal/projects/personal-os/obsidian-vault-strategy.md
T

23 KiB
Raw Blame History

created, updated, tags, status
created updated tags status
2026-05-15 2026-05-15
personal-os
obsidian
vault
strategy
llm-wiki
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.

Три операции:

  1. Ingest — дропаешь источник, агент создаёт/обновляет 10-15 wiki pages
  2. Query — агент читает index.md, находит нужные pages, даёт ответ со ссылками
  3. 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 schema
  • PostToolUse → auto-commit if files changed
  • Stop → 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 агрегирует.

Шаги:

  1. Убрать Task 3b из wiki-curation промпта
  2. Создать enrichment cron (еженедельно):
    • Проходит по personal/documents/, family/documents/
    • Для каждого файла без frontmatter: добавляет aliases, tags
    • Для переименованных файлов: alias = оригинальное имя
    • Добавляет wikilinks к связанным файлам
    • НЕ переименовывает, НЕ перекладывает
  3. Создать personal/index.md и family/index.md с Dataview секциями
  4. Создать VAULT-INDEX.md в корне — живой dashboard для агента

Стек: Hermes cron + obsidian MCP + terminal toolset

Оценка: 1-2 дня работы агента


Проект 2: LLM Wiki — Knowledge Accumulation

Цель: каждая research сессия накапливается. Следующий вопрос про Obsidian PKM → читаю 2 страницы wiki вместо 10 web запросов.

Шаги:

  1. Добавить wiki-capture в workflow wiki-curation:
    • После каждой research сессии (как сегодня) → автоматически создаёт wiki page
    • Ключевой механизм: я говорю "сохрани это в wiki" или агент сам идентифицирует valuable content
  2. Добавить wiki-synthesize в wiki-curation cron:
    • Находит co-occurring concepts без synthesis page
    • Строит Concept A × Concept B pages
  3. Добавить wiki-research как отдельный skill/cron:
    • 3-round autonomous research loop
    • Результаты → wiki/concepts/ или wiki/synthesis/
  4. Session hooks: Stop → compress session → file insights
  5. 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

Цель: агент берёт личные списки, читает user profile, обогащает данными из внешних источников.

Первые три target notes:

Target A: personal/documents/app-ideas.md

Триггер: добавлена новая идея (git change detection) или еженедельно
Процесс:
  1. Читает каждую идею без тега "analyzed"
  2. YC search (corralm/yc-scraper или web search "site:ycombinator.com [keyword]")
  3. ProductHunt search по ключевым словам
  4. Web search конкурентов
  5. Сохраняет: personal/projects/app-analysis/[slug].md
     - Existing solutions (кто, когда, funding)
     - Differentiation opportunities
     - Market gaps
     - Verdict: "ниша занята / частично / свободна"
  6. Добавляет тег "analyzed" + ссылку на анализ в app-ideas.md

Target B: family/documents/kids-activities.md + family/documents/games-wishlist.md

Триггер: еженедельно или при изменении файлов
Процесс:
  1. Читает kids-activities + games-wishlist
  2. Читает user-profile.md (возраст ребёнка, интересы, темперамент)
  3. Cross-links: добавляет wikilinks между файлами
  4. Фильтрует games-wishlist: "подходит для совместной игры с [возраст]"
  5. External search: "co-op games dad and [age] year old", "best games for [interest]"
  6. Сохраняет: family/projects/kid-games-together.md
     - Текущие игры из списка (отфильтрованные, с объяснением)
     - Новые рекомендации с обоснованием по профилю
     - Разбивка по типу (кооп / соревновательные / обучающие)

Target C: family/documents/movies-watchlist.md

Триггер: еженедельно
Процесс:
  1. Читает watchlist, находит фильмы без рейтинга/жанра
  2. OMDB API / web search → добавляет жанр, год, рейтинг
  3. Строит "похожие фильмы" список по просмотренным
  4. Обновляет frontmatter watchlist

User Profile (создать wiki/user-profile.md):

## Alex
- Интересы: home automation, Swift/iOS, AI agents, cycling, music production
- Текущие проекты: personal-os, executor, media-toolbox

## Ребёнок
- Возраст: [заполнить]
- Интересы: [заполнить]
- Игровой стиль: [заполнить]
- Что работает хорошо: [заполнить]

## Семья
- [заполнить]

Стек: Hermes cron + web toolset + terminal (git change detection) + obsidian MCP

Оценка: 1-2 недели на первые три 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 (еженедельно):

  1. Читает wiki/index.md
  2. Смотрит на последние сессии (briefs/daily)
  3. Находит: что упоминается но нет страницы? что давно не обновлялось? где кластеры не связаны?
  4. Генерирует список hypothesis: "исследовать X", "сравнить A vs B", "что нового в Y"

Research Queuewiki/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 — Расширенные use cases (твои примеры)

Это отдельный класс задач — cross-domain enrichment с внешними данными. Не просто накопление знаний, а агент который берёт твои личные данные и обогащает их внешним контекстом.

Use case 1: Идеи приложений → конкурентный анализ

family/documents/app-ideas.md (список идей)
    ↓ агент читает каждую идею
    ↓ ищет по YC directory (5800+ компаний, есть scraper API)
    ↓ ищет по AngelList / Crunchbase / ProductHunt
    ↓ ищет по ключевым словам в web
    ↓ генерирует competitive landscape
    ↓ сохраняет в personal/projects/app-analysis/[idea-slug].md

Что войдёт в анализ:

  • Существующие решения (кто, когда основан, funding)
  • Дифференциаторы (что делают иначе)
  • Незакрытые ниши
  • Инсайты: "похожих YC компаний нет в этой вертикали"

Источники данных:

  • YC: https://www.ycombinator.com/companies — scraper доступен (corralm/yc-scraper, Browse AI)
  • ProductHunt: API есть
  • Google/web search по ключевым словам идеи

Use case 2: Активности с ребёнком × игры × психологический профиль

Это самый сложный и ценный use case — multi-source cross-reference с профилем.

family/documents/kids-activities.md ← "игры с ребёнком"
family/documents/games-wishlist.md  ← список игр
wiki/user-profile.md                ← профиль Alex + ребёнок (возраст, интересы, что работает)
                    ↓
              Enrichment Agent
                    ↓
1. Cross-link: kids-activities → games-wishlist (wikilinks + Dataview)
2. Filter games: возраст ребёнка + совместная игра + интересы
3. External search: "co-op games for dad and [age] year old"
4. Психологический профиль (если есть заметки) → учитывает стиль обучения, темперамент
5. → family/projects/kid-games-together.md
   - Список из текущих игр (отфильтрованный)
   - Новые рекомендации из внешних источников
   - Почему каждая игра подходит (по профилю)

Ключевой паттерн: агент не просто ищет — он читает профиль и фильтрует под конкретного человека. Это и есть разница с обычным Google поиском.


Общий паттерн: Personal Context → External Signal → Insight

Личные данные в vault
    + User Profile (возраст ребёнка, интересы, предпочтения)
    + External APIs (YC, ProductHunt, Steam, RAWG, IMDB...)
    ↓
Enrichment Agent (по триггеру или расписанию)
    ↓
Enriched note в vault (cross-links + внешние данные + insights)

Другие возможные use cases по этому паттерну:

  • movies-watchlist.md → рекомендации похожих фильмов по жанрам + IMDB рейтинг → enriched watchlist
  • books-reading-list.md → Goodreads/OpenLibrary → что похожего, порядок чтения, тематические связи
  • places-to-visit.md → OpenStreetMap/маршруты → "эти места рядом, оптимальный маршрут"
  • home-automation-wishlist.md → Home Assistant community → что уже реализовано, как интегрировать с нашим стеком
  • Профиль инвестора/карьеры → Job boards / LinkedIn signals

Триггеры обогащения

Три способа запускать enrichment:

  1. По добавлению — новая запись в app-ideas → автоматически запускает анализ
  2. По расписанию — раз в неделю проходит по спискам, обновляет что устарело
  3. По запросу — "проведи анализ моих идей приложений"

Что НЕ нужно делать

  • Task 3b в wiki-curation (убрать)
  • Переименовывать файлы с кириллицей/эмодзи
  • Применять Karpathy-wiki к личным спискам (разные задачи)
  • Глубже вкладывать папки
  • Внешние сервисы (LifeOS plugin, Todoist) — у нас есть Asana + Hermes

Ссылки