Amazon Bedrock AgentCore runtime дає кожній сесії агента автентифікований URL, через який можна відкрити dev-сервер, запущений усередині ізольованої microVM.

Для білдера це скорочує цикл рев'ю. Агент зберігає файл, а зміна з'являється в браузері за секунди, без окремого деплою. Але URL живе лише до кінця сесії й вимагає облікові дані в кожному запиті, тому це інструмент перегляду, а не хостингу.

Чим session endpoint відрізняється від runtime endpoint?

Runtime endpoint (наприклад, DEFAULT) веде до самого агента й визначає, яку його версію викликають, а session endpoint веде до того, що агент запустив у сесії, за даними Amazon Web Services.

Запити до агента далі йдуть через InvokeAgentRuntime. У відповіді приходить заголовок X-Amzn-Bedrock-AgentCore-Runtime-Session-Endpoint-Url, а в SDK він доступний як sessionEndpointUrl. Заголовок необовʼязковий: runtime не повертає його, якщо session endpoints не ввімкнено.

Як відкрити прев'ю з браузера, якщо запити підписані?

Браузер сам не додасть підпис SigV4 чи bearer-токен до запитів сторінки, тому клієнт Session endpoint в SDK bedrock-agentcore піднімає локальний endpoint на вашій машині. У прикладі, за даними AWS ML, це http://localhost:8088: він додає облікові дані до кожного запиту й WebSocket-рукостискання та пересилає їх далі.

У прикладі агент працює на порту 8080 і редагує файли чотирма інструментами: list, read, write, edit. Dev-сервер Vite стоїть на порту 8090 й надсилає зміни в браузер через свій hot-reload WebSocket. Для runtime з IAM викликачу потрібен дозвіл bedrock-agentcore:InvokeAgentRuntimeProxy на runtime та його endpoint. Для runtime з JWT-авторизатором у кожному запиті йде bearer-токен. Знання URL доступу не дає.

Що налаштувати на dev-сервері, щоб прев'ю відкрилося?

Якщо dev-сервер перевіряє заголовок Host, його треба налаштувати на запити від runtime. Проксі не передає hostname session endpoint, застосунок бачить внутрішній hostname runtime, а заголовка X-Forwarded-Host немає. Для Vite потрібно виставити server.allowedHosts у true, для webpack-dev-server devServer.allowedHosts у 'all', для Django налаштувати ALLOWED_HOSTS.

З абсолютними URL те саме: якщо застосунок будує їх із Host, вони вказують на внутрішню адресу, недоступну клієнту. Посилання, ресурси й редиректи мають бути відносними.

Є й обмеження платформи. Session endpoints підтримують microVM-runtime, але не Instances with capacity providers, а ingress іде через публічний HTTPS, тому AWS PrivateLink не підтримується.

Що це означає для України?

У наведених джерелах немає списку регіонів чи країн для Session endpoints, і Україна там не згадана, тож доступність в Україні офіційно не вказана. Ціни в джерелах теж немає.

Що робити зараз