Capture frames or clips from RTSP/ONVIF cameras and local webcams, including USB pan/tilt/zoom control.
Install
npx skills add https://github.com/openclaw/openclaw --skill camsnapSKILL.md
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
Local webcams (macOS)
- List devices:
camsnap devices - Snapshot from a local camera:
camsnap snap --device 0 --out webcam.jpg - PTZ position and ranges:
camsnap ptz status --device 0 - Move a gimbal camera:
camsnap ptz goto --device 0 --pan 45 --tilt -18 - Also
camsnap ptz move(relative deltas) andcamsnap ptz home.
Notes
- Requires
ffmpegon PATH. - Prefer a short test capture before longer clips.
- PTZ needs macOS Camera permission: these cameras only service UVC controls while streaming, so
camsnapholds a capture session open for the operation. - Motion commands verify the settled position and exit non-zero if the camera did not reach it. On-camera AI framing can override manual positioning; disable tracking if moves keep missing.
Related skills
video-editgenmedia-labs715KEdit existing video on RunComfy ā this skill is a smart router that matches the user's intent to the right edit model in the RunComfy catalog. Picks Wan 2.7 Edit-Video (general restyle / background swap / packaging swap, identity + motion preservation), Kling 2.6 Pro Motion Control (transfer precise motion from a reference video to a target character), or Lucy Edit Restyle (lightweight identity-stable restyle / outfit swap). Bundles each model's documented prompting patterns so the skill gets shai-video-generationgenmedia-labs714KGenerate AI videos on RunComfy via the `runcomfy` CLI ā a smart router across the full video-model catalog: HappyHorse 1.0 (Arena #1, native in-pass audio), Wan-AI Wan 2-7 (open weights, audio-driven lip-sync), ByteDance Seedance v2 / 1-5 / 1-0 (multi-modal cinematic), Kling 3.0 / 2-6, Google Veo 3-1, MiniMax Hailuo 2-3, ByteDance Dreamina 3-0. Covers text-to-video (t2v), image-to-video (i2v), and Veo's video-extend endpoint. The skill picks the right model for the user's intent (Arena-#1 qualitai-musicgenmedia-labs714KGenerate AI music on RunComfy via the `runcomfy` CLI ā a smart router across the music-model catalog. Routes to ElevenLabs AI Music Generation (premium 44.1 kHz stereo vocal tracks, 5 sā5 min, $0.0083/s) and ACE Step / ACE Step 1.5 (StepFun-AI open-weights, tag-driven composition, multilingual lyrics, $0.0002ā0.0003/s, ~27Ć cheaper), plus ACE Step audio-inpaint (regenerate a time range inside an existing track) and ACE Step audio-outpaint (extend a track before or after). Picks the right model fimage-to-videogenmedia-labs713KAnimate any still image on RunComfy ā this skill is a smart router that matches the user's intent to the right i2v model in the RunComfy catalog. Picks HappyHorse 1.0 I2V (Arena #1, native audio, identity preservation) for general animations, Wan 2.7 with `audio_url` for custom-voiceover lip-sync, or Seedance 2.0 Pro for multi-modal animation from image + reference video + reference audio. Bundles each model's documented prompting patterns so the caller gets sharper output without burning iterat