Инструменты3 июля 2026 г., 01:17 МСК🤖 Auto

Alibaba Page Agent: Агенты внутри DOM, а не через Selenium

Alibaba представила Page Agent — JavaScript-библиотеку, позволяющая LLM управлять веб-интерфейсами изнутри страницы, читая DOM напрямую, а не через скриншоты.

Баннер новости 2823

Революция внутри браузера

В отличие от традиционных инструментов автоматизации, таких как Playwright, Puppeteer или Selenium, которые работают как внешние процессы, считывая страницу через Chrome DevTools Protocol (CDP) или скриншоты, Alibaba Page Agent живет прямо внутри веб-страницы. Это клиентская библиотека на TypeScript, которая работает как обычный JavaScript-скрипт, получая доступ к живому DOM-дереву в реальном времени.

Ключевое преимущество подхода — отсутствие необходимости в мультимодальных моделях, способных «видеть» пиксели. Агент отправляет в LLM только текстовое представление интерфейса, что значительно снижает стоимость запросов и повышает точность действий за счет работы со структурой, а не с изображениями.

Технология DOM Dehydration

Основной механизм работы — DOM dehydration. Современная веб-страница может содержать тысячи узлов, что делает отправку сырого HTML в модель неэффективной. Page Agent преобразует DOM в компактную структуру FlatDomTree, выделяя только интерактивные элементы (кнопки, поля ввода, ссылки), присваивая им индексы, роли и метки.冗余ный разметка удаляется, оставляя модели только необходимую для принятия решений информацию.

Архитектура проекта модульная:

  • @page-agent/core: логика агента без головы (headless).
  • page-agent: основной класс с UI-панелью.
  • @page-agent/page-controller: извлечение DOM, индексация элементов и визуализация через SimulatorMask.

Сравнение подходов

Важно понимать, что Page Agent не заменяет инструменты для тестирования или скрейпинга внешних сайтов. Его ниша — интеграция в приложения, код которых вы контролируете. Ниже приведено сравнение с популярными альтернативами:

ПодходГде запускаетсяКак читает страницуЛучшее применение
Page AgentВнутри страницы (Client-side JS)Текстовый DOM (FlatDomTree)AI-копилоты внутри ваших SaaS-продуктов
Selenium / PlaywrightВнешний процессDOM через драйвер (WebDriver/CDP)Автоматизированное end-to-end тестирование
browser-useВнешний процессDOM + опционально VisionАвтономные агенты для работы с множеством сайтов
WebMCPСерверная частьСтруктурированные вызовы функцийДоступ к нативным инструментам агентов

Практическое применение и безопасность

Page Agent идеально подходит для:

  • SaaS AI-копилотов: Бот не просто дает инструкции, а сам нажимает кнопки и заполняет формы за пользователя.
  • Умного заполнения форм: Пользователь пишет «Отправить отчет о командировке на 50 долларов», а агент сам находит поля, вводит данные и отправляет форму.
  • Доступности: Интеграция с Web Speech API для голосового управления.
  • Модернизации legacy: Добавление голосового управления в старые внутренние системы без переписывания бэкенда.

Проект открыт под лицензией MIT. Для работы требуется любая OpenAI-совместимая модель. Пример инициализации:

import PageAgent from 'page-agent';
const agent = new PageAgent({
  model: 'qwen3.5-plus',
  baseURL: 'https://dashscope.aliyuncs.com/compatible-mode/v1',
  apiKey: 'YOUR_API_KEY',
  language: 'en-US'
});
await agent.execute('Click the login button');

Важное предупреждение: Безопасность здесь строится на уровне промптов (например, запрет на авто-отправку платежей). Это «мягкие» ограничения. Для критических действий необходима серверная валидация. Также агент ограничен одной страницей: для работы с несколькими вкладками требуется отдельное Chrome-расширение.

Источник: MarkTechPost ↗