Sno Station
Sno Station is your agents' workstation: open-source software that turns the AI agents you already run into one squad on your own machine. Two heads are better than one, and they get better with every
Medication, measurements and stock for your pets, shared by the whole household.
PluginsPythonGitHub @Krak3N22OnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Home Assistant integration to track your pets' medication, measurements and stock
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
Medication, measurements and stock for your pets, shared by the whole household.
No more "did anyone give the cat her inhaler?"
New here? The step-by-step guide (English and Swedish) walks through everyday use: giving doses, undo, logging afterwards, refills, skipping and reminders.Read the full README ↗New here? The step-by-step guide (English and Swedish) walks through everyday use: giving doses, undo, logging afterwards, refills, skipping and reminders.
[!NOTE] Pet Care helps you remember. It is not a medical device. Always follow your vet's advice.
With HACS (recommended): click the Open in HACS button above, or add the repository yourself:
https://github.com/Krak3N22/ha-pet-care with the type Integration.Manually: copy custom_components/pet_care to config/custom_components/ and restart.
Requires Home Assistant 2025.3 or newer. The integration icon shows on 2026.3 or newer.
08:00, 20:00) or every N days. Leave both empty for no schedule.A dose given up to 2 hours before a scheduled time counts for that time.
Each medication or measurement becomes its own device under the pet, for example Freja Inhaler:
| Entity | Medication | Measurement |
|---|---|---|
| Give dose (button) | ✅ | |
| Log value (number box) | ✅ | |
| Value with history (sensor) | ✅ | |
| Last given / Last measured (timestamp) | ✅ | ✅ |
| … by (who did it) | ✅ | ✅ |
| Next due (timestamp) | if scheduled | if scheduled |
| Overdue (problem sensor) | if scheduled | if scheduled |
| Stock (number) | if tracked | |
| Days left (duration) | if tracked and scheduled | |
| Low stock (problem sensor) | if tracked | |
| Refill (button) | if a pack size is set | |
| Skip (button) | if scheduled | if scheduled |
| Undo latest (button, under Configuration) | ✅ | ✅ |
The dose reminder blueprint sends a notification to the phones you choose when a medication is overdue. Pick one or more medications in the same automation; each gets its own notification:
When the dose is given, in the notification or anywhere else, the notification is removed from every phone. Without an answer it reminds again every 30 minutes, up to 6 times. Both numbers can be changed. The texts can be changed too, for example to Swedish.
Import it with the button above, or in Home Assistant go to Settings → Automations & scenes → Blueprints → Import blueprint and paste https://github.com/Krak3N22/ha-pet-care/blob/main/blueprints/automation/pet_care/dose_reminder.yaml. Then create an automation from it and pick the Overdue sensors of your medications.
| Action | Target | Fields |
|---|---|---|
pet_care.give_dose | a Give dose button | given_at, force (skip the double dose guard), user_id (all optional) |
pet_care.log_measurement | a Log value number | value, measured_at and user_id (optional) |
pet_care.skip | any entity of the item | user_id (optional) |
pet_care.undo | any entity of the item | |
pet_care.refill | any entity of a medication | amount (optional, default one pack) |
Create this script and add it to a dashboard. Home Assistant asks for the time when you run it.
alias: Inhaler given earlier
fields:
given_at:
name: Given at
required: true
selector:
datetime:
sequence:
- action: pet_care.give_dose
target:
entity_id: button.freja_inhaler_give_dose
data:
given_at: "{{ given_at }}"
alias: Inhaler running low
triggers:
- trigger: state
entity_id: binary_sensor.freja_inhaler_low_stock
to: "on"
actions:
- action: notify.notify
data:
message: >
Freja's inhaler lasts {{ states('sensor.freja_inhaler_days_left') | int }} more days. Time to buy a new one.
For automations: pet_care_dose_given, pet_care_measurement_logged, pet_care_skipped, pet_care_undone and pet_care_refilled.
pip install -r requirements_test.txt
pytest
Tests run against a real Home Assistant, together with hassfest and HACS validation, on GitHub Actions for every pull request. main is protected: changes go through pull requests with passing checks.
Bugs and ideas are welcome in issues. Report security issues privately, see SECURITY.md.