Благодаря ZeroClaw наши кадровики наконец перестали плакать
Лето. Пора отпусков. Многие в преддверии этого периода заранее расслабляются, но только не кадровики с бухгалтерами. Потому что расчет и оформление отпуска — это боль. И чем больше коллектив и разнообразнее в нем задачи, тем больнее.

Привет, Хабр. Меня зовут Влад Кармаков, CEO Siberian.pro. Сегодня расскажу, как мы разработали и внедрили у себя агентскую систему, которая взяла на себя большую часть проблем с отпусками. Работает она автоматически в виде локального AI-агента, подключенного к корпоративному мессенджеру (Mattermost).
В чем проблема с отпусками?
В теории все просто: 28 календарных дней в год. Собственно, в документах, которые подписывают наши работники, именно так это и обозначено. Но реальность вносит коррективы, существенно затрудняющие автоматизацию кадровых процессов.

1. Для расчета отпускных нужно сделать расчет среднего заработка за 12 месяцев. А там — премии, индексации, повышение рейта, больничные, дни без сохранения и т.д.
2. Куча исключений из общих правил. Кто-то работал неполный месяц. Кого-то перевели. Кто-то совмещал.
3. Сотрудники не блещут постоянством. «Нет, давайте все же с 24-го числа оформим». А 24-ое послезавтра. А еще они болеют, меняют планы или вдруг резко становятся незаменимы, потому что аврал.
4. Согласования — отдельная боль. Есть график отпусков. Скажем, нельзя всех менеджеров отпустить отдыхать одновременно. Плюс документы для согласований: уведомление самого сотрудника, уведомление руководителя, приказ на отпуск, расчеты отпускных. Все это нужно оформлять корректно и в срок.
6. Больничный во время отпуска. Нужно учитывать и переносить, а также делать перерасчет.
7. Контроль остатков отпусков. Нужно следить, чтобы сотрудник использовал положенный отпуск. Work-life balance для работника и отсутствие проблем с трудовой инспекцией для организации.
8. Лето. No comments.
И не забудем, что любые проблемы с отпусками — это в будущем потенциальные проблемы с трудовой инспекцией, налоговой или вообще судебные иски.
У нас в Siberian.pro не так много сотрудников, но наши кадровики все описанные трудности тоже испытывают в той или иной мере. И тратят на это десятки часов (нервы учету не поддаются).
Поэтому мы разработали ИИ-бота, который взял на себя все фазы оформления отпуска: заявление работника, согласование у руководителя, подписи, расчет отпускных и формирование всех необходимых документов.
Как работает ИИ-ассистент по оформлению отпусков
С позиции работника ИИ-ассистент по отпускам — это простой чат-бот, подключенный к Mattermost.
Чтобы оформить отпуск, достаточно написать об этом боту. Поскольку внутри у бота неонка нейросеть, то никакого особого формата соблюдать не нужно, пишем в свободной форме, ИИ-шка все расшифрует и поймет как надо.

Аналогично оформляется больничный.

Можно взять отгул за свой счет:

Раньше вся эта коммуникация шла через кадровика и через руководителей юнитов.
Однако для кадровой службы и бухгалтерии процесс согласования отпусков — это лишь верхушка айсберга. В действительности все сложнее.
Порядок по оформлению отпусков включал работу в шести разных инструментах.
-
Таблица отпусков в Google Sheets. Здесь кадровик вносит планы на отпуск сотрудников и отмечает фактические и запланированные.
-
Таблица сотрудников. Здесь хранятся данные о сотрудниках и их форме трудоустройства. Используется для расчета отпускных и в целом для финансовой отчетности компании.
-
Сервис облачной бухгалтерии. Здесь формируются отчеты для налоговой и официально фиксируются отпуска.
-
Jira Tempo. Отпуска должны быть зарезервированы и в Tempo. Затем эти данные используются для планирования расходов.
-
Финансовый учет компании. Сюда стекаются все данные о тратах. Здесь бухгалтерия считает начисления и отпускные.
-
Формальный документ согласования отпуска. За 2 недели до начала отпуска, создается цифровой документ, в котором сотрудник и его руководитель подписывают, что согласны с датами отпуска.
Такое количество разных инструментов — это неудобно. Плюс со временем накапливается неконсистентность, что-то где-то начинается расходиться и править это все тоже приходится руками. Короче, неудобно.
Поэтому для отдела кадров мы разработали простой личный кабинет, в котором можно посмотреть все данные по отпускам и собрать отчеты, по сути объединив четыре из шести инструментов в один.

