Суть
Цикл одного шага: восприятие → рассуждение → действие → новый скриншот.
- Perception — скриншот попадает в контекст как изображение (для веба — плюс accessibility tree / DOM).
- Reasoning — «где я, что вижу, какой следующий шаг, не кликал ли уже сюда».
- Action — модель возвращает
click(x,y),type("…"),scroll,key("Enter"); система исполняет и делает новый скриншот.
Это не «OCR + скрипт»: одна сеть одновременно смотрит, думает и кликает.
Зачем это нужно
~60% корпоративного ПО — legacy без API (банкинг, госсектор, маркетплейсы, партнёрские кабинеты). Где UI часто меняется, детерминированные скрипты (Selenium/RPA) ломаются, а CUA адаптируется. Выбор режима: API (если есть и покрывает) → RPA (стабильный UI) → CUA (нестабильный UI / нет API, дороже по токенам).
Как работает (ландшафт 2026)
- Claude Computer Use (Anthropic, beta с окт 2024) — из коробки логирует действия/скриншоты.
- ChatGPT Operator → ChatGPT Agent (OpenAI) — agent mode в чате, watch mode на чувствительных сайтах, встроенный детектор prompt injection. ⚠️ Отдельный браузер Atlas закрыт: объявлен 2026-07-10, перестал работать 2026-08-09, агентные возможности перенесены внутрь ChatGPT и Codex. Если где-то встречается «Atlas» как рабочий продукт — это устаревшее описание.
- Google Gemini / Project Mariner — управление браузером со стороны Google, третий крупный вендор в категории наряду с Anthropic и OpenAI.
- UI-TARS (ByteDance, Apache 2.0) — нативная GUI-модель (не обёртка над GPT), база Qwen-2-VL + RL по trajectories, 50B токенов на GUI-скриншотах, размеры 2B/7B/72B; self-host без зависимости от вендора.
- browser-use — Python-библиотека: Chromium через CDP, авто-экстракция DOM, маскирование sensitive-data, работает с любой LLM (Anthropic/Google/OpenAI/Ollama). На практике из ноутбука:
Agent(task=…, llm=…, browser_context=…, use_vision=True)— демо доставал цену Bitcoin с coinmarketcap. - Два разных бенчмарка, которые часто путают. OSWorld / OSWorld-Verified меряет управление полным рабочим столом, WebVoyager и WebArena — работу в браузере. Числа между ними несопоставимы, и лидеры разные: на WebVoyager впереди открытый
browser-use(около 89%) и computer-using agent от OpenAI (около 87%), тогда как на десктопных задачах OSWorld те же агенты дают заметно меньше — у OpenAI около 38%. Claude уступает на чисто браузерных задачах, но остаётся единственным из тройки, кто ведёт полный десктоп, и на OSWorld-Verified модели Opus вышли в диапазон низких 80% (в майской редакции этой заметки было 72.7% — за квартал показатель вырос). - Бенчмарк OSWorld-Verified — профильная оценка для этого класса агентов: задачи управления реальным ПК через GUI. Содержательный факт, который стоит помнить: лучший результат впервые сравнялся с human baseline (~72%), а разрыв между лидером и остальными участниками — двукратный. Конкретные баллы не дублируются здесь намеренно — они живут в Benchmarks Agents вместе с правилами чтения бенчмарков (vendor-scores × 0.7, падение на приватных данных). Цифра, скопированная в две заметки, устаревает в двух местах, а замечают это в одном.
Когда CUA дешевле скриптов
Развилка не в цене за операцию — по ней скрипт выигрывает всегда. Она в стоимости поддержки при изменении интерфейса. Селектор ломается от любой правки вёрстки, и на чужом интерфейсе, который вы не контролируете, починка становится постоянной статьёй расходов; агент, смотрящий на экран, переживает косметические изменения без правок.
Отсюда практический критерий: считать надо не «токены против бесплатного скрипта», а токены против часов на починку, и решает частота изменений интерфейса, умноженная на число сценариев. Высокий объём на стабильном интерфейсе — скрипты; редкие операции на чужом меняющемся интерфейсе — CUA; посередине часто выигрывает гибрид, где агент находит путь один раз, а дальше выполняется записанный скрипт с откатом на агента при поломке.
Отдельно про надёжность защиты от индиректных инъекций на живых сайтах: рассчитывать на неё как на барьер нельзя — текстовые маркеры и разметка недоверенного блока относятся к гигиене нулевого уровня и не держат адаптивную атаку (Prompt Injection). На реальном вебе барьером остаются изоляция исполнения, whitelist доменов и HITL на необратимом.
Безопасность
Топ-риски: prompt injection (прямой и индиректный, угроза №1), Confused Deputy (агент с правами пользователя выполняет команды атакующего из интернета), data exfiltration, деструктивные действия (rm -rf), approval fatigue (жмёшь OK не читая). Защита: изоляция (Firecracker microVM / gVisor / hardened-контейнер), proxy с whitelist доменов, отдельные креды вне песочницы, явные tiers риска, HITL на high-risk (платежи, башкоманды, auth) — см. Guardrails.
Пример
Шаг computer-use через browser-use: use_vision=True подаёт скриншот в контекст модели, agent.run() крутит цикл «восприятие → рассуждение → действие».
async def agent_loop(llm, browser_context, query, initial_url=None):
agent = Agent(
task=query,
llm=llm,
browser_context=browser_context,
use_vision=True, # скриншот страницы входит в контекст как изображение
initial_actions=[{"open_tab": {"url": initial_url}}] if initial_url else None,
)
result = await agent.run() # внутри: цикл скриншот -> рассуждение -> действие
return result.final_result() if result else None
Связано с
- AI Agent — CUA = агент, действующий в GUI вместо API
- Guardrails — изоляция/HITL критичны именно для CUA
- ReAct — цикл perceive→reason→act — это ReAct по скриншотам
- Benchmarks Agents — OSWorld как мера CUA