Door, window, and garage left-open alerts in Slack

Every 10 minutes, check your home for doors, windows, or the garage left open too long, and get one calm Slack alert with a camera snapshot instead of seven duplicate pings.

Agentic Task
Home AssistantSlack BotOperationsPersonal ProductivityNotifications & AlertsResearch & Monitoring

Build an agent workflow that acts as a smart "left open too long" watchdog for my home. It should run on a cron trigger every 10 minutes and decide, with judgement, whether anything is genuinely worth alerting me about.

Step 1: scan the house. Call Home Assistant List States and filter to entities that look like doors, windows, and the garage. Use entity_id patterns like binary_sensor.*_door, binary_sensor.*_window, and cover.garage*. Treat any of these as a candidate if its current state is "open" (for covers, treat "open" or any non-closed state as open).

Step 2: confirm duration. For each candidate, call Home Assistant Get History scoped to that entity over the last few hours and figure out how long it has actually been continuously open. Apply configurable thresholds: 15 minutes for interior doors and windows, 5 minutes for the garage. Anything under threshold is ignored.

Step 3: grab visual context. If a camera entity is mapped to the area (for example camera.garage for cover.garage_door, or a camera in the same room as the sensor), call Home Assistant Get Camera Screenshot on that camera and include the image or a link in the alert.

Step 4: reason before alerting. Take into account time of day and day of week (garage open at 2pm on a Saturday is probably fine, garage open at 2am is not), how long it has been open relative to the threshold, and whether I have already been notified about this exact open session recently. Suppress duplicate alerts within the same continuous open session, even across runs, so I get one message per opening, not one every 10 minutes.

Step 5: tell me. For each opening that survives the reasoning step, send a single concise Slack message using Slack Bot Send a Message to a channel or DM I will configure. Each message should include the friendly name of the entity, where it is, how long it has been open, the snapshot (or link) if available, and a one-line plain-English summary like "Garage door has been open for 42 minutes. Looks unusual for 11pm on a Tuesday." If nothing is worth alerting on, send nothing.

Keep the message minimal and human, no emoji walls or technical jargon. The whole point is that I trust the alert because the agent only fires when it is actually worth my attention.

Additional information

What does this prompt do?
  • Quietly checks your home every 10 minutes for any door, window, or garage that has been open longer than a sensible threshold.
  • Looks at how long the opening has actually lasted and pulls a snapshot from the closest camera when one is available.
  • Uses judgement before pinging you: time of day, whether this is a normal mid-afternoon garage opening, and whether you were already alerted about this same opening.
  • Sends a single, plain-English Slack message with the location, how long it has been open, and the snapshot link.
What do I need to use this?
  • A Home Assistant setup with door and window contact sensors and a garage door sensor exposed to Home Assistant.
  • Optional but recommended: cameras in Home Assistant covering the same areas so the alert can include a snapshot.
  • A Slack workspace and a channel or DM where you want the alerts to land.
How can I customize it?
  • Change the open-duration thresholds (default 15 minutes for interior doors and windows, 5 minutes for the garage) to match how forgetful your household is.
  • Adjust which entities are watched, for example exclude the screen door or include a shed.
  • Pick a different Slack destination, a private DM during the day and a household channel at night, or quiet hours when alerts should be held until morning.

Frequently asked questions

Will this spam me if a door is open for an hour?
No. The agent suppresses duplicate alerts within the same open session, so you get one message per actual opening, not one every 10 minutes.
Do I need cameras for this to work?
No. Cameras are optional. If you have one mapped to the room or the garage, the alert includes a snapshot link. If not, you still get the text alert.
What if the garage being open in the afternoon is normal?
The agent factors in time of day and whether the situation looks routine before deciding to alert. You can also raise the threshold or carve out specific times in your prompt.
Where does the alert go?
Wherever you tell it to: a personal Slack DM, a household channel, or a dedicated home-alerts channel. You pick the destination when you set it up.
How often does it check?
Every 10 minutes by default. You can speed it up or slow it down when you customize the workflow.

Stop ignoring the seventh duplicate alert about the same open door.

Connect Home Assistant and Slack once, and Geni runs this watchdog every 10 minutes, only pinging you when it is actually worth it.