По каждому сотруднику наш бухгалтер и HR видят, когда запланирован отпуск, согласован или нет, а также разные технические моменты.
К слову, я тут пишу «разработали», но на самом деле это был вайбкодинг по спецификациям. Методику недавно описывал в этой статье.
Получилось очень просто, интуитивно понятно, и — самое главное — эффективно. Нагрузка на бухгалтерию по части расчета больничных и отпусков сократилась на 90%. Хотя некоторые нюансы остались, я о них расскажу в конце статьи. А пока перехожу к тому, как мы разработали корпоративный ИИ-ассистент для кадровика.
Реализация ИИ для HR
Грубая схема реализации выглядит так:

Сотрудники и руководители общаются с ИИ-ботом прямо в Mattermost. Бот создали на основе ZeroClaw плюс MCP-сервер для получения HR- и финансовых данных из электронных таблиц организации. Для бэкенда выбрали Supabase.
Почему ZeroClaw, а не OpenClaw, с которым мы раньше уже работали (я рассказывал об этом)? Причин несколько:
-
ZeroClaw намного менее требователен к ресурсам. Размер всего 10 МБ позволяет запускать множество инстансов агента, не думая о возможных тормозах. В будущем это будет важно, когда решение начнем масштабировать на другие процессы в организации. Плюс можно будет запустить индивидуального ассистента для каждого сотрудника.
-
Поддержка Mattermost уже в базе.
-
Написан на Rust, быстрый.
-
Стратегия deny-by-default, принятая в ZeroClaw, подразумевает отклонение всех запросов, кроме явно одобренных. Для развертывания в корпоративном контуре это лучший вариант.
Далее чат с ботом в Mattermost вызывает одну из подключенных к ZeroClaw моделей. Задача не сложная, поэтому можно использовать практически любые модели. Например, можно рекомендовать опенсорсный gpt-oss-120B.
Ассистент обрабатывает запрос в свободной форме от пользователя и формирует команду для бэкенда. Здесь есть важный момент, связанный с аутентификацией пользователя.
Идентифицировать пользователя по имени бот не должен, это небезопасно. Кроме того, нельзя позволить боту ввести себя в заблуждение промптами. Поэтому для идентификации пользователя диалог не используется вовсе. Mattermost id пользователя берется напрямую из обвязки ZeroClaw и передается в MCP для получения данных о пользователе из Supabase. При этом для дополнительной безопасности у бота нет прямого MCP-доступа к Supabase с полными правами доступа. Вместо этого мы реализовали кастомные MCP-инструменты, каждый из которых точечно выполняет какое-то одно действие, причем с привязкой к идентификатору.
Получается, что как бы пользователь ни упрашивал бота дать ему данные по другому сотруднику, бот физически не сможет этого сделать.
Расчет оставшихся дней отпуска и размера отпускных считается функцией на стороне бэкенда по логике Трудового кодекса. Данные по текущим сотрудникам лежат в Supabase (PostgreSQL), которая развернута в облаке самого сервиса.
-
Имя сотрудника определяется по Mattermost id с учетом сказанного выше.
-
Ассистент получает из Supabase данные для этого сотрудника.
-
Ассистент инициирует расчеты и получает ответ.
-
Ответ форматируется LLM и показывается пользователю в чате с ботом.



