I would create a library, make some logic more generic, create a generic table (task id, taskType, workerId, etc), store task metadata as jsonb so it can be pulled and marshalled into typed data by users.
Import it into your projects.
Make the library work standalone. But also build a task manager service that people can deploy if they want to run it outside their code.
Then offer a hosted solution that does the webhooks.
I’m sure someone will want to pay for it.