Chore Helper - Track recurring or manual chores with flexible scheduling

Today’s release includes a fix for due date calculation, because I’ve recently noticed several of my “after” chores getting due dates that are too soon.

Example:
I have a chore due after 2 weeks on Saturday to “Mow the lawn”. Marking it completed today was causing it to say it was due in 2 days, which is incorrect–that’s the date that it should have picked if it was due EVERY 2 weeks instead of AFTER 2 weeks. With the new version, marking that chore completed today would make it due next in 16 days, which is the first Saturday that’s at least 2 weeks from today.

I think date calculation in all scenarios is working right for my chores (of which I have about 30 or so created), which are a mix of “every” and “after”, but I’d love to hear how date calculation is working for other people. There are so many permutations of possible date settings that it’s hard to catch everything without automated tests (which I’ll create as time permits).

Thanks for providing this! I’m trying to accomplish something, and I’d be curious how close this is.

I’d like to create a daily list of chores for young kids (brush teeth, comb hair etc). Each should be something they can toggle with a button on a tablet or even google etc. once the whole days of toggles happen, a parent can approve it and this increases a counter by one. What do you think?

These sound like great ideas! Currently, the functionality is pretty basic. You could easily create the chores for each child and add some buttons to a dashboard to complete them, but there isn’t any user association or validation process currently. I would definitely be open to implementing these features, however!

Does everyone have a separate HA account that they would log in with, or would this be from a common account on a shared device?

My opinion is separate accounts. You could then create a dashboard for each kid as well as a common dashboard for updating on assistant or shared devices. Then a parent dashboard for managing and approving everything.

After thinking more about this, it is likely already possible, though you’d need to create the dashboards, helpers, and automations yourself currently, so it would take some extra effort:

  • Separate chores for each child, perhaps with the child’s name in the title to differentiate them
  • Toggle helpers for each chore, perhaps “[Chore name] approved”
  • Date helpers for each chore when they were last approved
  • An automation that toggles the approved switch off when the related chore is marked completed
  • Dashboards for each child with their chores listed
  • A dashboard for shared screens with all chores laid out in some way
  • A management dashboard with a filtered entity list of chores that need approval with a button that both enters the current date in the last approved date helper and toggles approved to on. The dashboard could also include other filtered lists, such as chores not yet completed today

And I feel like this may be only part of the picture. There may be additional requirements such as the children seeing on their dashboards the approval status of each chore, or whether all of their chores are completed and whether all are approved.

Some of this stuff could be made easier with some new features in Chore Helper I think, though I want to figure out exactly how this should work and provide a good user experience first.

Adding a user assignment to the chore settings seems like a good start. And maybe some way to filter chores by the assigned user for easier management of the dashboards, like making the assigned user an attribute so it can be filtered in auto entities or something.

In the context of managing kids’ chores, or the chores of someone else you manage, an approval option makes sense. It would be easy enough to add an option to enable approvals for a chore, a Last Approved date attribute, an Approved boolean attribute that is true if last approved > last completed, and an approve service similar to chore_helper.complete, but I’m wondering if that’s the right way to implement this and how helpful that would be without “business logic” baked in around how approvals should behave or affect the chore system overall.

Does this seem like the type of approach you imagined? I’m open to other ideas or improvements to these ideas if you’ve got then.

This is what I created. And have been using for the last couple of years.

1 Like

HI @ben.mcclure,

I really love your integration I hope it can replace Tody and bring everything under the hood of Home Assistant.

I have set up a few chores and played around with it a little.
One thing I noticed is that it is “slow”. I created an Auto Entities Card but when I click it, it takes 2-4 seconds till the card is updated.

Is that normal behavior? I am quite new to HA and before I try to speed things up that cannot be speed up, I just wanted to ask. :slight_smile:

Again, thank you for your work.

Hey @ben.mcclure,

I really like this integration and how simple it is to use, i have 1 question though.
I enjoy having “after 5 days” repeatable tasks only show once in the calendar, so i set the “number of future due days to forecast” to 0, this doesn’t seem to set a new date when i complete the task.
Is this how it is supposed to work and do i have to put it to atleast 1, or am i doing something wrong?

Hey @ben.mcclure

This is integration is very helpful.

