mcpField
P
peekaboo

peekaboo

github.com/openclawAgent 工作流393.3k6.1k 次安装今天更新
代码仓库

关于 peekaboo

Peekaboo 是一项 Agent 技能,可通过 Peekaboo CLI 检查和操作 macOS 界面。它强调针对指定应用执行操作,并在操作后检查界面状态。

主要功能

  1. 01列出应用并检查界面元素
  2. 02拍摄带或不带元素检测的屏幕截图
  3. 03使用键盘和拖动命令操作应用
  4. 04检查 Bridge 状态和权限
  5. 05操作前刷新界面观察

适用场景

  1. 01操作前检查指定应用窗口
  2. 02自动执行界面任务并验证结果
  3. 03排查目标定位或权限故障

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/openclaw/openclaw --skill peekaboo

安装后在 Claude Code 中输入/peekaboo确认已加载。

详细介绍

Peekaboo

使用 Peekaboo 检查 macOS UI、对预期目标执行操作并验证结果。 以下示例使用 v4 语法。检查 peekaboo --version 和已安装 命令的 --help;对于较旧版本,请遵循该版本的帮助。

OpenClaw Bridge

启用 Computer Control 时,OpenClaw macOS 应用会承载 Peekaboo Bridge, 但其提供商必须为 Peekaboo 且 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

读取返回的元素后再执行操作。确保操作与指定的应用、 窗口和最新快照相对应;不要重用示例中的元素 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+ 上,私有窗口选择器提示独立于基础的 Screen Recording 授权,即使 Bridge 权限正确,也可能会出现。

评论

支持 Markdown