В процессе разработки бота возникло несколько сложностей, преимущественно связанных с интеграцией бота в Mattermost. Например, ZeroClaw работает с MM только в рамках одного канала. А нам надо, чтобы каждый сотрудник мог написать HR-боту и запланировать себе отпуск. Пришлось пилить свою доработку для ZeroClaw и делать pull-request. Сейчас она уже вошла в официальный релиз ZeroClaw.
А еще бот по умолчанию не знал, какой конкретный пользователь в Mattermost ему пишет. Тоже пофиксили на месте и тоже отправили pull-request разработчикам ZeroClaw, который тоже был зарелизен.
Это что касается левой части диаграммы — про взаимодействие бота с сотрудниками. Теперь про разработку админ-панели для кадровика.
Технически, панель управления — это веб-приложение, которое ходит напрямую в Supabase, а затем заполняет интерфейс актуальными данными. Плюс создание, чтение, редактирование и удаление записей.
Что умеет панель управления?
-
Выводит актуальные данные о сотрудниках из Supabase.
-
Выводит таблицу отпусков, больничных и отгулов с указанием статуса согласования по месяцам.
-
Показывает оставшиеся дни отпуска сотрудника на конец года.
-
Есть группировки сотрудников по разным признакам. Например, по формату трудоустройства.
-
Есть цветовое кодирование. Например, серым выделяются ячейки, где сотрудник еще не трудоустроен или уже уволен.
-
Позволяет изменять статус отпуска.
Первые же прогоны демки ИИ-ассистента по отпускам показали, что так действительно удобнее. Не рядовым сотрудникам — для них-то вся эта история возникает на 10 минут один-два раза в год — а кадровым специалистам и HR. На момент написания статьи решение уже работает штатно.
Конечно, в реальности не все было так уж гладко. Например, как оказалось, в России не существует единой методики по расчету отпуска. Нет, кадровики-то все умеют считать правильно (видимо, на морально-волевых), но вот сам алгоритм расчета — его просто не существует в формализованном виде в каком-то одном месте. Да, даже в ТК. Удивительно, но факт.
Что пока не реализовано
В планах закончить интеграции с Tempo в виде скилла для ИИ-ассистента. Т.е. подключить его смогут все, кому это нужно. А остальные будут пользоваться ботом в Mattermost.
Старый вариант работы на основе таблиц пока оставили для обратной совместимости. Более того, измененные данные из Supabase вносятся в эти таблицы обратно, чтобы была возможность отследить правильность расчетов или выполнить все вручную, если вдруг какой-то из сервисов в основе чат-бота отвалится.
В процессе внедрения также находится скилл для трекинга часов работы. Ему можно будет сказать, например, «Затрекай мои звонки за сегодня» и он сам разберется с темой звонка, продолжительностью и сам его отнесет к правильной задаче.
Доступ к базе знаний компании тоже сейчас в процессе интеграции с ботом. Любой сотрудник сможет в мессенджере узнать важную информацию по своему проекту, идущим пресейлам или общие моменты, касающиеся работы.
В перспективе, надеюсь, сможем развернуть целую систему ИИ-скиллов для сотрудников, но об этом я подробно расскажу в другой раз.
Что еще можно сделать
Во-первых, вместо Mattermost можно подставить любой другой мессенджер. Slack, Макс, Telegram, да хоть KakaoTalk.
Во-вторых, описанный сценарий — это лишь один из вариантов взаимодействия сотрудников. А реализовать можно десятки других:
-
автоматический трекинг задач;
-
составление работником расписаний и внесение задач в календарь;
-
автоматическое развертывание сервера под проект по запросу devops;
-
поиск по базе знаний компании (RAG);
-
решение индивидуальных задач каждого сотрудника в рамках его роли;
-
ИИ-ассистенты для автоматизации типичных действий в отделах компании. Например, как наш Агент Клавдий для маркетинга.
Как видите, ИИ для компаний имеет широкий спектр применения. А стоимость внедрения такого ИИ в бизнес при этом вполне доступная.
Итого
Было: ручное планирование отпусков с уведомлениями в мессенджере, подтверждением вручную, ручным же согласованием у руководителя, внесением изменений в несколько локальных документов и в облачную бухгалтерию.
Стало: автоматическое выполнение всех описанных фаз с помощью ZeroClaw бота. Времени уходит на 90% меньше.
На разработку ушло чуть меньше 200 человеко-часов. Стоимость токенов низкая, за неделю интенсивных тестовых прогонов всех возможных сценариев удалось потратить аж целый один доллар. В реальности, думаю, примерно столько будет тратиться за год. В масштабах большой компании (от 1000 сотрудников) в месяц будет тратиться пара долларов или около того. Или вообще бесплатно, если использовать опенсорсные модели.
Цель всего вышеописанного была в том, чтобы на примере реального процесса в компании внедрить ИИ-бота для ускорения и удешевления этого процесса. Потренировавшись таким образом на кошках, мы начали лучше понимать, как выполнить ИИ-трансформацию компании в целом, какие данные и навыки для этого потребуются, сколько времени это займет и какие результаты стоит ожидать. И это главный итог.
В последнее время я много пишу про ИИ-трансформацию бизнеса у себя на канале. Забегайте!
Источник: habr.com

Добавить комментарий
Для отправки комментария вам необходимо авторизоваться.