- Дата публикации
Windows 365 for Agents: облачные ПК для ИИ-агентов вышли в публичный превью
Что нового
Microsoft запустила публичный превью Windows 365 for Agents — это облачные Cloud PC, заточенные под запуск ИИ-агентов.
Ключевые изменения и возможности:
- Облачные рабочие столы для агентов: полностью управляемые виртуальные ПК с Windows в облаке Microsoft.
- Привязка к Entra ID (бывший Azure AD): Cloud PC входят в домен Entra ID и подчиняются корпоративным политикам безопасности.
- Управление через Intune: ИТ-отдел настраивает политики, софт, обновления и комплаенс так же, как для обычных рабочих станций.
- Модель check-in/check-out: агент «берет» Cloud PC из пула под конкретную задачу и «возвращает» его после выполнения.
- 37 MCP‑инструментов для автоматизации: управление рабочим столом, браузером, доступностью (A11y) и shell-командами через Model Context Protocol (MCP).
- Онлайн‑трансляция экрана: наблюдение и вмешательство человека через WebRTC — можно смотреть, что делает агент, и перехватывать управление.
- Enterprise‑функции из коробки: Conditional Access, требования по соответствию политикам, аудит действий.
- Масштабирование по пулам: администратор создает пулы Cloud PC, а агенты запрашивают не конкретную машину, а нужные характеристики.
Цен, бенчмарков или ограничений по контексту Microsoft здесь не раскрывает — продукт представлен именно как инфраструктура для агентов, а не как ИИ‑модель.
Как это работает
Архитектура Windows 365 for Agents строится вокруг трех уровней: точки входа, управление сессиями и сами Cloud PC.
1. Точки входа
Есть три основных сценария доступа:
- чат‑интерфейс (Chat UX),
- приложение‑агент (Agent App),
- портал ИТ‑администратора.
Через них разработчик или администратор инициирует сессию, а ИИ‑агент начинает работу на выделенном Cloud PC.
2. Управление сессиями и пулами
Windows 365 for Agents использует модель check-in/check-out:
- ИТ‑отдел создает пулы Cloud PC и настраивает для них политику и биллинг.
- Агент отправляет запрос на создание сессии в пул.
- Платформа выделяет конкретный Cloud PC и возвращает URL виртуальной машины.
- После завершения задач агент закрывает сессию, и Cloud PC возвращается в пул.
Все операции идут через HTTP API sessionmanagement.regional.cloudinferenceplatform.azure.net с версией API 2.0.
3. Управление Cloud PC через MCP
Когда Cloud PC выделен, разработчик работает с ним через Model Context Protocol (MCP):
- MCP‑endpoint:
…/mcpна конкретном Cloud PC. - Протокол: JSON‑RPC 2.0 поверх HTTP.
- Инициализация: метод
initializeс указанием версии протокола2024-11-05, информации о клиенте и его возможностях. - Дальше агент вызывает MCP‑инструменты через метод
tools/call.
В набор входят 37 инструментов, среди них:
- автоматизация рабочего стола (клики, ввод, навигация по UI),
- управление браузером,
- инструменты доступности (A11y),
- выполнение shell‑команд.
4. Наблюдение и контроль человеком
Для сценариев human-in-the-loop Windows 365 for Agents использует WebRTC:
- администратор или оператор может в реальном времени смотреть экран Cloud PC,
- при необходимости — перехватить управление.
Все это работает поверх стандартной инфраструктуры Windows 365: Entra ID, Intune, политики безопасности, аудит, Conditional Access.
Что это значит для вас
Кому это полезно
Разработчикам ИИ‑агентов и интеграторам
Если вы строите агентов, которые должны работать с обычными десктопными приложениями, браузером и корпоративной инфраструктурой, Windows 365 for Agents закрывает сразу несколько задач:
- дает управляемый Windows‑десктоп с доступом к нужным корпоративным ресурсам;
- позволяет автоматизировать действия через MCP‑инструменты (клики, ввод, скриншоты, shell);
- убирает необходимость самим поднимать ферму виртуалок и решать вопросы безопасности.
ИТ‑отделам и security‑командам
Windows 365 for Agents подойдет, если вы хотите запустить ИИ‑агентов, но не хотите терять контроль над тем, что происходит:
- Cloud PC входят в Entra ID и управляются через Intune;
- действуют знакомые механизмы Conditional Access и комплаенса;
- есть аудит и возможность подключиться к сессии через WebRTC.
Примеры задач
- полуавтоматическая обработка заявок в внутренних системах, где нет API, только старый UI;
- тестирование и регрессия десктопных приложений силами ИИ‑агентов;
- браузерные рутинные операции: выгрузка отчетов, заполнение форм, проверка интерфейсов.
Где лучше не использовать
- Если вам нужен просто API‑доступ к модели вроде GPT‑4o или Claude 3.5, а не виртуальный Windows‑десктоп, Windows 365 for Agents будет избыточен.
- Если ваши процессы не требуют доступа к десктопным приложениям и достаточно чистого HTTP/JSON, дешевле и проще использовать обычные LLM‑API и сторонние инструменты автоматизации.
- Если у вас нет инфраструктуры Microsoft 365, Entra ID и Intune, входной порог будет высоким: придется выстраивать весь стек.
Доступность и ограничения
Windows 365 for Agents работает в облаке Microsoft и требует:
- аренду (tenant) в Entra ID,
- регистрацию приложения в Entra ID,
- пул Cloud PC в Windows 365,
- доступ к региональному endpoint (в примере используется
eastus2).
Для России и ряда других стран доступ к облачным сервисам Microsoft может требовать VPN и/или может быть ограничен регуляторикой и политикой Microsoft. Перед внедрением стоит проверить доступность Windows 365 и Entra ID для вашей юрлица и региона.
Место на рынке
Windows 365 for Agents не конкурирует напрямую с моделями вроде GPT‑4o или Claude 3.5 — это инфраструктура для их «рук» в виде десктопных агентов.
Ближайшие по духу решения:
- классический Windows 365 (Cloud PC) без специализированного MCP‑слоя и API для агентов;
- самописные фермы виртуалок в Azure/AWS/GCP с RDP/VNC и кастомной автоматизацией;
- браузер‑и десктоп‑автоматизация через RPA‑инструменты (UiPath, Power Automate Desktop и др.).
От классического Windows 365 новый продукт отличается:
- моделью check-in/check-out и пулами для агентов;
- стандартным MCP‑API и готовым набором из 37 инструментов для автоматизации;
- встроенной интеграцией с human-in-the-loop через WebRTC.
От RPA‑платформ Windows 365 for Agents уходит в сторону «агент‑первого» подхода: управление идет через MCP и JSON‑RPC, а не через графический конструктор сценариев. Но прямых сравнений по скорости, стоимости или надежности Microsoft здесь не приводит.
Если вам уже нужны Cloud PC и вы строите ИИ‑агентов, Windows 365 for Agents логично смотрится как надстройка над текущим стеком Microsoft. Если вы живете в экосистеме других вендоров и не используете Windows 365, переход ради одного этого продукта может быть слишком дорогим.
Как запустить
Ниже — базовый пример быстрого старта, который Microsoft предлагает для интеграции с Windows 365 for Agents.
Предварительные требования
Нужно подготовить:
- регистрацию приложения в Entra ID (tenant ID, client ID, client secret);
- уже созданный пул Cloud PC для агентов (POOL_ID);
- объектный ID пользователя в Entra ID (USER_OID);
- регион, в котором работает сервис (в примере
eastus2).
Пример кода на Python
Код демонстрирует полный цикл:
- Получение токена в Entra ID.
- Checkout сессии — резервирование Cloud PC из пула.
- Инициализация MCP‑сессии.
- Вызов MCP‑инструментов (скриншот, клик по координатам).
- Checkin — освобождение Cloud PC.
import httpx
import json
import uuid
# --- Configuration ---
TENANT_ID = "your-tenant-id"
CLIENT_ID = "your-app-client-id"
CLIENT_SECRET = "your-app-secret"
POOL_ID = "your-pool-id"
USER_OID = "your-aad-user-object-id"
REGION = "eastus2"
SESSION_BASE = f"https://{REGION}.sessionmanagement.regional.cloudinferenceplatform.azure.net"
# 1. Acquire token
token_resp = httpx.post(
f"https://login.microsoftonline.com/{TENANT_ID}/oauth2/v2.0/token",
data={
"client_id": CLIENT_ID,
"client_secret": CLIENT_SECRET,
"scope": "api://W365Agents-Prod/.default",
"grant_type": "client_credentials",
},
)
TOKEN = token_resp.json()["access_token"]
# 2. Checkout session (reserves a Cloud PC)
session_id = str(uuid.uuid4())
checkout = httpx.post(
f"{SESSION_BASE}/api/pools/{POOL_ID}/sessions",
params={"api-version": "2.0"},
headers={
"Authorization": f"Bearer {TOKEN}",
"user-object-id": USER_OID,
"x-ms-sessionId": session_id, # Idempotency key — always include
},
timeout=35.0,
)
session = checkout.json()
computer_url = session["computerUrl"]
computer_id = computer_url.split("/computers/")[1]
# 3. Initialize MCP (required once per session)
MCP_ENDPOINT = f"{computer_url}/mcp"
MCP_HEADERS = {
"Authorization": f"Bearer {TOKEN}",
"x-ms-computerId": computer_id,
"Content-Type": "application/json",
}
def mcp_call(method, params=None, msg_id=1):
body = {"jsonrpc": "2.0", "id": msg_id, "method": method}
if params:
body["params"] = params
resp = httpx.post(
MCP_ENDPOINT,
headers=MCP_HEADERS,
params={"api-version": "1.0"},
content=json.dumps(body),
timeout=35.0,
)
return resp.json()
mcp_call(
"initialize",
{
"protocolVersion": "2024-11-05",
"capabilities": {},
"clientInfo": {"name": "MyAgent", "version": "1.0"},
},
)
# 4. Take a screenshot
screenshot = mcp_call(
"tools/call",
{"name": "take_screenshot", "arguments": {}},
msg_id=2,
)
print(screenshot)
# 5. Click at coordinates
mcp_call(
"tools/call",
{
"name": "click",
"arguments": {"x": 500, "y": 300},
},
msg_id=3,
)
# 6. Checkin (release the Cloud PC)
httpx.delete(
f"{SESSION_BASE}/api/sessions/{session_id}",
params={"api-version": "2.0"},
headers={"Authorization": f"Bearer {TOKEN}"},
)
Проект распространяется под лицензией MIT и использует Microsoft Open Source Code of Conduct. Для доработок и pull‑request‑ов в репозитории есть CONTRIBUTING.md и CODE_OF_CONDUCT.md.