CommunityProgramación y desarrollogithub.com

peekaboo

Captura y automatiza la interfaz de usuario de macOS con la CLI de Peekaboo.

¿Qué es peekaboo?

Peekaboo es una herramienta de línea de comandos para inspeccionar, interactuar y verificar la interfaz de usuario de macOS. Permite listar aplicaciones, capturar pantallas con detección de elementos, y ejecutar acciones como clics, teclas, arrastres y desplazamientos. Se integra con OpenClaw Bridge para habilitar el control remoto del equipo. Es útil para desarrolladores y automatizadores que necesitan simular interacciones humanas en macOS de manera programática. Soporta macOS 15+ y requiere permisos de grabación de pantalla. La versión v4 introdujo cambios importantes en los comandos, por lo que es importante consultar la ayuda del comando instalado.

Compatible con~Claude Code~Codex CLI✓Cursor
npx skills add https://github.com/clawdbot/clawdbot/tree/main/skills/peekaboo

Installed? Explore more Programación y desarrollo skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

¿Qué hace peekaboo?

Usa Peekaboo para inspeccionar la UI de macOS, actuar sobre el objetivo deseado y verificar el resultado. Los ejemplos a continuación usan la sintaxis v4. Consulta peekaboo --version y el --help del comando instalado; para versiones anteriores, sigue la ayuda de esa versión.

Puente OpenClaw

La aplicación macOS OpenClaw aloja Peekaboo Bridge cuando el Control del Equipo está habilitado, su proveedor es Peekaboo y Peekaboo Bridge está habilitado. Mantén la selección actual del socket de OpenClaw cuando ejecutes a través de ese host:

export PEEKABOO_BRIDGE_SOCKET="${PEEKABOO_BRIDGE_SOCKET:-$HOME/Library/Application Support/OpenClaw/bridge.sock}"
peekaboo bridge status --json

Confirma que el host y el socket seleccionados sean los correctos. Conserva un PEEKABOO_BRIDGE_SOCKET o --bridge-socket explícito. Si el host requerido no está disponible, informa ese resultado; no limpies la selección ni cambies el proveedor de Control del Equipo para que un comando tenga éxito.

Los permisos pertenecen al proceso o al host Bridge que realiza la operación. No pases --no-remote a menos que el llamante tenga los permisos necesarios.

Encontrar el comando instalado

Usa la ayuda de cada comando hoja para conocer sus banderas y requisitos de destino en lugar de copiar una bandera entre comandos. Usa la ayuda raíz para descubrir los comandos disponibles:

peekaboo --help
peekaboo app list --help
peekaboo see --help
peekaboo press --help
peekaboo drag --help

V4 eliminó estas raíces de comandos antiguas:

Comando antiguoComando V4
list appsapp list
imagesee --no-elements para píxeles sin detección de elementos
hotkeypress con acordes como cmd+shift+t
swipedrag --from … --to …

Para otras operaciones, incluyendo clics, escritura, desplazamiento y gestión de ventanas o menús, usa peekaboo <comando> --help. Coloca las opciones del comando después del comando hoja; --json solicita salida estructurada.

Inspeccionar, actuar, verificar

Comienza con el inventario de aplicaciones y una vista fresca del destino:

peekaboo app list --json
peekaboo see --app Safari --window-title "Example" --annotate \
  --path /tmp/peekaboo-example.png --json

Lee los elementos devueltos antes de actuar. Mantén las acciones vinculadas a la aplicación, ventana y captura reciente; no reutilices identificadores de elementos de ejemplo. Después de una acción, inspecciona la UI nuevamente y verifica el resultado solicitado. Actualiza la observación cuando la ventana cambie o un destino quede obsoleto.

Para una captura de pantalla sin detección de elementos:

peekaboo see --mode screen --screen-index 0 --no-elements --retina \
  --path /tmp/peekaboo-screen.png --json

Los acordes de teclado sin procesar requieren interacción explícita en primer plano o un recibo de ventana exacta recién aceptado por press. Arrastrar siempre mueve el cursor compartido y requiere --foreground. Cuando la interacción en primer plano está autorizada:

peekaboo press cmd+shift+t --app Safari --foreground --json
peekaboo drag --from 100,500 --to 100,200 --duration 800ms --foreground --json

Usa el destino real y las coordenadas de la observación actual. Prefiere unidades de duración explícitas como 800ms; consulta la ayuda de cada comando para conocer sus opciones y requisitos previos.

Solución de problemas

  • Para un error de comando eliminado, usa el reemplazo nombrado por la CLI instalada.
  • Para fallos de host o permisos, inspecciona peekaboo bridge status --json y peekaboo permissions status --json para el host seleccionado.
  • Para fallos de destino, lee la ayuda del comando hoja y obtén un estado actualizado de la UI con see.
  • En macOS 15+, el diálogo privado del selector de ventanas es independiente de la concesión básica de Grabación de Pantalla y puede aparecer incluso cuando los permisos de Bridge son correctos.

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

1password

Set up and use 1Password CLI for sign-in, desktop integration, and reading or injecting secrets.

acp-router

Route plain-language requests for Claude Code, Cursor, Copilot, OpenClaw ACP, OpenCode, Gemini CLI, Qwen, Kiro, Kimi, iFlow, Factory Droid, Kilocode, or explicit ACP harness work into either OpenClaw ACP runtime sessions or direct acpx-driven sessions ("telephone game" flow). For coding-agent thread requests, read this skill first, then use only `sessions_spawn` for thread creation. Codex chat binding defaults to the native Codex app-server plugin unless ACP is explicit or background spawn needs ACP.

add-model-provider

Add and live-prove a model provider with non-interactive config one-liners, without exposing credentials.

agent-transcript

Requested GitHub PR/issue agent transcripts: redact, trim, preview, and insert safely.

apple-notes

Create, view, edit, delete, search, move, or export Apple Notes via the memo CLI on macOS.

apple-reminders

List, add, edit, complete, or delete Apple Reminders and reminder lists via remindctl.

auto-qa

Run OpenClaw-wide autonomous QA and live/stress campaigns across independent subsystem lanes, with verified fixes and a resumable evidence report.

autoreview

Structured code review through the shared OpenClaw agent-skills installation.

bear-notes

Create, search, and manage Bear notes via grizzly CLI.

blacksmith-testbox

Run Blacksmith Testbox for CI-parity checks, secrets, hosted services, migrations, or builds local cannot reproduce.

block-kit

Use proactively for structured or interactive Slack replies, and when asked to author or validate native Slack Block Kit JSON.

blogwatcher

Monitor blogs and RSS/Atom feeds for updates using the blogwatcher CLI.

blucli

BluOS CLI (blu) for discovery, playback, grouping, and volume.

bluebubbles

Send and manage iMessages via BlueBubbles, including attachments, tapbacks, edits, replies, and groups.

browser-automation

Use when controlling web pages with the OpenClaw browser tool, especially multi-step flows, login checks, tab management, or recovery from stale refs/timeouts.

camsnap

Capture frames or clips from RTSP/ONVIF cameras and local webcams, including USB pan/tilt/zoom control.

canvas

Present HTML on connected OpenClaw node canvases, navigate/eval/snapshot, and debug canvas host URLs.

channel-message-flows

Use when running QA Lab channel message flow evidence.

clawdtributor

Clawtributor PRs here, last week or another window: discover conversation refs, recheck GitHub, rank by impact.

clawhub

Search ClawHub for plugins by default, or skills when explicitly requested; install, verify, update, uninstall, publish, or sync skills.

Skills relacionados