capture

A Peekaboo command for capturing live screens, windows, regions, or existing video, with selected frames, contact sheets, and metadata.

In plain words
What is it for?
Use it to capture screen activity, record what happens during an action, inspect video at sampled intervals, or produce PNG frames and capture reports.
Why use it?
It records useful visual evidence while filtering out unchanged frames and keeping information about how the capture was made.

Command

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add commands/openclaw/peekaboo/capture
Clone the repo
git clone --depth 1 https://github.com/openclaw/Peekaboo
Per session 0 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 3,577 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00000 $0.03577
Opus 5 $0.00000 $0.01788
Sonnet 5 $0.00000 $0.00715
Haiku 4.5 $0.00000 $0.00358

Measured yesterday against content hash fe8a75e986a4, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

capture scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

docs/commands/capture.md · 167 lines

How it starts

The opening of the file, as written. The whole thing — 167 lines — stays where its author put it; the contents beside it link to each section on GitHub.

peekaboo capture

capture replaces watch as the unified long-running capture tool. It has three subcommands:

  • capture live — adaptive PNG burst capture of screens/windows/regions with idle/active FPS, diff-based frame keeping, contact sheet, and metadata.
  • capture action — start adaptive live capture, run a child command, keep post-roll, stop early, and validate output artifacts.
  • capture video — ingest an existing video, sample frames (by FPS or interval), optionally skip diff filtering, and emit the same outputs.

The MCP capture tool exposes the live and video forms. Arbitrary child execution in capture action remains CLI-only. MCP arguments use snake_case names such as duration_seconds, active_fps, threshold_percent, output_dir, and video_out.

capture live is the only spelling for live capture.

Common Outputs

  • PNG frames (kept frames only)
  • contact.png contact sheet
  • metadata.json (CaptureResult) with stats, warnings, grid info, and source (live|video)
  • action.json for capture action, with the action timeline/result, capture route and authenticated host identity, actual retained-frame engines, and hashes for every published artifact
  • Optional MP4 (--video-out) built from kept frames

Each retained frame and contact sheet carries the SHA-256 of the exact PNG bytes written by the capture session. Before success, Peekaboo revalidates those digests, complete PNG decoding, contact-sheet dimensions, and an exact semantic round-trip of metadata.json. A child command cannot replace capture-owned files with merely nonempty data.

For diff-filtered captures, each retained frame's changePercent and motionBoxes compare it with the previous retained frame, not with an internal sample that was dropped. This keeps heartbeat metadata truthful when a small visible edit stayed below the motion threshold; the edit remains a heartbeat, but reports its nonzero retained delta. Equal-size samples retain the configured threshold and cadence behavior. When the luma geometry changes after a window, region, or display resize, Peekaboo treats the current frame as a 100% full-frame change because the old coordinates are not comparable; that frame enters active sampling and its saved motion box covers the current frame.

Read the full file on GitHub · 167 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday First seen · 167 lines · 0 tokens per session scan A fe8a75e986a4

Subscribe to this mod's changes

capture is a command published in the GitHub repository openclaw/Peekaboo (5,088 stars, last pushed today), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 3,577 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.