Estimated reading time: 11 minutes
Mess in the kitchen? Forgot to take out the trash? With Home Assistant, you can bring order to your household - completely automatically. Whether you use native automations or the smart household management tool Grocy in this article I will show you step by step how to manage your household tasks efficiently and automatically remind you of it.
For detailed instructions and an explanation of all configuration options, I recommend the YouTube video linked below. In this video, every single setting is explained in detail so that you receive comprehensive instructions for the exact setup. You can find any code from the video in this article so that you can use it directly without having to type it in.
Why manage household tasks with Home Assistant?
You've been using Home Assistant to control your lights, sensors and devices for a long time. So why not your household too? The integration of to-do lists and notifications saves you time, nerves and discussions.
You can:
- Schedule and manage tasks
- Receive push notifications (e.g. via app or Telegram)
- Have tasks repeated automatically
- Involve several people in the household




Option 1: Native task management in Home Assistant
Home Assistant brings a built-in todo
-integration with. Ideal if you want to keep it simple.
You can find all the details about to-do integration here.
This is how you set it up:
- Activate the
todo
-integration in yourconfiguration.yaml
:
todo:
- platform: todo_list
name: Household
- Restart Home Assistant.
- You can now find the "Household" list under "Tasks" in the dashboard.
- Add tasks via UI or automation:
service: todo.add_item
data:
entity_id: todo.household
item: "Take out the garbage"
- Automate notifications with a simple automation:
alias: Garbage reminder
trigger:
platform: time
at: '19:00:00'
condition:
- condition: state
entity_id: todo.household
state: 1
action:
- service: notify.mobile_app_your_smartphone
data:
message: "Hey, think about your task!"
Option 2: HA Chore Helper - Recurring tasks made easy
HA Chore Helper is a custom component for Home Assistant that helps you with this, track recurring tasks automatically - independent of Grocy and fully integrated into Home Assistant. The tasks (sensor + calendar) are managed as Home Assistant auxiliary entities. The chores are created in the UI and can be controlled via services/automations.
🔧 Functions:
- Set tasks with intervals (daily, weekly, etc.)
- Receive reminders when something is due
- Keep track of when you last completed a task
- Can be combined with notifications or dashboards
Chore Helper maps recurring tasks ("chores") in Home Assistant. For each task a Sensor (which provides the number of days to/back to the next appointment as the status) and a Calendar in which all upcoming appointments are displayed. This allows you to see tasks in the calendar, trigger automations (e.g. notification when due) and complete/postpone/skip tasks via a service call.
Installation of HACS and integration of Chore Helper in Home Assistant
Step 1: Installing HACS in Home Assistant
Home Assistant Community Store (HACS) is a custom add-on for Home Assistant that provides access to a variety of custom integrations and plugins developed by the community. How to install HACS:
- Check requirements: Make sure that your Home Assistant is ideally up to date.
- Download Execute script: Open a terminal for the Docker container version or the core version.
- Docker: Dial into the container with:
docker exec -it homeassistant bash
or (similar) - Core: Switch to the user who is running Home Assistant
- Execute the following command for both variants:
wget -O - https://get.hacs.xyz | bash -
- Docker: Dial into the container with:
- Restarting the Home Assistant: After the files have been copied, restart Home Assistant.
- Integrate HACS into Home AssistantGo to "Configuration" > "Integrations" > "Add" in the Home Assistant interface and search for HACS. Add it and enter your GitHub token if prompted.
For the supervised version, please refer to the Documentation of HACS itself to read about the installation.
Step 2: Add Chore Helper integration via HACS
Once HACS is installed, you can simply add Chore Helper:
- Open HACS: Go to HACS in the Home Assistant interface.
- Add repositoryClick on the three dots at the top right and the item Custom repositories. Then https://github.com/bmcclure/ha-chore-helper with the Integration type.
- Search for integrationClick on "Integrations" and use the search function to search for "Chore Helper".
- Install Chore HelperFind Chore Helper in the list and click on "Install". This will add the integration to your Home Assistant.
- Restarting the Home Assistant: Start Home Assistant again to apply the changes.
- Configure Chore HelperAfter restarting, you can set up and customize Chore Helper via "Configuration" > "Integrations" in Home Assistant.
Conclusion
With these steps, you have successfully installed HACS in your Home Assistant and added the Chore Helper integration. This powerful combination opens up a world of additional features and customizations that have been and are being developed by the Home Assistant community. More blog posts and videos on useful integrations to follow. If you don't want to miss out, subscribe to my YouTube channel!
Create chore - step by step (UI)
- In Home Assistant, go to Settings → Devices & services → Helpers.
- Click Create Helper → search for Chore (or "Chore Helper") and select the helper type.
- Fill in the fields (name, start date, period details etc.) and save.
- After attachment you will find the new Sensor entity (e.g.
sensor.room_garbage
- check the exactentity_id
in developer tools → states) and the global Choir calendarthat you can add to Lovelace.
Tip: because everything runs via UI helpers, you don't normally need a configuration.yaml
-entries.
Scheduling model: every vs after - the most important difference
- every: Dates are based on the Start date (fixed intervals). Example: monthly every 6 months on the same calendar day - remains on the same months (Jan, Jul), even if you complete earlier.
- after: Dates will be announced after the Date of last completion calculated. For example, if you complete a monthly "after" chore today, the next appointment will be scheduled one month from today - making it more flexible for real cleaning/maintenance routines.
The calendar preview shows future dates; for "after" choirs, however, the estimated follow-up dates may vary dynamically (because they are based on the last completion).
Time periods & subtleties
Chore Helper supports different period types:
- Daily: every day or every N days.
- Weeklye.g. every 2 weeks; you can select individual weekdays (or leave it blank if you only want it to be "every N weeks").
- Monthlyseveral modes:
- On a specific calendar day (e.g. 15th of the month),
- On the Nth selected day of the week (e.g. 2nd Tuesday),
- On the selected weekday of the Nth week,
- Or no special field → next possible day of the month.
- Yearlyannual dates (day + month / every N years).
- Custom: none Automatic planning - you add appointments via service (
add_date
) or automate this yourself.
Start and end months (e.g. April-November season) can also be defined for weekly/monthly options.
Sensor state & attributes - how to read the status
- Main state of the chore sensors is a number: Days until/to date.
- Positive → X days until the appointment.
0
→ due today.- Negative → X days overdue.
- Important attributes (visible as entity attributes):
next_due_date
,last_completed
,overdue
(bool),days_overdue
(number).
You can also set different icons for the states (future, tomorrow, today, overdue) - handy for Lovelace display.
Notification of automation
You will need a blueprint for this automation, which you can find in the code. This should only give you a general idea.
alias: Task Reminder (Chore Calendar)
description: ""
use_blueprint:
path: Blackshome/calendar-notifications-and-actions.yaml
input:
calendar: calendar.chores
include_calendar_trigger: disable_key_word
start_calendar_offset:
hours: 10
minutes: 0
seconds: 0
days: 0
include_start_notify: enable_start_notify_options
start_notify_device:
- 9544dc2deb9ccc0acb20338639131160
start_notify_data:
- icon_color
- icon
- sticky
- icon_url
start_notify_icon: mdi:format-list-checks
start_notify_icon_color: orange
start_notify_icon_url: /local/icons/task.png
include_start_action_buttons:
- enable_start_action_button_1
- enable_start_action_button_2
start_action_button_1: Done
start_action_button_2: Skip
start_action_button_stop: Do nothing
start_time_delay:
hours: 24
minutes: 0
seconds: 0
include_start_auto_actions:
- enable_start_action_1
- enable_start_action_2
start_action_button_confirmation_message: The task has been completed.
start_time_delay_confirmation_message: The task was skipped because the time has expired.
start_action_1:
- action: chore_helper.complete
metadata: {}
target:
entity_id: >-
{% set event_name = trigger.calendar_event.summary %} {% set
found_entity = states | selectattr('name', 'equalto', event_name) |
map(attribute='entity_id') | list %} {{ found_entity[0] if
found_entity | length > 0 else 'none' }}
data: {}
start_action_button_stop_confirmation_message: Abort
start_action_2:
- action: chore_helper.remove_date
metadata: {}
target:
entity_id: >-
{% set event_name = trigger.calendar_event.summary %} {% set
found_entity = states | selectattr('name', 'equalto', event_name) |
map(attribute='entity_id') | list %} {{ found_entity[0] if
found_entity | length > 0 else 'none' }}
data: {}
start_message: New task due {{ trigger.calendar_event.description }}
Chore Helper is a pragmatic, home assistant-native solution for managing recurring household tasks - with calendar integration, flexible intervals (every
vs after
) and service APIs for full automation. Ideal if you want to automatically remind, distribute or visualize tasks in the smart home context.
3rd Grocy: The Swiss army knife for household management
Grocy is a self-hosted ERP system for household management - including supplies, tasks, shopping, battery tracking, etc. - ideal for the smart home ecosystem: if you want to manage tasks, shopping, supplies and household appliances centrally, you will Grocy love. It connects seamlessly with Home Assistant - via Grocy integration. You can also have the tasks listed on a map: grocy-chores-card

