Skills sentinel
Transform an Android phone with IP Webcam into an intelligent Edge AI security system with OpenClaw.
install
source · Clone the upstream repo
git clone https://github.com/openclaw/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/alihmaou/ipwebcam" ~/.claude/skills/clawdbot-skills-sentinel && rm -rf "$T"
manifest:
skills/alihmaou/ipwebcam/SKILL.mdsource content
Security monitoring over IP Camera Android app
Use the Clawd Sentinel pattern to turn any old Android smartphone into a sovereign, frugal, and intelligent motion detection system.
Setup
- Android Side: Install "IP Webcam" (by Pavel Khlebovich) and start the server.
- Connectivity: Note the local IP (e.g.,
).192.168.1.100:8080 - OpenClaw Workspace:
: The core logic for pixel comparison.bin/sentinel_ultra_frugal.sh
: The background loop runner.bin/sentinel_runner.sh
Detailed API Interaction
The IP Webcam server provides a REST-like API for full remote control. Base URL:
http://<IP>:8080/
Visual Captures
- Standard Snapshot:
(Fastest, current frame)/shot.jpg - Autofocus Snapshot:
(Triggers autofocus before capture, highest quality)/photoaf.jpg - Video Recording:
- Start:
/startvideo?name=alert_123 - Stop:
/stopvideo - List recordings:
(returns JSON/HTML)/list_videos - Download:
/v/<filename>.mp4
- Start:
Camera Control & Settings
- Focus Distance:
(0.0 is often Infinity)/settings/focus_distance?set=<0.0-10.0> - Torch (Flash):
|/enabletorch/disabletorch - Focus Mode:
/settings/focusmode?set=<on|off|macro|infinity|fixed> - Scene Mode:
/settings/scenemode?set=<auto|night|action|party...> - White Balance:
/settings/whitebalance?set=<auto|daylight|cloudy...>
Device Telemetry
- Sensors Data:
(Battery, light level, proximity, accelerometer)/sensors.json - System Status:
(Camera state, recording status, uptime)/status.json
Audio
- Audio Feed:
or/audio.wav
(Live audio stream)/audio.opus
Integration Examples (curl)
# Get battery level via jq curl -s http://<IP>:8080/sensors.json | jq '.battery_level[0][1][0]' # Toggle flash remotely curl http://<IP>:8080/enabletorch
Recommended Thresholds
- Daytime (Haze/Clouds): 2500
- Nighttime (ISO noise): 1500
Notes
- Frugality: No tokens are consumed unless the pixel differential exceeds the threshold.
- Privacy: Raw frames remain local. Only alert-triggered frames are sent to the AI.
- Maintenance: Periodically check phone battery and Wi-Fi stability.
- Lens flare: Long rainbow flares in night mode usually indicate static lights, not vehicles.