Task reactor