You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Discord.py开发的Bot重启后指令提示command not found是什么原因?

问题原因排查列表
  • 装饰器语法错误:你当前代码里的指令注册装饰器写的是@bot.command,正确写法应为@bot.command(),末尾缺少括号会导致装饰器未被正确调用,hi函数不会被注册为bot的可识别指令,这是最直接的报错原因。
  • 未正确配置消息意图:discord.py v2.0及以上版本要求显式开启message_content权限才能读取用户消息内容识别指令,你需要做两处修改:
    1. 代码中初始化bot前添加意图配置:
    intents = discord.Intents.default()
    intents.message_content = True
    bot = commands.Bot(command_prefix = "*", intents=intents)
    
    1. 前往Discord开发者后台的对应Bot设置页,开启「Message Content Intent」开关。
  • 调用指令时未加前缀:你配置的指令前缀是*,需要发送*hi才能触发指令,直接发送hi不会被bot识别为指令。
  • Bot权限不足:邀请Bot进入服务器时未授予「读取消息/查看频道」「发送消息」权限,会导致Bot无法读取指令消息或者无法发送响应内容。
  • 若后续添加了on_message自定义事件,需要在事件末尾添加await bot.process_commands(message),否则自定义消息事件会覆盖默认的指令识别逻辑,导致所有指令失效。

内容的提问来源于stack exchange,提问作者rhi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 02:15:07