Skip to content

feat(discord): @everyone/@here should optionally count as a bot mention (allow_user_messages=mentions drops mass pings) #1538

Closed as not planned

Description

@Alexguitar-zz

Problem

With allow_user_messages = "mentions", a user message containing only @everyone (or @here) is silently dropped: is_mentioned = msg.mentions_user_id(bot_id) only checks the mentions[] array, and Discord mass pings populate mention_everyone, not mentions[].

In multi-bot deployments this makes "summon all agents" impossible — users must type every bot mention explicitly (@BotA @BotB @BotC ...). Bot operators commonly want an @everyone ping to wake all online bots.

Current behavior

discord.rs:480  is_mentioned = msg.mentions_user_id(bot_id)
discord.rs:783  if !is_mentioned && !is_dm { AllowUsers::Mentions => return }

@everyone message → is_mentioned = false → dropped before reaching the agent. Verified on 0.10.0-beta.4 release binary (macOS x86_64): 6 bot instances, all silent on @everyone.

Proposal

Either:

  1. Treat msg.mention_everyone as a mention in mentions mode (simplest: is_mentioned = msg.mentions_user_id(bot_id) || msg.mention_everyone), or
  2. Add a config toggle, e.g. [discord] everyone_mentions_bot = true (default false → backward compatible per project rules), or
  3. A new AllowUsers variant that counts mass pings as mentions.

Option 2 preserves existing deployments' behavior exactly while enabling the use case.

Notes

  • Bot-to-bot relays partially work today (allow_bot_messages = "mentions" + trusted_bot_ids): one bot can wake others by @mentioning them in a reply. But the initial human → bots hop still needs an explicit per-bot mention.
  • Happy to test a patch on our 6-bot deployment.

Activity

  1. added
    stale-close-pendingStale-close transaction in progress; recovered on next run if interrupted
    on Oct 4, 2026
  2. github-actions commented on Oct 4, 2026

    @github-actions

    This issue has been open for more than 14 days with no linked pull request, so it is being closed as not planned.

    If this is still needed, please open a new issue with updated context and reference this closed issue instead of reopening it. A linked PR is the strongest signal that the work matters.

  3. added
    auto-closed-staleClosed by stale automation; reopening grants a permanent exemption
    and removed
    stale-close-pendingStale-close transaction in progress; recovered on next run if interrupted
    on Oct 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions