Заметки
Почему агент запускается вручную, но не запускается автоматически
Кнопка ручного запуска подтверждает только то, что функция отработала в текущем запросе. Автоматический запуск нужно разбирать отдельно: сначала выяснить, дошла ли очередь до агента, затем — смогла ли она вызвать его функцию.
В записи агента проверьте активность и время следующего запуска. Если оно уже прошло, смотрите механизм исполнения: агенты на хитах зависят от посещений, агенты на cron — от задания планировщика и его вывода.
Если запуск начинается и обрывается, сравните PHP CLI с веб-PHP. В CLI могут отличаться версия, расширения, пользователь ОС и пути. Функция агента также должна быть доступна при автоматической загрузке: объявление в отдельной странице PHP-консоли для этого не подходит.
Повторяемый агент возвращает строку своего следующего вызова. Одноразовый — пустую строку. Проверка одного этого return не заменяет проверку загрузки класса.