Clawdbot Skills

CamSnap Skill - RTSP/ONVIFカメラからのスナップショット・動画クリップ取得を実現するClawdbot拡張機能

Clawdbot向けCamSnap Skillを利用して、RTSP/ONVIFカメラからのスナップショット、動画クリップ、モーション検知機能をコマンドラインから実現する方法を解説します。

投稿者: AI Tools Hub
Clawdbot CamSnap RTSP ONVIF 監視カメラ CLI FFmpeg モーション検知

CamSnap Skill - RTSP/ONVIFカメラからのスナップショット・動画クリップ取得を実現するClawdbot拡張機能

Clawdbot向けのCamSnap Skillが提供するcamsnapコマンドにより、RTSP/ONVIFプロトコル対応の監視カメラから静止画スナップショット、動画クリップ、モーション検知イベントを取得できる。本スキルは、ネットワークカメラの自動検出、認証管理、FFmpegによるメディア処理機能を提供する。

概要

CamSnap Skillは、RTSP(Real Time Streaming Protocol)およびONVIF(Open Network Video Interface Forum)規格に対応した監視カメラを対象とした制御ツールである。Clawdbotのスキルシステムに統合されており、AIエージェントが自然言語指示からカメラ映像を取得できる仕組みを提供する。

公式サイト(https://camsnap.ai)によれば、本ツールはHomebrewパッケージとして配布されており、FFmpegを内部的に使用してメディア処理を実行する設計となっている。

技術的仕様

システム要件

  • macOS、Linux、またはWindows(WSL2推奨)
  • FFmpegバイナリ(PATH環境変数に設定済み)
  • camsnapバイナリ(Homebrew経由でインストール)
  • ネットワーク上にRTSP/ONVIFカメラが存在すること

インストール方法

Clawdbot環境では、以下のコマンドでインストールが実行される。

brew install steipete/tap/camsnap

インストール後、camsnapコマンドがシステムPATHに追加される。

設定ファイル

カメラ情報は~/.config/camsnap/config.yamlに保存される。

cameras:
  - name: kitchen
    host: 192.168.0.10
    username: user
    password: pass
  - name: front-door
    host: 192.168.0.11
    username: admin
    password: admin123

主要機能

1. カメラ検出

ネットワーク上のONVIF対応カメラを自動検出する。

camsnap discover --info

出力例:

Discovered: 192.168.0.10 (Manufacturer: Hikvision, Model: DS-2CD2143G0-I)
Discovered: 192.168.0.11 (Manufacturer: Axis, Model: M3045-V)

2. カメラ追加

設定ファイルに新規カメラを追加する。

camsnap add --name kitchen --host 192.168.0.10 --user user --pass pass

3. スナップショット取得

指定カメラから静止画を取得する。

camsnap snap kitchen --out shot.jpg

出力形式: JPEG(デフォルト)、PNG(オプション指定可能)

4. 動画クリップ取得

指定期間の動画クリップを録画する。

camsnap clip kitchen --dur 5s --out clip.mp4

サポートされる期間指定:

  • 5s: 5秒
  • 1m: 1分
  • 10m: 10分

5. モーション検知

モーション検知イベントを監視し、トリガー時にアクションを実行する。

camsnap watch kitchen --threshold 0.2 --action 'notify-send "Motion detected"'

パラメータ:

  • --threshold: モーション検知感度(0.0~1.0、デフォルト0.2)
  • --action: トリガー時に実行するコマンド

6. 診断機能

カメラ接続とストリーム情報を診断する。

camsnap doctor --probe

出力内容:

  • RTSP接続状態
  • ストリームコーデック情報
  • 解像度・フレームレート

実装例

例1: 複数カメラの一括スナップショット

#!/bin/bash
# 全カメラから現在の映像を取得

TIMESTAMP=$(date +%Y%m%d_%H%M%S)
for camera in kitchen front-door garage; do
  camsnap snap "$camera" --out "${camera}_${TIMESTAMP}.jpg"
done

例2: モーション検知時の自動録画

#!/bin/bash
# モーション検知時に10秒間録画してクラウドにアップロード

camsnap watch front-door --threshold 0.3 --action 'camsnap clip front-door --dur 10s --out /tmp/motion.mp4 && aws s3 cp /tmp/motion.mp4 s3://my-bucket/security/'

例3: 定期的なスナップショット取得(Cronジョブ)

# crontab -e に追加
# 毎時0分にキッチンカメラのスナップショットを取得

0 * * * * /usr/local/bin/camsnap snap kitchen --out /var/log/kitchen/$(date +\%Y\%m\%d_\%H00).jpg

例4: ストリーム品質の確認

#!/bin/bash
# カメラのストリーム情報を取得してログに記録

camsnap doctor --probe > /var/log/camsnap/diagnostics_$(date +%Y%m%d).log

例5: Node.js連携による画像解析

const { exec } = require('child_process');
const fs = require('fs');

// カメラから画像取得
exec('camsnap snap front-door --out /tmp/snap.jpg', (error, stdout, stderr) => {
  if (error) {
    console.error(`Error: ${error.message}`);
    return;
  }
  
  // 画像をBase64エンコードしてAPI送信
  const imageBuffer = fs.readFileSync('/tmp/snap.jpg');
  const base64Image = imageBuffer.toString('base64');
  
  // Claude APIで画像解析(例)
  // analyzeImage(base64Image);
});

ユースケース

1. AIエージェントによる監視

Clawdbotエージェントが「玄関のカメラ映像を確認して」という自然言語指示を受け取り、スナップショットを自動取得・表示する環境を構築できる。

2. セキュリティイベント記録

モーション検知機能と連携し、不審な動きを検知した際に自動的に動画クリップを記録・通知する仕組みを実現する。

3. タイムラプス生成

定期的にスナップショットを取得し、FFmpegで結合してタイムラプス動画を生成する。

4. クラウド連携監視システム

取得した映像をAWS S3、Google Cloud Storage、Azure Blob Storageに自動アップロードし、長期保存・分析基盤を構築する。

制限事項・セキュリティ考慮事項

制限事項

  1. FFmpeg依存: FFmpegがシステムPATHに存在しない場合、動作しない
  2. プロトコル制限: RTSP/ONVIF非対応のカメラ(独自プロトコル使用)は利用不可
  3. ネットワーク帯域: 高解像度カメラからの長時間クリップ取得は帯域を消費する
  4. 同時接続数: 一部カメラは同時接続数制限があり、複数クライアントからのアクセスで接続失敗する可能性がある

セキュリティ考慮事項

  1. 認証情報の保管: ~/.config/camsnap/config.yamlに平文パスワードが保存されるため、ファイルパーミッションを600に設定すること

    chmod 600 ~/.config/camsnap/config.yaml
  2. RTSP通信の暗号化: 標準RTSPは非暗号化通信のため、盗聴リスクがある。RTSPS(RTSP over TLS)対応カメラの使用を推奨

  3. カメラファームウェア: 古いファームウェアには既知の脆弱性が存在する可能性があるため、定期的な更新が必要

  4. ネットワーク分離: 監視カメラを専用VLANに配置し、インターネットからの直接アクセスを制限することを推奨

参考リンク


本記事の情報は2026年2月15日時点のものです。CamSnap Skillの機能、コマンド仕様、インストール方法は変更される可能性があります。最新情報は公式サイトおよびGitHubリポジトリをご確認ください。

この記事をシェア

人気記事

Comparison

ChatGPT(OpenAI)とClaude(Anthropic)の機能比較 2026年版。コーディング・長文解析・コスト・API料金の違いを検証

ChatGPT(GPT-4o/o3)とClaude(Sonnet 4.6/Opus 4.5)を2026年時点の最新情報で比較する。コーディング能力、長文処理、日本語品質、API料金、無料プランの違いをSWE-benchなどのベンチマーク結果とともに解説する。

続きを読む →
opinion

【2026年2月20日 所感】「AIがコードを書く」は仮説から現実になった——しかし私たちはその意味をまだ消化できていない

2026年2月20日に観測したコーディングエージェント関連ニュースの総括と所感。Anthropicの自律性研究、cmux、MJ Rathbunのエージェント事故、HN「外骨格 vs チーム」論争、Stripe Minions週1000件PR、Taalas 17k tokens/sec——朝から夜までの流れを通じて見えてきた「AIがコードを書く時代」の実相を考察する。

続きを読む →
tool

868のスキルをnpx 1コマンドで——「Antigravity Awesome Skills」が主要AIコーディングエージェントの共通スキル基盤になりつつある

Claude Code・Gemini CLI・Codex CLI・Cursor・GitHub Copilotなど主要AIコーディングアシスタントを横断する868以上のスキルライブラリ「Antigravity Awesome Skills」(v5.4.0)を詳細分析。Anthropic・Vercel・OpenAI・Supabase・Microsoftの公式スキルを統合した設計思想、ロール別バンドル・ワークフロー機能、SKILL.mdによる相互運用性のアーキテクチャを解説する。

続きを読む →

他のAIツールも探す

生産性、創造性、イノベーションのための60以上のAIツールの厳選ディレクトリをご覧ください。

0 tools selected