- Дата публикации
Как подружить Claude с вашим компьютером и браузером: практическое руководство для разработчиков
Что нового
Anthropic серьёзно доработала компьютерное и браузерное управление в линейке Claude 4.6 и в Claude Opus 4.7. Теперь LLM можно использовать как основу для полноценных агентных систем: от автотестов интерфейсов до полуавтоматической разработки софта.
Ключевые обновления:
-
Поддерживаемые модели:
- Claude Opus 4.6
- Claude Sonnet 4.6
- Claude Haiku 4.5
- Claude Opus 4.7 (отдельные настройки и более высокий лимит по картинкам)
-
Лимиты изображений для Computer Use API:
- Для семейства Claude 4.6 (Opus 4.6, Sonnet 4.6, Haiku 4.5):
- Максимальная длинная сторона: 1568 пикселей
- Максимум: 1,15 мегапикселя
- Если картинка выше по одному из параметров, API тихо ужимает её внутри себя
- Для Claude Opus 4.7:
- Максимальная длинная сторона: 2576 пикселей
- Максимум: 3,75 мегапикселя
- Для семейства Claude 4.6 (Opus 4.6, Sonnet 4.6, Haiku 4.5):
-
Рекомендованные разрешения:
- Базовый вариант для 4.6: 1280×720 (использует около 80% лимита по пикселям)
- Для Opus 4.7: старт с 1080p (1920×1080) даёт заметно более качественную картинку при допустимом расходе токенов
-
Новый демо-проект от Anthropic:
- Покрывает лучшие практики работы с Computer Use
- Включает вспомогательные утилиты для масштабирования скриншотов и обработки координат
-
Adaptive thinking (адаптивное «мышление»):
- Параметр
thinkingс уровнями:low,medium,high,xhigh(только Opus 4.7) иmax - Модель сама решает, сколько делать промежуточных рассуждений перед кликом или вводом с клавиатуры
- Параметр
-
Рекомендации по effort (thinking) для Opus 4.7:
- На бенчмарке OSWorld Verified Opus 4.7 обгоняет всю линейку 4.6 при том же количестве токенов
- Opus 4.7 на
lowдаёт качество примерно как Sonnet 4.6 наmax, но использует примерно в 10 раз меньше токенов на задачу highдаёт почти максимальный успех задач при ~половине токенов отmax
-
Рекомендации по effort для семейства 4.6:
medium— оптимум по соотношению «успех / стоимость»lowчасто выгоднее, чем полное отключение thinking: меньше ошибок, меньше лишних токенов
Всё это заточено под один сценарий: Claude должен не просто «видеть» интерфейс, а уверенно кликать, скроллить и вводить текст в реальных приложениях и браузерах.
Как это работает
Координаты и масштаб
Claude работает с вашим экраном через скриншоты и координаты клика. Поток выглядит так:
- Вы снимаете скриншот экрана или окна.
- Урезаете изображение под лимиты API (по длинной стороне и общему числу пикселей).
- Отправляете картинку в Computer Use API с параметрами
display_width_pxиdisplay_height_px. - Claude видит уже уменьшенную версию скриншота и выдаёт координаты клика в системе координат уменьшенной картинки.
- Вы масштабируете координаты обратно в нативное разрешение экрана и физически кликаете.
Критично: если отправить картинку больше лимита, API сам её сожмёт, но координаты останутся в вашей системе координат. В итоге модель кликает по «сжатой» картинке, а вы по «большой» — отсюда промахи.
Anthropic прямо говорит: самое важное улучшение точности кликов — предварительно самостоятельно уменьшать скриншоты под лимиты API.
Рекомендуемые разрешения и функция "max API fit"
Базовый, простой и рабочий кейс:
- Для 4.6: 1280×720
- Для Opus 4.7: 1080p (1920×1080) как стартовая точка
Если хотите выжать максимум информации из каждого пикселя без искажений, Anthropic предлагает функцию compute_max_api_fit — она считает оптимальное разрешение с сохранением исходного соотношения сторон и без апскейла:
import math
# 1568 for 4.6 family, 2576 for Opus 4.7
MAX_LONG_EDGE = 1568
# 1.15MP for 4.6 family, 3.75MP for Opus 4.7
MAX_PIXELS = 1_150_000
def compute_max_api_fit(native_w, native_h):
"""Compute the largest resolution that fits API limits
while preserving aspect ratio."""
aspect = native_w / native_h
# Compute max dimensions from pixel budget
h_from_pixels = math.sqrt(MAX_PIXELS / aspect)
w_from_pixels = h_from_pixels * aspect
# Apply long edge constraint
if native_w >= native_h:
w = min(w_from_pixels, MAX_LONG_EDGE)
h = w / aspect
else:
h = min(h_from_pixels, MAX_LONG_EDGE)
w = h * aspect
# Never upscale beyond native
w = min(w, native_w)
h = min(h, native_h)
return int(w), int(h)
Эта схема:
- не ломает пропорции
- выжимает максимум из лимита по пикселям
- даёт небольшое, но стабильное повышение точности по сравнению с фиксированным 1280×720
Масштабирование координат
Claude возвращает координаты в системе display_width_px × display_height_px. Чтобы кликнуть в реальном экране, нужно пересчитать их в нативное разрешение:
# Your screen is screen_w x screen_h
# You sent a screenshot resized to display_w x display_h
scale_x = screen_w / display_w
scale_y = screen_h / display_h
screen_x = int(api_returned_x * scale_x)
screen_y = int(api_returned_y * scale_y)
Если забыть масштабировать или выставить display_width_px/display_height_px не равными реальному размеру отправленной картинки, все клики будут стабильно смещены.
Порядок контента: текст → картинка
При формировании массива messages Anthropic рекомендует сначала передавать текстовую инструкцию, а потом изображение:
# РЕКОМЕНДУЕТСЯ — сначала текст, потом скриншот:
content = [
{"type": "text", "text": "Click on the Submit button"},
{"type": "image", "source": {"type": "base64", "media_type": "image/png", "data": screenshot_b64}},
]
# НЕ РЕКОМЕНДУЕТСЯ — сначала картинка, потом текст:
content = [
{"type": "image", "source": {"type": "base64", "media_type": "image/png", "data": screenshot_b64}},
{"type": "text", "text": "Click on the Submit button"},
]
Так модель сразу понимает, что ей искать на скриншоте, и точность кликов растёт.
Диагностика промахов по клику
Anthropic разбирает типичные симптомы и причины.
-
Клики стабильно смещены в одну сторону
- Частые причины:
display_width_px/display_height_pxне совпадают с реальным размером отправленного изображения- Скриншот превышает лимиты API и внутри сжат без вашего ведома
- В
contentсначала картинка, потом текст
- Что делать:
- Жёстко следить, чтобы
display_*совпадали с фактическим размером уменьшенного скриншота - Предварительно уменьшать до 1280×720 или использовать
compute_max_api_fit - Переставить текстовую инструкцию перед картинкой
- Жёстко следить, чтобы
- Частые причины:
-
Клики попадают примерно в район цели, но не в точку
- Причины:
- Очень маленькая цель (иконка, чекбокс, мини-тоггл)
- Исходный скриншот был 4K+, при сжатии потерялись детали
- Искажение пропорций при принудительном переводе, например, 4:3 в 16:9
- Что делать:
- Включить
enable_zoom: Trueдля плотных интерфейсов - Снимать скриншоты с меньшим DPI или кропать только нужный регион перед сжатием
- Сохранять исходное соотношение сторон при ресайзе
- Включить
- Причины:
-
Модель кликает вообще не туда
- Причины:
- Размытая инструкция: «нажми Submit», когда на экране несколько похожих кнопок
- Рядом несколько визуально похожих элементов
- Слишком сложный UI для одной команды
- Что делать:
- Давать точные промпты: «нажми синюю кнопку Submit в правом нижнем углу формы»
- Дробить сценарий на несколько шагов
- Добавлять контекст о структуре страницы
- Причины:
-
Точность плохая почти всегда
- Причины:
- Скриншоты всегда выше лимитов API
- Исходные изображения с очень высоким разрешением (4K+), сильная компрессия
- Разрешение слишком низкое, мелкие детали теряются
- Что делать:
- Везде перед отправкой уменьшать под лимиты
- Для 4K+ источников на 4.6: Sonnet 4.6 лучше держит сильное сжатие, чем Opus 4.6
- На Opus 4.7 использовать увеличенный лимит до 3,75 Мп, чтобы меньше сжимать
- В качестве базы попробовать 1280×720; если слишком мыльно — перейти на
compute_max_api_fit
- Причины:
Модели и точность кликов
Anthropic делится внутренними наблюдениями:
-
Claude Sonnet 4.6:
- Лучшая механическая точность кликов
- Меньше «почти попал»
- Лучше держит качество при сильном сжатии скриншотов
-
Claude Opus 4.6:
- Сильнее в рассуждениях и сложном планировании
- Чуть хуже в чистой «моторике» кликов по сравнению с Sonnet 4.6
-
Claude Opus 4.7:
- Почти сравнялся с Sonnet 4.6 по точности кликов
- За счёт лимита в 3,75 Мп требует меньше сжатия, что само по себе повышает точность
- При этом сохраняет «опусный» уровень рассуждений
Рекомендации:
- Стартовая рабочая лошадка: Sonnet 4.6 — хороший баланс точности, рассуждений и цены
- Когда важны сложные решения и высокое разрешение: Opus 4.7
- Когда нужна минимальная задержка: Haiku 4.5
- Продвинутый вариант: оркестратор (например, Opus) планирует сценарий, а Sonnet или Haiku исполняет клики и простые действия.
Маленькие цели: чекбоксы, иконки, треи
По мере уменьшения размера цели точность падает. Крупные и средние элементы (кнопки, поля ввода, обычные пункты меню) отрабатывают стабильно. Проблемы начинаются с:
- чекбоксов 12–16 пикселей
- иконок в системном трее
- маленьких стрелок раскрытия списков
- мини-переключателей
- кнопок «+/-» в древовидных списках
Anthropic предлагает несколько приёмов:
- Zoom для плотных интерфейсов
У Claude 4.6 и 4.7 есть режим увеличения отдельного региона экрана. Его можно включить в настройке инструмента:
{
"type": "computer_20251124",
"name": "computer",
"display_width_px": 1280,
"display_height_px": 720,
"enable_zoom": True
}
Модель может сначала «приблизить» нужный участок, рассмотреть элементы и только потом кликнуть.
- Увеличить сами цели
Если вы контролируете интерфейс:
- уменьшите системный DPI
- увеличьте масштаб в браузере
- поднимите скейлинг UI в настройках
Небольшое увеличение размеров кликабельных элементов сильно стабилизирует автоматизацию.
- Перейти на клавиатуру для микроточек
Для системного трея, мелких чекбоксов и мини-иконок часто проще и надёжнее:
- использовать горячие клавиши
- навигацию Tab/Shift+Tab
Если сценарий это допускает, имеет смысл явно промптом предложить модели использовать клавиатуру на конкретном шаге.
- Работа с 4K+ источниками
При сжатии 3840×2160 до 1280×720 чекбокс 16 пикселей превращается примерно в 5 пикселей. Попасть в него намного сложнее.
Для таких случаев:
- на Opus 4.7 используйте увеличенный лимит по пикселям (до 3,75 Мп)
- на 4.6:
- снижайте DPI
- повышайте масштаб интерфейса в системе
- снимайте не весь экран, а только нужные регионы
Anthropic подчёркивает, что по мере роста исходного разрешения приходится сильнее сжимать картинку, и от этого качество падает.
Что не сработало
Команда Anthropic проверила несколько популярных «хаков» и не увидела стабильного выигрыша:
- Разбивка экрана на тайлы и отправка по частям
- Наложение координатной сетки на скриншот
- Выбор конкретного алгоритма ресайза (PIL LANCZOS,
sipsи другие) — результаты примерно одинаковые
Вместо этого они рекомендуют вкладываться в правильный масштаб, порядок контента и настройку моделей.
Логирование и разбор ошибок
Если поведение кажется странным, Anthropic советует:
- логировать полные диалоги
- визуально накладывать предсказанные координаты на исходные скриншоты
Часть ошибок вообще не про клики. Например, выпадающее меню может быть системным и не попадать в браузерный скриншот. В этом случае модель физически не видит нужный элемент, и лучше переключиться на:
- выполнение JavaScript
- клавиатурную навигацию
- прямую работу с DOM, если вы контролируете браузер
Что это значит для вас
Где это реально помогает
- Автотесты и регрессия UI
Вы можете собирать сценарии вроде:
- открыть браузер
- авторизоваться
- пройти по нескольким формам
- проверить наличие элементов
Claude берёт на себя клики, ввод текста и базовую навигацию. Sonnet 4.6 подойдёт как основа для такого «робота-тестировщика», Opus 4.7 — если нужно ещё и сложное ветвление сценариев.
- Автоматизация рутины на рабочем столе
Типичные кейсы:
- выгрузить отчёт из десктопного приложения, загрузить в веб-сервис
- скопировать данные из одного GUI в другой
- пройти длинный многошаговый wizard по инструкции
Здесь особенно важны:
- правильный масштаб скриншотов
- аккуратная работа с маленькими целями (чекбоксы, иконки)
- fallback на клавиатуру, когда клик по микроскопической цели ненадёжен
- Полуавтоматическая разработка и DevOps
Claude может:
- открыть IDE
- переключиться в браузер
- запустить CI-интерфейс
- проверить логи
Опус 4.7 с high или max thinking хорошо подходит для сложных «одиночных» задач, где вы хотите, чтобы агент один раз прошёл длинный сценарий без доработок.
- Поддержка пользователей и внутренняя RPA
Если у вас есть внутренние интерфейсы без API, можно строить лёгкие RPA-скрипты поверх Claude:
- бот выполняет действия в интерфейсе по текстовому описанию
- вы логируете транскрипты и клики
- постепенно ужимаете сценарии в стабильные пайплайны
Где будут проблемы
- Очень маленькие элементы в 4K-интерфейсах
Если вы любите 4K на 27" и масштаб 100%, а интерфейс усыпан иконками 12–14 пикселей, без дополнительной настройки будет больно:
- модель не видит разницы между похожими иконками
- при сжатии до 720p или даже 1080p детали просто исчезают
Что делать:
- повышать масштаб интерфейса
- использовать Opus 4.7 с его лимитом 3,75 Мп
- кропать только нужные регионы
- по возможности уходить в клавиатуру и DOM
- Многозадачные сложные окна с системными меню
Системные контекстные меню, некоторые выпадающие списки и всплывающие окна могут не попадать в скриншот. Модель «проваливает» шаг не из-за плохого клика, а потому что элемент невидим.
В таких сценариях лучше комбинировать:
- Computer Use для базовых кликов
- системные API или драйверы (Selenium, Playwright, Win32 и т.п.)
- прямое выполнение кода в браузере или приложении
- Слепое доверие одному прогону
Anthropic показывает, что на 4.6 medium и high по итогу сходятся по успеху, если дать несколько попыток. Это значит, что лучше:
- закладывать ретраи
- логировать ошибки
- постепенно ужимать сценарий
А не пытаться решить всё одним идеальным прогоном на max с огромным расходом токенов.
Доступность из России
Anthropic — американская компания. Прямой доступ к Claude и Computer Use API для российских пользователей может потребовать:
- зарубежный аккаунт
- платёжный инструмент за пределами РФ
- VPN для доступа к API и веб-интерфейсу
Если вы строите продукт для российского рынка, нужно учитывать юридические и технические ограничения доступа к Claude и заранее продумывать инфраструктуру.
Место на рынке
Anthropic в этом материале не приводит прямых сравнений с OpenAI или другими игроками. Есть только внутренняя статистика по линейке Claude.
Из того, что прозрачно:
-
Opus 4.7:
- На бенчмарке OSWorld Verified опережает все модели 4.6 при равном бюджете токенов
- На
loweffort даёт качество уровня Sonnet 4.6 сmax, но с примерно 10-кратной экономией токенов - Имеет более высокий лимит по пикселям (3,75 Мп против 1,15 Мп у 4.6)
-
Sonnet 4.6:
- Лучший баланс «цена / точность кликов / рассуждения» внутри линейки 4.6
- Лучше переносит сильное сжатие изображений
-
Haiku 4.5:
- Фокус на латентности
- Подходит как быстрый исполнитель «моторных» действий в паре с более умным планирующим агентом
Если вы уже работаете с Claude, выбор примерно такой:
- Нужен максимум точности кликов при умеренной цене — Sonnet 4.6
- Нужны сложные сценарии, высокий контекст и минимум ошибок — Opus 4.7
- Нужна скорость и дешёвые простые действия — Haiku 4.5
Сравнения с GPT-4o, Gemini или другими системами в оригинальном материале нет, поэтому ориентироваться приходится именно на внутренние метрики Anthropic и собственные пилоты.
Установка / Как запустить
Anthropic приводит полный пример подготовки скриншота, отправки в API и масштабирования координат. Код на Python, с использованием PIL.
Подготовка скриншота
import math
from PIL import Image
import base64
import io
# 1568 for 4.6 family, 2576 for Opus 4.7
MAX_LONG_EDGE = 1568
# 1.15MP for 4.6 family, 3.75MP for Opus 4.7
MAX_PIXELS = 1_150_000
def prepare_screenshot(screenshot: Image.Image, native_w: int, native_h: int) -> tuple[str, int, int]:
"""Resize a screenshot to fit API limits and return base64 + display dimensions."""
# Option A: Fixed 720p (simple, reliable)
display_w, display_h = 1280, 720
# Option B: Max API fit (maximizes fidelity)
# display_w, display_h = compute_max_api_fit(native_w, native_h)
resized = screenshot.resize((display_w, display_h), Image.LANCZOS)
buffer = io.BytesIO()
resized.save(buffer, format="PNG")
b64 = base64.standard_b64encode(buffer.getvalue()).decode()
return b64, display_w, display_h
def scale_coordinates(api_x: int, api_y: int, display_w: int, display_h: int,
screen_w: int, screen_h: int) -> tuple[int, int]:
"""Scale API-returned coordinates back to native screen space."""
screen_x = int(api_x * (screen_w / display_w))
screen_y = int(api_y * (screen_h / display_h))
return screen_x, screen_y
def compute_max_api_fit(native_w: int, native_h: int) -> tuple[int, int]:
"""Compute the largest resolution that fits API limits while preserving aspect ratio."""
aspect = native_w / native_h
h_from_pixels = math.sqrt(MAX_PIXELS / aspect)
w_from_pixels = h_from_pixels * aspect
if native_w >= native_h:
w = min(w_from_pixels, MAX_LONG_EDGE)
h = w / aspect
else:
h = min(h_from_pixels, MAX_LONG_EDGE)
w = h * aspect
w = min(w, native_w)
h = min(h, native_h)
return int(w), int(h)
Вызов Claude с Computer Use
import anthropic
from PIL import Image
client = anthropic.Anthropic()
# Capture screenshot (your method here)
screenshot = Image.open("screenshot.png")
native_w, native_h = screenshot.size
# Prepare for API
b64, display_w, display_h = prepare_screenshot(screenshot, native_w, native_h)
# Send to Claude — text before image
response = client.beta.messages.create(
model="claude-sonnet-4-6",
max_tokens=4096,
betas=["computer-use-2025-11-24"],
messages=[{
"role": "user",
"content": [
{"type": "text", "text": "Click on the Submit button"},
{"type": "image", "source": {"type": "base64", "media_type": "image/png", "data": b64}},
]
}],
tools=[{
"type": "computer_20251124",
"name": "computer",
"display_width_px": display_w,
"display_height_px": display_h,
}],
)
# Scale coordinates back for execution
api_x, api_y = extract_click_coords(response) # your parsing logic
screen_x, screen_y = scale_coordinates(api_x, api_y, display_w, display_h, native_w, native_h)
Здесь важно:
betas=["computer-use-2025-11-24"]— включение Computer Usetools=[{...}]— описание виртуального дисплея, который видит Claudedisplay_width_pxиdisplay_height_pxдолжны совпадать с размером уменьшенного скриншота
Дальше вы уже сами кликаете по координатам screen_x, screen_y с помощью любого драйвера мыши.
Настройка thinking effort для компьютерного управления
Opus 4.7
Anthropic прогоняла Opus 4.7 по набору задач UI-автоматизации (десктоп, браузер, мультиприложения) на разных уровнях thinking.
Выводы:
- Opus 4.7 обгоняет все модели 4.6 при равном бюджете токенов и одинаковых настройках effort на бенчмарке OSWorld Verified
lowу Opus 4.7 даёт качество на уровне Sonnet 4.6 сmax, но при этом тратит примерно в 10 раз меньше токенов на задачуhighпочти догоняетmaxпо успеху задач, но использует примерно половину токенов отmax
Рекомендации Anthropic:
| Сценарий | Рекомендуемый thinking | Почему |
| --- | --- | --- |
| База для большинства кейсов | high | Хватает для планирования сложных многошаговых сценариев без заметного роста токенов относительно medium |
| Высокий трафик / чувствительность к цене | low | Меньше токенов при качестве между high и max у Opus 4.6 |
| Простые, хорошо заданные сценарии, где важна скорость | Рассмотреть Sonnet 4.6 | Низкая латентность, достаточно для коротких и стабильных задач |
| Очень сложные одноразовые задачи | max | Максимум рассуждений, если важно попасть с первого раза |
Семейство Claude 4.6
Здесь Anthropic тоже прогоняла модели через набор задач UI-автоматизации.
Два устойчивых эффекта:
-
medium— лучший баланс- Достигает почти максимального процента успешных задач
- При этом расходует примерно вдвое меньше токенов, чем
high - При ретраях
mediumиhighв итоге сходятся по успеху
-
lowудивительно хорош- Тратит меньше токенов, чем полное отключение thinking
- Модель делает меньше промахов и лишних действий
Практически это значит:
- для большинства сценариев UI-автоматизации на 4.6 можно смело ставить
medium - если у вас много ретраев и важна цена,
lowможет оказаться выгоднее, чем «немыслящий» режим
Вся эта методичка от Anthropic сводится к одной мысли: если вы хотите строить поверх Claude реальные агентные сценарии для десктопа и браузера, критичны не абстрактные «алгоритмы», а очень конкретные вещи — пиксели, порядок сообщений, размеры чекбоксов и разумный выбор модели с нужным уровнем thinking. Если это соблюсти, Claude превращается из «чата с картинками» в достаточно надёжный инструмент для автоматизации рутины в интерфейсах.