AI-агенты — функциональность на стадии Preview. Виды агентов, состав настроек и API могут измениться в следующих выпусках без сохранения обратной совместимости.
AI-агент — программа, которая получает задачу на естественном языке, обращается к языковой модели и вызывает инструменты, чтобы подготовить ответ или выполнить работу. Deckhouse Development Portal (DDP, портал) запускает агентов по протоколу A2A (Agent2Agent) версии 1.0 и передаёт им доступ к своим инструментам MCP и, при необходимости, к языковой модели.
Агенты используются в трёх местах портала:
- в AI-ассистенте — пользователь выбирает агента в окне ассистента;
- в виджете «AI-чат» — агент задаётся в настройках виджета;
- в процессах — элемент «AI-агент» отправляет агенту задачу и записывает результат в хранилище процесса.
Виды агентов
Каждый агент в портале — подключение к его карточке агента (Agent Card), то есть к JSON-описанию, которое агент публикует по адресу /.well-known/agent-card.json.
По способу подключения агенты делятся на виды:
| Вид | Как появляется | Отметка в каталоге |
|---|---|---|
| Платформенный агент | Разворачивается вместе с порталом и подключается автоматически. Идентификатор — ddp-agent | «Платформенный» |
| Внешний агент | Администратор подключает его вручную по URL карточки и API-ключу | «Внешний» |
| Агент из источника | Источник агентов создаёт его по сущности каталога | «Внешний» и «Из источника» |
Все агенты выполняются вне процесса портала: портал отправляет агенту сообщение по A2A и ждёт ответа.
Языковая модель агента
Агент обращается к языковой модели одним из способов:
- Собственная модель. Агент использует свои доступы к модели. AI-провайдер портала ему не нужен.
- Прокси моделей DDP. Портал передаёт агенту адрес прокси и короткоживущий токен запуска. Агент обращается к модели через портал, а портал использует AI-провайдера пользователя, который запустил задачу, и расходует его квоту.
Платформенный агент всегда работает через прокси моделей DDP. Внешнему агенту прокси доступен, только если в настройках подключения включён переключатель «Разрешить прокси моделей DDP».
Прокси отправляет запросы в формате OpenAI Chat Completions по адресу <URL провайдера>/chat/completions; если URL уже оканчивается на /chat/completions, суффикс не дублируется.
Поэтому через прокси работают только AI-провайдеры с API, совместимым с OpenAI Chat Completions, у которых заданы модель и токен.
Поля провайдера «Шаблон тела запроса» и «Поле ответа» прокси не использует.
Прокси не поддерживает потоковые ответы (stream: true) и всегда подставляет модель из AI-провайдера, игнорируя модель из запроса агента.
Инструменты агента
Агент вызывает инструменты портала через отдельный MCP-эндпоинт /api/v2/agent-mcp.
Список инструментов, доступных агенту, задаёт поле «MCP-инструменты» в настройках подключения:
- пустой список — агент не получает доступа к инструментам портала;
- непустой список — агент может вызывать только перечисленные инструменты.
Инструменты выполняются с правами пользователя, который запустил задачу. Описание встроенных инструментов — в разделе «MCP-сервер».
Токен запуска
На каждый запуск агента портал выпускает токен запуска и передаёт его агенту в метаданных сообщения A2A.
Токен даёт доступ к эндпоинтам /api/v2/agent-mcp и /api/v2/agent-llm от имени пользователя, который запустил задачу.
Токен действует, пока запуск находится в статусе «Выполняется», но не дольше 75 минут.
После завершения или остановки запуска портал отзывает токен, и следующий вызов инструмента или модели агентом завершается ошибкой 401.
Навигация
Агенты настраиваются в разделе «AI» → «AI-агенты»:
| Пункт меню | Назначение | Разрешение для просмотра |
|---|---|---|
| «Каталог» | Список агентов, подключение внешних агентов, настройка инструментов | read:ai-agents |
| «Источники агентов» | Источники агентов из каталога | read:ai-agents |
| «История запусков» | Запуски агентов текущего пользователя | read:ai-agent-runs |
| «Шаблоны AI-провайдеров» | Шаблоны AI-провайдеров для пользователей портала | edit:ai-provider-templates |
Разрешения
Работа с агентами регулируется глобальными разрешениями:
| Разрешение | Что даёт |
|---|---|
run:ai-agents | Работа с AI-ассистентом и виджетом «AI-чат», запуск платформенного агента |
run:ai-agents-a2a | Запуск платформенного агента в шагах процессов. AI-ассистент и виджет «AI-чат» с этим разрешением недоступны |
read:ai-agents | Просмотр каталога агентов и источников агентов |
edit:ai-agents | Подключение, изменение и удаление внешних агентов и источников агентов, синхронизация источников |
read:ai-agent-runs | Просмотр истории своих запусков агентов |
cancel:ai-agent-runs | Остановка своих запусков агентов |
read:ai-provider-templates | Просмотр шаблонов AI-провайдеров, включая отключённые |
edit:ai-provider-templates | Создание, изменение и удаление шаблонов AI-провайдеров |
Кроме глобальных разрешений, действуют правила владения:
- внешнего агента и агента из источника запускает только владелец подключения;
- изменять и удалять подключение могут владелец и участники команды-владельца;
- платформенного агента может запустить любой пользователь с
run:ai-agents, а изменить его настройки — только супер-администратор.
Супер-администратор видит, запускает и изменяет все подключения. Полный список разрешений — в разделе «Ролевая модель».
Ограничения
На запуски агентов действуют ограничения:
| Ограничение | Значение |
|---|---|
| Максимальная длительность запуска | 70 минут |
| Вызовы инструментов портала | 120 в минуту на один запуск |
| Запросы к прокси моделей DDP | 60 в минуту на один запуск |
| Размер запроса к прокси моделей DDP | 1 МиБ |
| Размер ответа модели через прокси | 4 МиБ |
| Тайм-аут запроса к модели через прокси | 90 секунд |
При запуске backend и затем раз в сутки портал проверяет зависшие запуски: запуск, который находится в статусе «Выполняется» дольше 75 минут, получает статус «Ошибка» с текстом agent run interrupted (stale).