Как сделать задержку на команду в боте дискорд?
У discord.py это уже предусмотрено, вы можете добавить декоратор: @commands.cooldown(1, (Время задержки), commands.BucketType.user)

Для вывода необходимо использовать событие: async def on_command_error(ctx, error):
    if isinstance(error, commands.CommandOnCooldown):
        embed = discord.Embed( 
            title = 'Команда на задержке.', 
            description = f'Повторить через `{error.retry_after :.0f} секунд', 
            colour = discord.Color.red() 
        )

        return await ctx.send(embed = embed)
После применения команды сохраняете в базе timestamp. Далее, при повторном применении, вычислятете timestamp того момента, когда минимум команда должна была использована первый раз. Если это время больше того, что в базе - выполняете команду. Иначе - выводите сообщение.

Реализацию вы вольны придумать самостоятельно. Но вам точно нужно где-либо сохранять id пользователя, id команды (если команд несколько) и timestamp последнего использования. База, файл или память - выбирать вам.