System-agnostic smart irrigation decision layer for Home Assistant: schedule / interval / sunrise / soil-moisture + VPD demand modes with guaranteed mutual exclusion, actuated through a swappable adapter (OpenSprinkler or any switches/valves). Free, MIT, imperfect, use at your own risk.