#Bot not talking on Discord Server Channels Help

1 messages · Page 1 of 1 (latest)

oak totem
#

Hello there folks.
I been having an issue where I cannot get my Openclaw discord bot to post on my server channels. While I can DM it and it will answer, it will not post on the channels. (I'm using Gemma3:12b)

When I tag with @, it reacts to my message and starts typing, but it never posts in the channel itself. I been dealing with this for a few days so I figure I would ask for help here.

Here is what I tried.

I made sure my discord bot has the "Message Content Intent" enabled when I invited it to the server.

I've programmed the Server ID and the Channels ID on Openclaw.

I've tried setting groupPolicy="open" to see if that worked but it did not.

When chatting with Gemini, it insists that the issue is that the "intents:content=limited" should be set to enable not limited. aside from kicking the bot from the server, making sure that "Message Content Intent" is enabled and re-inviting, I do not know how to attempt to change that setting.
here are some relevant configs

$ openclaw channels status --probe

Gateway reachable.
Gateway event loop degraded: reasons=event_loop_utilization,cpu eventLoopDelayMaxMs=0 eventLoopUtilization=1 cpuCoreRatio=1.929

  • Discord default: enabled, configured, running, connected, bot:@Fermi, token:config, intents:content=limited, works, audit ok

$ cat openclaw.json

"channels": {
"discord": {
"enabled": true,
"token": "<Bot_TOKEN>",
"groupPolicy": "allowlist",
"guilds": {
"<SERVER_ID": {
"channels": {
"<GENERAL_CHANNEL_ID": {
"enabled": true
},
"<BOT_CHANNEL_ID": {
"enabled": true
}
}
}
}
}

sullen muskBOT
#

To help others find answers, you can mark your question as solved via Right click solution message -> Apps -> ✅ Mark Solution

stable pulsarBOT
#

This is probably not fixed by changing intents:content=limited directly. If the bot reacts and starts typing, Discord ingress is getting far enough to trigger OpenClaw.

Two likely issues here:

  1. Guild channel replies are tool-sent by default. In Discord guild channels, normal final answers are private unless the model calls message(action=send). With Gemma3:12b, this often fails because local models can be shaky at tool calling. The docs call this exact symptom out: typing + token usage + no channel post usually means the model produced a private final instead of using the messaging tool.

    Quick workaround:

    {
      messages: {
        groupChat: {
          visibleReplies: "automatic"
        }
      }
    }
    

    Then restart the gateway and try tagging it again.