← РазборыТема 08 · События и зрелость
Code w/ Claude · воркшопсобытиявозобновляемостьчеклист

События вместо ответов

Второй концептуальный сдвиг воркшопа: сессия агента говорит не «запрос → ответ», а событиями, дописываемыми в лог. Из этого следует возобновляемость с места падения — и на платной генерации это прямая экономия. Плюс чек-лист зрелости из девяти пунктов.

Источник: Code w/ Claude — «Ship your first Managed Agent», Isabella He (Applied AI, Anthropic). Расшарено @isamquintero · вторая половина доклада.

Сдвиг модели

Запрос-ответ vs события — переключи
Так работает обычный API: токены внутрь, токены наружу. Один запрос — один ответ.

🔴 Упало посреди — начинай сначала.
🔴 Наблюдаемость надо строить отдельно, сбоку.
🔴 Пользователь ждёт молча, пока агент домучает всю задачу.

Четыре статуса сессии

Сессия смоделирована как конечный автомат — и это не украшение: на переходы можно вешать действия.

Слайд с четырьмя статусами сессии
Слайд из доклада: idle → running → rescheduling, и terminated.
Автомат состояний — тапни статус
idle running rescheduling ретрай — возвращается в работу terminated внешний вебхук
Тапни статус — что он значит и что на нём можно делать.

Почему это надёжнее

Отдельно проговорена связь с расцеплением рук и мозга: если контейнер упал, ты просто поднимаешь контейнер — и не перезапускаешь весь агентный цикл вместе с ним, потому что цикл живёт не в контейнере, а лог сессии позволяет продолжить.

На наш завод — тут прямые деньги

Наш reactor / error-bank — это уже событийный лог, но он про ошибки. Разница в том, что здесь событиями пишется вся жизнь прогона, включая успешные шаги.

Что это даёт практически: прогон конвейера, упавший на сцене 4 из 6, сейчас надо перезапускать целиком — и заново платить FastGen за сцены 1–3. С событийным логом он возобновляется с четвёртой. При стоимости генерации это окупается сразу.

И стриминг статуса: конвейер, который 20 минут молчит и потом отдаёт файл, — плохой UX. Панель должна показывать «сцена 3 из 6, генерю картинку», а не спиннер. Событийная модель даёт это бесплатно.

Чеклист зрелости production-агента

Финальный слайд доклада — девять возможностей, которые считаются нужными боевому агенту. Он полезен как чек-лист независимо от платформы: прогони по нему любой свой агент и посмотри, чего нет.

Слайд Beyond the basics
«Beyond the basics» — девять возможностей.

Оркестратор поднимает суб-агентов, у каждого своё контекстное окно; они решают задачи и возвращают результат главному. Даёт параллелизм и управление контекстом.

У нас: Explore-агенты и воркфлоу — есть. Про правильную форму — тема про workflows.

Постоянная память агента, монтируемая в контейнер. Отвечает на вопрос «как сделать агента, который учится на правках пользователя и помнит его предпочтения».

У нас: memory-bank есть.

Claude сам просматривает собственные логи памяти и решает, что оставить, а что выбросить — сам управляет контекстом своей памяти. Так получаются самоулучшающиеся агенты, которые точно помнят, какие правки пользователя стоит держать для будущих сессий.

У нас: есть memory-bank, но нет процесса, который его прореживает. Память, которая только растёт, со временем мешает так же, как раздутый системный промпт — см. гигиену контекста.

Вместо «выполни эти вызовы» — рубрика желаемого результата. Ты описываешь, что именно агент должен произвести, а он сам соображает, какие шаги для этого нужны.

Формулировка доклада: перестать думать о задаче агента как о наборе действий и начать думать как о результате, к которому надо прийти.

Почему это главное: ровно то же самое сказано в подкасте про workflows и рубрики, только там это приём, а здесь — первоклассный примитив платформы. Два независимых источника называют одно и то же — значит это не мода.

У нас: конвейеры описаны шагами (сгенери сцены → озвучь → собери → отрендери). Рубрики результата нет нигде. Один файл shorts-rubric.md закрывает сразу оба разбора.

Учётные данные регистрируются один раз, агент обращается по идентификатору хранилища. Между хранилищем и агентом — шифрование. Работает именно благодаря разделению рук и мозга.

Смысл: не надо поднимать собственное хранилище секретов, и можно управлять кредами на уровне отдельного пользователя или сессии.

У нас: серверные .env. Работает, но управления по-пользовательски нет.

Подключение удалённых тул-серверов. Плюс MCP-туннели — запуск MCP-серверов в приватной сети вместо публичной, что важно для боевых контуров.

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

У нас: триггеры есть, но не как единый механизм возобновления сессии.

Тонкие политики на инструменты: always_ask — цикл встаёт и ждёт подтверждения пользователя перед вызовом.

У нас: /permissions в Claude Code. Для генераторов — нет.

Прервать прогон и перевести агента в idle посреди работы.

Ещё из демо: удаление сессий

Удалил сессию — она вычищается изо всех логов. Важно, если не хочешь, чтобы данные оставались где-то в облаке. Управление удалением подано как часть безопасности, а не как удобство.

Что забрать целиком

Приоритеты внедрения
Предыдущая← Руки отдельно от мозга НаверхВсе разборы