Есть пара вариантов как это сделать:
- Stepper (вид агентов, о котором вы писали)
- cron-файл.
Нет ничего зазорного чтобы специализированную задачу, для решения которой подходит cron-файл/cron-скрипт выполнять именно таким способом.
Более того:
- В коробке может быть настроено выполнение агентов на кроне, что решает часть вашей проблемы
- Битрикс в определенных подсистемах (например открытые линии) сам рекомендует дополнительно настраивать cron-задания