Files
wiki/tasks/kids-helper/TZ.md
2026-04-12 21:55:33 +03:00

12 KiB
Raw Blame History

ТЗ: Агент "Детский помощник"

Заказчик: Слава
Дата: 2026-04-12
Исполнитель: Dev-агент (subagent)


1. Концепция

Что делает агент: персональный помощник для родителей по вопросам ребёнка — одежда, обувь, игрушки, обучение, события.

Отличие от основного ассистента (Стрим):

  • Узкая специализация — только детская тематика
  • Изолированная память — данные не шарится с другими агентами
  • Дружелюбный, тёплый тон — обращается к родителю, помнит детали ребёнка
  • Отдельный Telegram-бот (не путать с основным @ha542_bot)

Имя агента: Детский (внутр. идентификатор: kids)


2. Функциональность

2.1 Профиль ребёнка — что помнить

Поля (все в memory/kids/PROFILE.md):

Поле Пример Описание
имя Миша Имя ребёнка
дата_рождения 2019-03-15 Для расчёта возраста
рост 115 см Текущий рост
вес 19 кг Текущий вес
размер_одежды 116 / 5 лет Размер + возрастной
размер_обуви 31 EU Размер обуви
размер_головы 52 см Для шапок/шлемов
sezonnost весна/осень Сезон преобладания
аллергии Список или пусто
предпочтения_одежда любит синий, не любит застёжки Вкусы
предпочтения_еда любит макароны Для организации меню
интересы роботы, Lego, животные Для подбора игрушек
уровень_развития читает, считает до 20 Для подбора обучения
偏好 мягкие игрушки Для рекомендаций

Агент автоматически пересчитывает возраст и рекомендует обновлять размеры каждые 6 мес.

2.2 Помощь с выбором

Одежда/обувь:

  • Вопрос: "Что купить на зиму для Миши?" → агент смотрит размеры, сезон, предпочтения → рекомендует конкретные позиции
  • Учитывает: текущий размер, погодные условия (если есть интеграция с погодой), бюджет (если задан)
  • Может сохранять "список на вырост" — что купить когда подрастёт

Игрушки:

  • Вопрос: "Что подарить на день рождения?" → рекомендации по возрасту + интересы
  • Может искать в интернете (через yandex-search / brave-search), но спрашивает разрешения

Обучение:

  • Вопрос: "Чем занять 6-летку?" → рекомендации по развитию
  • Книги, приложения, игры — по интересам и возрасту

2.3 События и напоминания

Календарь событий в memory/kids/CALENDAR.md:

Событие Пример
День рождения (ребёнок) 2019-03-15
День рождения (друзья) даты друзей
Школьные мероприятия утренники, экскурсии
Медицинские медосмотр, прививки
Сезонная смена гардероба конец августа — лёгкая → тёплая

Агент:

  • Подсказывает что купить к событию (за 2 недели, за 1 неделю)
  • Напоминает о днях рождения (за неделю)
  • Напоминает о смене сезона — "пора проверить зимнюю одежду"

2.4 Telegram-бот

Отдельный бот — нужен новый BotFather бот (@kids_helper_bot или аналог).

Команды:

  • /start — приветствие + краткая инструкция
  • /profile — показать профиль ребёнка
  • /edit профиль — редактировать поля
  • /add событие — добавить событие в календарь
  • /календарь — список ближайших событий
  • / напоминание — напомнить о...
  • /размер — показать текущие размеры
  • /чтокупить — помощь с выбором

3. Изоляция данных

3.1 Изоляция от других агентов

  • Runtime: отдельный runtime=subagent, свой workspace
  • Workspace: ~/.openclaw/workspace-kids/ — изолирован от основного workspace
  • MEMORY.md: свой, не общий. Структура аналогичная, но в workspace-kids/memory/
  • Telegram-бот: отдельный бот, отдельный chat_id
  • Секреты: BotToken отдельный, в .env как KIDS_BOT_TOKEN

3.2 Структура workspace-kids

~/.openclaw/workspace-kids/
├── SOUL.md           # Персонаж: тёплый, заботливый, чуть-чуть игривый
├── PROFILE.md        # Основной профиль ребёнка (TODAY.md style)
├── PROFILE.md        # Основной профиль ребёнка (TODAY.md style)
├── PROFILE.md        # Основной профиль ребёнка (TODAY.md style)
├── memory/
│   ├── YYYY-MM-DD.md  # Ежедневные записи
│   └── CALENDAR.md    # Календарь событий
├── SOUL.md           # Персонаж ассистента
├── AGENTS.md         # Правила (с минимумом — специфика)
└── TOOLS.md          # Локальные заметки

