躲猫猫🫣 - Mac自动化,可以看到屏幕并进行点击。
](https://www.npmjs.com/package/@steipete/peekaboo)  [![macOS 15.0+ (Sequoia)]()](https://www.apple.com/macos/)  ](https://nodejs.org/) ](https://github.com/steipete/peekaboo/releases/latest)  
Peekaboo为macOS带来了高保真的屏幕截图、人工智能分析和完整的GUI自动化。版本3在CLI和MCP服务器上添加了本机代理流和多屏幕自动化。
你得到了什么
- 像素精确捕捉(窗口、屏幕、菜单栏),可选Retina 2x缩放。
- 链接Peekaboo工具的自然语言代理(参见、单击、键入、滚动、热键、菜单、窗口、应用程序、dock、空格)。
- 动作优先的UI自动化,用于日常点击/滚动,并为需要的应用程序提供合成输入回退。
- 可设置值和命名操作的直接访问工具(
set-value,perform-action). - 使用结构化JSON发现菜单和菜单栏;无需点击。
- 多供应商AI:GPT-5.1系列、Claude 4.x、Grok 4-fast(视觉)、Gemini 2.5和当地Olama型号。
- 用于Codex、Claude Code和Cursor的MCP服务器以及本地CLI;两者都使用相同的工具。
- 可配置、可测试的工作流程,具有可重复的会话和严格的打字。
- 需要macOS屏幕录制+辅助功能权限(请参阅 docs/permissions.md).
安装
- macOS应用程序+命令行界面(Homebrew):
brew install steipete/tap/peekaboo- MCP服务器(节点22+,无需全局安装):
npx -y @steipete/peekaboo快速开始
# Capture full screen at Retina scale and save to Desktop
peekaboo image --mode screen --retina --path ~/Desktop/screen.png
# Click a button by label (captures, resolves, and clicks in one go)
peekaboo see --app Safari --json | jq -r '.data.snapshot_id' | read SNAPSHOT
peekaboo click --on "Reload this page" --snapshot "$SNAPSHOT"
# Directly set a text field value when the accessibility value is settable
peekaboo set-value --on T1 --value "hello" --snapshot "$SNAPSHOT"
# Invoke a named accessibility action on an element
peekaboo perform-action --on B1 --action AXPress --snapshot "$SNAPSHOT"
# Run a natural-language automation
peekaboo agent "Open Notes and create a TODO list with three items"
# Run as an MCP server (Codex, Claude Code, Cursor)
npx -y @steipete/peekaboo
# Minimal MCP client config snippet:
# {
# "mcpServers": {
# "peekaboo": {
# "command": "npx",
# "args": ["-y", "@steipete/peekaboo"],
# "env": {
# "PEEKABOO_AI_PROVIDERS": "openai/gpt-5.5,anthropic/claude-opus-4-7"
# }
# }
# }
# }壳体完井
Peekaboo可以直接从同一个Commander生成shell本地补全 支持CLI帮助和文档的元数据:
# Current shell (recommended)
eval "$(peekaboo completions $SHELL)"
# Explicit shells
eval "$(peekaboo completions zsh)"
eval "$(peekaboo completions bash)"
peekaboo completions fish | source有关持久设置和故障排除,请参阅 docs/commands/completions.md.
| 命令 | 关键标志/子命令 | 它的作用 |
|---|---|---|
| 看见 | --app, --mode screen/window, --retina, --json | 捕获并注释UI,返回快照+元素ID |
| 点击 | --on , --snapshot, --wait-for, --coords | 按元素ID、标签或坐标单击 |
| 类型 | --text, --clear, --profile, --delay | 输入带有步调选项的文本 |
| 设定值 | --on , --value, --snapshot | 直接设置可设置的可访问性值 |
| 执行操作 | --on , --action, --snapshot | 调用命名的可访问性操作 |
| 按 | 密钥名称, --count, --delay, --hold | 特殊按键和序列 |
| 快捷键 | 组合像 cmd,shift,t | 修改器组合(cmd/ctrl/alt/shift) |
| 滚动 | --on , --direction up/down, --amount | 滚动视图或元素 |
| 滑动 | --from/--to, --duration, --steps | 流畅的手势风格拖动 |
| 拖拽 | --from/--to、修改器、Dock/Trash目标 | 在元素/坐标之间拖放 |
| 移动 | --to , --screen-index | 定位光标而不单击 |
| 窗口 | list, move, resize, focus, set-bounds | 移动/调整大小/聚焦窗口和空间 |
| 应用 | launch, quit, relaunch, switch, list | 启动、退出、重新启动、切换应用程序 |
| 空间 | list, switch, move-window | 列出或切换macOS空间 |
| 菜单 | list, list-all, click, click-extra | 列出/点击应用程序菜单和附加功能 |
| 菜单栏 | list, click | 按名称/索引定位状态栏项目 |
| 码头 | launch, right-click, hide, show, list | 与Dock项目交互 |
| 对话 | list, click, input, file, dismiss | 驱动系统对话框(打开/保存等) |
| 图像 | --mode screen/window/menu, --retina, --analyze | 屏幕截图/窗口/菜单栏(+分析) |
| 列表 | apps, windows, screens, menubar, permissions | 枚举应用程序、窗口、屏幕、权限 |
| 工具 | --verbose, --json, --no-sort | 检查本地Peekaboo工具 |
| 补全 | [shell] | 从Commander元数据生成zsh/bash/fish完成脚本 |
| 配置 | init, show, add, login, models | 管理凭据/提供商/设置 |
| 权限 | status, grant | 检查/授予所需的macOS权限 |
| 跑 | .peekaboo.json, --output, --no-fail-fast | 执行 .peekaboo.json 自动化脚本 |
| 睡眠 | --duration (ms) | 步骤之间的毫秒延迟 |
| 清洁 | --all-snapshots, --older-than, --snapshot | 修剪快照和缓存 |
| 代理 | --model, --dry-run, --resume, --max-steps,audio | 自然语言多步自动化 |
| 主控程序 | serve (默认) | 将Peekaboo作为MCP服务器运行 |
模型和提供商
- OpenAI:GPT-5.1(默认)和GPT-4.1/4o视觉
- 人物肖像:克劳德4.x
- xAI:Grok 4快速推理+视觉
- 谷歌:双子座2.5(pro/flash)
- 当地:Ollama(电话3.3、Llava等)
通过设置提供者 PEEKABOO_AI_PROVIDERS 或 peekaboo config add.
了解更多
- 命令参考: 文档/命令/
- 架构: docs/ARCHITECTURE.md
- 从源头构建: docs/building.md
- 测试指南: docs/tests/tools.md
- MCP设置: docs/commands/mcp.md
- 权限: docs/permissions.md
- Ollama/当地车型: docs/ollama.md
- 代理聊天循环: docs/agent-chat.md
- 服务API参考: docs/service-api-reference.md
社区
开发基础
- 要求:macOS 15+,Xcode 16+/Swift 6.2。仅当您运行pnpm-docs/build-helper脚本时,才支持Node22+(核心CLI/app/MCP仅支持Swift)。
- 安装deps:
pnpm install然后pnpm run build:cli或pnpm run test:safe. - 棉绒/格式:
pnpm run lint && pnpm run format.
许可证
麻省理工学院
