База знаний (KB)¶
Этот самый сайт — операционный центр всей работы. Единый интерфейс для видения проектов, задач, стратегии, инфраструктуры и личных дел.
Роль в системе¶
- Показ структурированного видения всех проектов
- Управление задачами через веб (чекбоксы, создание, редактирование)
- Быстрый inbox для идей
- Источник для RAG-индексации
- Обеспечение перемещаемости проектов между категориями
Как это устроено¶
- Источник правды: git-репозиторий
alatyr-infra-kb - Отображение: MkDocs Material
- Правка через веб: Decap CMS с GitHub OAuth
- Хостинг: Docker Compose на
ragserver - Доступ: поддомен
kb.alatyr-service.ruс TLS от Let's Encrypt, только через LAN 192.168.1.0/24 и AmneziaWG (без проброса наружу) - CI: GitHub Actions пересобирает сайт при коммите
- RAG-индексация: через существующий
sync-to-openwebui.sh
Структура сайта¶
- Фундамент — инфраструктура
- Стратегия — концепция, roadmap
- Проекты — активные и долгосрочные
- Личное — финансы, здоровье, интересы
- Справочники — юрлица и другие статические данные
- Inbox — быстрые идеи до разбора
Структура проекта¶
projects/<slug>/
index.md # видение, статус, зависимости, юрлицо-исполнитель
<subsection>/ # подразделы для крупных проектов
index.md
tasks/ # задачи в отдельных файлах
<ulid>.md
tasks/ # для простых проектов без подразделов
<ulid>.md
Идентификаторы задач¶
ULID как стабильный внутренний ключ + человекочитаемый алиас (CRM-64, KOZHA-05) для отображения. При переносе задачи между проектами алиас регенерируется, ULID остаётся.
RAG-интеграция по этапам¶
- Сейчас: пассивная индексация через
sync-to-openwebui.sh - После запуска: виджет «спросить у ИИ» на страницах проектов с фильтрацией по проекту
- В перспективе: двусторонняя интеграция, RAG предлагает задачи
Задачи в TODO¶
- INF-05 (P1, Этап 0) — реализация KB-сайта, ~15 ч
- INF-06 (P1, Этап 1-2) — виджет «спросить у ИИ», ~12 ч
- INF-07 (Later) — двусторонняя интеграция, ~30+ ч
Стек в деталях¶
- MkDocs 1.6 + Material 9.7 — генерация статики из markdown
- Плагины: search (ru+en), awesome-pages, glightbox
- Расширения: pymdownx (details, tabs, tasklist, highlight), admonition, toc, footnotes, mermaid
- Docker: двухэтапный build (python→nginx-alpine) —
python:3.12-slimbuilder собирает HTML,nginx:1.27-alpineruntime отдаёт на 8080 - Docker Compose: в
/opt/alatyr-kb/deploy/, контейнер слушает 127.0.0.1:8081 - Хостовой nginx: reverse proxy 443 → 8081, TLS-терминация, security headers (HSTS, X-Frame-Options, noindex)
- DNS: в LAN и через VPN резолвится в 192.168.1.200, снаружи — не открывается (нет проброса 443 на роутере)
Ссылки¶
- Концепция — раздел «KB-сайт как операционный центр всей работы»
- deploy/README.md — инструкция по развёртыванию на ragserver
- rag-platform-docker.md — соседний docker-стек RAG