If I don’t select a weekday, the state is ‘unknown’. It’s not a big deal for me to put the weekday in, but being an optional field, it took me a while to figure out that was my problem. There are a few chores, like emptying the dustbin on my robot vacuum that take less than a minute, so I’m not concerned with which day of the week they fall on. I think it would be more clear if it was required or functioned without selecting a day.

Second point of feedback, if I clear the ‘optional’ icon for the due tomorrow, due today, and overdue, they automatically revert after saving. Perhaps that’s intended. :man_shrugging:t2:

This is very helpful and thank you for the work you put into this.

Quick question, is there a way to assign each chore to a person and able to setup notifications to their devices?

I really want to try out this integration! However, I checked in HACS for a bit but couldn’t find it there. Is it no longer available there?

In the installation instructions on GitHub it says to add the repository to HACS. Only then will the integration show up.

When you’re in HACS, click the 3 dots in the top right corner to add a custom repository.

Hello, I’m quite new with HA in general so maybe this is a stupid question… I installed chore helper and created an example chore to de-ice my freezer, that should reoccur after 6 months.

The creation was all fine and logical, the chore is also visible in the calendar, but what I don’t understand is how do I actually mark a chore as completed, so it will then create the next entry (in this case in 6 months).

Thank you.

Hope this helps: GitHub - bmcclure/ha-chore-helper: A Home Assistant helper integration for managing recurring chores.

I’d propose you create a filtered list of (over-)due tasks or whatever card/form you prefer. Each entry/card should then have the chore_helper.complete service as an action. Actually this was also described by the author in the first post

I’ve been using Auto Entities to create filtered cards of chores with a tap action of calling the complete service. It works quite well! Here is a screenshot of the cards in action the code that creates them:

@ben.mcclure Just on this: May I suggest the implementation of a boolean for each helper, which indicates whether a confirmation window shall pop up anytime the complete service is called? At least that’s what I used in my former chores implementation. This would streamline the process, although I know that this is simply possible by adding the
confirmation option per entity for any occurrence in the dashboard(s), e.g.:

show_name: true
show_icon: true
type: button
tap_action:
  action: call-service
  service: chore_helper.complete
  confirmation:
    text: Confirm that chore was completed.
entity: sensor.example_chore_helper

Hello, thanks for your reply. I did see the complete service, but how to call it eludes me. I did not know about Auto Entities, so this confused me.

Maybe I understood it better now: So when I complete a chore I would press a button and that button press would then call the chore_helper.complete service. What is the recommended way of doing this? I would assume an automation or is this rather a task of a script?

Sorry if these things should be obvious, but I have a hard time of wrapping my head around the concepts.

Hi! Thanks for the great integration! I also have too many tasks to remember and I really want a good reminder about them, so I had the same idea:

But I only managed to implement it manually, and it’s really boring to set it up each time via yaml, as I wrote in Умные напоминалки | Jehy's notes (you can use google translate or just check the code to get generic idea).

Yout integration looks great, but I really miss some screenshots and instructions in README. I installed your integration via HACs, rebooted HA, created a chore, but it does not add any future dates:

What am I missing? I was going to create a github issue, but there are toooooo many fields to fill :slight_smile:

Just found this and really excited to try it out. Thanks for the hard work on it.

1 Like

Hello,
I was trying Chores management with counters and was very excited with this integration.

I installed it and created a Chore. Due date sent to ‘after 30 days’. I was expecting every day this status (remaining dates) would reduce by 1. But unfortunately, I didn’t see this happening.

For example in the above picture,
this Chore was completed on 30th Jan at 10:32 PM. Today is 2nd Feb, since the dude date is ‘after 30 days’ I was expecting the main status should be showing 28 days. But it is still 30 days.
Chore calendar is updated correctly, it shows next dude data on 29th Feb.

Am I missing anything ?
Appreciate any help. Thanks.

Sorry my bad,
image
Manual update is enabled. After disabling it state updated automatically

2 Likes

This looks brilliant - exactly what I was looking for! I’ve just added it via manual installation from github, and I can’t see some of the text in the helper create dialog - do you know how I can fix this? I’ve tried the obvious ones like restarting HA & changing theme etc. Thanks!