Nodes and media
Керування комп’ютером
Використання комп’ютера дає агенту Gateway змогу бачити та керувати спареним робочим столом macOS: агент робить знімок екрана за допомогою наявної команди вузла screen.snapshot і керує вказівником та клавіатурою через єдину небезпечну команду вузла computer.act. Набір дій відповідає основним діям Anthropic для використання комп’ютера; необов’язкове масштабування computer_20251124 не надається. Модель із підтримкою зору керує ним через вбудований інструмент агента computer.
Агент надсилає одну уніфіковану команду computer.act і не може визначити, як вузол її виконує. Вузол macOS виконує computer.act у межах процесу за допомогою вбудованих служб Peekaboo та вузькоспеціалізованих примітивів CoreGraphics (належні дозволи TCC, без додаткового процесу). Інші платформи зможуть згодом виконувати ту саму команду без зміни контракту, доступного агенту.
Вимоги
- Спарений вузол macOS (застосунок OpenClaw для macOS, запущений у режимі вузла).
- Увімкнений параметр застосунку macOS Allow Computer Control (типове значення: вимкнено).
- Наданий OpenClaw дозвіл Accessibility у macOS (для введення з вказівника та клавіатури) і дозвіл Screen Recording (для
screen.snapshot). - Команда
computer.act, активована на Gateway (вона небезпечна й типово деактивована). - Модель агента з підтримкою зору.
- Політика інструментів, що надає доступ до
computer. Типовий профільcodingцього не робить. Додайтеcomputerдоtools.alsoAllow; агентам у пісочниці також потрібно додати його доtools.sandbox.tools.alsoAllow.
Інструмент агента computer
Вбудований інструмент computer приймає одну дію за виклик. Координати — це невід’ємні цілі значення пікселів на найновішому знімку екрана; вузол перетворює їх на точки дисплея. Дії з координатами мають передавати frameId із результату знімка екрана, а явно вказаний screenIndex має відповідати цьому кадру. OpenClaw також передає з виданого вузлом знімка екрана ідентифікатор дисплея до дії, тому повторне підключення дисплея або зміна його геометрії призводить до безпечної відмови замість непомітного перенаправлення дії на той самий індекс. Ці перевірки відхиляють вгадані токени й токени з іншого переданого кадру або дисплея. Токен не гарантує актуальності: після створення знімка застосунки можуть змінити пікселі на тому самому дисплеї, тому робіть новий знімок екрана щоразу, коли сцена могла змінитися.
- Читання:
screenshot. - Вказівник:
left_click,right_click,middle_click,double_click,triple_click,mouse_move,left_click_drag(ізstartCoordinate),left_mouse_down,left_mouse_up. - Прокручування:
scrollізscrollDirection(up|down|left|right) іscrollAmount(поділки коліщатка). - Клавіатура:
type(текст),key(комбінація на кшталтcmd+shift+tабоReturn),hold_key(комбінація в поліtext, яку утримують протягомdurationсекунд). - Темп:
wait(durationсекунд).
Клавіші-модифікатори передаються в полі text для дій клацання та прокручування (shift, ctrl, alt, cmd). Після дії введення інструмент повертає свіжий знімок екрана, щоб модель могла побачити результат. Якщо підключено кілька вузлів із підтримкою керування комп’ютером, явно передайте node.
Знімки екрана зберігаються лише для моделі: вони ніколи автоматично не надсилаються в канал чату. Вважайте весь вміст на екрані ненадійними вхідними даними; інструмент попереджає модель не виконувати інструкції з екрана, які суперечать запиту користувача.
Команда вузла computer.act
computer.act — це єдина команда вузла, через яку інструмент спрямовує введення (node.invoke із command: "computer.act"). Вона:
- Типово небезпечна: входить до вбудованого списку небезпечних команд вузла й виключена зі списку дозволених під час виконання, доки її явно не активують. Вузол macOS усе одно може оголосити її під час спарювання, щоб цю поверхню було достатньо схвалити один раз.
- Наразі лише для macOS: її оголошує лише вузол macOS, у якому ввімкнено Allow Computer Control.
Для читання повторно використовується screen.snapshot; другого шляху захоплення немає. Спільну команду захоплення описано в розділі Вузли камери й екрана.
Увімкнення та активація
-
У застосунку macOS увімкніть Settings → Allow Computer Control. Потім відкрийте Settings → Permissions і надайте дозволи Accessibility та Screen Recording у системних параметрах macOS.
-
Схваліть оновлення спарювання на Gateway (нова команда вимагає повторного спарювання).
-
Надайте доступ до інструмента агенту з підтримкою зору. Для типового профілю
coding:json5 { tools: { alsoAllow: ["computer"], // Агентам у пісочниці також потрібен цей другий шлюз: sandbox: { tools: { alsoAllow: ["computer"] } }, },} -
Активуйте
computer.actна обмежений проміжок часу. Pluginphone-controlнадає групуcomputer:text /phone arm computer 30m/phone status/phone disarmДля активації потрібна роль
operator.admin(або власник), і термін дії автоматично завершується. Застаріла група/phone arm allнавмисно не включає керування робочим столом; використовуйте явну групуcomputer. Активація лише визначає, що Gateway може викликати; застосунок macOS усе одно застосовує свій параметр Allow Computer Control і дозволи ОС.
Для постійної авторизації додайте computer.act до gateway.nodes.allowCommands і видаліть її з gateway.nodes.denyCommands; список заборон має перевагу. Постійна авторизація не завершується автоматично. Записи, що вже були наявні до /phone arm, залишаються після /phone disarm; не перетворюйте тимчасовий дозвіл на постійний, доки команда активована.
Авторизацію навмисно розділено на ввімкнення та використання. Для активації або
постійного налаштування computer.act потрібні адміністративні повноваження.
Після активації автентифікований оператор із operator.write може викликати
computer.act через node.invoke, доки термін дії дозволу не завершиться або
команду не буде деактивовано; перевірка прав адміністратора для кожної дії
відсутня. Схвалення вузла, який оголошує computer.act, лише реєструє цю
поверхню, щоб її можна було активувати пізніше, і саме собою не дозволяє
виклик команди.
Безпека
- Перед авторизацією всі рівні (політика інструментів, політика команд Gateway, параметр macOS, Accessibility і Screen Recording) мають узгоджено дозволяти дію. Після активації дії виконуються без окремого підтвердження кожної дії до завершення терміну або виконання
/phone disarm. - Текстове введення надсилається по одній графемі. Скасування, відключення, призупинення, вимкнення або заміна кінцевої точки зупиняє його перед наступною графемою, не дозволяючи продовжити введення застарілого залишку.
- Знімки екрана доступні лише моделі й ніколи автоматично не надсилаються в чат (задача #44759).
- Вважайте вміст екрана ненадійним; він може містити ін’єкцію підказок.
Зв’язок з іншими способами керування робочим столом
Це шлях, яким керує агент. У розділі Міст Peekaboo описано його зв’язок із хостом PeekabooBridge, Codex Computer Use і прямим MCP cua-driver.