Files
wiki/memory/2026-03-24.md
2026-04-12 21:55:33 +03:00

116 lines
8.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 2026-03-24
## Напоминания
- Установлено напоминание купить таблетки Фурагин на 24 марта 2026, 10:00 UTC (13:00 МСК)
- Cron задача ID: 69428f8f-d0aa-4e59-8fa3-40693f566374
- Сообщение будет отправлено через Telegram (chatId: 126472752)
## Обновление напоминания
- 24 марта 05:49 - Слава попросил добать к напоминанию покупку Грипферона и закапать его
- Cron задача обновлена: добавлен Грипферон в список покупок и указание закапать
- Новый текст напоминания: 'Напоминание: купить таблетки Фурагин и Грипферон сегодня в обед. Не забудь закапать Грипферон!'
## Создание универсальных инструкций для TTS-оптимизации
- 24 марта 07:28 - Слава попросил создать инструкции, которые позволят любым моделям LLM генерировать идеальный текст для последующей озвучки в ElevenLabs
- **Создан файл:** TTS_OPTIMIZATION_GUIDELINES.md в workspace
- **Содержание:** 10 основных принципов оптимизации текста для TTS с примерами
- **Принципы:** структура предложений, пунктуация для пауз, интонация, форматирование специальных элементов, естественный язык, паузы и ритм, указание ударений, избегание проблемных конструкций, специальная разметка, тестирование
- **Интеграция:** инструкции можно добавлять в промпт или SOUL.md агента
## Напоминание через 20 минут
- 24 марта 10:18 - Слава попросил 'Повтори через 20 минут'
- Создана cron задача: reminder-tts-followup, ID: e5bfc181-3db4-415f-a752-192759ca9fd6
- Время срабатывания: 24 марта 2026, 10:39 UTC (13:39 МСК)
- Содержание напоминания: вопросы про TTS инструкции и создание агента-оптимизатора
## Вопрос про создание ярлыка Telegram на Android
- 24 марта 16:14 - Слава спросил, как сделать ссылку на чат в Telegram в виде ярлыка на рабочем столе Android
- **Ответ дан голосовым сообщением:** несколько способов создания ярлыков
- **Способы:**
1. Нативный Android: долгое нажатие на чат в Telegram → 'Добавить на главный экран' или перетаскивание
2. Приложение Shortcut Maker из Google Play
3. Лаунчеры типа Nova Launcher с расширенными функциями
4. Виджеты Telegram (менее удобно для открытия конкретного чата)
## Обсуждение умной колонки / голосового ассистента
- 24 марта 17:3018:08 - Большое обсуждение реализации умной колонки типа Алисы
- **Варианты тестирования:** Tasker + AutoVoice (триггерное слово, без кнопок)
- **Железо:** ReSpeaker Lite от Seeed Studio — есть на Ozon, 3 варианта
- **Платформа:** OpenVoiceOS — Pi4/x86/Docker, встроенный VAD и STT (Whisper)
- **Интеграция OVOS + OpenClaw:** через Ollama-compatible API
- **Задержка:** через Telegram ~58 сек, напрямую ~34 сек
- **Озвучка:** три варианта — OVOS встроенный / ElevenLabs / Yandex SpeechKit
- **Статус:** Слава думает, обсудим позже. Следующий шаг — практический тест (предложен Tasker)
## Настройка Telegram Collector v2 (24 марта, вечер)
### Архитектурные решения
- Переменные для скилла: `TELEGRAM_COLLECTOR_*` (отдельно от основного Telegram-канала OpenClaw)
- Авторизован аккаунт VM (API_ID=36911437, телефон +79962876431)
- Сессия: `skills/telegram-collector/telegram_collector.session`
### Структура хранения данных (согласована)
```
raw/{channel_id}/{topic_id}/
├── state.json ← last_message_id, initial_load_complete, last_incremental_at
├── batch_XXXX.json ← сообщения с полями: id, date, text, from_id, reply_to_msg_id, reply_to_top_id, quote_text, edit_date, pinned, media
└── media/ ← фото и документы ≤50МБ; видео и >50МБ — только метаданные
raw/{channel_id}/meta.json ← название, topics, incremental_cron, cron_job_id
```
### Медиа-политика
- Фото: скачиваем всегда
- Документы ≤50МБ: скачиваем
- Видео (любой размер): только метаданные
- Файлы >50МБ: только метаданные
- Видео замаскированные под document (mp4 mime): тоже пропускаем
### Первичная загрузка @snowbikerussia — результат
- channel_id: 1242788123
- Всего загружено: 155 143 сообщений, 13 983 медиафайла, 2 784 МБ
- 12 топиков: Основная (92437), Техничка (21623), Китай (15670), Обзоры (10995), ОФФТОП (5823), Экип (3671), Электрички (1651), Локации (1619), Барахолка (1510), Инструкции (96), Соревнования (24), Опросы (24)
- Статус: ✅ initial_load_complete=true для всех топиков
### Инкрементальный режим
- Cron: `0 21 * * *` UTC = 00:00 МСК ежедневно
- Cron job ID: `860e23a4-ef35-4700-9e9c-e1ba9e3b932d`
- По завершении скрипт автоматически отправляет отчёт в Telegram
- last_incremental_at обновляется даже если новых сообщений нет
- Протестировано вживую — работает корректно
### Баги исправленные в процессе
- Пагинация initial_load: `reverse=False` + offset_id не двигался → 9 дублированных батчей. Исправлено: `offset_id = min(ids)` после каждого батча
- Видео как document: добавлена проверка mime-type в `should_download()`
### Правило для документации скилла
- SKILL.md — только универсальное описание (как работает скилл)
- Настройки конкретного канала (cron_job_id, расписание, статистика) — ТОЛЬКО в `meta.json` канала
- Нарушала это правило дважды, исправляла
## Анализ данных сноубайков (запущен 20:44 МСК)
### Подход: двухпроходный Б+А
- Пасс 1: GPT-4o mini — все 135 645 сообщений, 2718 чанков по 50, извлечение фактов в JSON
- Пасс 2: Claude Sonnet — синтез `knowledge_base.md` из собранных фактов
- Оценочная стоимость: ~$4.10
### Категории извлекаемых знаний
repairs, models, locations, prices, riding_tips, tuning, donor_bikes, season
### Выходные файлы
- `data/telegram-collector/facts_partial.json` — промежуточные факты (прогресс пасс 1)
- `data/telegram-collector/knowledge_base.md` — финальная база знаний
### Веб-просмотрщик
- Flask-сервер: `tasks/snowbike-kb/server.py` → порт 5556
- Viewer: `tasks/snowbike-kb/viewer/index.html` — markdown с поиском
- URL: `https://openclaw.mva154.duckdns.org/snowbike/`
- ⚠️ Нужно добавить nginx-проброс `/snowbike/``localhost:5556` на хосте
- Страница автообновляется каждые 30 сек пока kb не готов
### Статус
- Анализ запущен в фоне (~4 часа), PID 6329
- По завершении придёт уведомление в Telegram со стоимостью
- Flask-сервер запущен (порт 5556), показывает "анализ выполняется" пока нет kb