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и управляет указателем и клавиатурой с помощью опасной команды Nodecomputer.act. Узел macOS выполняетcomputer.actвнутри процесса, используя встроенные службы автоматизации Peekaboo, предоставляемые этим мостом, а также узкоспециализированные примитивы CoreGraphics, не обращаясь к сокету PeekabooBridge или CLIpeekaboo. См. Управление компьютером. - Codex Computer Use: встроенный плагин
codexпроверяет и может установить MCP-плагин Codexcomputer-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 обычно проверяют хосты в следующем порядке:
- Peekaboo.app (полный пользовательский интерфейс)
- Claude.app (если установлено)
- OpenClaw.app (лёгкий посредник)
Используйте peekaboo bridge status --verbose, чтобы узнать, какой хост активен и какой путь к сокету используется. Чтобы переопределить его, выполните:
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) и убедитесь, что разрешения предоставлены.