CamSnap Skill - RTSP/ONVIFカメラからのスナップショット・動画クリップ取得を実現するClawdbot拡張機能
Clawdbot向けCamSnap Skillを利用して、RTSP/ONVIFカメラからのスナップショット、動画クリップ、モーション検知機能をコマンドラインから実現する方法を解説します。
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に自動アップロードし、長期保存・分析基盤を構築する。
制限事項・セキュリティ考慮事項
制限事項
- FFmpeg依存: FFmpegがシステムPATHに存在しない場合、動作しない
- プロトコル制限: RTSP/ONVIF非対応のカメラ(独自プロトコル使用)は利用不可
- ネットワーク帯域: 高解像度カメラからの長時間クリップ取得は帯域を消費する
- 同時接続数: 一部カメラは同時接続数制限があり、複数クライアントからのアクセスで接続失敗する可能性がある
セキュリティ考慮事項
-
認証情報の保管:
~/.config/camsnap/config.yamlに平文パスワードが保存されるため、ファイルパーミッションを600に設定することchmod 600 ~/.config/camsnap/config.yaml -
RTSP通信の暗号化: 標準RTSPは非暗号化通信のため、盗聴リスクがある。RTSPS(RTSP over TLS)対応カメラの使用を推奨
-
カメラファームウェア: 古いファームウェアには既知の脆弱性が存在する可能性があるため、定期的な更新が必要
-
ネットワーク分離: 監視カメラを専用VLANに配置し、インターネットからの直接アクセスを制限することを推奨
参考リンク
- CamSnap公式サイト: https://camsnap.ai
- CamSnap GitHubリポジトリ: https://github.com/steipete/camsnap
- ONVIF公式サイト: https://www.onvif.org/
- FFmpeg公式サイト: https://ffmpeg.org/
- Clawdbot公式サイト: https://clawdbot.io/
本記事の情報は2026年2月15日時点のものです。CamSnap Skillの機能、コマンド仕様、インストール方法は変更される可能性があります。最新情報は公式サイトおよびGitHubリポジトリをご確認ください。
関連記事
ClawdHub Skill - Clawdbotスキル管理を効率化
ClawdHub CLIを利用して、Clawdbotスキルの検索、インストール、更新、公開を効率化する方法を解説します。
Spotify Player Skill - ターミナルベースのSpotify再生・検索機能をClawdbotに統合
Clawdbot向けSpotify Player Skillを利用して、spogoまたはspotify_playerを通じたターミナルベースのSpotify制御を実現する方法を解説します。
OpenAI Whisper Skill - ローカル音声認識をClawdbotに統合
Clawdbot向けOpenAI Whisper Skillを利用して、APIキー不要のローカル音声認識による文字起こし・翻訳機能を実現する方法を解説します。
人気記事
ChatGPT(OpenAI)とClaude(Anthropic)の機能比較 2026年版。コーディング・長文解析・コスト・API料金の違いを検証
ChatGPT(GPT-4o/o3)とClaude(Sonnet 4.6/Opus 4.5)を2026年時点の最新情報で比較する。コーディング能力、長文処理、日本語品質、API料金、無料プランの違いをSWE-benchなどのベンチマーク結果とともに解説する。
【2026年2月20日 所感】「AIがコードを書く」は仮説から現実になった——しかし私たちはその意味をまだ消化できていない
2026年2月20日に観測したコーディングエージェント関連ニュースの総括と所感。Anthropicの自律性研究、cmux、MJ Rathbunのエージェント事故、HN「外骨格 vs チーム」論争、Stripe Minions週1000件PR、Taalas 17k tokens/sec——朝から夜までの流れを通じて見えてきた「AIがコードを書く時代」の実相を考察する。
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エージェント間通信の標準化競争が始まる——AquaとAgent Semantic Protocolが同日登場
2026年2月23日、Hacker Newsに2つのAIエージェント通信プロジェクトが同日掲載された。Go製CLI「Aqua」とセマンティックルーティングを実装する「Agent Semantic Protocol」は、MCPが解決できないP2P・非同期通信の課題に取り組む。
Claude Sonnet 4.6、無料・Proプランのデフォルトモデルに——社内テストでOpus 4.5を59%の確率で上回る
Anthropicは2026年2月17日にリリースしたClaude Sonnet 4.6を、claude.aiの無料・Proプランのデフォルトモデルに設定した。価格はSonnet 4.5と同額の$3/$15 per 1Mトークン。社内評価ではコーディングエージェント用途でOpus 4.5を上回る結果が出ている。
GoogleがOpenClaw経由のGemini利用ユーザーのアカウントを永久停止——月額$250請求継続のまま
2026年2月23日、Hacker Newsで140pt/107コメントを集めたレポートによると、GoogleはOpenClaw(サードパーティクライアント)経由でGeminiを使用していたGoogle AI Pro/Ultraユーザーを予告なしに永久停止した。技術的・経済的背景を整理する。