Skip to content

Latest commit

 

History

History
executable file
·
130 lines (107 loc) · 16.5 KB

File metadata and controls

executable file
·
130 lines (107 loc) · 16.5 KB

Bear Stone Smart Home
Bear Stone Smart Home Documentation

Be sure to ⭐ my configuration repo so you can keep up to date on any daily progress!

X Follow YouTube Subscribe GitHub Stars
HA Version Badge Last Commit Commit Activity

Reusable scripts that other automations call for notifications, lighting, safety responses, and Joanna/BearClaw AGENT engineer handoffs. Pass variables in; let the script do the heavy lifting.

Quick navigation

Home Assistant header

Featured files to browse

File Why it matters
YAML source: notify_engine Single entrypoint for rich push notifications, with one or two optional action buttons, tags for clearing, and shared colored notification icons for household alerts.
YAML source: hvac_control Single reconciler for grid, entry-point, occupancy, and target-temperature HVAC policy.
YAML source: notify_live_activity Shared helper for tagged live activity/live update pushes and clear commands.
YAML source: kiosk_driveway_camera_takeover Coordinates the bounded Driveway camera takeover and wake behavior across both household kiosks.
YAML source: send_to_logbook Generic logbook.log helper for Activity feed entries (Issue #1550).
YAML source: joanna_dispatch Shared AGENT engineer dispatch contract that routes HA-detected issues into Joanna/BearClaw remediation.
YAML source: speech_engine TTS/announcement orchestration with templated speech; speech processing can bypass LLM rewriting for exact messages and also routes garage/office Echo announcements.
YAML source: monthly_color_scene Seasonal lighting dispatcher that follows sensor.holiday_lighting_scene.
YAML source: interior_off One-call "all interior lights off" helper.

Household notification icons

Watch on YouTube vCloudInfo Blog Post

Both script.notify_engine and script.notify_engine_two_button accept notification_icon (an mdi: name), icon_url (a public or /local/ image), notification_icon_color (glyph hex color), and color (background hex color). On supported iOS apps, these appear as rounded sender icons and require a nonempty notification title. icon_url takes precedence over the MDI icon; colors apply only to MDI icons. See the Companion App documentation and issue #1773.

The shared helper gives existing notification groups a consistent palette without changing their grouping, recipients, action buttons, tags, or interruption levels:

Notification group Icon Background
Medicine mdi:pill Purple
Garbage_Reminders mdi:trash-can-outline Green
Welcome_Home mdi:home-heart Teal
360_alerts mdi:map-marker-radius (arrival/departure callers override it) Blue
Battery_Alert mdi:battery-alert-variant-outline Orange
maintenance mdi:tools Slate
Phyn mdi:water-alert Red
Tesla_Model_Y mdi:car-electric Blue
Tesla_Tire_Pressure mdi:car-tire-alert Orange
Tesla_Charge_Rate_Alarm mdi:ev-station Red
JuiceBox_Proxy_Offline mdi:ev-station Orange
water_heater mdi:water-boiler-alert Orange
RemoteLR mdi:remote Purple
Printer mdi:printer Slate
vacation mdi:palm-tree Teal
royal_caribbean_price_drop mdi:ferry Blue

Group lookup ignores case. An explicit icon overrides the preset; notification_icon: '' disables it. Other groups keep their existing payload unless a caller supplies an icon. Driveway, fridge-door, front-door package, and vacuum-help alerts supply their own icons while retaining their existing camera attachments where applicable. Untitled notifications and clear_notification commands receive no icon fields. Older apps or push paths that do not support custom icons retain the normal app icon.

Arrival alerts use a teal home-entry icon at home or a checked map pin at other monitored places; driving departures use a blue home-exit icon. The existing presence rules and notification groups stay in place. Grid status uses a red disconnected tower for outages and a green tower for restoration, with separate battery/HVAC icons for load shedding and recovery.

Lightning and high-wind warnings, open doors/garages, alarm-panel access, fridge temperature, server temperature, storage space, kitchen power, water-heater maintenance, house-sitter visits, and secure-house checks also pass explicit icons. Previously untitled door, alarm-panel, and storage alerts now have short titles so iOS can display their icons. The direct Roku remote-finder notification keeps its existing action payload and adds the same purple remote icon as its confirmation.

Joanna + BearClaw AGENT engineer handoff

script.joanna_dispatch is the shared handoff contract from Home Assistant automations into Joanna/BearClaw when Home Assistant detects something worth investigating or fixing.

Why we use it:

  • Keeps one message schema for remediation context (trigger_context, source, summary, entity_ids, diagnostics, request, plus optional routing hints).
  • Avoids repeating direct rest_command.bearclaw_command payload formatting in multiple packages.
  • Lets Home Assistant stay focused on detection, timing, and routing while Joanna acts as the AGENT engineer for infrastructure triage and recommended remediation.
  • Makes resolution-trigger automations easier to review, update, and audit.

What the helper normalizes before the BearClaw intake call:

  • trigger_context, source, and summary so every dispatch has traceable origin details.
  • entity_ids from either a YAML list or a comma-delimited string.
  • diagnostics from either free text or structured mappings/sequences.
  • request guardrails so Joanna defaults to investigation/recommendation, not blind resets or power-cycles.
  • domain_hint/lane_hint default to BearClaw ops routing so HA infrastructure text does not drift into another domain parser.

Current automations that kick off automated resolutions (via script.joanna_dispatch):

Automation ID Alias File
mqtt_open_repair_on_failure MQTT - Open Repair On Failure YAML source: mqtt_status
onenote_indexer_failure_open_repair OneNote Indexer - Open Repair On Failure YAML source: onenote_indexer
infra_backup_nightly_verification Infrastructure - Backup Nightly Verification YAML source: infrastructure
infra_monthly_log_hygiene_review Infrastructure - Monthly HA Log Hygiene Review YAML source: infrastructure
infra_nebula_sync_health_dispatch Infrastructure - Nebula Sync Health Dispatch YAML source: infrastructure
infra_pihole_iot_dns_drift_dispatch Infrastructure - Pi-hole IoT DNS Drift Dispatch YAML source: infrastructure
infra_website_down_repair_and_dispatch Infrastructure - Website Down Repair And Dispatch YAML source: infrastructure
docker_state_sync_repairs_dynamic Docker State Sync - Repairs (Dynamic) YAML source: docker_infrastructure
docker_group_reconcile_weekly_joanna_review Docker Group Reconcile - Weekly Joanna Review YAML source: docker_infrastructure
docker_host_disk_pressure_monitor Docker Host Disk Pressure Monitor YAML source: infrastructure
proxmox_updates_joanna_dispatch Proxmox Updates Joanna Dispatch YAML source: proxmox
tugtainer_dispatch_joanna_for_available_updates Tugtainer - Dispatch Joanna For Available Updates YAML source: tugtainer_updates
tugtainer_dispatch_joanna_for_home_assistant_core_digest Tugtainer - Dispatch Joanna For Home Assistant Core Digest YAML source: tugtainer_updates
unifi_ap_no_clients_repair_combined Unifi AP Create Repair Issue after 5m of 0 Clients YAML source: wireless
proxmox_runtime_repairs Proxmox Runtime Repair Issues YAML source: proxmox
proxmox_disk_pressure_repairs Proxmox Disk Pressure Repair Issues YAML source: proxmox
synology_dsm_open_repair_and_dispatch Synology DSM - Open Repair And Dispatch YAML source: synology_dsm
processmonitor_disk_use_joanna_review Self Heal Disk Use Joanna Review YAML source: processmonitor
rheem_water_heater_alert_incident Rheem Water Heater Alert Incident YAML source: rheem_econet
rheem_water_heater_incident_reconcile Rheem Water Heater Incident Reconcile YAML source: rheem_econet
1ce3cb43-0e27-4c53-acdd-d672396f3559 Disk Use Alarm YAML source: processmonitor

Tips

  • Keep scripts generic, route data via data:/variables:, and reuse everywhere.
  • If you copy a script, rename any alias and id fields to avoid duplicates.

All of my configuration files are tested against the most stable version of home-assistant.

Still have questions on my Config?
Message me on X : Follow CCostan

Buy me a coffeeYou can buy me a coffeeBuy me a coffee

Affiliate Disclosure