Делегирование позволяет одному агенту попросить другого выполнить ограниченную часть работы. Это больше, чем упоминание имени агента в ответе: Clero создаёт отслеживаемую задачу или направляет отслеживаемый запрос в разговор проекта.
Кто с кем может работать
Ассистент пространства может попросить руководителя доступного проекта выполнить работу или дать пояснение. Внутри проекта руководитель может назначать подходящих специализированных агентов, а агенты команды — делегировать работу другим подходящим участникам команды. Специализированный агент может обратиться к руководителю за советом или документацией; ему не следует использовать руководителя для выполнения работы вместо другого специализированного агента.
Маршрут ограничен участием в проекте, доступом пользователя, инициировавшего запрос, и доступными возможностями агента. Создание задачи не устанавливает постоянные отношения подчинения и не даёт получателю новый доступ к инструментам.
Передавайте достаточно информации
Включите пять вещей: результат, общие ссылки, ограничения, критерии завершения и место возврата результата.
Попросите агента-исследователя проверить утверждения о продукте в описании проекта. Верните автору короткий документ с подтверждениями, ссылками на источники и неопределённостями. Ведите всю работу в этом проекте и ничего не публикуйте.
Для объёмного общего контекста используйте связанный документ или таблицу. Не рассчитывайте, что получающий агент автоматически видит все предыдущие разговоры. Новая делегированная задача не наследует автоматически всю историю более раннего делегированного разговора.
Два варианта маршрутизации
| Режим проекта | Куда поступает делегированная работа | Чего ожидать |
|---|---|---|
| Persistent team (Постоянная команда) | В продолжающийся разговор целевого агента в проекте | Входящие запросы встают в очередь с другой его работой; отслеживаемые ответы возвращаются отправителю запроса |
| Flexible chats (Гибкие чаты) | В отдельную делегированную задачу с собственной историей | Работа и последующие уточнения проверяются как отдельная задача |
Некоторые старые проекты могут сохранять прежнюю маршрутизацию с продолжающимся чатом руководителя и отдельными задачами специализированных агентов. Изучайте фактический разговор и запрос, не предполагая, что одна схема действует везде.
Демонстрация в работающем интерфейсе подтвердила постоянный маршрут к руководителю: запрос от Mira попал в существующий разговор Documentation Lead и вернул результат проверки статуса без внесения изменений. Выполнение между специализированными агентами и делегирование в Flexible chats подтверждены исходным кодом, но не проверялись в этой демонстрации. Предложенного специализированного агента для работы только на чтение создать не удалось, потому что согласование оставалось заблокированным; передача работы специализированному агенту и завершённая проверка результата не заявляются.
Отслеживайте отдельную делегированную задачу
Подтверждённый исходным кодом жизненный цикл задачи:
- Назначающий агент создаёт задачу с помощью
assign_agent_task. - Задача начинается в состоянии ожидания, а получающий агент выполняет ограниченный запрос.
- Дочерний агент возвращает результат на проверку.
- Назначающий агент изучает результат.
- Он либо отправляет исправление с помощью
send_agent_task_follow_up, либо принимает проверенную задачу с помощьюcomplete_agent_task.
Состояние проверки имеет значение. Полученный ответ ещё не означает, что назначающий агент его принял. Последующее уточнение сохраняет единую историю задачи; новое поручение может вместо этого создать независимую задачу.
Если текущий интерфейс проекта показывает делегированную работу или подзадачи, откройте эту запись и изучите её историю. Иначе попросите ответственного агента перечислить делегированные задачи и сообщить состояние и результат нужной задачи. Не ожидайте, что каждый запрос в постоянном разговоре появится как отдельная подзадача.
Отслеживайте запрос в продолжающемся разговоре
Постоянные запросы ставятся в очередь в продолжающийся разговор целевого агента. Если агент уже занят, он может сначала закончить текущую работу, а затем обработать входящий запрос.
Запрос может оставаться подтверждённым, выполняться или ожидать ввода. Он закрывается только при явном завершении, фиксации неудачи или отмене. Обычный финальный текстовый ответ не служит неявным сигналом завершения сохраняемого запроса.
Спрашивайте о существующем запросе:
Проверьте запрос, который вы отправили Documentation Lead. Сообщите его текущее состояние, последний ответ и необходимость ввода. Не создавайте дубликат запроса.
Осознанно исправляйте, отменяйте и перенаправляйте
Для исправления укажите существующую задачу или запрос и точное изменение. Для отмены попросите координирующего агента отменить конкретный элемент и сообщить, находился ли он в очереди, уже выполнялся или был завершён.
Отметка продолжающегося запроса как отменённого закрывает его отслеживание и связь для ответов; сама по себе она не прерывает активное выполнение в разговоре целевого агента. Если нужно также остановить работу, запросите это явно и отдельно проверьте состояние текущего запуска.
Отмена будущей работы не равнозначна отмене совершённых действий. Уже отправленное письмо, правка общего документа или изменение кода требуют отдельного решения о дальнейших действиях. Не предполагайте, что закрытие задачи откатывает её последствия.
Проверьте всю цепочку
Для важной работы различайте принятие поручения, завершение выполнения, проверку результата, завершение цели и подтверждённую внешнюю доставку. Каждый из этих этапов отвечает на отдельный вопрос.
Если агенты расходятся в оценке статуса, изучите сам материал и отслеживаемую запись, затем попросите руководителя согласовать передачу работы. Статья Общее состояние и память показывает, как сохранять устойчивые ссылки, которыми могут пользоваться все соответствующие агенты.