# Правила поведения питомца

Согласованы 3 ноября 2026 года. Эти правила закреплены тестами домена и приложения.

## Уход

Все шкалы ограничены диапазоном 0–100. Время плавно возвращает еду и радость к 60,
энергию к 100. Постоянные времени — 3, 2 и 1 час соответственно. Частота тиков
не влияет на результат; время в прошлом состояние не меняет.

| Команда | Эффект |
| --- | --- |
| feed | Еда +30, энергия +5; при еде выше 95 отказ |
| pet | Радость +15 |
| play | Радость +25, энергия −15, еда −5; при энергии ниже 15 отказ |
| nap | Энергия +40 сразу, временная реакция сна на 8 секунд |

Уход можно повторять без задержки. Ручная игра XP не приносит.
Начало работы агента прерывает временный сон, сохраняя восстановленную энергию.

## Работа агента

- Генерация: XP +2 и +1 за каждую полную тысячу выходных токенов;
  еда +5 и ещё min(8, токены / 400); энергия −1,5.
- Инструмент: счётчик +1, XP +1 и энергия −0,4 независимо от исхода.
- Успех инструмента: радость +1,5. Ошибка: счётчик ошибок +1, радость −10.
- Завершение запроса без ошибок: радость +4 и увеличение серии успехов.
  При ошибках серия сбрасывается, дополнительного бонуса или штрафа нет.
- Возвращение стаи: XP +2 за генерацию и +1 за инструмент при любом исходе.
  Успешное возвращение даёт +4 радости, неуспешное −10 один раз за всю стаю.
  Ошибки отдельных субагентов и ошибка оболочки запуска повторно не штрафуются.
  Неудача любого фонового запуска делает возвращение всей стаи неуспешным.
- Прогресс субагентов записывает родительская сессия; дочерние процессы без UI
  общий файл не меняют.

## Настроение

Позы активности при быстрых вызовах инструментов показываются по очереди, каждая не меньше 5 секунд.

Приоритет: временная реакция → работа → сон → грусть → радость → покой.
Временные реакции действуют и во время работы; начало работы снимает только сон.

- Энергия ниже 10 — сон; радость ниже 30 — грусть.
- Радость выше 80 и еда выше 60 — счастлив.
- Через 3 минуты бездействия ложится, через 10 минут засыпает, ровно при достижении срока.
  Порог сна можно настроить через PI_BUDDY_IDLE_SLEEP_MS.
- Пока стая работает, от бездействия не засыпает, но может заснуть от истощения.
- Временная реакция заканчивается ровно в указанный срок.

## Выбор и новое яйцо

choose меняет вид и редкость вида, сохраняя имя, XP, возраст, шкалы, счётчики и shiny.
Взрослый облик, если есть у вида, включается с уровня 5 включительно.

hatch создаёт нового питомца с новым именем, редкостью и shiny; XP и счётчики
обнуляются, еда и радость — 80, энергия — 100. Настройки видимости, расположения,
размера, анимации, mute и цвета сохраняются. Требуется подтверждение;
без диалога используется явная команда /buddy hatch confirm. Отмена ничего не меняет.

## Несколько терминалов

XP и счётчики складываются без повторного начисления, шкалы объединяются
приращениями с учётом прошедшего времени. Последняя активность — самая свежая.
Терминал записывает только изменённые им настройки; при конфликте одной настройки
побеждает последняя успешная запись.

Серия успехов общая: результаты запросов применяются в порядке успешного сохранения.
Ошибка записи оставляет результаты в памяти для повторной попытки; чтение их не подтверждает.
Новое яйцо заменяет питомца во всех терминалах и отбрасывает несохранённый прогресс
и настройки прежнего питомца.
