Skip to main content
skill Claude Code CX Codex Cursor GitHub Copilot

camsnap — Claude Code skill: what it does, how to install

A skill for snapshots, clips, motion watches, and USB PTZ control across RTSP/ONVIF cameras and local webcams. Use it when an agent needs camera access.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add openclaw/openclaw --skill camsnap -a claude-code
Open on GitHub

What camsnap does

camsnap works with configured RTSP/ONVIF cameras and local webcams. It can discover devices, save snapshots, record clips, and watch for motion with a threshold and an action. Its configuration file is ~/.config/camsnap/config.yaml.

The camsnap binary and ffmpeg on PATH are required. Add a camera with camsnap add, then use camsnap snap, camsnap clip, or camsnap watch; camsnap doctor --probe probes the setup. On macOS, local devices support USB PTZ status, relative moves, home position, and absolute positioning.

PTZ control needs macOS Camera permission because UVC controls are available while a capture session is open. On-camera AI framing can override a manual position. Install this skill when an agent must operate cameras from the command line; skip it for projects with no camera workflow.

What it helps with

  • capture a snapshot from an RTSP camera
  • record a clip for a set duration
  • watch for motion and run an action
  • discover cameras and probe the setup
  • move a USB PTZ camera to a position

Example prompts for the agent

  • Take a snapshot from the `kitchen` camera and save it as `shot.jpg`.
  • Record a `5s` clip from `kitchen` to `clip.mp4`.
  • List the available cameras and check PTZ status for device `0`.

How to install camsnap

1Skills CLI (Vercel)

npx skills add openclaw/openclaw --skill camsnap -a claude-code

2Manually: put the files in place

~/.claude/skills/camsnap/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/camsnap/

From the same set45

The whole set →
summarize openclaw Runs a CLI tool to summarize or transcribe web articles, YouTube videos, podcasts, and local PDF documents directly within your AI assistant. Claude Code CX Codex Cursor +1 26,900installs weather openclaw This skill fetches current conditions and forecasts for a city, region, airport code, or coordinates. Use it to check rain and temperature or plan a trip. Claude Code CX Codex Cursor +1 9,300installs gog openclaw Guides an agent using the gog CLI for Gmail, Calendar, Drive, Contacts, Sheets, and Docs. Use it when Google Workspace tasks need to run from a terminal. Claude Code CX Codex Cursor +1 8,500installs tmux openclaw Lets an agent work with live tmux sessions: read pane output, send keys and text, wait for a prompt line to show up. Claude Code CX Codex Cursor +1 8,400installs openai-whisper openclaw This skill lets your agent call the Whisper CLI to transcribe audio on your own machine. No API key needed. Claude Code CX Codex Cursor +1 7,100installs nano-pdf openclaw Edit PDF pages with plain text instructions through the nano-pdf CLI. Useful when you need to fix a typo or swap a heading without leaving your terminal. Claude Code CX Codex Cursor +1 7,100installs skill-creator openclaw A skill for writing, repairing and reviewing other skills. It splits behaviour into branches, sets the frontmatter and sorts resources into folders. Useful once your skill folder gets crowded. Claude Code CX Codex Cursor +1 6,700installs coding-agent openclaw This skill sends large coding tasks to Codex, Claude Code, or OpenCode as background workers. Use it for refactors, PR reviews, and issue-to-PR work. Claude Code CX Codex Cursor +1 6,500installs

Similar

gh-fix-ci official openai Finds failing GitHub Actions checks on a pull request, inspects logs, and drafts a fix plan. The skill modifies code only after explicit approval. Claude Code CX Codex Cursor +1 11,400installs multi-stage-dockerfile official github This skill guides GitHub Copilot in writing multi-stage Dockerfiles for different languages and frameworks. Use it when the final runtime image should contain fewer build dependencies. GitHub Copilot 29,688installs fix react The skill formats changed files and checks for remaining lint issues before a commit. Use it when code needs to pass CI checks. Claude Code CX Codex Cursor +1 2,300installs wizard Matt Pocock This skill creates an interactive bash wizard for manual setup steps, CI secrets, third-party dashboards, and one-off migrations. Claude Code 553,369installs hyperframes-cli heygen-com Controls HyperFrames video workflows from the CLI: audits layouts and contrast, edits timeline clips, captures snapshots, and renders locally or in cloud runtimes. Claude Code CX Codex Cursor +1 1,200,000installs setup-pre-commit Matt Pocock This skill configures pre-commit checks for a JavaScript repository, running Prettier, type checking, and tests before each commit. Claude Code 489,289installs using-git-worktrees Jesse Vincent Prepares an isolated workspace before feature work or plan execution. It checks the repository first, then uses native worktree support or Git. Claude Code CX Codex 217,153installs finishing-a-development-branch Jesse Vincent This skill checks the test suite and guides branch completion: merge locally, open a Pull Request, or leave the work in place. Claude Code CX Codex 214,439installs

Questions about camsnap

How do I install camsnap in Claude Code?

Run npx skills add openclaw/openclaw --skill camsnap -a claude-code. The skill file is placed at ~/.claude/skills/camsnap/SKILL.md.

What does camsnap do?

camsnap captures snapshots and clips from RTSP/ONVIF cameras and local webcams, watches for motion, and controls USB PTZ cameras.

What does camsnap require?

The camsnap binary and ffmpeg on PATH are required. PTZ control on macOS also needs Camera permission.

Source text

SKILL.md · MIT
---
name: camsnap
description: "Capture frames or clips from RTSP/ONVIF cameras and local webcams, including USB pan/tilt/zoom control."
homepage: https://camsnap.ai
metadata:
  {
    "openclaw":
      {
        "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`

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) and `camsnap ptz home`.

Notes

- Requires `ffmpeg` on PATH.
- Prefer a short test capture before longer clips.
- PTZ needs macOS Camera permission: these cameras only service UVC controls while streaming, so `camsnap` holds 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.

© openclaw · MIT · openclaw/openclaw

See also

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor