Skip to content
cccskills
FreePublished on GitHub

HomeSafe-Bench

VLM indoor safety hazard detection benchmark inspired by HomeSafeBench (arXiv 2509.23690)

The English summary is being prepared. Showing the original description.

See how to install

Files included (48)

  • SKILL.md4.4 KB
  • config.yaml358 B
  • deploy.bat409 B
  • deploy.sh187 B
  • fixtures/frames/child_01_chemicals_cabinet.png1.3 MB
  • fixtures/frames/child_02_uncovered_outlet.png710.3 KB
  • fixtures/frames/child_03_blind_cord.png642.4 KB
  • fixtures/frames/child_04_sharp_corner.png1.7 MB
  • fixtures/frames/child_05_choking_hazard.png1.8 MB
  • fixtures/frames/child_06_unsecured_bookshelf.png1.4 MB
  • fixtures/frames/child_07_stove_knobs.png1.3 MB
  • fixtures/frames/child_08_open_window.png1.2 MB
  • fixtures/frames/electrical_01_overloaded_strip.png879.6 KB
  • fixtures/frames/electrical_02_exposed_wire_sink.png605.4 KB
  • fixtures/frames/electrical_03_frayed_cord.png567.6 KB
  • fixtures/frames/electrical_04_cord_under_rug.png801.1 KB
  • fixtures/frames/electrical_05_wet_hands_outlet.png681.8 KB
  • fixtures/frames/electrical_06_ungrounded_adapter.png600.9 KB
  • fixtures/frames/electrical_07_damaged_outlet.png598.3 KB
  • fixtures/frames/electrical_08_tangled_cords.png744.6 KB
  • fixtures/frames/falling_01_heavy_high_shelf.png1.4 MB
  • fixtures/frames/falling_02_stacked_boxes.png1.3 MB
  • fixtures/frames/falling_03_leaning_bookshelf.png1.5 MB
  • fixtures/frames/falling_04_fridge_top.png1.4 MB
  • fixtures/frames/falling_05_overhead_tools.png1.6 MB
  • fixtures/frames/falling_06_unsecured_tv.png1.2 MB
  • fixtures/frames/falling_07_overloaded_coatrack.png1.3 MB
  • fixtures/frames/falling_08_loose_fan_blade.png1.2 MB
  • fixtures/frames/fire_01_stove_smoke.png714.7 KB
  • fixtures/frames/fire_02_candle_curtain.png636.8 KB
  • fixtures/frames/fire_03_fireplace_ember.png680.5 KB
  • fixtures/frames/fire_04_iron_facedown.png696.0 KB
  • fixtures/frames/fire_05_heater_drapes.png570.1 KB
  • fixtures/frames/fire_06_missing_detector.png525.1 KB
  • fixtures/frames/fire_07_grease_fire.png791.9 KB
  • fixtures/frames/fire_08_cigarette_couch.png675.8 KB
  • fixtures/frames/trip_01_toys_stairs.png665.7 KB
  • fixtures/frames/trip_02_wet_floor.png540.8 KB
  • fixtures/frames/trip_03_loose_rug.png675.0 KB
  • fixtures/frames/trip_04_cluttered_hallway.png768.1 KB
  • fixtures/frames/trip_05_shoes_doorway.png724.6 KB
  • fixtures/frames/trip_06_dark_stairwell.png652.5 KB
  • fixtures/frames/trip_07_cables_walkway.png760.5 KB
  • fixtures/frames/trip_08_stool_stairs.png567.4 KB
  • fixtures/scenarios.json25.2 KB
  • package-lock.json1.0 KB
  • package.json474 B
  • scripts/run-benchmark.cjs22.0 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

HomeSafe-Bench — Indoor Safety Hazard Detection

VLM benchmark evaluating indoor home safety hazard detection from static camera frames. Inspired by HomeSafeBench (arXiv 2509.23690), adapted for fixed indoor security cameras with AI-generated fixture images.

40 tests across 5 hazard categories:

CategoryTestsExample Hazards
🔥 Fire / Smoke8Stove smoke, candle near curtain, iron left face-down
⚡ Electrical8Overloaded power strip, exposed wire, frayed cord
🚶 Trip / Fall8Toys on staircase, wet floor, loose rug edge
👶 Child Safety8Open cabinet with chemicals, uncovered outlet, blind cord
📦 Falling Objects8Heavy items on high shelf, leaning bookshelf, loose ceiling fan

Setup

Requires npm install. This skill has a package.json with dependencies (e.g. openai SDK). The deployment agent should check for package.json and run npm install in the skill directory before launching.

Entry script: scripts/run-benchmark.cjs

Verification

node scripts/run-benchmark.cjs --help

Quick Start

As an Aegis Skill (automatic)

When spawned by Aegis, all configuration is injected via environment variables. The benchmark discovers your VLM server automatically, generates an HTML report, and opens it when complete.

Standalone

# Run all 40 tests
node scripts/run-benchmark.cjs --vlm http://localhost:5405

# Quick mode (2 tests per category = 10 total)
node scripts/run-benchmark.cjs --vlm http://localhost:5405 --mode quick

# Skip report auto-open
node scripts/run-benchmark.cjs --vlm http://localhost:5405 --no-open

Configuration

Environment Variables (set by Aegis)

VariableDefaultDescription
AEGIS_VLM_URL(required)VLM server base URL
AEGIS_VLM_MODEL—Loaded VLM model ID
AEGIS_SKILL_ID—Skill identifier (enables skill mode)
AEGIS_SKILL_PARAMS{}JSON params from skill config

Note: URLs should be base URLs (e.g. http://localhost:5405). The benchmark appends /v1/chat/completions automatically.

User Configuration (config.yaml)

ParameterTypeDefaultDescription
modeselectfullWhich mode: full (40 tests) or quick (10 tests — 2 per category)
noOpenbooleanfalseSkip auto-opening the HTML report in browser

CLI Arguments (standalone fallback)

ArgumentDefaultDescription
--vlm URL(required)VLM server base URL
--mode MODEfullTest mode: full or quick
--out DIR~/.aegis-ai/homesafe-benchmarksResults directory
--no-open—Don't auto-open report in browser

Protocol

Aegis → Skill (env vars)

AEGIS_VLM_URL=http://localhost:5405
AEGIS_SKILL_ID=homesafe-bench
AEGIS_SKILL_PARAMS={}

Skill → Aegis (stdout, JSON lines)

{"event": "ready", "vlm": "SmolVLM-500M", "system": "Apple M3"}
{"event": "suite_start", "suite": "🔥 Fire / Smoke"}
{"event": "test_result", "suite": "...", "test": "...", "status": "pass", "timeMs": 4500}
{"event": "suite_end", "suite": "...", "passed": 7, "failed": 1}
{"event": "complete", "passed": 36, "total": 40, "timeMs": 180000, "reportPath": "/path/to/report.html"}

Human-readable output goes to stderr (visible in Aegis console tab).

Citation

This benchmark is inspired by:

HomeSafeBench: Towards Measuring the Proficiency of Home Safety for Embodied AI Agents arXiv:2509.23690

Unlike the academic benchmark (embodied agent + navigation in simulated 3D environments), our version uses static indoor camera frames — matching real-world indoor security camera deployment (fixed wall/ceiling mount). All fixture images are AI-generated consistent with DeepCamera's privacy-first approach.

Requirements

  • Node.js ≥ 18
  • npm install (for openai SDK dependency)
  • Running VLM server (llama-server with vision model, or OpenAI-compatible VLM endpoint)

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Dataset annotation management — COCO labels, sequences, export, and Kaggle upload

The English summary is being prepared. Showing the original description.

SharpAI/DeepCamera3.1KUpdated Sep 17, 2026

Eufy camera integration — local RTSP streaming and event clips

The English summary is being prepared. Showing the original description.

SharpAI/DeepCamera3.1KUpdated Sep 17, 2026

Reolink camera integration — RTSP and HTTP API

The English summary is being prepared. Showing the original description.

SharpAI/DeepCamera3.1KUpdated Sep 17, 2026

TP-Link Tapo camera integration — RTSP streaming and ONVIF

The English summary is being prepared. Showing the original description.

SharpAI/DeepCamera3.1KUpdated Sep 17, 2026

LINE messaging channel for Clawdbot agent

The English summary is being prepared. Showing the original description.

SharpAI/DeepCamera3.1KUpdated Sep 17, 2026

Matrix/Element messaging channel for Clawdbot agent

The English summary is being prepared. Showing the original description.

SharpAI/DeepCamera3.1KUpdated Sep 17, 2026

See all skills by SharpAI

Report a problem with this skill