ТЗ: пользоваться системой играючи — минимум ручного ввода, ИИ на всех формах
Согласовано 01.10.2026 (решения — раздел 8). Продолжение ТЗ AI-помощника: там помощник появился в задачах, чатах, ТЗ, сметах и табеле; здесь он становится способом заполнять любую форму системы, а работа в системе — простой и быстрой.
«Играючи» — значит легко, а не игра: никаких достижений, очков и уровней. Меряем тем, сколько сотрудник набрал руками и сколько нажал.
1. Цель
Сотрудник не заполняет формы, а подтверждает их. Всё, что можно узнать из контекста, прошлых вводов, файла, голоса или расчёта, система подставляет сама; человек правит то, что не угадано, и нажимает «Сохранить». Частые дела — отметить часы, закрыть задачу, оформить командировку, провести платёж — делаются в одно-два действия, без поиска нужного экрана и без инструкции.
Измеримые цели (на staging, через месяц после каждого этапа):
- Доля полей, заполненных не руками — от 70 % в формах этапа.
- Время заполнения формы — вдвое меньше нынешнего (замер: открытие → сохранение).
- Правки после ИИ — меньше 20 % подставленных полей; больше — подсказка плохая, её чиним или убираем.
- Нажатий до результата в частых делах — не больше трёх (замер на сценариях раздела 5).
2. Принципы
- Форма открывается заполненной. Сначала контекст (проект, задача, сотрудник, дата), затем прошлые вводы этого человека, затем ИИ. Пустое обязательное поле — повод задуматься, почему система его не знает.
- Говори или покажи, а не печатай. На каждой форме — строка «Опишите словами» с микрофоном и кнопкой «Заполнить»; на формах с документами — «Из файла / фото». Помощник раскладывает сказанное по полям.
- ИИ предлагает, человек решает. Подставленные поля подсвечены «заполнено помощником» до первого касания; ничего не сохраняется и не отправляется без нажатия кнопки человеком. Так уже устроены карточки-предложения в чате.
- Расчёт — кодом и с формулой. Деньги, дни, часы, НДС, суточные считает код, не модель; рядом — формула («90 000 ₽ / 22 рабочих дня × 1 = 4 090,91 ₽»), как у вычета за отгул. Модель только понимает текст и документы.
- Проверка до сохранения, а не ошибка после. Помощник и правила подсказывают под полем: срок в отпуск исполнителя, сумма больше сметы, дата раньше старта проекта. Предупреждение, не запрет — запреты остаются серверу.
- Одно главное действие на экране. То, что человек делает чаще всего, — крупной кнопкой на виду; редкое — в меню «Ещё». Ничего не надо искать.
- Одна механика на все формы. Не десять отдельных «умных» кнопок, а общий компонент и одно действие помощника, которым описывается любая форма.
3. Как устроено сейчас
По инвентаризации кода 01.10.2026.
| Где ИИ уже помогает | Как |
|---|---|
| Задача | task_formulate: заметка → название, описание, чек-лист, плановые часы; сводка задачи |
| Чаты | черновик ответа, «переписать», «что пропустил», голосовой ввод |
| ТЗ и смета | черновик ТЗ, разбор файла ТЗ, строки оценки по блокам |
| Табель | «Заполнить по задачам» — часы на пустые дни |
| Реквизиты, документы поставщиков | распознавание файла со сверкой с ЕГРЮЛ (DaData) |
| Поиск ⌘K, утренняя сводка, чат-помощник | поиск по смыслу; предложения изменить задачу и подать отсутствие карточкой |
Без ИИ (по числу полей и частоте): создание проекта (~21 поле), командировка (~15), платёж (~15), обязательство (~14), операция логистики (~14), оборудование (~13), сотрудник (~13), строка сметы (~12), документ поставщика вручную (~11), договор (~10), заявка на отсутствие (~8), заявка на логистику (~8), контакт и поставщик (~7), корректировка часов (действие correction_reason на сервере есть, во фронте не подключено). Память прошлых вводов нет нигде.
Частые дела сейчас требуют лишних шагов: открыть раздел, найти запись, открыть форму, заполнить поля с нуля. Подтверждения «Вы уверены?» стоят и там, где действие легко отменить.
4. Общая механика (делается один раз)
| Часть | Что |
|---|---|
| Описание формы | У каждой формы — схема полей: ключ, подпись, тип (текст, число, деньги, дата, выбор из справочника, сотрудник, проект…), варианты, обязательность. Схема живёт рядом с формой во фронте и отправляется помощнику вместе с контекстом страницы |
Действие form_fill | Одно действие помощника для всех форм: вход — схема, контекст (сущность, роль, дата), текст или расшифровка голоса, файл; выход — значения полей, уверенность и короткое «почему» по каждому. Значения справочников модель выбирает только из присланных вариантов; сервер проверяет ответ по схеме и выбрасывает лишнее |
Компонент AiFormAssist | Строка «Опишите словами» + микрофон + «Из файла» над формой; подсветка подставленных полей; «Отменить подстановку». Подключается к форме одной строкой и схемой |
| Память вводов | Последние значения по форме и пользователю на сервере (между устройствами): «как в прошлый раз» для проекта, заказчика, маршрута, способа оплаты. Хранится только то, что человек сам сохранил |
| Калькуляторы | Общие функции с формулой для подсказки: рабочие дни, НДС, итоги строк, суточные, стоимость часов по ставкам, вычет по окладу. Поле с расчётом показывает формулу и «пересчитать» |
Проверки form_check | Правила кодом (даты, пересечения, лимиты, отпуск исполнителя) + по желанию модель для текста («в описании нет адреса площадки»). Показываются под полем |
| Метрики | Для каждой формы: сколько полей подставлено, сколько исправлено, время заполнения. Страница в админке «Помощник в формах» |
| Лимиты и данные | Расход идёт в существующие лимиты помощника; что уходит провайдеру — по политике данных помощника (вырезание секретов уже есть). Файлы — только те, что человек сам приложил |
5. Простота: частые дела в одно-два действия
| Принцип | Что |
|---|---|
| Действие там, где человек сейчас | Отметить часы — из уведомления, карточки задачи и шапки, не уходя в «Табель»; согласовать заявку, табель, документ — прямо из уведомления или очереди на главной; ответить в чат — из уведомления |
| Отмена вместо подтверждений | Где действие обратимо (сменить статус, перенести срок, убрать из списка), — сразу делаем и показываем «Отменить» на 10 секунд вместо вопроса «Вы уверены?». Подтверждение остаётся только для необратимого и денег |
| Сразу правка на месте | Срок, исполнитель, статус, часы, сумма меняются в строке списка или карточке по клику, без отдельной формы |
| Команды словами | Строка поиска ⌘K и микрофон понимают дела, а не только поиск: «перенеси монтаж на пятницу», «отметь 3 часа на ТехноЭкспо», «оформи командировку Иванова в Казань» — помощник открывает заполненную форму или карточку-предложение |
| Главная — что сделать сегодня | У каждого вверху короткий список дел на сегодня из всей системы: задачи со сроком, что ждёт моего решения, неотмеченные часы, выплаты к сроку. У каждого пункта — кнопка самого действия |
| Понятно без инструкции | Пустой экран объясняет, что здесь будет и как начать; ошибки говорят, что сделать, а не что сломалось; подсказки — одной строкой под полем |
| Быстро | Экран отвечает мгновенно: изменения видны сразу, сохранение — в фоне; долгие операции (распознавание файла, ответ помощника) показывают прогресс и не блокируют работу |
Сценарии для замера
Каждый этап замеряет «нажатий до результата» и время на своих сценариях до и после. Базовый набор: отметить часы за сегодня; поставить задачу коллеге со сроком; взять отпуск; согласовать заявку из уведомления; оформить командировку; провести выплату по табелю; принять документ поставщика из файла; создать проект из письма заказчика.
6. Этапы
Порядок — по частоте использования: сначала то, что сотрудники заполняют каждый день.
| Этап | Что входит | Результат |
|---|---|---|
| 1. Механика и ежедневное | form_fill, AiFormAssist, память вводов, метрики. Формы: добавить часы (голосом «3 часа монтаж на ТехноЭкспо»), отсутствие («в отпуск с 16 по 20»), задача (голос + существующий task_formulate), корректировка часов (подключить correction_reason), комментарий к задаче. Простота: главная «Что сделать сегодня» с действиями, отметка часов и решения из уведомлений, отмена вместо подтверждений в задачах | Сотрудник отмечает часы, берёт отпуск и ставит задачи голосом или одной фразой |
| 2. Менеджер | Проект из письма, ТЗ или файла (21 поле); компания и контакт из подписи письма, визитки или фото; командировка из фразы («Иванов в Казань 25–27, монтаж») с расчётом суточных и стоимости; заявка на логистику и оборудование из ТЗ; счёт и документы проекта из сметы. Правка на месте в списках проектов и задач; команды словами в ⌘K | Новый проект с заказчиком и командировкой — за минуты |
| 3. Финансы и склад | Платёж из счёта, выписки или документа поставщика; обязательство и договор из файла договора; оборудование из фото или накладной; операция логистики из заявки. Проверки сумм против сметы и бюджета. Решения и проведение платежей из очередей и уведомлений | Финансы и склад вводят документы файлом, а не руками |
| 4. Везде и подсказки | Проверки form_check на всех формах; голос на всех формах на телефоне; пустые экраны и тексты ошибок по всей системе; доводка подсказок по метрикам этапов 1–3 | Цели раздела 1 выполнены по всем формам |
Готовность каждого этапа
- Форма этапа подключена к
AiFormAssistсо схемой; подставленные поля подсвечены; без помощника форма работает как раньше (ключ провайдера не задан — строки нет). - Расчёты — кодом с формулой; тесты на калькуляторы.
- e2e: заполнение формы через заглушку провайдера (как
e2e/ai-assistant.spec.ts), сохранение, сверка с базой. - Метрики формы пишутся; через неделю на staging — первый замер.
7. Чего не будет
- Помощник не сохраняет, не отправляет и не согласует сам — только предлагает.
- Деньги и сроки не считает модель.
- Нет игровых механик: достижений, очков, уровней, рейтингов.
- Обязательные поля не становятся необязательными: их заполняет система, а не отменяет проверка.
8. Решения заказчика (01.10.2026)
- Голос — дополнение к тексту: микрофон рядом со строкой «Опишите словами», не отдельный главный режим.
- Файлы и фото — сканы договоров, накладных, визиток можно отправлять провайдеру. Секреты, номера карт, паспорта и СНИЛС вырезаются из текста, как во всём помощнике.
- Расход — пока без бюджета и дневного лимита на сотрудника (лимиты в настройках помощника остаются выключенными). Свободного чата нет: помощник отвечает только про работу в RMS, на остальное вежливо отказывает одной фразой.
- Игровые элементы — серии дней и достижения убраны вместе с переключателем «Игровые элементы», уведомлениями о достижениях и вкладкой «Прогресс» в профиле. Остаётся только кольцо в шапке: часы за сегодня из дневной нормы; нажатие ведёт в «Мои часы». Окно «быстрой отметки» с кнопками «+1 ч / +2 ч / +4 ч» убрано: непонятно с первого взгляда — часы вносятся обычной формой «Добавить часы».
- Память вводов — на сервере, видна с любого устройства.
- Порядок — начинаем с ежедневных форм сотрудников (этап 1), дальше — как в таблице этапов.