Skip to content

Discord parity: forum/media posting + multi-bot agent routing #131

@adhikjoshi

Description

@adhikjoshi

Problem

Spacebot’s Discord adapter is strong for channels/threads, but it still misses a few practical features that OpenClaw users rely on in community servers.

Gaps

  1. Forum/media parent posting flow is missing

    • Current implementation creates PublicThread for OutboundResponse::ThreadReply and falls back to plain message on failure.
    • There is no explicit handling for Discord forum/media parent channels where posting requires creating a thread-with-starter message.
    • In practice this means forum workflows are inconsistent compared to regular channels.
  2. No named multi-bot adapter support yet

    • Current config exposes a singleton messaging.discord.token.
    • There is a design doc for named adapters, but this is not implemented.
    • This blocks setups with multiple Discord bots mapped to different agents in one Spacebot instance.
  3. Agent-level mention routing is too limited for multi-agent Discord communities

    • Routing is currently binding-first and first-match-wins.
    • Mention gating is bot-level (@this bot / reply-to-bot), not agent-level (@agent-A, @agent-B with separate bot identities or adapter keys).
    • This makes “10 agents in one Discord server, mention to route” hard to operate cleanly.

Requested parity behavior

  • Support forum/media channel send semantics:
    • If target is a forum/media parent, create a thread post with starter content.
    • Keep thread title derivation predictable (e.g. first non-empty line fallback).
  • Implement named Discord adapter instances (default + named), and allow bindings to choose adapter instance.
  • Preserve backward compatibility for existing single-token config.
  • Expose clear routing behavior when multiple bindings/agents are in the same guild.

Suggested acceptance criteria

  • Sending to a forum/media parent creates a valid forum thread post.
  • Multiple Discord bot tokens can run simultaneously on one instance.
  • bindings can target both agent_id and adapter instance deterministically.
  • Mention routing docs cover multi-agent patterns and edge-cases.

Why this matters

These are core migration blockers for OpenClaw users running larger Discord communities, where forum workflows and multi-bot/multi-agent routing are essential.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions