Pull to refresh

Comments 21

Что за слово такое "сАбагенты"? Есть в русском языке только слово субагенты. Или, если хотите изобрести велик и новый англицизм, то тогда можно использовать что-то вроде "сабэйдженсы". 😆

Согласен, это крайне важно и ни в коем случае не устоявшееся выражение

мне казалось хабр не допускает нейрослопные статьи. длинные тире, неуместные англицизмы посреди предложения, внезапные неподходящие слова (что такое налог у агентов?)

Мне кажется статья вообще переводная, потому что фразы типа "Основной чат поднимает ребенка через..." очень странные )))

Нет, статья авторская и написана руками

Тире всегда длинные. Коротких тире не бывает. Даже во времена FIDO лично я ставил два дефиса друг за другом, чтобы передать тире. И да, англицизмы тоже использую. В конце концов есть такие понятия, как профессиональный диалект и жаргонизмы. Ну а что касается неподходящих слов, так вы ещё с живыми людьми не общались. Слова это такие штуки, для одного они подходящие, для другого неподходящие. Помнится, один профессиональный боксёр называл нижнюю челюсть скулою. А если честно, вот эта вот охота на нейрослоп стала уже поднадоедать. Например, в ответ на мой комментарий, который я написал самолично, своими собственными руками с помощью слепого метода, меня обвинили в нейрослопизме на основании, что «живые люди так не говорят, они бы сказали по другому». И да, идея комментария тоже зародилась в моей собственной голове. БЯМы не подсказывали.

Да меня тоже искренне задобали. На хабр мне недавно снесли статью за то что сгенерировал картинки и типо нейрослоп. А что если черт побери ну нет картинок в интернете, мне что идти фотографировать или открывать фотошоп?? ну это маразм. Эту статью кстати тоже сносили. за сгенерированные схемы

В итоге не понятно как правильно работать то, без субагентов быстрее или экономичнее? Или же даже сидеть на субагентах? Какие параметры брать чтобы было дешевле быстрее или лучше?

Без сабагентов в большинстве случаев

А чем лучше чем через субагенты?

Можно кинуть статью в любого ИИшного помощника и попросить ответтить на вопрос)

