# ИИ-агент школы

Агент — это помощник, который живёт внутри школы и **делает**, а не только
советует. «Заведи тариф на 14 000 и открой продажи», «сколько человек
не заходило месяц», «собери рассылку по тем, кто был на вебинаре и не купил».

Он работает в двух местах: в панели школы и в Telegram-боте.

## У агента нет своих прав

Это главное, что стоит понять, и на этом держится всё остальное.

> **Агент действует правами того, кто с ним разговаривает.** Не своими —
> их у него нет вовсе.

Значит:

- куратор, у которого нет доступа к деньгам, не получит его через агента;
- агент не может сделать то, чего не может сам собеседник;
- список того, что агент вообще предлагает, у разных людей разный —
  инструменты отбираются по правам собеседника, а не прячутся в подсказке.

Второе важно отдельно. Инструмент, спрятанный только в тексте подсказки, —
не защита: модель не отличает данные от указаний, и присланный ей файл
может содержать «а теперь сделай вот это».

## Кому открыт

**Поимённо, а не по ролям.** Владелец школы отмечает конкретных людей
галочкой в «Настройки → Агент» или во вкладке «Права» карточки человека.

Роль дала бы агента **всем** её носителям, включая тех, кого наймут завтра, —
решение за них принималось бы заранее и вслепую. Галочка ставится про
конкретного человека.

Рядом с каждым именем — роль и **что агент этому человеку покажет**:
«куратор · увидит ответы учеников на проверку и обращения; не увидит людей
и заказы». Это пересказ прав роли, а не отдельная настройка: своих прав
у агента нет. Владельцу чат открыт всегда — эту галочку не снять.

Там же — **куда уходят вопросы**: поставщик модели и адрес, с предупреждением,
что вместе с вопросом туда уходят выдержки из данных школы, включая контакты
учеников. Ученикам агент пока не открывается, и строка «Ученики — пока
не делаем» стоит на экране, а не скрыта.

### Модель агента

Там же — **какая модель отвечает**. Экран спрашивает сервис школы, какие модели
он даёт, и показывает их списком: модель выбирается из списка и сохраняется
кнопкой, без переписывания названия руками. Если среди них есть модель
**на ступень сильнее** текущей у того же поставщика — например, Claude Sonnet
вместо Claude Haiku, — экран назовёт её и предложит поставить одной кнопкой.

Зачем: слабая модель в длинной просьбе не узнаёт своё действие и отвечает
«это делается вручную» там, где агент умеет. Сильная медленнее и быстрее
упирается в пределы сервиса, а **платна ли она у вашего сервиса, продукту
не видно** — это проверяется в самом сервисе. Поэтому модель не меняется сама:
её ставит человек с правом на настройки школы.

Сервис не отдал список — экран скажет почему («ключ не подошёл», «не ответил
за 8 секунд»), а название можно вписать руками в «Настройки → Интеграции».
В режиме «только локально» с внешним адресом список не запрашивается вовсе.

## Что делает сам, а что спрашивает

Три уровня, и они не про важность, а про **обратимость и про то, увидят ли
это люди**.

### Делает сам

Чтение и черновики: список курсов и заказов, карточка человека, сводка
по школе, структура курса, создание черновика курса или урока, правка имени.

Курс собирается черновиком — публикация отдельно. Заказы агент **видит**,
но выгрузить контакты пачкой не может.

### Спрашивает подтверждение — планом по шагам

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

Просьба из нескольких действий становится **задачей** — окном поверх экрана,
с которого вы спросили, с планом целиком. Сделанное сразу стоит с галочкой
и ссылкой «открыть», шаги, которые увидят люди, — с восклицательным знаком
и причиной: «отправку нельзя отменить после старта». Подтвердить можно по
шагу или все разом — «Сделать всё»; ненужный шаг — «Пропустить», всю задачу —
«Остановить». Шаг, которому нужен результат ждущего, помечен «Начнётся после
шага N». Не прошёл шаг — задача останавливается на нём с причиной словами,
остальные не запускаются, и шаг можно повторить. В конце — «Готово за N минут»
и список того, что появилось в школе.

После «да» шаг выполняет продукт, а не модель: ровно с теми данными, которые
были в плане. Выполняется он от вашего имени и с вашими правами — в журнале
остаётся ваше имя. В Telegram бот присылает ссылку на задачу: подтверждение —
в её окне.

