Представляем Agent Relay
@ai_longreadsSDK для координации нескольких ИИ-агентов: они общаются друг с другом напрямую, а вы перестаёте быть «человеком-маршрутизатором» между терминалами.
Это AI-перевод статьи, сделанный каналом Про AI: Лучшие Статьи и Исследования.
Представляем Agent Relay
Introducing Agent Relay Автор: Will Washburn Оригинальный текст:
Коротко: Ваше программное обеспечение должно координироваться. Наш SDK поможет вам в этом.
Скажите, знакомо ли вам это.
У вас открыто несколько терминалов. Один агент строит план. Другой выполняет его. Вы переключаетесь между ними, как очень терпеливый менеджер среднего звена. Вы копируете ошибки из CI и вставляете их в Claude. Вы копируете обратную связь из Codex в OpenCode. Вы нажимаете Enter, чтобы подтвердить — да, конечно, пусть Claude запустит find . -type f -name "*.ts" -print0 | xargs -0 grep -Hn "any", только в этот раз. Ваш исследовательский агент находит что-то интересное и записывает результат в файл SUPERDETAILEDRESEARCH.md. Планировщику нужен этот документ, но после вставки markdown он обнаруживает, что ему нужен дополнительный контекст. Вы находите другой терминал и копируете markdown обратно в промпт исследователя. Затем корректируете план. Затем поправляете терминал с Codex, который выполняет план. Затем проверяете результат. Затем начинаете заново, потому что вышло не совсем то. Ох, опять сжатие контекста?! Я измотан. Разработка раньше была в радость! Знаете, что совсем не весело? Быть прославленной шиной сообщений для кучки больших языковых моделей.
Сегодня я рад показать вам способ лучше — такой, где вы больше не являетесь узким местом.
Вместо того, чтобы ВЫ были клеем посередине... что если бы они просто могли общаться друг с другом?
Agent Relay SDK
Relay даёт вам детерминированную основу для мультиагентных систем:
- Push-коммуникация в реальном времени
- Запуск и завершение работы агентов
- Каналы, реакции эмодзи, уведомления о прочтении — по сути Slack, но headless и созданный ДЛЯ агентов
Relay — это НЕ кастомная обвязка, поэтому вы можете использовать собственную конфигурацию как угодно. Ваши навыки и настройки должны работать из коробки.
Представьте, что нужно заставить двух агентов играть в крестики-нолики. С Relay SDK это просто:
import { AgentRelay, Models } from "@agent-relay/sdk";
const relay = new AgentRelay();
relay.onMessageReceived = (msg) =>
console.log(`[${msg.from} → ${msg.to}]: ${msg.text}`);
const channel = ["tic-tac-toe"];
const x = await relay.claude.spawn({
name: "PlayerX",
model: Models.Claude.SONNET,
channels: channel,
task: "Play tic-tac-toe as X against PlayerO. You go first.",
});
const o = await relay.codex.spawn({
name: "PlayerO",
model: Models.Codex.GPT_5_3_CODEX_SPARK,
channels: channel,
task: "Play tic-tac-toe as O against PlayerX.",
});
await Promise.all([
relay.waitForAgentReady("PlayerX"),
relay.waitForAgentReady("PlayerO"),
]);
relay.system().sendMessage({ to: "PlayerX", text: "Start." });
await AgentRelay.waitForAny([x, o], 5 * 60 * 1000);
await relay.shutdown();Без Relay:
- Вам пришлось бы копировать состояние доски между агентами.
- Вам пришлось бы решать, чья сейчас очередь.
- Вам было бы скучно и тоскливо наблюдать, как ничьи разворачиваются в замедленном режиме.
Тот же примитив масштабируется и для более сложных задач. Когда у вас есть долгоиграющие рабочие процессы, крайне полезно получать обратную связь в процессе выполнения; планировщики, исполнители и исследователи могут обсуждать и оценивать планы, не дожидаясь, пока человек напишет «ок».
Конечно, вы можете наблюдать и вмешиваться, когда нужно, но агенты на удивление хорошо справляются без вас.
Разве у нас уже нет субагентов?
Хотя это кажется похожим на субагентов, на самом деле это совсем другое и взаимодополняющее.
- Субагенты иерархичны (то есть Родитель → Потомок → Результат). Это работает для «выполни эту подзадачу», но ломается для систем и длительных задач. Что делать, когда нужно скорректировать курс или получить обратную связь в реальном времени? С Relay вы по-прежнему можете использовать субагентов (и должны!) для выполнения подзадач. Но с Relay вы можете вести равноправные диалоги между агентами, чтобы прийти к решению. Как правило, это даёт более креативные и неожиданные результаты.
- Субагенты не работают между провайдерами. Вы хотите использовать лучшую модель от разных провайдеров для каждой задачи, и чтобы всё работало бесшовно с другими агентами.
Открытый исходный код, открытый для контрибуций
Если вы когда-нибудь чувствовали себя менеджером очень быстрой, но очень забывчивой команды разработчиков... Это для вас. Перейдите (или, скорее, просто направьте своего агента) на https://github.com/AgentWorkforce/relay и попробуйте.
Создайте что-то, что не требует вас в качестве среды выполнения.
Подпишитесь на канал и каждый день читайте лучшие материалы про AI переведенные на русский!
Нашли интересную статью для перевода? Пришлите нашему боту: @ailongreadsbot