A2A
Сообщения, задачи и карточка агента по протоколу A2A в процессах Pailot
A2A (Agent-to-Agent — протокол «агент к агенту») — стандарт обмена сообщениями с внешними ИИ-агентами и сервисами, у которых есть совместимый API (Application Programming Interface — программный интерфейс).
С A2A в Pailot вы можете:
- Отправлять сообщение внешнему агенту: текст, JSON-данные и файлы
- Продолжать задачу по
taskId и диалог по contextId
- Смотреть статус задачи, отменять её и заново подключаться к потоку после обрыва
- Читать Agent Card (документ обнаружения: имя, навыки, режимы ввода и вывода)
- Настраивать вебхук (входящий HTTP-запрос) для уведомлений о ходе задачи
Нужны URL конечной точки агента и, если сервис этого требует, ключ API. Блок ставят на холст как отдельный шаг или прикрепляют к агенту. Ключ — в переменных окружения рабочего пространства.
Отправить сообщение внешнему A2A-агенту.
| Параметр | Тип | Обязательный | Описание |
|---|
agentUrl | string | Да | URL конечной точки A2A-агента |
message | string | Да | Текст сообщения агенту |
taskId | string | Нет | ID задачи, если продолжаете уже начатую |
contextId | string | Нет | ID контекста для непрерывности диалога |
data | string | Нет | Структурированные данные вместе с сообщением (строка JSON) |
files | array | Нет | Файлы к сообщению |
apiKey | string | Нет | Ключ API для авторизации |
| Параметр | Тип | Описание |
|---|
content | string | Текстовый ответ агента |
taskId | string | ID задачи для следующих запросов |
contextId | string | ID контекста диалога |
state | string | Состояние задачи |
artifacts | array | Структурированные артефакты ответа |
history | array | Полная история сообщений |
Запросить статус существующей задачи A2A.
| Параметр | Тип | Обязательный | Описание |
|---|
agentUrl | string | Да | URL конечной точки A2A-агента |
taskId | string | Да | ID задачи |
apiKey | string | Нет | Ключ API для авторизации |
historyLength | number | Нет | Сколько сообщений истории вернуть |
| Параметр | Тип | Описание |
|---|
taskId | string | ID задачи |
contextId | string | ID контекста |
state | string | Состояние задачи |
artifacts | array | Артефакты ответа |
history | array | История сообщений |
Отменить выполняющуюся задачу A2A.
| Параметр | Тип | Обязательный | Описание |
|---|
agentUrl | string | Да | URL конечной точки A2A-агента |
taskId | string | Да | ID задачи для отмены |
apiKey | string | Нет | Ключ API для авторизации |
| Параметр | Тип | Описание |
|---|
cancelled | boolean | Удалось ли отменить задачу |
state | string | Состояние задачи после отмены |
Получить Agent Card (документ обнаружения) A2A-агента.
| Параметр | Тип | Обязательный | Описание |
|---|
agentUrl | string | Да | URL конечной точки A2A-агента |
apiKey | string | Нет | Ключ API для авторизации (если нужен) |
| Параметр | Тип | Описание |
|---|
name | string | Имя агента |
description | string | Описание агента |
url | string | URL конечной точки агента |
version | string | Версия агента |
capabilities | object | Возможности агента (streaming, pushNotifications и др.) |
skills | array | Навыки, которые агент умеет выполнять |
defaultInputModes | array | Режимы ввода по умолчанию (text, file, data) |
defaultOutputModes | array | Режимы вывода по умолчанию (text, file, data) |
Заново подписаться на поток задачи A2A после обрыва соединения.
| Параметр | Тип | Обязательный | Описание |
|---|
agentUrl | string | Да | URL конечной точки A2A-агента |
taskId | string | Да | ID задачи для повторной подписки |
apiKey | string | Нет | Ключ API для авторизации |
| Параметр | Тип | Описание |
|---|
taskId | string | ID задачи |
contextId | string | ID контекста |
state | string | Текущее состояние задачи |
isRunning | boolean | Задача ещё выполняется |
artifacts | array | Артефакты ответа |
history | array | История сообщений |
Настроить вебхук для уведомлений о ходе задачи.
| Параметр | Тип | Обязательный | Описание |
|---|
agentUrl | string | Да | URL конечной точки A2A-агента |
taskId | string | Да | ID задачи, для которой настраивают уведомления |
webhookUrl | string | Да | HTTPS-URL вебхука для уведомлений |
token | string | Нет | Токен проверки вебхука |
apiKey | string | Нет | Ключ API для авторизации |
| Параметр | Тип | Описание |
|---|
url | string | Настроенный URL вебхука |
token | string | Токен проверки вебхука |
success | boolean | Удалось ли сохранить настройку |
Прочитать настройку вебхука уведомлений для задачи.
| Параметр | Тип | Обязательный | Описание |
|---|
agentUrl | string | Да | URL конечной точки A2A-агента |
taskId | string | Да | ID задачи |
apiKey | string | Нет | Ключ API для авторизации |
| Параметр | Тип | Описание |
|---|
url | string | Настроенный URL вебхука |
token | string | Токен проверки вебхука |
exists | boolean | Есть ли конфигурация уведомлений |
Удалить настройку вебхука уведомлений для задачи.
| Параметр | Тип | Обязательный | Описание |
|---|
agentUrl | string | Да | URL конечной точки A2A-агента |
taskId | string | Да | ID задачи |
pushNotificationConfigId | string | Нет | ID конфигурации уведомлений (необязательно: сервер может вывести его из taskId) |
apiKey | string | Нет | Ключ API для авторизации |
| Параметр | Тип | Описание |
|---|
success | boolean | Удалось ли удалить настройку |