> ## Documentation Index
> Fetch the complete documentation index at: https://docs2.openclaw.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Управление компьютером

Управление компьютером позволяет агенту 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 предоставлено разрешение macOS **Accessibility** (для управления указателем и ввода с клавиатуры), а также разрешение **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`; отдельного пути захвата нет. Общая команда захвата описана в разделе [Узлы камеры и экрана](/ru/nodes/camera).

## Включение и активация

1. В приложении macOS включите **Settings → Allow Computer Control**. Затем откройте **Settings → Permissions** и предоставьте разрешения **Accessibility** и **Screen Recording** в системных настройках macOS.

2. Одобрите обновление сопряжения в Gateway (добавление новой команды требует повторного сопряжения).

3. Предоставьте доступ к инструменту агенту с поддержкой компьютерного зрения. Для профиля `coding` по умолчанию:

   ```json5 theme={"theme":{"light":"min-light","dark":"min-dark"}}
   {
     tools: {
       alsoAllow: ["computer"],
       // Агентам в песочнице также требуется этот второй уровень допуска:
       sandbox: { tools: { alsoAllow: ["computer"] } },
     },
   }
   ```

4. Активируйте `computer.act` на ограниченный период. Плагин `phone-control` предоставляет группу `computer`:

   ```text theme={"theme":{"light":"min-light","dark":"min-dark"}}
   /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](https://github.com/openclaw/openclaw/issues/44759)).
* Считайте содержимое экрана недоверенным: оно может содержать инъекцию промпта.

## Связь с другими способами управления рабочим столом

Это способ управления агентом. О том, как он связан с хостом PeekabooBridge, Codex Computer Use и прямым MCP `cua-driver`, см. в разделе [Мост Peekaboo](/ru/platforms/mac/peekaboo).
