Skip to content
Back to skills

Peekaboo

ASecurity

macOS screenshots, UI inspection, clicks, typing, app/window automation via Peekaboo.

  • 10 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 10, 2026
ai-agentsbashgit

Works with

  • cli

Security analysis

A100/100

Scanned October 10, 2026

npx -y skills add mouadja02/skills --skill peekaboo --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Peekaboo?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Peekaboo
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/mouadja02-peekaboo/badge)](https://www.skillsdirectory.com/skills/mouadja02-peekaboo)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: peekaboo
description: "macOS screenshots, UI inspection, clicks, typing, app/window automation via Peekaboo."
source: "https://github.com/steipete/agent-scripts"
attribution: "steipete/agent-scripts by Peter Steinberger"
version: "1.0.0"
platform: macos
---

# Peekaboo

> **Attribution:** Sourced from [steipete/agent-scripts](https://github.com/steipete/agent-scripts) by [Peter Steinberger](https://github.com/steipete).

Use for macOS screen capture, UI inspection, and GUI automation.

## Binary

- Check first: `peekaboo --version`.
- Prefer `~/bin/peekaboo` when present (local release copy), else `peekaboo`.

## Safety

- Check permissions before capture/automation: `peekaboo permissions status --json`.
- Screenshot needs Screen Recording; clicks/typing/window control need Accessibility.
- Do not click/type/destructively automate unless user asked or target is a controlled test.

## Common Commands

```bash
PB="${PEEKABOO_BIN:-$HOME/bin/peekaboo}"
[ -x "$PB" ] || PB="$(command -v peekaboo)"

# Check permissions
"$PB" permissions status --json

# List screens and apps
"$PB" list screens --json
"$PB" list apps --json
"$PB" list windows --app Safari --json

# Screenshots
"$PB" image --mode screen --screen-index 0 --path /tmp/screen.png --json
"$PB" see --app frontmost --path /tmp/frontmost.png --json --annotate

# Automation
"$PB" click --coords 100,100 --json
"$PB" type "text" --json

# Discovery
"$PB" tools --json
"$PB" learn
```

## Workflow

1. Resolve binary and confirm version.
2. Run `permissions status --json`; if missing TCC, report exact missing grant.
3. For screenshots, use `image`; include `--path`, `--json`, and usually `--no-remote`.
4. For element targeting, run `see --json --annotate`, then click by element id/snapshot.
5. Verify output files with `sips -g pixelWidth -g pixelHeight <path>` or view the image.

## TCC Requirements

| Task | Permission needed |
|------|-------------------|
| Screen capture | Screen Recording |
| Click / type | Accessibility |
| Window list | Accessibility |
| App list | None |

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…