SwarmForge: оркестратор AI-агентов от Дяди Боба
Обзор SwarmForge — tmux-оркестратора AI-агентов от Роберта Мартина. Роли, воркфлоу two/four/six-pack, плюсы и минусы, сравнение с CrewAI и LangGraph.
SwarmForge: оркестратор AI-агентов от Дяди Боба
«A disciplined tmux-based agent orchestration platform that turns swarms of AI agents into reliable, professional software engineers.»
SwarmForge — это система координации агентов, которая обеспечивает взаимодействие между агентами, работающими в разных git worktree. Это дисциплинированная платформа оркестрации на основе tmux, превращающая рои AI-агентов в надёжных профессиональных разработчиков.
Автор проекта — Роберт К. Мартин (Uncle Bob), автор книги «Чистый код». Он форкнул проект у своего сына Джастина и существенно доработал его.
Что такое SwarmForge и для кого он?
SwarmForge — система координации агентов, которая организует взаимодействие между агентами, работающими в разных git worktree. Она предоставляет общую структуру для ролевых промптов, назначения воркдеревьев, сессий tmux и передачи сообщений, чтобы несколько агентов могли совместно работать над одним проектом, не мешая друг другу.
Целевая аудитория:
- Опытные разработчики и tech leads, знакомые с терминалом и tmux
- Исследователи мультиагентных систем
- Команды, практикующие TDD и чистую архитектуру
- Энтузиасты идей Роберта Мартина (Clean Code, SOLID)
Ключевые возможности
Ролевая модель агентов
Каждая роль имеет специальный файл промпта, который определяет её обязанности и ограничения. Оркестратор поддерживает бэкенды: claude, codex или none.
Три готовых воркфлоу
two-pack — быстрый бэкенд-воркфлоу для небольших задач, которым нужна быстрая разработка без накладных расходов Gherkin и приёмочного тестирования, при этом сохраняется рефакторинг и укрепление кода.
four-pack — компактный воркфлоу, сохраняющий полный путь доставки: specifier преобразует намерения пользователя в чёткие Gherkin-спецификации, coder реализует утверждённые части с TDD и юнит-тестами, refactorer выполняет поведенчески-безопасную очистку, architect управляет структурой верхнего уровня. Нормальный поток: specifier → coder → refactorer → architect → specifier.
six-pack — полный воркфлоу для крупных проектов, требующих полной спецификации, QA и серьёзного архитектурного осмысления. Specifier преобразует намерения в Gherkin-спецификации, coder реализует с TDD, cleaner выполняет поведенчески-безопасную очистку, architect проверяет модульную структуру и зависимости, hardender выполняет мутационное тестирование.
Полный цикл six-pack — из первых уст
Сам Uncle Bob описал запуск шести агентов: Specifier, Coder, Cleaner, Architect, Hardender, QA. Specifier пишет Gherkin и QA-процедуры, Coder кодирует, Cleaner рефакторит, Architect управляет модулями и зависимостями, Hardener запускает мутационные тесты, QA выполняет процедуры проверки. Результатом стало готовое приложение с прочной архитектурой, насыщенное юнит-тестами, приёмочными и QA-тестами.
Конфигурация через ветки Git
Конфигурации SwarmForge живут на отдельных ветках. Каждая ветка содержит swarmforge/swarmforge.conf, локальные статьи конституции и ролевые промпты для одного воркфлоу.
Строгая валидация при запуске
Оркестратор выполняет строгую проверку перед запуском сессий: наличие swarmforge.conf, constitution.prompt, файлов промптов для каждой роли, корректность бэкендов и безопасность имён воркдеревьев. При любой ошибке запуск прерывается с чётким сообщением об ошибке.
Архитектура воркфлоу
graph LR
U[👤 Пользователь] --> SF[specifier]
SF -->|Gherkin-спецификация| CO[coder]
CO -->|Реализация + TDD| CL[cleaner]
CL -->|Рефакторинг| AR[architect]
AR -->|Структура + мутации| HD[hardender]
HD -->|Мутационные тесты| QA[QA]
QA -->|Финальная проверка| SF
style U fill:#4CAF50,color:#fff
style SF fill:#2196F3,color:#fff
style CO fill:#9C27B0,color:#fff
style CL fill:#FF9800,color:#fff
style AR fill:#F44336,color:#fff
style HD fill:#009688,color:#fff
style QA fill:#607D8B,color:#fff
Установка и быстрый старт
SwarmForge запускается локально. Выбираете нужную ветку и загружаете конфигурацию без создания Git-remote:
# Загрузка four-pack (4 агента)
BRANCH=four-pack
curl -L "https://github.com/unclebob/swarm-forge/archive/refs/heads/${BRANCH}.tar.gz" \
| tar -xz --strip-components=1
# Или six-pack для полного воркфлоу
BRANCH=six-pack
curl -L "https://github.com/unclebob/swarm-forge/archive/refs/heads/${BRANCH}.tar.gz" \
| tar -xz --strip-components=1
Используйте BRANCH=two-pack для быстрого двухагентного воркфлоу, BRANCH=four-pack для компактного спецификационного воркфлоу или BRANCH=six-pack для полного шестиагентного воркфлоу.
Тарифы и цены
SwarmForge — полностью бесплатный open-source проект (GitHub, без лицензионного файла в репо — проверяйте актуальный статус). Стоимость использования определяется только API-ключами выбранного бэкенда:
| Бэкенд | Стоимость | Примечание |
|---|---|---|
| Claude (Anthropic) | По токенам | Claude 3.5/3.7 Sonnet рекомендован |
| Codex (OpenAI) | По токенам | Альтернативный вариант |
| none | Бесплатно | Для тестирования без LLM |
Плюсы и минусы
| ✅ Плюсы | ❌ Минусы |
|---|---|
| Полностью бесплатный open-source | Требует знания tmux и командной строки |
| Работает локально — данные не покидают машину | Нет GUI и визуального мониторинга |
| Чёткое разделение ролей с промптами | Поддерживает только Claude и Codex |
| TDD и мутационное тестирование «из коробки» | Минималистичная документация |
| Три готовых воркфлоу под разный масштаб | Высокое потребление токенов в six-pack |
| Конфигурация через Git-ветки — прозрачно | Малое сообщество, мало туториалов |
| Строгая валидация конфигурации при старте | Нет встроенной observability/трейсинга |
Сравнение с альтернативами
CrewAI делает ставку на совместные ролевые агентные системы. LangGraph создан для сложных, stateful-воркфлоу. Вот как SwarmForge выглядит на их фоне:
| Параметр | SwarmForge | CrewAI | LangGraph |
|---|---|---|---|
| Тип | Локальный tmux-оркестратор | Python-фреймворк | Python-библиотека (граф) |
| Цена | Бесплатно (open-source) | Бесплатно / Enterprise | Бесплатно / LangSmith платный |
| Языки | Shell-скрипты | Python | Python |
| Готовые роли | ✅ Да (six-pack) | ✅ Да | ❌ Нужно строить вручную |
| GUI / Мониторинг | ❌ Нет | ✅ Enterprise dashboard | ✅ LangSmith |
| State persistence | ❌ Нет | ✅ Есть | ✅ Есть |
| TDD из коробки | ✅ Да | ❌ Нет | ❌ Нет |
| Порог входа | Высокий (tmux, CLI) | Средний | Высокий |
| Сообщество | Небольшое | 44 600+ звёзд | Большое |
Вердикт
Кому подойдёт?
- Подойдёт: Senior-разработчикам, фанатам Clean Code, исследователям мультиагентных систем, командам с жёсткими требованиями к безопасности данных (всё локально)
- Не подойдёт: Командам, которым нужен GUI, observability, state persistence между сессиями или поддержка широкого спектра LLM-провайдеров
Рейтинг
| Критерий | Оценка |
|---|---|
| Простота старта | 5/10 |
| Гибкость воркфлоу | 8/10 |
| Качество кода агентов | 8/10 |
| Документация | 5/10 |
| Сообщество | 4/10 |
| Стоимость владения | 9/10 |
| Итог | 6.5/10 |
SwarmForge — это не инструмент для всех. Это авторский эксперимент от легенды индустрии, который при правильном применении даёт впечатляющий результат: готовое приложение с прочной архитектурой, насыщенное юнит-тестами, приёмочными и QA-тестами. Если вы готовы к tmux, Shell-скриптам и ручной настройке — SwarmForge предлагает редкую комбинацию дисциплинированной разработки и мультиагентной автоматизации, которую сложно найти в более «дружелюбных» фреймворках. Для остальных лучше начать с CrewAI или LangGraph, а к SwarmForge вернуться позже.