diff --git a/redbot/core/bot.py b/redbot/core/bot.py index 6cba99d8891..c63b2bb9584 100644 --- a/redbot/core/bot.py +++ b/redbot/core/bot.py @@ -886,7 +886,12 @@ async def ignored_channel_or_guild( if ctx.channel.type is not discord.ChannelType.private: raise TypeError("Can't check permissions for non-private PartialMessageable.") is_private = True - perms = ctx.channel.permissions_for(author) + if isinstance(ctx, discord.Message): + perms = ctx.channel.permissions_for(author) + else: + # `permissions` attribute will use permissions from the interaction when possible, + # or `ctx.channel.permissions_for(author)` for non-interaction contexts. + perms = ctx.permissions surpass_ignore = ( is_private or perms.manage_guild