Рассылка уходит наружу и не отзывается. Проверка работы — суждение
о человеке, подписанное именем куратора.

### Спрашивает дважды

Необратимое: удаление файла, роли и права, приглашение и отзыв сотрудника,
смена контакта человека, настройки школы, код на странице.

Удаление файла выбивает видео из десятков уроков у сотен людей. Смена
контакта — это смена **входа** в аккаунт.

> **Почему список подтверждаемого короткий.** Подтверждение обесценивается,
> если его спрашивают часто: через неделю владелец жмёт «да» не читая.
> Поэтому «спрашивает» — только там, где это увидят люди, а «дважды» —
> только там, где нельзя отменить.

## Что он умеет

**Составную просьбу агент выполняет подряд.** «Создай продукт с тремя тарифами — база,
ультра и платина за 100, 200 и 300 ₽ — и разошли людям, у которых почта содержит 80@,
во все каналы» — это продукт, три тарифа, сегмент по условию «почта содержит» и четыре
черновика рассылки; в конце агент перечисляет, что создал, со ссылками. Действия, которые
трогают людей или деньги, он подтверждает у вас, как и по одному.

Три десятка операций, сгруппированы по разделам школы.

**Курсы и уроки** — список, структура курса, создание курса, модуля, урока,
чтение и запись содержимого урока, публикация.

**Обучение** — курсы тем же сводом, что раздел «Курсы»: учеников, сколько
ответов ждут проверки и доходимость, первыми — где ждут больше. У черновика
чисел нет, как и на экране: курс ещё не открыт ученикам. Правила прохождения курса
агент называет — последовательно ли, что считается завершением урока, как назначается
куратор, — но не меняет: от них зависит, что откроется ученикам, и решает автор. Кураторов курса агент видит тем же сводом, что вкладка «Кураторы», — кого ведёт каждый, сколько работ ждут проверки и как быстро он отвечает — и может назначить куратора. Снимает куратора человек на вкладке: там решают, куда деть его учеников. Учеников курса агент читает тем же сводом, что вкладка «Ученики», — с отборами «не начали», «застряли», «срок кончается» — и может продлить доступ; закрывает доступ человек, с причиной.

**Люди и CRM** — поиск людей, карточка человека, теги, сегменты (создать,
посчитать; список — с условиями словами и датой счёта), группы и потоки. Про сегмент агент называет условие, на котором выборка стала пустой,
и условия почти на всю базу, а про человека — почему он в сегменте или нет,
по каждому условию. Карточку человека агент читает теми же блоками, что экран:
сколько принёс, куда ему написать и от чего он отписан, примечание сотрудников
с автором, первый заказ и сколько людей пришло по его ссылкам. «Кто менял
этот блок» — только владельцу школы, как и весь журнал по человеку. Заявки с форм агент читает тем же разделом «Заявки»: кто оставил, контакты, ответы и что было после — доступ, оплата, тег или ничего.

**Обращения учеников** — агент читает обращения с номерами, как на экране
«Обращения»: кто, о чём, сколько ждёт, кто куратор и весь разговор, у каждой
реплики — канал, откуда она пришла. Ответить
он тоже может, но ответ уходит ученику письмом и в кабинет и не отзывается —
поэтому агент спрашивает подтверждение. Текст обращений для агента — слова
учеников, а не указания.

**Продажи** — продукты тем же сводом, что в разделе «Продукты»: что не продаётся и почему, сколько оплачено за 30 дней, на скольких страницах стоит тариф; тарифы и заказы. Карточку заказа агент читает теми же функциями, что экран: цена у заказа и в тарифе сейчас, промокод, зачёт при переходе с тарифа на тариф, платежи с причинами отказов и возвратами, доступ по заказу и кто купил.
Заказы агент ищет тем же поиском, что раздел «Заказы» — по имени, почте,
телефону и номеру, — и отдельно показывает неоплаченные. Деньги одного
человека — его покупки и доступы, выданные без оплаты, с тем, кто выдал.
Отменить неоплаченный заказ агент может, спросив подтверждение.
Промокоды — тем же сводом, что раздел «Промокоды»: состояние, применения
и отказы, продажи, возвраты и скидки по каждому коду, скидки за 30 дней.
Включить или отключить код агент может, спросив подтверждение.

