СЕРЕЖА РИС

Статьиhermes

Бот Hermes как менеджер: я и подрядчик пишем одному боту

Содержание

Я нанял редактора вычитывать мою открытую книгу book.vibecoding.phd. Его зовут Свят. Работаем мы с ним через одного Telegram-бота на Hermes. Свят пишет боту, я пишу тому же боту, и бот работает у нас менеджером проекта.

Свят пишет боту обычными словами. GitHub (сервис, где лежит текст книги и вся история правок) ему не нужен, как и знать, как собирается книга. Я не пересылаю ему файлы и не считаю часы. Правка Свята доходит до меня готовым pull request со скриншотом главы, и мне остаётся решить одно: влить или нет.

Pull request (PR) это заявка на правку. Изменения лежат в отдельной ветке, то есть в копии текста рядом с основной. Их видно построчно, и в основной текст они попадают, только когда владелец нажмёт «влить».

Что такое менеджер-бот, простыми словами

Hermes это агент от Nous Research, который живёт на сервере и разговаривает в Telegram. У него есть память, скиллы (файлы с инструкциями, что и как делать) и доступ к инструментам. Модель, то есть нейросеть, которая думает за бота, подключается любая. У меня это Claude Opus.

Обычно такой бот работает на одного человека. В этой работе нас двое, и роли у нас разные:

  • я владелец проекта: ставлю задачи, меняю правила, вливаю правки;
  • Свят исполнитель: берёт задачу, правит главу, смотрит результат;
  • бот менеджер: раздаёт задачи, превращает правки в pull request, зовёт меня, когда нужно решение, и считает время.
Схема ролей: автор книги и подрядчик Свят пишут одному боту Hermes, бот работает с задачами и pull request в GitHub

Два человека, один бот посередине. Правки в книгу вносит только бот, вливаю только я.

Как правка Свята доходит до меня

Задачи Свята лежат в GitHub с меткой «редактура», по одной на главу. В GitHub задача называется issue. Сейчас там восемь глав части «Основы». Свят их не видит в GitHub, он пишет боту:

мои задачи

Бот отвечает списком: название главы, ссылка на неё и статус, «не начата» или «PR ждёт вливания». Номеров задач и слова «issue» в ответе нет. Это моё правило: подрядчику не нужен жаргон GitHub.

Дальше Свят правит главу. Первую главу, «Сессия с агентом», он вычитал у себя в документе. Агент перенёс правки в книгу одним PR: два заголовка стали понятнее, длинные абзацы разбиты, в определениях появились тире. 11 строк добавлено, 7 убрано.

В описании PR агент сам написал, что поменял при переносе от себя. Короткие тире стали длинными. Команда /compact в документе развалилась на два куска, а в книге осталась одной. И отдельной строкой для меня: в остальных главах тире почти нет, а здесь это решение Свята, перенесено как есть. Тестовая ссылка на превью, собранную копию книги с правкой, в тот раз не открылась, и агент так и написал в PR вместо того, чтобы промолчать. Я прочитал, влил, глава на сайте.

Путь одной правки: мои задачи, задача на главу, правки Свята, ветка и PR со скриншотом, сообщение мне, вливание, глава на сайте

Путь одной правки от «мои задачи» до главы на сайте.

Как это устроено изнутри

Внутри бот это папка с файлами. Главный файл, SOUL.md, говорит боту, кто он: менеджер книги. Остальное разложено по скиллам:

Скилл Что делает
manager заводит задачи в GitHub и пишет в них ход работы
book-request ведёт запрос человека из допуска: уточнить, сделать PR, позвать меня
book-chapter правит текст глав и сборку книги
book-time считает время людей и агента за день
book-agent держит мои решения: кто в допуске, какая модель, кто владелец бота

Самый важный из них book-request. Это четыре шага на каждую просьбу Свята:

  1. Уточнить. Просьба ясна, бот делает сразу. Неясна, задаёт от одного до трёх коротких вопросов одним сообщением.
  2. Сделать PR. Ветка book/<название>, скриншот собранной страницы в описании. В основную ветку бот не пишет.
  3. Дать Святу тестовую ссылку на собранную книгу из этого PR, проверенную до отправки. Ссылка не открылась, Свят получает скриншот.
  4. Написать мне в личку: кто просил, что сделано, ссылка на PR. Святу ответить, что PR ждёт меня.

Шаг 4 и есть менеджерская работа. Свят не ждёт меня в чате и не пишет мне «посмотри». Бот сам приносит мне готовое к решению.

Я пишу тому же боту

Со мной бот разговаривает по-другому. Он узнаёт меня по списку допуска (кому можно писать боту), и мои сообщения идут мимо book-request. Я ставлю задачи, меняю правила, спрашиваю, сколько ушло времени.

Каждое моё правило лежит в скилле с датой, а в book-request ещё и с пометкой «слово founder’а». Список задач Свята, например, появился 1 ноября, и в book-request он записан так:

Слово founder’а 01.11.2026. Список задач человека из допуска: открытые issue serejaris/corp-book с меткой редактура. На «мои задачи», «что делать», «что дальше» и в начале нового разговора без конкретной просьбы прислать этот список.

Через месяц я вижу, откуда взялось правило, и могу его снять.

Допуск, выкладку и лимиты меняю только я. Это записано в SOUL.md, и Свят попросить бота об этом не может.

Учёт времени без таймера

Свят работает почасово, а таймтрекера у нас нет. Время снимает сам бот. Раз в сутки по расписанию он запускает скрипт, который читает базу разговоров Hermes (сообщения и расход модели по каждой сессии) и сохраняет отчёт за вчера в репозиторий книги, папку проекта в GitHub.

В отчёте три таблицы:

  • люди с агентом: сколько минут, сколько сообщений и в какие промежутки каждый говорил с ботом;
  • агент: сколько минут он работал в разговоре и сколько сам по расписанию;
  • модель: сколько запросов ушло и сколько это стоит по прайсу, по оценке самого Hermes.

В отчёте только минуты, ставок и денег там нет. Цифры руками не правят. Спорный блок обсуждаем комментарием в задаче дня со ссылкой на отчёт.

Что я бы сделал так же с первого дня

Список задач подрядчика держать в GitHub с одной меткой. Бот читает её одной командой, а я вижу то же самое, что видит Свят.

Запретить боту основную ветку. Каждая правка через PR, вливает владелец. Тогда подрядчика можно пускать к боту без страха за проект.

Попросить бота в описании PR писать, что он поменял от себя. Перенос правок из документа в код всегда что-то трогает, и эту строку я читаю первой.

Похожие штуки собираю в Personal Corp, подробнее.