Проблема с cron почти всегда в том, что там совсем другое окружение, чем в интерактивном терминале. Если не прописать явно пути и не подгрузить нужные переменные (особенно API-ключ), скрипт просто не сможет связаться с OpenAI. Логи и редирект вывода в файл – это обязательный минимум, иначе не поймёшь, что именно сломалось. Без этого — только тыкать вслепую.