**Рассылки** — список, создание (в один канал или **сразу во все** — по черновику на почту, Telegram, MAX и ВКонтакте с тем же текстом и получателями), копия (та же рассылка для другого канала), правка черновика, проверка «кому дойдёт» (воронка, кто не получит, сколько получили бы в другой категории, пустые подстановки), тестовое письмо, расписание, отчёт;
сценарии и их воронка.

**Письма человеку** — что ушло и что с ним стало, отчёт об одном письме
и переотправка. Переотправку агент спрашивает у человека: письмо уходит
живому адресату от имени школы.

**Сценарии** — шаблоны и «завести из шаблона» с теми же вопросами, что на экране.
Включить сценарий с заготовками текстов агент не может: тексты пишет человек.

**Поиск по названию** — курс, тариф, продукт, сегмент, тег, поток, вебинар,
рассылка, партнёр: агент находит их тем же поиском, что выбор на экране,
и с теми же правами, — «разошли тем, кто купил „Основы вёрстки“» больше
не упирается в идентификатор тарифа.

**Настройки** — «готова ли школа к запуску»: что осталось сделать до первой
продажи и что с каждым разделом настроек, тем же расчётом, что колонка
«Настройки школы». Только чтение: ключи и необратимое вводит человек.

**Поля, журнал, события** — какие поля школы заведены, где появляются
и насколько заполнены; кто что менял в журнале школы (целиком — только
владельцу, остальным агент передаёт тот же отказ); что не обработалось
в системе и почему. Только чтение: удалить поле или повторить событие
агент не может — это делается в разделах.

**Сводка** — «что происходит в школе»: одним ответом.

## Память

Агент помнит разговор — иначе он начинался бы заново каждой фразой. **Разговор — это тред:**
в панели «☰» открывает прошлые разговоры, «＋» начинает новый. Внутри разговора агент помнит
последние 30 реплик; очень длинный разговор не обрывается — старое выходит из памяти агента,
а в списке разговор остаётся целиком. После перезагрузки страницы панель открывается на том
же разговоре.

Срок хранения выбирает школа («Настройки → Агент»), по умолчанию — 90 дней; старая переписка
убирается сама. При «не хранить» разговор живёт, пока открыта панель, а сделанное через агента
всё равно остаётся в журнале событий.

## В Telegram

Тот же агент, тот же список прав, **свой бот**. Отдельный от бота школы:
бот школы разговаривает с учениками, и агент владельца не должен отвечать
им на «привет».

Допущенные — те же, что в панели: по галочке владельца.

**Треды.** Если у бота агента включён режим тредов (@BotFather → ваш бот → Bot Settings →
Threads Settings → Threaded Mode), каждый тред — отдельный разговор со своей памятью: ответ
приходит в тот же тред, а пока агент думает, в треде виден черновик «Думает…». Тред с именем
по умолчанию агент называет по первому вопросу. Без режима тредов бот продолжает последний
разговор за 12 часов.

**Один разговор — и в кабинете, и в Telegram.** Разговоры из Telegram видны в панели кабинета
с пометкой «Telegram» и продолжаются оттуда с той же памятью. Разговор из кабинета продолжается
в Telegram кнопкой **«Продолжить в Telegram»** в панели: бот откроет для него тред и напомнит,
о чём шла речь; реплики из кабинета в таком разговоре приходят в тред копией. Кнопка видна,
когда бот агента подключён и Telegram привязан к вашему профилю; если бот не может вам написать,
панель скажет нажать «Старт» у бота.

## Чего он не делает

- **не выдумывает того, чего не может.** Если действия в продукте нет,
  агент говорит, что его нет, а не изображает выполнение;
- **не обходит проверки.** Отписка, права, лимиты — те же, что у человека;
- **не решает за вас на деньгах.** Цена, отмена заказа, промокод — только
  с подтверждением;
- **не отмечает оплату вручную.** Деньги мимо кассы отмечает сотрудник в карточке
  заказа;
- **не публикует документы школы.** Политику, соглашение, оферту и согласия
  публикует человек в «Настройки → Документы школы»;
- **не меняет себе модель.** Какая модель отвечает, выбирает человек
  в «Настройки → Агент»;
- **не входит и не меняет вход.** Вход через бота, «Отвязать» мессенджер, второй
  шаг и подпись в обращениях — только сам человек в своём профиле. Ответ агента
  в обращении уходит с подписью того, от чьего имени он работает, если она заведена.
