Смерть сабагентов в Claude и Codex: переход к межсессионному общению
В экосистемах искусственного интеллекта, таких как Claude Code и Codex, наблюдается смена парадигмы организации работы. Вместо создания временных «сабагентов» для каждой задачи, разработчики переходят к модели долговременных сессий, которые могут принимать задания, обмениваться результатами и передавать друг другу контекст. Этот подход снижает расходы на токены и устраняет необходимость повторного обучения моделей к проекту на каждом шаге.

# Смерть сабагентов в Claude и Codex: новая архитектура работы с ИИ
Традиционная модель взаимодействия с генеративными моделями часто строилась на принципе спавна отдельных исполнителей — сабагентов — для выполнения каждой новой подзадачи. Этот механизм, хоть и обеспечивал изоляцию, таил в себе скрытые издержки: каждый новый агент требовал перезагрузки контекста, чтения репозитория заново и ожидания результатов. Сейчас разработчики инструментов вроде Claude Code и Codex CLI отходят от этой модели. Уже открытые сессии теперь могут принимать задания, возвращать итоги и напрямую передавать данные друг другу, создавая более эффективную экосистему «живых» рабочих пространств.
Экономический смысл и проблемы старой модели
Сабагент — это отдельная вычислительная единица с собственным контекстным окном. Хотя такой подход позволял главному чату координировать работу и получать результаты без перегрузки основным окном, цена этого удобства была высока.
Каждый новый сабагент начинал с «холодного старта». Ему требовалось заново читать весь код проекта, загружать инструкции и правила окружения. Если задача была небольшой, стоимость этого онбординга могла превышать стоимость самой операции по исправлению ошибки. Исследования Anthropic показывают, что мультиагентные системы потребляют в 3–10 раз больше токенов по сравнению с одиночным агентом, а в сложных исследовательских сценариях — до 15 раз. В программировании, где задачи часто имеют последовательный характер, создание новых исполнителей для каждого шага становится неэффективным.
Технические аспекты и потери эффективности
В инструментах типа Claude Code наблюдались конкретные проблемы, связанные с пересозданием агентов:
1. Избыточный ввод: При запуске сабагента в него автоматически загружался огромный объем статического контекста (около 30 000 токенов на старте в некоторых сессиях), включающий инструкции, схемы инструментов и состояние проекта. Значительная часть этого объема не использовалась сразу. 2. Потеря данных при передаче: При возврате результатов от сабагента к главному чату часто происходила утрата информации. В зафиксированных кейсах при передаче ответа длиной более 150 000 символов до получателя доходило только около 16% текста. Остальные данные терялись из-за ограничений на размер сообщений. 3. Проблемы с кэшированием: При ожидании результатов от подчиненных агентов часто происходили ненужные потери кэша. Даже если сессия была простаивала, повторный запуск модели для подтверждения статуса мог сбивать вычислительный процесс.
Революция в Codex: очереди и форки
В Codex (в частности, в версии CLI 0.149.0) появились инструменты, позволяющие отказаться от создания новых агентов для каждой задачи. Ключевым нововведением стала codex queue.
Теперь можно отправлять задание в уже существующую, но незагруженную сессию. Это позволяет не поднимать новую модель с нуля, а просто «пробуждать» её для выполнения конкретной порции работы. Интерфейс предоставляет инструменты для управления задачами:
* list_threads: поиск соседних задач. * read_thread: чтение истории беседы для получения контекста. * send_message_to_thread: отправка инструкций в другой активный процесс.
Управление контекстом через форки
Архитектура Codex MultiAgent V2 вводит гибкую систему наследования истории (fork turns). При создании нового исполнителя можно настроить степень детализации передаваемой истории: * all: полное наследование истории, тип агента и модель. Подходит для задач, требующих глубокого понимания принятых ранее решений. * none: создание агента без контекста предыдущих диалогов. Эффективно для разовых проверок, где прошлая история не релевантна. * n: передача только последних N ходов. Баланс между экономией памяти и сохранением актуального контекста.
Эта гибкость позволяет избежать как излишней загрузки историей, так и потери важной информации, делая каждый новый шаг работы максимально точным.
Межсессионное общение в Claude Code
Claude Code реализует аналогичную концепцию через механизм межсессионного обмена. Если у вас есть работающие сессии (например, одна работает над бэкендом, другая над клиентом), они могут общаться друг с другом без вмешательства центрального оркестратора.
Схема взаимодействия выглядит так: 1. Сессия бэкенда обнаруживает изменение в контракте (например, обязательное поле expires_at). 2. Она отправляет сообщение сессии клиента, содержащей суть обновления. 3. Сессия клиента, продолжая работу (например, запуская pytest), читает поступившее уведомление и вносит необходимые правки в десериализацию. 4. Результат проверки возвращается обратно.
Важно отметить, что при такой передаче копируются только данные сообщения. История чата и файлы отправителя не передаются автоматически. Получателю необходимо явно указать, какие куски контекста или артефакты важны для задачи. Это требует от разработчика более осознанного управления потоком информации.
Практические сценарии применения
Переход от спавна сабагентов к работе с «живыми» сессиями открывает несколько эффективных рабочих потоков:
* Руководитель + исполнитель: Один чат хранит требования и принимает решения, второй реализует шаги. Обмен осуществляется через прямые сообщения, а не создание новых агентов. * Независимое ревью: Основной рабочий процесс отдает дифф и критерии проверки отдельной сессии. Сессия ревьюера не требует полного пересмотра проекта, а лишь актуальной информации. * Параллельная разработка: Использование отдельных worktree (отдельных рабочих копий Git) в сочетании с межсессионными сообщениями позволяет изолировать изменения файлов, не нарушая целостность общего контекста. * Управление зависимостями: Сессия библиотеки может сообщить бэкенду о новом контракте. Принимающая сторона должна самостоятельно обновить зависимости и проверить интеграцию.
Итог: от роя агентов к прозрачной системе
Главная экономия достигается там, где сессия уже разбирается в определенной части проекта. Вместо того чтобы поднимать нового исполнителя для каждого уточнения, достаточно отправить ему короткое сообщение. Это исключает лишние расходы на онбординг и позволяет держать под контролем прозрачную систему.
Автор статьи рекомендует менять дефолтный подход: вместо создания «роя» одноразовых сабагентов, которые сжигают кэш и требуют повторной подачи контекста, стоит поддерживать несколько устойчивых рабочих чатов. Эти чаты закрепляются за задачами и общаются между собой через сообщения и очереди.
Такой подход не требует сложного внешнего планировщика. Два-три открытых окна часто достаточно для закрытия задачи, избавляя разработчика от необходимости управлять слепым штатом из планировщиков, исполнителей и тестировщиков. ИИ ускорил разработку кода, теперь же он помогает оптимизировать сам процесс координации усилий.
*Примечание редактора:* Переход к межсессионному общению требует от разработчика более высокого уровня осознанности при управлении контекстом. Если вторая сессия все равно создается с нуля, считайте, что вы потратили ресурсы на тот же онбординг, что и при использовании сабагента. Поэтому ценность подхода заключается именно в использовании уже существующих, «разогретых» рабочих пространств.
Теги: herdr, claude code, subagents, codex, anthropic, openai, cursor, grok, antigravity, vibecoding