Communityコーディング&開発github.com

Peekaboo

macOS UIをキャプチャし、Peekaboo CLIで自動化します。

Peekaboo とは?

Peekabooは、macOSのUIを検査・操作・検証するためのCLIツールです。開発者はアプリケーションのUI要素を取得し、クリック、キー入力、スクロールなどの操作を自動化できます。OpenClawブリッジを介して動作し、Computer Controlが有効な環境でPeekaboo Bridgeホストと通信します。v4ではコマンド体系が刷新され、`app list`、`see`、`press`、`drag`などのサブコマンドが導入されました。このツールは、UIテストの自動化、スクリーンショットの取得、アクセシビリティ要素を活用した正確なターゲット指定に特に有用で、macOS 15+のプライベートウィンドウピッカー権限にも対応しています。コマンドはすべて`--json`オプションで構造化出力をサポートし、スクリプトとの連携が容易です。

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

Installed? Explore more コーディング&開発 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Peekaboo は何をしますか?

Peekabooを使用してmacOS UIを検査し、目的のターゲットに対して操作を行い、結果を検証します。 以下の例はv4構文を使用しています。peekaboo --versionおよびインストール済みコマンドの--helpを確認してください。古いバージョンの場合は、そのバージョンのヘルプに従ってください。

OpenClaw Bridge

OpenClaw macOSアプリは、Computer Controlが有効で、そのプロバイダーがPeekabooであり、Peekaboo Bridgeが有効な場合にPeekaboo Bridgeをホストします。そのホスト経由で実行する場合は、既存のOpenClawソケット選択を維持してください。

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

選択したホストとソケットが意図したものであることを確認してください。明示的なPEEKABOO_BRIDGE_SOCKETまたは--bridge-socketの選択は維持してください。必要なホストが利用できない場合はその結果を報告し、コマンドを成功させるために選択をクリアしたりComputer Controlプロバイダーを切り替えたりしないでください。

権限は、操作を実行するプロセスまたはBridgeホストに属します。呼び出し元が必要な権限を持っていない限り、--no-remoteを渡さないでください。

インストール済みコマンドの確認

フラグやターゲット要件については、コマンド間でフラグをコピーするのではなく、各リーフコマンドのヘルプを使用してください。利用可能なコマンドを知るにはルートヘルプを使用します。

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

V4では以下の古いコマンドルートが削除されました。

古いコマンドV4のコマンド
list appsapp list
imagesee --no-elements(要素検出なしのピクセル取得用)
hotkeypress(cmd+shift+tなどのコードを使用)
swipedrag --from … --to …

その他の操作(クリック、タイピング、スクロール、ウィンドウやメニューの管理を含む)については、peekaboo <command> --helpを使用してください。コマンドオプションはリーフコマンドの後に配置し、--jsonは構造化出力を要求します。

検査、操作、検証

アプリケーションのインベントリとターゲットの最新ビューから始めます。

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

操作前に返された要素を読み取ってください。操作は意図したアプリ、ウィンドウ、最新のスナップショットに結びつけて行い、古いexample要素IDを再利用しないでください。操作後は再度UIを検査し、要求された結果を確認してください。ウィンドウが変更されたり、ターゲットが古くなったりした場合は、観測を更新してください。

要素検出なしのスクリーンショットの場合:

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

生のキーボードコードは、明示的なフォアグラウンド操作、またはpressが受け付ける新しい正確なウィンドウ受信を必要とします。ドラッグは常に共有カーソルを移動し、--foregroundを必要とします。フォアグラウンド操作が許可されている場合:

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

現在の観測から実際のターゲットと座標を使用してください。800msのような明示的な時間単位を推奨します。各コマンドのオプションと前提条件については、そのコマンドのヘルプを参照してください。

トラブルシューティング

  • 削除されたコマンドのエラーについては、インストールされたCLIによって示されている置き換えコマンドを使用してください。
  • ホストまたは権限の失敗については、選択したホストのpeekaboo bridge status --jsonとpeekaboo permissions status --jsonを確認してください。
  • ターゲティングの失敗については、リーフコマンドのヘルプを読み、seeで新しいUI状態を取得してください。
  • macOS 15+では、プライベートウィンドウピッカープロンプトは基本の画面収録許可とは別になっており、Bridgeの権限が正しい場合でも表示されることがあります。

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, Grok Build, 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.

関連スキル