macOS companion app

Мост Peekaboo

OpenClaw может размещать PeekabooBridge в качестве локального посредника автоматизации пользовательского интерфейса с учётом разрешений (PeekabooBridgeHostCoordinator, на базе пакета Swift steipete/Peekaboo). Это позволяет CLI peekaboo управлять автоматизацией пользовательского интерфейса, используя разрешения TCC приложения macOS.

Что это такое (и чем не является)

  • Хост: OpenClaw.app может выступать хостом PeekabooBridge.
  • Клиент: CLI peekaboo (отдельного интерфейса openclaw ui ... нет).
  • Пользовательский интерфейс: визуальные наложения остаются в Peekaboo.app; OpenClaw выступает лёгким хостом-посредником.

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

В OpenClaw предусмотрены четыре способа управления рабочим столом, которые намеренно остаются раздельными:

  • Хост PeekabooBridge: OpenClaw.app размещает локальный сокет PeekabooBridge. CLI peekaboo выступает клиентом и использует разрешения OpenClaw.app в macOS для создания снимков экрана, щелчков, работы с меню и диалоговыми окнами, действий с Dock и управления окнами.
  • Управление компьютером агентом (computer.act): встроенный инструмент computer агента Gateway создаёт снимки экрана через screen.snapshot и управляет указателем и клавиатурой с помощью опасной команды Node computer.act. Узел macOS выполняет computer.act внутри процесса, используя встроенные службы автоматизации Peekaboo, предоставляемые этим мостом, а также узкоспециализированные примитивы CoreGraphics, не обращаясь к сокету PeekabooBridge или CLI peekaboo. См. Управление компьютером.
  • Codex Computer Use: встроенный плагин codex проверяет и может установить MCP-плагин Codex computer-use (extensions/codex/src/app-server/computer-use.ts), после чего Codex самостоятельно выполняет вызовы встроенных инструментов управления рабочим столом во время сеансов в режиме Codex. OpenClaw не проксирует эти действия через PeekabooBridge.
  • Прямое подключение MCP cua-driver: OpenClaw может зарегистрировать вышестоящий сервер cua-driver mcp от TryCua как обычный сервер MCP, предоставляя агентам собственные схемы драйвера CUA и рабочий процесс с идентификаторами процессов, окнами и индексами элементов без маршрутизации через магазин Codex или сокет PeekabooBridge.

Используйте Peekaboo для широкого спектра автоматизации macOS через хост-мост OpenClaw.app, учитывающий разрешения. Используйте управление компьютером агентом, когда агент Gateway должен видеть рабочий стол и управлять им через унифицированную команду узла computer.act, которой может управлять любая модель с поддержкой компьютерного зрения. Используйте Codex Computer Use, когда агент в режиме Codex должен полагаться на встроенный плагин Codex. Используйте прямое подключение cua-driver mcp, чтобы предоставить драйвер CUA любой среде выполнения под управлением OpenClaw в виде обычного сервера MCP.

Включение моста

В приложении macOS: Settings -> Enable Peekaboo Bridge. Для включения этого переключателя параметр Allow Computer Control должен быть активирован, поскольку оба предоставляют доступ к локальной автоматизации пользовательского интерфейса; если Computer Control отключён, переключатель недоступен и хост не запускается. Чтобы управлять Peekaboo без Computer Control, вместо этого запустите собственное приложение Peekaboo для Mac в качестве хоста.

Когда мост включён (и Computer Control активирован), OpenClaw запускает локальный сервер UNIX-сокета по адресу ~/Library/Application Support/OpenClaw/<socket-name>. Если мост отключён, хост останавливается, а peekaboo переключается на другие доступные хосты. Координатор также поддерживает устаревшие символические ссылки на сокеты (clawdbot, clawdis, moltbot в каталоге Application Support), указывающие на текущий сокет для старых установок peekaboo.

Порядок обнаружения клиентов

Клиенты Peekaboo обычно проверяют хосты в следующем порядке:

  1. Peekaboo.app (полный пользовательский интерфейс)
  2. Claude.app (если установлено)
  3. OpenClaw.app (лёгкий посредник)

Используйте peekaboo bridge status --verbose, чтобы узнать, какой хост активен и какой путь к сокету используется. Чтобы переопределить его, выполните:

bash
export PEEKABOO_BRIDGE_SOCKET=/path/to/bridge.sock

Безопасность и разрешения

  • Мост проверяет подписи кода вызывающей стороны; применяется список разрешённых TeamID (TeamID хоста Peekaboo и собственный TeamID запущенного приложения).
  • Для разрешения Accessibility предпочтительно использовать подписанную идентичность моста или приложения, а не универсальную среду выполнения node. Если предоставить Accessibility среде node, любой пакет, запущенный этим исполняемым файлом Node, унаследует доступ к автоматизации графического интерфейса; см. Разрешения macOS.
  • Время ожидания запросов истекает через 10 секунд (requestTimeoutSec: 10).
  • Если необходимые разрешения отсутствуют, мост возвращает понятное сообщение об ошибке, а не запускает System Settings.

Поведение снимков (автоматизация)

Снимки хранятся в памяти в течение 10 минут, а их количество ограничено 50 (InMemorySnapshotManager); при очистке артефакты не удаляются. Если требуется более длительное хранение, создайте снимок повторно на стороне клиента.

Устранение неполадок

  • Если peekaboo сообщает «bridge client is not authorized», убедитесь, что клиент правильно подписан, или запускайте хост с PEEKABOO_ALLOW_UNSIGNED_SOCKET_CLIENTS=1 только в режиме debug.
  • Если хосты не найдены, откройте одно из хост-приложений (Peekaboo.app или OpenClaw.app) и убедитесь, что разрешения предоставлены.

Связанные материалы

Was this useful?
On this page

On this page