{
    "format": "skillpro/v1",
    "skill_id": "openclaw-openclaw-skills-camsnap-skill-md",
    "name": "camsnap",
    "version": "1.0.0",
    "description": "Capture frames or clips from RTSP/ONVIF cameras and local webcams, including USB pan/tilt/zoom control.",
    "category": [
        "开发编程"
    ],
    "trigger_words": [],
    "tags": [
        "web"
    ],
    "source": "DeepseekModel",
    "source_url": "https://deepseekmodel.com/skill?id=openclaw-openclaw-skills-camsnap-skill-md",
    "exported_at": "2026-09-18T02:39:13+08:00",
    "system_prompt": "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\":\"[Truncated]\"},\"install\":[\"[Truncated]\"]}} 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.",
    "model_config": {
        "provider": "deepseek",
        "model": "deepseek-chat",
        "temperature": 0.7,
        "max_tokens": 4096,
        "top_p": 0.9
    },
    "examples": [
        {
            "input": "请用camsnap帮我处理问题",
            "output": "好的，我是camsnap。Capture frames or clips from RTSP/ONVIF cameras and local webcams, including USB pan/tilt/zoom control. 我会根据你的需求提供专业帮助。"
        },
        {
            "input": "介绍一下你的能力",
            "output": "我是camsnap，专注于开发编程领域。Capture frames or clips from RTSP/ONVIF cameras and local webcams, including USB pan/tilt/zoom control."
        }
    ],
    "install_guide": {
        "coze": "在 Coze 平台创建 Bot -> 技能配置 -> 导入此 .skill 文件",
        "dify": "在 Dify 平台创建应用 -> 添加知识库 -> 导入此 .skill 配置",
        "claude": "将 system_prompt 字段内容复制到 Claude 自定义指令中",
        "custom": "将此 .skill 文件加载到你的 AI Agent 框架中，解析 system_prompt 和 model_config 即可使用"
    },
    "scripts": {
        "python": "# camsnap - Python extension\n# Add custom Python logic here\ndef process(input_data):\n    return input_data\n",
        "javascript": "// camsnap - JavaScript extension\n// Add custom JS logic here\nfunction process(inputData) {\n    return inputData;\n}\n"
    },
    "tools": {
        "mcp_servers": [],
        "api_endpoints": []
    },
    "dependencies": {
        "python": [],
        "node": []
    },
    "hooks": {
        "on_load": "echo \"Skill loaded: camsnap\"",
        "on_call": "",
        "on_error": "echo \"Skill error: please check logs\""
    }
}