ну я всегда вкидываю ответов там не густо ( видимо слишком новая тема , по факту я увидел пока только больший расход токенов при таком же результате

А так если вкратце то позволяет удержить сессии и более нативно вести оркестрацию, прям в контекстное окно докидывая вводные

так и субагенты и отдельные сссии по итогу докидывают в контекстное окно вводные, тут непонятна разница от слова совсем

Тогда точно рекомендую прочитать статью

да я то почитал , слишком мало деталей как правильно организовать работу ( ну или скажем нет сравнения сколько денег на задачу уходит агентами и субагентами например было бы интересно

Было бы интересно, если бы вы сравнили этот “харнес харнесов” Herd со связкой tmux + Pi+pi-intercom

ГПТ сравнил:

В вашем сценарии Herdr, скорее всего, не нужен.

Связка уже закрывает основные задачи:

tmux          → процессы Pi не умирают, есть окна и панели
Pi Intercom   → сессии находят друг друга и обмениваются сообщениями
Pi            → выполняет задачи
вы/инструкции → определяете, кто кому что поручает

Pi Intercom умеет не просто печатать текст в чужой терминал. У него есть локальный broker, список активных Pi-сессий, их состояния, адресные send, блокирующие ask/reply, доставка сообщений в контекст получателя и возможность автоматически запустить новый turn. (GitHub)

Например:

Pi-planner:
  intercom.ask(worker, "Реализуй retry и сообщи результат")

Pi-worker:
  выполняет работу
  intercom.reply(planner, "Готово, тесты проходят")

Это уже гораздо ближе к реальному взаимодействию агентов, чем возможности Herdr.

Что изменится при установке Herdr

Herdr заменит эту часть:

tmux

на:

Herdr server

И добавит внешний API:

herdr agent start ...
herdr agent prompt ...
herdr agent wait ...
herdr agent read ...

То есть внешний скрипт сможет сказать:

запусти Pi
отправь ему текст
дождись idle или blocked
прочитай экран

Также Herdr собирает состояния агентов в одном интерфейсе: какой работает, какой ждёт подтверждения, какой закончил. (Herdr)

Но для общения Pi ↔ Pi вам всё равно полезнее Pi Intercom. Herdr сам по себе не предоставляет такой же нормальный протокол send / ask / reply с доставкой непосредственно в контекст Pi.

Сравнение без абстрактных слов

(ппц, таблицу приходится как скриншот вставлять)

Где Herdr всё же может пригодиться

Допустим, у вас одновременно работают:

Pi
Claude Code
Codex
Gemini CLI
OpenCode

Pi Intercom связывает только Pi-сессии. Herdr может показать все эти процессы в одном списке и дать внешнему скрипту одинаковые команды:

запустить
отправить prompt
дождаться остановки
прочитать результат

То есть его преимущество — унифицированное внешнее управление разными CLI, а не более качественное общение агентов.

Итог

Для вашей конфигурации:

несколько Pi + tmux + Pi Intercom

Herdr преимущественно дублирует tmux и часть отображения состояний.

Он нужен только при конкретной дополнительной потребности:

«Я хочу управлять Pi, Claude Code, Codex и другими CLI одним внешним API и видеть их состояния в единой панели».

Без этой потребности переходить с tmux на Herdr особого смысла нет. Более того, документация Pi Intercom прямо рассматривает Herdr лишь как опциональный способ открыть новую Pi-панель, когда подходящей сессии ещё нет; сама связь между Pi-сессиями от Herdr не зависит. (GitHub)

ГПТ не остановить:

Для AgentMux вашу связку нужно разложить так:

Pi             → непосредственно выполняет задачу
tmux           → держит процессы и терминалы живыми
Pi Intercom    → Pi-сессии находят друг друга, отправляют сообщения,
                 задают вопросы и ждут ответы

AgentMux пытается заменить tmux + Pi Intercom одной программой, а Pi оставить внутри.

Что именно он делает вместо них

1. Вместо tmux — собственные окна и запуск процессов

Вместо:

tmux new-window -n planner 'pi'
tmux new-window -n reviewer 'pi'

вы создаёте две панели AgentMux. Он сам запускает процессы Pi. По умолчанию используется:

pi --json

AgentMux читает машинный поток Pi и самостоятельно рисует сообщения, вызовы инструментов и изменения файлов. Это не обычный интерактивный интерфейс Pi, показанный внутри терминала. Аналогично он запускает Claude Code, Codex, Gemini и другие CLI. (AgentMux Docs)

То есть здесь:

tmux pane + обычный Pi TUI

заменяется на:

AgentMux pane + Pi в машинном режиме + интерфейс AgentMux

2. Вместо Pi Intercom — MuxBus

AgentMux регистрирует агентов по именам и позволяет отправлять им сообщения.

Есть два основных варианта:

inject

— немедленно записать текст в stdin чужого агента;

message

— оставить сообщение в почтовом ящике, чтобы агент забрал его асинхронно.

MuxBus может связывать разные AgentMux-процессы на одной машине, в локальной сети и через отдельно настроенный WAN-relay. (AgentMux Docs)

Например:

Pi-planner
    ↓ SendMessage
Codex-reviewer

В отличие от Pi Intercom, получателем может быть не только Pi.

3. Добавляет хранилище конфигураций

Для каждого именованного агента AgentMux может хранить:

  • используемый harness и модель;

  • инструкции;

  • MCP-серверы;

  • skills;

  • переменные окружения;

  • привязанные credentials;

  • историю и собственные memory-файлы.

После этого можно повторно открыть условного backend-reviewer с теми же настройками. (AgentMux Docs)

4. Добавляет очередь и расписание

AgentMux имеет встроенную очередь заданий:

положить задачу в очередь
→ свободный агент забирает её
→ продлевает lease во время работы
→ помечает выполненной

Также есть cron-задачи, которые периодически отправляют prompt определённому агенту. Агент может через API открыть редактор, запустить фоновый shell-процесс или создать новую панель. (AgentMux Docs)

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

Что ваша связка уже делает лучше

Общение Pi ↔ Pi

У Pi Intercom есть настоящий блокирующий протокол:

intercom({
  action: "ask",
  to: "reviewer",
  message: "Можно менять публичный API?"
})

Вызывающий Pi останавливается, ждёт reply, получает ответ как результат tool call и продолжает текущий turn с этим ответом в контексте. Сообщения сохраняются в истории Pi. (GitHub)

В документированном API AgentMux есть SendMessage и непосредственный inject, но аналогичного встроенного блокирующего ask → reply → результат tool call я не вижу. Для такого поведения придётся самостоятельно договариваться о сообщениях-ответах или писать дополнительную логику.

Поэтому для Pi ↔ Pi Pi Intercom выглядит более специализированным и удобным.

Переживание SSH-разрыва

tmux специально построен как отдельный сервер: клиент отключается, а сессия и процессы продолжают работать; позже к ним можно подключиться снова. (GitHub)

AgentMux документирован как desktop-приложение, запускающее CLI как собственные дочерние процессы. Это не та же архитектура, что отделяемый сервер tmux. Поэтому не следует считать, что закрытие AgentMux эквивалентно tmux detach: гарантии сохранения живого процесса после полного закрытия приложения в документации нет. (AgentMux Docs)

Простота

Ваша система:

tmux
Pi
маленький локальный broker Pi Intercom

AgentMux — приложение с launcher, backend-sidecar, Chromium/CEF-интерфейсом, базой данных, собственным RPC, адаптерами harness-программ и MuxBus. Сам проект предупреждает, что находится в ранней alpha-стадии, возможны поломки, потеря состояния и несовместимые изменения. (AgentMux Docs)

Что AgentMux действительно даёт сверх вашей связки

Он имеет смысл при таких требованиях:

Pi-planner
Claude-implementer
Codex-reviewer
Gemini-researcher

И вы хотите:

  • адресовать их через один канал сообщений;

  • видеть tool calls и diff в одном GUI;

  • использовать единый API open / send / stop / status / output;

  • хранить профили, инструкции, MCP и credentials централизованно;

  • отправлять сообщения между машинами;

  • иметь встроенную очередь и cron.

Pi Intercom ограничен Pi-сессиями на одной машине. (GitHub)

Итог

Для вашего случая:

несколько локальных Pi
+ tmux
+ Pi Intercom

AgentMux не закрывает важную отсутствующую функцию. Он преимущественно заменяет вашу простую терминальную систему более тяжёлым графическим приложением.

Он становится полезным, когда главная задача уже другая:

связать разные CLI-агенты общим интерфейсом, каналом сообщений, конфигурацией, очередью и расписанием.

Поэтому AgentMux можно назвать meta-harness в техническом смысле: он приводит разные CLI к общим операциям запустить / отправить сообщение / показать вывод / остановить.

Но он не является «AI-руководителем»: он не решает самостоятельно, кому поручить задачу, как проверить результат и когда переделывать. Его документация прямо говорит, что панели независимы и контекст между агентами не передаётся, пока вы сами их явно не свяжете. (AgentMux Docs)

Ну это не харнесс. Но я попозже выпущу даже для себя сравнилку herdr<->orca<->superset

Sign up to leave a comment.

Articles