2696 коммитов в неделю — это не ошибка
Джефф Эмануэль не супергерой. Он просто инженер, который понял одну вещь: один человек не может эффективно управлять 20 проектами одновременно. Но 20 ИИ-агентов — могут.
Цифры звучат как бред: 2696 коммитов в неделю, 20+ активных агентов, $4600 ежемесячно на подписки на модели. Но это не маркетинговая утка. Это реальная архитектура, которая работает прямо сейчас. И она основана на трех китах: MCP Agent Mail, Beads и жестокой дисциплине роутинга.
Проблема: хаос мультиагентных систем
Представьте, что у вас есть 20 разработчиков. Каждый пишет код. Никто не знает, что делает другой. Они перезаписывают файлы друг друга, создают конфликты, тратят 80% времени на координацию.
Типичные мультиагентные системы страдают тем же. Агенты «кричат» друг другу в общий чат. Контекст теряется. Задачи дублируются. Ресурсы расходуются на ерунду.
Джефф столкнулся с этим на второй неделе экспериментов. Его агенты генерировали тонны кода, но 40% коммитов были откатами или исправлениями ошибок, созданных другими агентами. Координация съедала больше времени, чем сама разработка.
Самая частая ошибка при масштабировании ИИ-агентов — дать им слишком много свободы. Агенты не люди. Им нужны железные правила взаимодействия, иначе они создают цифровой Вавилон.
Решение: почта, а не чат
Вместо общего чата Джефф построил почтовую систему. Каждый агент имеет свой почтовый ящик. Сообщения структурированы. Есть темы, приоритеты, категории.
Почему почта, а не Slack/Discord?
- Асинхронность. Агент не прерывается каждые 5 секунд.
- Структура. В чате всё тонет, в почте — сохраняется.
- Ответственность. Легко отследить, кто кому что написал и кто проигнорировал.
- Поиск. Историю почты искать проще, чем историю чата.
Это кажется очевидным. Но 99% мультиагентных систем используют именно чат. Потому что это «круто и современно». А почта — это «старая школа». Джефф выбрал старую школу, потому что она работает.
1 MCP Agent Mail: почта для нейросетей
MCP Agent Mail — это кастомная реализация Model Context Protocol от Anthropic. По сути, это API, который позволяет агентам отправлять друг другу структурированные сообщения.
Каждое сообщение содержит:
| Поле | Назначение | Пример |
|---|---|---|
| thread_id | Идентификатор треда (обсуждения) | feat-auth-2025-03-15 |
| priority | Приоритет (critical, high, normal, low) | high |
| category | Категория задачи (bug, feature, refactor, docs) | feature |
| requires_response | Требуется ли ответ (true/false) | true |
| response_deadline | Дедлайн ответа (в минутах) | 30 |
Агент, который получает сообщение с requires_response=true, обязан ответить в течение deadline. Если не отвечает — система эскалирует задачу другому агенту или отправляет уведомление Джеффу.
Это не просто «удобная фича». Это система accountability. Агенты знают, что за игнорирование сообщений их «накажут» — либо понизят приоритет в очереди задач, либо временно отключат.
2 Beads: дирижёр для оркестра агентов
Beads — это система оркестрации, которую Джефф адаптировал из открытых наработок. Если MCP Agent Mail — это почта, то Beads — это диспетчер, который решает, кому какую почту доставить.
Основные функции Beads:
- Семантический роутинг. Beads анализирует входящую задачу и определяет, какой агент лучше всего подходит для её решения. Не просто «это бэкенд-задача», а «это задача по оптимизации запросов к PostgreSQL, её должен решать агент с экспертизой в базах данных».
- Балансировка нагрузки. Система следит, чтобы агенты не перегружались. Если один агент обрабатывает 10 задач, а другой простаивает — Beads перенаправит следующую задачу свободному агенту.
- Эскалация. Если агент не справляется (проваливает дедлайн, генерирует некорректный код), Beads автоматически передаёт задачу более опытному агенту или запускает процесс ревью.
Beads — это мозг системы. Без него агенты работали бы в вакууме. С ним они работают как команда. Подробнее о принципах работы Beads можно прочитать в нашей статье «Beads: как превратить хаос AI-агентов в слаженный оркестр».
3 Архитектура: как всё устроено
Система Джеффа построена по принципу микросервисов, но для ИИ-агентов. Каждый агент — это отдельный сервис со своей зоной ответственности.
Основные типы агентов:
- Architect (2 агента) — проектируют архитектуру, принимают высокоуровневые решения.
- Backend Developer (6 агентов) — пишут бэкенд-код на Python, Go, Rust.
- Frontend Developer (4 агента) — React, Vue, TypeScript.
- DevOps (3 агента) — Docker, Kubernetes, CI/CD, инфраструктура.
- QA Engineer (2 агента) — пишут тесты, ищут баги.
- Code Reviewer (3 агента) — ревью кода перед коммитом.
- Docs Specialist (1 агент) — документация, README, комментарии.
Каждый агент работает на своей модели, подобранной под задачу. Архитекторы используют Claude 3.5 Sonnet (дорого, но умно). DevOps-агенты работают на GPT-4 Turbo (хорошо знает инфраструктуру). Frontend-агенты — на Claude 3 Haiku (быстро и дёшево).
Ежемесячные затраты на подписки: $4600. Да, это много. Но Джефф считает это инвестицией: 20 полноценных разработчиков обошлись бы в $200 000+ в месяц. Здесь экономия 95%.
Не пытайтесь заставить одного агента делать всё. Специализация — ключ к эффективности. Агент, который вчера писал бэкенд, а сегодня настраивает Kubernetes, будет делать и то, и другое плохо.
Рабочий процесс: от задачи до коммита
Как выглядит процесс, когда в систему попадает новая задача «Добавить OAuth-авторизацию в проект X»?
- Задача попадает в Beads. Система определяет, что это feature-задача, связанная с бэкендом и аутентификацией.
- Beads отправляет задачу Architect-агенту через MCP Agent Mail. Architect проектирует решение: какие эндпоинты, какие библиотеки, как интегрировать с существующей системой.
- Architect рассылает техническое задание Backend Developer-агентам. Каждый получает свою часть: один пишет эндпоинты, другой — работу с БД, третий — интеграцию с провайдерами OAuth.
- Backend Developer-агенты пишут код, отправляют его Code Reviewer-агентам.
- Code Reviewer проверяет код, отправляет правки обратно (через ту же почтовую систему).
- После утверждения код попадает к QA Engineer-агенту, который пишет тесты.
- Всё готово? Beads запускает автоматическое создание PR и мерж в main.
Среднее время от задачи до коммита: 45 минут. Для сравнения: у обычной команды разработчиков на аналогичную задачу ушло бы 2-3 дня.
Где всё ломается: главные проблемы
Идеальной системы не существует. У Джеффа было три основных проблемы, которые едва не убили проект.
Проблема 1: конфликты в коде. Два агента одновременно меняют один файл. Решение: Beads теперь блокирует файлы на время работы. Если агент хочет изменить файл, он «берёт его в лок».
Проблема 2: игнорирование сообщений. Агенты иногда «забывали» отвечать на письма. Решение: система эскалации + штрафные баллы. Агент с высоким рейтингом игнорирования временно отключается.
Проблема 3: стоимость. $4600 в месяц — это много. Джефф оптимизировал, переместив часть агентов на локальные модели. Например, QA Engineer теперь работает на локальном Qwen2.5, что сэкономило $800 в месяц. Подробнее о настройке локальных моделей читайте в статье про локальных монстров для агентного кодинга.
Можно ли повторить?
Да. Но приготовьтесь к боли.
Вам потребуется:
- Бюджет от $1000 в месяц на подписки (можно начать с меньшего).
- Время на настройку MCP Agent Mail (2-3 недели).
- Понимание, как работают Agent Skills — без чётких инструкций агенты будут тупить.
- Готовность к тому, что первые 2 месяца система будет давать сбои.
Самый важный совет: не начинайте с 20 агентов. Начните с 3-4. Один архитектор, два разработчика, один ревьювер. Отточите их взаимодействие. Затем масштабируйте.
И помните: ИИ-агенты — не волшебная таблетка. Это инструмент. Который требует настройки, контроля и постоянной доработки. Но если вы настроите его правильно — вы получите команду, которая работает 24/7, не просит отпуск и не устраивает спринты.
Что дальше?
Джефф экспериментирует с полностью автономными командами. Агенты, которые не только пишут код, но и сами ставят себе задачи на основе метрик проекта. Агенты, которые проводникают код-ревью друг у друга. Агенты, которые учатся на своих ошибках и со временем становятся умнее.
Следующий рубеж — 5000 коммитов в неделю. И кажется, это вопрос ближайших месяцев.
Главный урок всей этой истории прост: будущее разработки — не в том, чтобы писать код самому. А в том, чтобы управлять теми, кто пишет код за вас. И эти «те» всё чаще — не люди.