460 lines
23 KiB
Markdown
460 lines
23 KiB
Markdown
---
|
||
created: '2026-05-15'
|
||
updated: '2026-05-15'
|
||
tags:
|
||
- personal-os
|
||
- obsidian
|
||
- vault
|
||
- strategy
|
||
- llm-wiki
|
||
status: 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`):
|
||
```markdown
|
||
## 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 Queue** — `wiki/research-queue.md`:
|
||
```markdown
|
||
## 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
|
||
|
||
---
|
||
|
||
## Ссылки
|
||
|
||
- [Karpathy LLM Wiki gist](https://gist.github.com/karpathy/442a6bf555914893e9891c11519de94f)
|
||
- [LLM Wiki v2 — rohitg00](https://gist.github.com/rohitg00/2067ab416f7bbe447c1977edaaa681e2)
|
||
- [claude-obsidian](https://pyshine.com/2026/04/claude-obsidian-self-organizing-ai-knowledge-engine/)
|
||
- [Ar9av/obsidian-wiki skills](https://deepwiki.com/Ar9av/obsidian-wiki/3.5-knowledge-building-skills)
|
||
- [Nodus Labs knowledge graph](https://support.noduslabs.com/hc/en-us/articles/26724863249180)
|
||
- [mathisgauthey vault template](https://github.com/mathisgauthey/obsidian-workflow-template)
|
||
- [MOC + Dataview guide](https://github.com/seqis/ObsidianMOC)
|