Fix OpenClaw Discord requireMention: Bot Ignoring Messages
OpenClaw was previously known as Clawdbot and Moltbot. This guide applies to all versions.
Fix OpenClaw Discord requireMention so your bot responds to all messages or only mentions. Covers config options, thread behavior, allowBots, and per-channel workarounds.
Key takeaways
requireMentiondefaults totruein OpenClaw Discord. Your bot only responds when @mentioned or when someone replies directly to one of its messages. Set it tofalseto respond to all messages.- When requireMention blocks a message, the logs show a drop line. No reply, no error from Discord's side, just silence and a dropped entry.
- requireMention is global. OpenClaw doesn't support per-channel overrides on a single bot account. Run a second bot with a different config if you need different behavior per channel.
allowBots: falseis the default. Your bot ignores messages from other Discord bots. EnablingallowBots: trueopens the door to feedback loops if two bots respond to each other.
Your OpenClaw Discord bot responds to some messages and ignores others with no error in the logs. That's requireMention in action. By default, OpenClaw only triggers on @mentions. Change one config key to fix it.
Always review commands your agent suggests before approving them. Don't paste prompts from sources you don't trust.
Fixes when it breaks. Workflows when it doesn't.
OpenClaw guides, configs, and troubleshooting notes. Every two weeks.
What requireMention does in OpenClaw Discord
With requireMention: true (the default), OpenClaw processes a Discord message only if it meets one of two conditions:
- The message directly @mentions the bot by username.
- The message is a reply to one of the bot's own messages.
Every other message gets dropped. You'll see it in the logs while sending a test message:
[discord] drop (requireMention) – no mention detected, message 1234567890123456789This behavior is intentional. In a busy server, an agent that responds to everything becomes noise fast. The mention requirement keeps it targeted.
The tradeoff: users have to know to @mention the bot. In a dedicated bot channel where people expect it to respond to everything, this is confusing. That's when you'd disable it.
One thing to verify before changing the config: if the bot isn't responding at all, even to direct mentions, requireMention probably isn't the cause. Check pairing approval and intent configuration first. The silent bot diagnosis guide covers that flow.
How to turn off requireMention for your OpenClaw Discord bot
Open ~/.openclaw/config/config.json and set requireMention to false under your Discord account:
{
"channels": {
"discord": {
"accounts": {
"default": {
"requireMention": false
}
}
}
}
}Restart the gateway:
openclaw gateway restartWatch the logs and send a plain message in an allowed channel without @mentioning the bot:
openclaw logs --followYou should see a received message line and then a response. If you still see a drop line, check that the channel and guild are in your allowlist. See the channel and guild allowlist guide if they're not.
Setting requireMention: false applies globally across every channel the bot can access. There's no built-in way to turn it off in one channel and leave it on in another using a single bot account.
How requireMention works in Discord threads and forums
Regular channels, threads, and forum posts each behave slightly differently.
In a standard server channel, the behavior is straightforward. With requireMention: true, the bot responds to @mentions and replies to its own messages. Everything else gets dropped.
Threads inherit the same rule. A reply inside a thread still needs to @mention the bot unless requireMention is disabled. One exception: if the bot starts the thread itself, replies to that thread count as replies to the bot's message and trigger a response without a mention.
Forum channels are where it gets more interesting. Each forum post opens its own thread. With requireMention: true, the bot ignores the opening message of a forum post unless it contains a mention. Set requireMention: false and the bot responds to every new post in the forum automatically. That's useful for a support forum where every new post should generate a response, but it's disruptive in a community forum where people post off-topic content.
There's also a Discord quirk with threads: if a user @mentions the bot in a thread, Discord only delivers that mention to the bot if the bot is following the parent channel or has been added to the thread. If the bot isn't receiving @mentions in threads, check that it has "Send Messages in Threads" permission in the parent channel. The permissions guide covers the full permission setup.
How to stop your OpenClaw Discord bot from responding to other bots
OpenClaw ignores messages from other Discord bots by default. This prevents the most obvious failure mode: two bots that respond to each other until Discord cuts them off.
When another bot sends a message, your logs show:
[discord] drop (allowBots: false) – sender is a bot, message ignoredIf you have a legitimate reason to let your bot respond to bot messages (a workflow where one bot hands off a task to another, for example), set allowBots: true:
{
"channels": {
"discord": {
"accounts": {
"default": {
"allowBots": true
}
}
}
}
}Restart the gateway:
openclaw gateway restartBefore enabling this, think through the loop scenario. If bot A responds to bot B, and bot B responds to bot A, and neither has filtering logic in its system prompt, you'll get a message loop. Discord rate limiting will stop it eventually, but not before the channel fills with garbage.
The safer alternative for bot-to-bot workflows is a shared API or webhook rather than chat messages. Keep allowBots: false unless you have a specific, tested reason to change it.
FAQ
Does requireMention apply to DMs or only server channels in OpenClaw Discord?
DMs are exempt. When a user sends your OpenClaw bot a direct message on Discord, requireMention doesn't apply. The bot responds to every DM regardless of this setting. The mention requirement only applies to messages in server channels, threads, and forum posts. If your bot isn't responding to DMs, requireMention isn't the cause. Check pairing approval and the guild allowlist first.
Can I set requireMention per channel instead of globally in OpenClaw Discord?
Not with a single bot account. The requireMention setting applies to the entire bot account. If you need different behavior in different channels, you have two options.
The first option is running two separate OpenClaw bot accounts with separate configs. One with requireMention: true for general channels, one with false for a dedicated bot channel. Restrict each to its intended channels using the channel allowlist. See the channel and guild allowlist guide for that setup.
The second option is leaving requireMention: false globally and using Discord's native channel permissions to block the bot from channels where you don't want it responding to everything. See the permissions guide for how to configure that.
My bot responds to every message after I disabled requireMention. How do I limit it to one channel?
That's expected. With requireMention: false, the bot responds to everything it can see. To restrict it to one channel, add a channels allowlist to your config alongside the requireMention setting:
{
"channels": {
"discord": {
"accounts": {
"default": {
"requireMention": false,
"channels": ["YOUR_CHANNEL_ID_HERE"]
}
}
}
}
}Replace YOUR_CHANNEL_ID_HERE with your channel's numeric ID. To find it, enable Developer Mode in Discord (User Settings > Advanced > Developer Mode), then right-click the channel and select "Copy Channel ID." Restart the gateway after updating the config.
For managing allowlists across multiple channels and servers, see the channel and guild allowlist guide.
What happens if two OpenClaw bots with allowBots enabled are in the same server?
They'll respond to each other's messages. Bot A replies to something. Bot B sees bot A's reply, treats it as a message worth responding to, and fires back. Bot A sees that and responds again. The loop runs until Discord's rate limiter kicks in and throttles one or both bots.
The only way to make this safe is writing agent-level prompt logic that tells each bot to ignore messages from the other bot's username. Even then, it's fragile. If the filtering logic doesn't match the bot's exact display name, the loop restarts.
If you're building a workflow that needs two bots to coordinate, a webhook or external API call is more reliable than two bots chatting in Discord.
Changelog
- 2026-03-07: Created (split from fix-openclaw-discord-errors)
Fixes when it breaks. Workflows when it doesn't.
OpenClaw guides, configs, and troubleshooting notes. Every two weeks.



