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

Herdr: открытое десктопное приложение для параллельного запуска и оркестрации ИИ-программистов

Знакома ситуация: ты даешь продвинутому терминальному агенту задачу переписать старый модуль авторизации или внедрить сложный алгоритм кэширования. Модель бодро начинает шуршать файлами, делает десяток коммитов, а через сорок минут радостно рапортует об успехе. Ты запускаешь тесты — а проект не собирается, потому что агент выбрал устаревшую версию сторонней библиотеки и зашел в архитектурный тупик.

В программировании нет единственно верного пути. Живые разработчики часто спорят о подходах, набрасывают черновики в разных ветках Git и выбирают наиболее элегантное и быстрое решение.

Именно этот принцип соревновательности лег в основу открытого десктопного приложения Herdr. Программа позволяет в пару кликов запустить параллельную «гонку моделей» (Code Race): ты формулируешь одну задачу, а Herdr натравливает на неё несколько независимых агентов (Claude Code, Mistral, DeepSeek), изолируя каждого в отдельной Git-ветке. Ранее мы исследовали среду Orkas для параллельной работы команд ИИ-агентов, а Herdr развивает эту философию в сторону прямого состязания подходов.

Как устроен механизм Code Race в Herdr

Herdr не пытается изобрести собственный движок генерации кода — он выступает дирижером существующих CLI-инструментов. Десктопное приложение написано на Electron и Rust, обеспечивая минимальное потребление системных ресурсов.

Рабочий процесс выглядит следующим образом:

  1. Инициализация песочниц: При старте задачи Herdr создает временные изолированные ветки Git (race/claude, race/mistral, race/deepseek).
  2. Параллельный запуск: В фоне запускаются терминальные процессы соответствующих агентов с передачей единого контекста и системного промпта.
  3. Мониторинг прогресса в реальном времени: В едином графическом окне ты видишь четыре терминала бок о бок: какие файлы правит каждая модель, сколько токенов потрачено и какие команды в bash выполняются прямо сейчас.
  4. Автоматический арбитраж: Как только один из агентов заявляет о завершении задачи, Herdr запускает тестовый сьют (npm test или pytest) и выводит сравнительную таблицу результатов.
  5. Интерактивный мердж: Разработчик может просмотреть diff между ветками в визуальном окне сравнения и слить лучший вариант в основную ветку одной кнопкой.
  6. Очистка временных веток: После выбора победителя Herdr автоматически удаляет черновики проигравших ботов, не загрязняя историю коммитов репозитория.

Установка и манифест конфигурации команды

Установка утилиты под Linux, macOS и Windows выполняется одной строчкой в терминале:

# Установка для macOS / Linux через curl
curl -fsSL https://get.herdr.ai/install.sh | bash

# Запуск десктопного интерфейса Herdr
herdr start --workspace ./projects/saas-landing

Состав команды соревнующихся ботов и правила остановки гонки описываются в манифесте herdr_team.json:

{
  "$schema": "https://herdr.ai/schemas/v1/team.json",
  "teamName": "landing-page-race-team",
  "workingDirectory": "./projects/saas-landing",
  "concurrencyLimit": 4,
  "raceMode": {
    "enabled": true,
    "evaluationMetric": "visual_and_build_success",
    "timeoutMinutes": 15
  },
  "participants": [
    {
      "agentId": "claude-code-runner",
      "model": "claude-3-7-sonnet",
      "branchPrefix": "race/claude",
      "command": "claude --dangerously-skip-permissions"
    },
    {
      "agentId": "mistral-large-runner",
      "model": "mistral-large-latest",
      "branchPrefix": "race/mistral",
      "command": "herdr-agent --provider mistral"
    },
    {
      "agentId": "deepseek-coder-runner",
      "model": "deepseek-coder-v2",
      "branchPrefix": "race/deepseek",
      "command": "herdr-agent --provider deepseek"
    }
  ]
}

Практическая польза и экономика конкуренции

Конечно, запуск трех-четырех моделей на одну задачу увеличивает суммарный расход токенов втрое. Но в критических сценариях этот перерасход окупается мгновенно:

  • Экономия времени инженера: Вместо того чтобы ждать завершения работы одной модели, находить тупик и начинать заново, ты за 10 минут получаешь три принципиально разных архитектурных решения.
  • Взвешенный выбор победителя: Один бот может написать более лаконичный код, но забыть тесты; второй реализует надежные проверки, но перегрузит структуру зависимостей. Человек выбирает лучшую ветку и мерджит её в main одним кликом.
  • Анализ расхождений: Сравнивая подходы разных моделей к одной и той же алгоритмической проблеме, разработчик часто подмечает неочевидные краевые случаи (edge cases), о которых сам не задумывался.
  • Автоматическое разрешение конфликтов окружения: Каждый агент запускается в изолированном подпроцессе с собственным набором переменных окружения, что исключает взаимную перезапись временных файлов и блокировку портов локального dev-сервера.
  • Поддержка локальных и облачных моделей: Ты можешь стравить в одной гонке облачного гиганта Claude 3.7 Sonnet и локальную модель DeepSeek Coder, запущенную через Ollama на твоем ноутбуке, наглядно сравнивая соотношение цены, скорости и качества на реальных файлах проекта.

Herdr превращает разработку с ИИ из игры в рулетку в управляемый инженерный конкурс решений.