DocsBot IntegrationsOverview

Bot Integrations

Bot Integrations turn your agent into a two-way conversational presence on chat platforms. Instead of only sending outbound messages via tools, the agent can listen for mentions and DMs, hold a multi-turn conversation, and use any of its tools to respond — all from inside Discord or Slack.

What it gives you

A bot integration is the difference between an agent that sends notifications and an agent you can actually talk to from Slack or Discord. Once enabled, the bot:

  • Replies in real time when @mentioned in any channel it's in
  • Holds private 1:1 DMs with authorized users
  • Persists conversation history per channel — threaded back-and-forth keeps context
  • Has access to all the agent's tools for authorized users; public bot-mode users get no tools
  • Can be locked down to an authorized user list — strangers get a different (limited) prompt instead of full agent access
  • Emits inbound events (discord.mention_received, slack.mention_received, etc.) so you can wire automations off them

Common use cases

Use caseExample
Personal status helperDM the bot "what did I finish yesterday?" — it reads your task page, summarizes, and replies in Slack.
Weekly review helper@mention in #journal with "summarize what I shipped this week" — it pulls from your task page and posts a digest.
Knowledge conciergeDM the bot to ask questions answered from your personal RAG knowledge base.
Automation routerUse slack.mention_received as an automation trigger to kick off custom workflows.
Cross-tool dispatcher"@bot create a Notion page from this thread, then post the link in #ideas" — one message, multiple tools.
Scoped public botAuthorized users get full agent access; everyone else gets a narrow shared bot prompt.

How this differs from the Integrations pages

There are two layers to chat platform support and they often confuse new users. They build on the same credential but do opposite things:

LayerDirectionWhat it gives you
Integrations → Slack / Discordagent → platformThe outbound tool set (slack_send_message, discord_create_thread, etc.). The agent uses these when it decides to act on the platform during a chat in the web UI.
Bot Integrations → Slack Bot / Discord Botplatform → agentThe persistent gateway connection that lets people in Slack/Discord talk to the agent via @mentions and DMs. Authorized users can use full agent tools; public bot-mode users get restricted text replies.

They build on each other. The Bot layer requires the Integration layer to be enabled too — replies are posted using the outbound tools (e.g. slack_send_message) and both layers share the same credential.

  • Want notifications only? Enable just the Integration. The agent can post to channels from the web UI but no one can chat back.
  • Want a two-way bot? Enable the Integration and the Bot Integration. The Integration page is step 1 (connect Slack/Discord); the Bot page is step 2 (turn on the conversational layer on top).

How the gateway works

Both Discord and Slack bots use a persistent WebSocket gateway (no public webhook URL required, no ngrok). Inbound messages route through Convex into a per-channel conversation, the agent runs against the same pipeline as the chat UI, and replies are posted back to the original channel (or thread).

Slack vs Discord — small but real differences:

DiscordSlack
Tokens neededOne bot tokenBot token + app-level token (xapp-)
Inbound transportDiscord Gateway WebSocketSocket Mode WebSocket
Authorized-user identifierUsername (case-insensitive)User ID (stable across renames)
DM enablementWorks automaticallyRequires App Home → Messages Tab + checkbox
Special intent/scopeMESSAGE CONTENT INTENT in Dev Portalapp_mentions:read + im:history scopes

Authorization is per-agent: you maintain a list of user identifiers who get "agent" mode (full system prompt + every enabled tool). Anyone else gets "bot" mode — a restricted shared bot prompt by default, optionally overridden per platform with a different model. Bot mode has no tools, pages, memory, documents, schedules, automations, or integration guides. This keeps personal agent context private unless you explicitly authorize someone.

Pick a platform