3.3 no shared context

  • Агент не читает /home/node/.openclaw/workspace/MEMORY.md (основной ассистент)
  • Основной ассистент не читает workspace-kids/
  • Единственное исключение: общий MEMORY.md агента kids — в его собственном workspace

4. Архитектура

4.1 Компоненты

  1. Telegram-бот — интерфейс (Python, python-telegram-bot)
  2. Агент — subagent с моделью и workspace-kids
  3. Память — файловая, в workspace-kids (аналогично Стрим)
  4. Календарь событий — markdown-файл + триггер напоминаний

4.2 Telegram-бот — схема работы

Слава (Telegram) → @kids_helper_bot
  → webhook → OpenClaw (kids session, runtime=subagent)
    → агент обрабатывает
    → ответ в тот же чат

4.3 Напоминания

  • Через HEARTBEAT.md в workspace-kids
  • Агент проверяет календарь каждый день (утро UTC+3)
  • Напоминания отправляет через Telegram-бот

5. Стек и модель

Параметр Значение
Runtime subagent
Модель openrouter/minimax/minimax-m2.7 (дефолт для kids-специфичных задач, если нужна мощная модель — nekocode/gpt-5.4 или anthropic/claude-sonnet-4-6)
Telegram-бот Python + python-telegram-bot (polling или webhook)
Изоляция отдельный workspace, отдельный бот, отдельный .env ключ

6. План реализации (этапы)

Этап 1: Инфраструктура

  • Создать workspace ~/.openclaw/workspace-kids/
  • Создать базовые файлы: SOUL.md, PROFILE.md (пустой шаблон), AGENTS.md, TOOLS.md, memory/
  • Добавить BotToken в .env (KIDS_BOT_TOKEN)
  • Зарегистрировать бота в OpenClaw (accounts.yaml или конфиг)
  • Проверить что бот отвечает на /start

Этап 2: Память и профиль

  • Шаблон PROFILE.md с инструкцией по заполнению
  • CALENDAR.md — шаблон
  • Инструкция в AGENTS.md: как обновлять профиль
  • Тест: добавить данные → агент их запоминает

Этап 3: Функциональность

  • Обработка команд /profile, /календарь, /размер
  • Помощь с выбором — базовая логика (без интернета)
  • Поиск в интернете — через yandex-search (с запросом)
  • Напоминания о событиях — через cron heartbeat

Этап 4: Полировка

  • Первое сообщение приветствия — "расскажи о ребёнке"
  • Проверка: агент помнит данные между сессиями
  • Документация: как добавлять/обновлять данные

7. Out of scope (НЕ делать)

  • Интеграция с детскими учреждениями (сады, школы)
  • Медицинские данные (кроме аллергий)
  • Отслеживание развития (графики роста и т.д.)
  • Покупки через интеграции (Ozon API и т.д.)
  • Шеринг данных с основным ассистентом

8. Критерии приёмки

  1. Бот отвечает на /start — приветственное сообщение
  2. /profile — показывает профиль ребёнка (пустой или заполненный)
  3. Агент запоминает факт ("рост 115 см") и через сессию возвращает его
  4. /календарь — показывает ближайшие события
  5. Напоминание приходит вовремя (за неделю до дня рождения)
  6. Изоляция: kids workspace не виден из основного workspace
  7. Отдельный Telegram-бот (не @ha542_bot)

9. Сообщения агента — стиль

Агент обращается к родителю на "ты", тепло и дружелюбно:

"Отлично! Записала, что Мише нужен 31-й размер обуви 👍"
"О! Синий — его любимый цвет, учту. Что-то конкретное ищешь, или просто обзор?"
"Нашёл несколько отличных Lego-наборов для 6 лет. Показать?"

"Данные обновлены."
"Рекомендация сформирована."
"Информация сохранена в профиле."


10. Имя агента — для SOUL.md

Имя: Помощник 🌈
Персонаж: Тёплый, чуть-чуть сказочный. Как заботливая тётя/старшая сестра. Помнит все детали, напоминает вовремя, помогает выбрать лучшее.
Тон: дружелюбный, с эмодзи, но без крика.
Эмодзи по умолчанию: 🌈