home / skills / openclaw / skills / camsnap

camsnap skill

/skills/steipete/camsnap

This skill captures snapshots, clips, and motion events from RTSP/ONVIF cameras for quick surveillance and archival review.

npx playbooks add skill openclaw/skills --skill camsnap

Review the files below or copy the command above to add this skill to your agents.

Files (2)
SKILL.md
898 B
---
name: camsnap
description: Capture frames or clips from RTSP/ONVIF cameras.
homepage: https://camsnap.ai
metadata: {"clawdbot":{"emoji":"📸","requires":{"bins":["camsnap"]},"install":[{"id":"brew","kind":"brew","formula":"steipete/tap/camsnap","bins":["camsnap"],"label":"Install camsnap (brew)"}]}}
---

# camsnap

Use `camsnap` to grab snapshots, clips, or motion events from configured cameras.

Setup
- Config file: `~/.config/camsnap/config.yaml`
- Add camera: `camsnap add --name kitchen --host 192.168.0.10 --user user --pass pass`

Common commands
- Discover: `camsnap discover --info`
- Snapshot: `camsnap snap kitchen --out shot.jpg`
- Clip: `camsnap clip kitchen --dur 5s --out clip.mp4`
- Motion watch: `camsnap watch kitchen --threshold 0.2 --action '...'`
- Doctor: `camsnap doctor --probe`

Notes
- Requires `ffmpeg` on PATH.
- Prefer a short test capture before longer clips.

Overview

This skill captures still frames, short video clips, or motion-triggered events from RTSP/ONVIF cameras. It manages camera entries, runs discovery, and executes quick snapshot or clip captures for troubleshooting, monitoring, or archiving. The tool is lightweight and designed for local use with ffmpeg available on the system path.

How this skill works

camsnap reads camera configuration from a user config file and connects over RTSP or ONVIF to request frames or record segments. It delegates media handling to ffmpeg for snapshot and clip creation, and can stream frames to a motion detector to trigger actions. Commands are simple CLI invocations for discovery, one-off captures, continuous motion watching, and diagnostic checks.

When to use it

  • Quickly capture a frame for a camera health check or to verify framing
  • Record short clips for evidence or to sample camera quality and bitrate
  • Watch for motion and run automated actions when movement exceeds a threshold
  • Discover cameras on the local network and inspect their connection details
  • Run diagnostics to check ffmpeg compatibility and probe camera streams

Best practices

  • Install ffmpeg and ensure it is on the system PATH before using camsnap
  • Add each camera to the config file with a clear name for easy CLI use
  • Run a short test capture before scheduling longer recordings to confirm settings
  • Use conservative clip durations and appropriate thresholds to reduce storage use
  • Secure stored credentials and run camsnap on a trusted local machine

Example use cases

  • snap kitchen --out shot.jpg to grab a quick image for placement or lighting checks
  • clip frontdoor --dur 10s --out event.mp4 to record a delivery or visitor
  • watch garage --threshold 0.3 --action 'curl http://host/event' to trigger an alert on motion
  • discover --info to find new IP cameras and retrieve stream endpoints
  • doctor --probe to validate stream access and ffmpeg compatibility before deployment

FAQ

What dependencies are required?

ffmpeg must be installed and available on the PATH; camsnap relies on it for capture and encoding.

Where are cameras configured?

Cameras are stored in ~/.config/camsnap/config.yaml; add cameras with the add command or edit the file directly.