---
date: 2026-04-19
type: daily
tags: [planning, kb-improvements]
---

# 2026-04-19

## Вчера сделано за день

См. [[2026-04-18]] — 6 крупных пунктов закрыто:
- Fix B env cleanup, консолидация auto-memory, расширение audit (NPM/Creds/DNS)
- KB health metric + level 4 agent-loop (**score 493 → 45**, Opus сам написал helper)
- iPhone Obsidian через iCloud, Mac-фото в Nextcloud (697 файлов)

## Приоритеты сегодня

### A. iPhone auto-upload фото в Nextcloud (5 мин)
На iPhone → Nextcloud app → Настройки → Автозагрузка:
1. Включить «Автоматически загружать фото» и «…видео»
2. Каталог: `/Photos/iPhone-upload/`
3. Только по Wi-Fi
4. Включить «Загружать существующие»

Работает в фоне часы-сутки. После — можно освобождать iCloud.

### B. Проверить что Mac-фото доехали на dttb.ru сервер
Вчера File Provider начал upload 3.1 GB. Проверить:
```bash
curl -sku admin:'1qaz!QAZ' -X PROPFIND \
  "https://dttb.ru/remote.php/dav/files/admin/Photos/" -H "Depth: 1" \
  | python3 -c "import sys,xml.etree.ElementTree as ET; \
    r=ET.fromstring(sys.stdin.read()); \
    print(len(r.findall('{DAV:}response')), 'objects')"
```

### C. Второй прогон agent-loop (10 мин) — эксперимент
Запустить вручную — посмотреть уйдёт ли score с 45 ниже (там остались duplicate_basenames=3 и broken_paths=3):
```bash
ssh root@10.0.0.250 'pct exec 132 -- bash -c "bash /root/knowledge-base/scripts/kb-agent-loop.sh"'
tail /var/log/kb-agent-loop.log
```

## Большие задачи на будущее (не сегодня)

### RAG для openclaw-бота (~день) ⭐⭐
- Эмбеддинги .md файлов через OmniRoute (бесплатно)
- SQLite/Qdrant локально на openclaw
- `post-commit` git hook обновляет эмбеддинги при изменениях
- Бот в Telegram делает vector search → топ-5 файлов в контекст Opus
- **Цель**: «найди что я писал про VPN в марте» → за секунду релевантный ответ

### Тест восстановления из PBS (~час)
- Потерять симулированно LXC 136 (gitea) → сколько минут до работы?
- Потерять VM 250 (Nextcloud) → то же
- Задокументировать runbook в `decisions/`
- **Цель**: узнать проблему с бэкапами сейчас, а не когда что-то реально потеряно

### Openclaw: реальная делегация (~1-2 часа)
Два пути:
- **Второй Telegram-бот** с профилем opus-only через CLIProxy — новая переменная окружения
- **Regex-hook в message-handler** — сложно, openclaw минифицирован, нужен обход

### Auto-apply для NPM drift (~30 мин)
По аналогии с `kb-audit-apply.py` (Proxmox): новые proxy hosts автоматом добавлять в `npm-proxy-hosts.md`.

### Session-saver v2 (~час)
Парсить transcript Claude и флажить:
- Упомянутые IP/хосты, которых нет в inventory
- TODO появившиеся в диалоге
- Команды, которые стоит в `snippets/`

## Инфраструктура

Без изменений после вчера. Вся автоматика работает:
- Stop-hook: session-saver → sync (Nextcloud) → sync-icloud
- code-server cron */5: auto-sync git
- openclaw cron */15: RO pull (self-heal)
- obsidian-git 5 мин autoPush
- воскр 06:00: full audit + agent-loop

## Заметки

Level 4 agent-loop реально работает — Opus за 7 минут снёс 448 штрафов из 463. Сам написал `kb-add-indexes.py` когда увидел массовую задачу. Это эквивалент karpathy/autoresearch для KB: метрика-ветка-merge-reset.

## Итог дня

(заполнить вечером)