What you need:
- A running Grocy server (e.g. via Docker or add-on)
- The API key from Grocy
- Integration in Home Assistant
Installation of HACS and integration of Grocy custom component in Home Assistant
Step 1: Installing HACS in Home Assistant
Home Assistant Community Store (HACS) is a custom add-on for Home Assistant that provides access to a variety of custom integrations and plugins developed by the community. How to install HACS:
- Check requirements: Make sure that your Home Assistant is ideally up to date.
- Download Execute script: Open a terminal for the Docker container version or the core version.
- Docker: Dial into the container with:
docker exec -it homeassistant bash
or (similar) - Core: Switch to the user who is running Home Assistant
- Execute the following command for both variants:
wget -O - https://get.hacs.xyz | bash -
- Docker: Dial into the container with:
- Restarting the Home Assistant: After the files have been copied, restart Home Assistant.
- Integrate HACS into Home AssistantGo to "Configuration" > "Integrations" > "Add" in the Home Assistant interface and search for HACS. Add it and enter your GitHub token if prompted.
For the supervised version, please refer to the Documentation of HACS itself to read about the installation.
Step 2: Add Grocy custom component integration via HACS
After HACS is installed, you can simply add Grocy custom component>:
- Open HACS: Go to HACS in the Home Assistant interface.
- Search for integrationClick on "Integrations" and use the search function to search for "Grocy custom component".
- Grocy custom component installFind Grocy custom component in the list and click on "Install". This will add the integration to your Home Assistant.
- Restarting the Home Assistant: Start Home Assistant again to apply the changes.
- Configure Grocy custom componentAfter restarting, you can set up and customize Grocy custom component via "Configuration" > "Integrations" in Home Assistant.
Conclusion
With these steps, you have successfully installed HACS in your Home Assistant and added the Grocy custom component integration. This powerful combination opens up a world of additional features and customizations that have been and are being developed by the Home Assistant community. More blog posts and videos on useful integrations to follow. If you don't want to miss it, subscribe to my YouTube channel!
Integration in Home Assistant
Now you can create tasks directly in Grocy - or create them automatically via Home Assistant.
Supported functions (entities & services)
Included entities:
Grocy offers various sensors & binary sensors:
- Sensors for:
choirs
,tasks
,meal plan
,shopping list
,stock
,batteries
- Binary Sensors for:
- Adventure:
overdue chores
,overdue tasks
,expired products
,missing products
,expiring products
,overdue batteries
- Adventure:
Services (especially relevant for choirs):
Further services: complete_task
, add_product_to_stock
, consume_product_from_stock
, add_missing_products_to_shopping_list
etc., which tend to cover tasks such as stock management
grocy.execute_chore
: Marks a chore as completed (optionally with timestamp or executor)
Visualization & dashboard integration
- In Lovelace you use standard cards or Grocy-specific custom cards (e.g. "chores card", "tasks card") - available in the forum or HACS repos
- There is even a perfect grocy-chores-cardwhich you can find in HACS and install from there without any problems
- There is another card for this, namely card-tools required! Also in the HACS!
Example automation
alias: Notification for Grocy tasks
description: Sends a notification when a Grocy task is due.
triggers:
- value_template: >
{% set due_today = namespace(found=false) %} {% for chore in
state_attr('sensor.grocy_chores', 'chores') | default([]) %}
{% if chore.next_estimated_execution_time and now().strftime('%Y-%m-%d') == chore.next_estimated_execution_time[:10] %}
{% set due_today.found = true %}
{% endif %}
{% endfor %} {{ due_today.found }}
trigger: template
actions:
- data:
title: Due task
message: >
{% for chore in state_attr('sensor.grocy_chores', 'chores') |
default([]) %}
{% if chore.next_estimated_execution_time and now().strftime('%Y-%m-%d') == chore.next_estimated_execution_time[:10] %}
- {{ chore.name }} is due today!
{% endif %}
{% endfor %}
action: notify.smartphones
mode: single
YouTube video implementation
💡 Bonus tip: Visualize tasks in the dashboard
Use Lovelace elements such as the todo-list-card
or Mushroom Cardsto display your to-dos in style - e.g. with a progress bar, due date or icons.
Conclusion
Home Assistant is more than just smart home control - it's your digital household memory.
Whether you use native lists, automate with the HA Chore Helper or go the whole hog with Grocy - smart household organization has never been so easy.
With smart reminders, you'll never miss a task again. And hey, maybe cleaning will even be a bit more fun with a short Telegram meme 😉.
0 Comments