Command Guide
Everything you need to know about using SummaryBot in your Discord server. All commands use Discord's slash command system - type / in any channel to get started.
Summarization
Generate AI-powered summaries and ask questions about your conversations.
/summarizeSummarize channel conversationsGenerates an AI-powered summary of recent messages in a channel. There are no options to type: /summarize always opens an interactive wizard, and the wizard asks four things.
- Which channel: one channel, or All channels. Channels excluded with
/privacy optoutare not offered - How far back: 1h, 6h, 12h, 24h, 3d, 7d, 14d or 30d — plus a Custom box that also accepts
1d - Summary type: Overview, Tasks, or Custom - Custom opens a box where you type what the summary should focus on
- Where the result goes: private to you, a new thread, a DM, or posted here
After generating, you can export the summary as Markdown or PDF. If you have Trello or Notion connected, extracted tasks can be synced directly to your boards.
/askAsk a question about channel discussionsSearch channel messages and get a direct answer with evidence and jump links back to the original messages. Creates a persistent thread so you can ask follow-up questions using the same context.
| Parameter | Required | Description |
|---|---|---|
question | Required | Your question about recent discussions. This is the only option the command takes. |
Everything else is a two-step picker that opens after you send the question. Step 1 asks which channel to search - one channel, or All channels; there is no separate option to type. Step 2 asks how far back to look, from 1 hour to 30 days (or a custom range). There is no default: nothing is searched until you pick a range.
/filesummarizeSummarize a text fileUpload a .txt, .md, or .pdf file and get an AI summary. You can also reply to a message that has a file attachment. Max file size is 2 MB.
| Parameter | Required | Description |
|---|---|---|
file | Optional | Attach a .txt, .md, or .pdf file directly. |
/fileaskAsk a question about a fileUpload a file and ask a specific question about its content. Creates a thread for follow-up questions with cached context, so subsequent questions are fast.
| Parameter | Required | Description |
|---|---|---|
question | Required | Your question about the file. |
file | Optional | Attach a .txt, .md, or .pdf file directly. |
Task Management
Built-in kanban boards for tracking tasks directly in Discord.
/boardView the task boardDisplay the kanban board for the current channel with three columns: To Do, In Progress, and Done. Each task shows a short hex ID you can use with other commands. Includes interactive buttons to add, move, and remove tasks.
/todoAdd a task to the To Do columnQuickly create a new task. After creation, you can optionally assign it to a server member using the dropdown.
| Parameter | Required | Description |
|---|---|---|
description | Required | What needs to be done (trimmed at 200 characters). |
/doneMark a task as completeMove a task to the Done column. Use the task's 6-character hex ID shown on the board. Autocomplete helps you find the right task.
| Parameter | Required | Description |
|---|---|---|
task_id | Required | The 6-character hex ID from the board. |
/autodetectToggle automatic task detectionWhen enabled, messages matching task patterns are automatically added to the board. Detected patterns include:
To Do:,TODO:,Task:,Action Item:Reminder:,Note to self:,Need to:- Unchecked checkboxes:
[ ]or- [ ] - Reply with just
todoto turn any message into a task
Scheduled Summaries & Messages
Automated recurring summaries, or messages you write, posted on your schedule.
/schedule createSet up a recurring summary or messageAn interactive wizard walks you through setting up an automated summary or message:
- Select your timezone - asked once, then skipped for every later schedule in the same server
- Choose what to schedule: a Summary, or a Message you write yourself
- Pick the source: one channel, or All Channels
- Choose how often: Daily, or Weekly (Mon) through Weekly (Sun) - frequency and weekday are the same dropdown
- Type the time of day - 9:30 AM, 14:00 and 8pm all work
- Choose summary type: Digest, Overview, Tasks, or Custom - picking Custom opens a box for what the summary should focus on
- Pick the channel it posts to; each run lands in a new thread there
For a Message, you write the text instead of picking a source and a summary type, then choose how often, the time, and the channel it posts to.
Schedules are DST-aware and automatically adjust for daylight saving time changes.
Scheduled messages
Choose Message in the wizard, or on the dashboard's Schedules tab, and SummaryBot posts text you write, word for word, on the same daily or weekly schedule - a “the sun is rising” at 06:00 for an RPG server, a weekly reminder, a recurring rules post. The time is in the server's timezone when you set it up in Discord, or in whichever timezone you pick on the dashboard. A message can be up to 2,000 characters and is posted straight into the one channel you pick. There is no AI and no token use, so scheduled messages are free on every plan, are never paused for budget, and keep posting after a free trial runs out or a subscription ends. Mentions never ping anyone: @everyone, @here, role and user mentions appear in the text but nobody is notified. Each server can have up to 5 scheduled messages on the free plan and 25 on any paid plan, counted separately from scheduled summaries. SummaryBot needs View Channel and Send Messages in that channel, and the person creating the schedule must be able to see it.
/schedule listView all active schedulesShows all scheduled summaries and messages for the server, with their source channel (or, for a message, the start of its text), destination, frequency, time, and status.
/schedule deleteRemove a scheduleDelete a scheduled summary or message - pick it from the suggestions as you type, each named by its channel and time. Shows a confirmation before deleting.
| Parameter | Required | Description |
|---|---|---|
schedule_id | Required | Pick from the suggestions, listed by channel and time. |
/schedule runExecute a schedule immediatelyRuns the schedule right now without changing its next scheduled time - a summary is generated and posted, a message is posted. Useful for testing or getting an on-demand summary.
| Parameter | Required | Description |
|---|---|---|
schedule_id | Required | Pick from the suggestions, listed by channel and time. |
Integrations
Connect Trello and Notion to sync extracted tasks automatically.
/integrate trelloConnect your Trello workspaceOpens a secure OAuth link to authorize SummaryBot with Trello. After connecting, use /integrate trello-board to select which board and list to sync tasks to. Supports two-way sync - tasks flow between Discord and Trello.
/integrate trello-boardSet target Trello board and listSpecify which Trello board and list to sync extracted tasks to. Automatically sets up a webhook for inbound sync from Trello.
| Parameter | Required | Description |
|---|---|---|
board_id | Required | 24-character Trello board ID. |
list_id | Required | 24-character Trello list ID. |
/integrate notionConnect your Notion workspaceOpens a secure OAuth link to authorize SummaryBot with Notion. After connecting, use /integrate notion-database to select which database to sync tasks to.
/integrate notion-databaseSet target Notion databaseSpecify which Notion database to sync extracted tasks to. Validates that the database exists and has the required properties.
| Parameter | Required | Description |
|---|---|---|
database_id | Required | Notion database UUID. |
/integrate statusCheck integration statusShows which integrations are currently connected and their configuration - account info, target board/database, and sync status.
/integrate trello-disconnectRemove Trello connectionDisconnects Trello, removes stored credentials, and stops task syncing. Previously synced tasks in Trello are not deleted.
/integrate notion-disconnectRemove Notion connectionDisconnects Notion, removes stored credentials, and stops task syncing. Previously synced tasks in Notion are not deleted.
Alerts & Email Digests
Get notified about keywords by DM - or by a role ping in the channel - and receive scheduled email summaries. Alerts can also be created, paused and removed from the Alerts tab of the web dashboard — the same alerts, whichever way you manage them.
/alert addWatch for a keyword, a person, or a botGet DM'd when a word appears in your server, or when a particular member or bot posts in a particular channel — for example, the moment a giveaway bot posts in #giveaways, without watching the channel yourself. Combine any of the three. Keywords use word-boundary matching (case-insensitive); an alert with no keyword fires on the post itself, so a bot that only posts an image still counts. 5-minute cooldown by default, or set it to 0 to hear about every post. DMs include the message context and a jump link.
| Parameter | Required | Description |
|---|---|---|
keyword | Optional | A word to watch for (max 100 characters). Leave empty to alert on any post from the user or channel below. |
user | Optional | Only when this member or bot posts. |
channel | Optional | Only in this channel (threads under it count too). |
role | Optional | Ping this role in the channel instead of DMing you. |
cooldown | Optional | Seconds between alerts. Default 300; 0 for every post. |
/alert listView your alertsShows all your active alerts in the current server - including person and channel alerts with no keyword - with each one's destination, cooldown and creation date.
/alert removeStop watching a keywordRemove one of your alerts. Pick it from the autocomplete list to remove that exact alert - including a person or channel alert with no keyword - or type a keyword to remove every alert of yours watching that word.
| Parameter | Required | Description |
|---|---|---|
keyword | Required | The alert to remove — pick from the list, or type a keyword. |
/digest subscribeSubscribe to email summariesSet up scheduled email digests with an interactive wizard:
- Enter your email address
- Choose frequency: daily, every 12 hours, or weekly
- Pick source channels: all or specific ones (up to 10)
- Optionally add a custom focus (e.g. “engineering decisions only”)
Digest emails include key discussions, decisions, tasks, important dates, announcements, and open questions. Your email is masked in status displays for privacy.
/digest unsubscribeStop receiving email digestsDisables your email subscription. Your settings are preserved so you can re-subscribe later without reconfiguring.
/digest statusCheck your email subscriptionShows your current digest settings: email (masked), frequency, source channels, and custom focus.
Intelligence Reports
Turn a channel or a forum into a feedback report - themes, decisions, bugs - with every count tallied from the messages rather than written by the model. These commands are on the Enterprise plan.
/reportGenerate a feedback themes reportRun the command, then pick the channel(s) to analyze in the menu it opens - picking several pools them, so a topic discussed across three channels becomes one theme. The finished report posts in the channel you ran it from, with the full write-up attached as Markdown and PDF.
| Parameter | Required | Description |
|---|---|---|
days | Optional | How far back to analyze (default 30, capped by your plan's lookback). |
instructions | Optional | What to focus on, in your own words — topics or questions. Use layout for structure. |
since_last_release | Optional | Analyze since your most recent /release instead of a day count. |
from_release | Optional | Analyze between two releases — the earlier one. |
to_release | Optional | The later release. Defaults to now if left blank. |
keyword | Optional | Only analyze messages and posts mentioning this topic. |
style | Optional | Product team (themes + decisions), Community (themes, no decisions), or Bugs-first. |
citation_style | Optional | Quotes grouped inline (default), a Citations section at the end, or none. |
layout | Optional | Structure preset: full (default), signals, or bug triage. |
saved | Optional | Run a saved configuration exactly as stored — start typing to pick one. |
save_as | Optional | Name this configuration so you can re-run it later with saved:. |
Themes are ranked by how many people took a side - the people for plus the people against - so a theme the room rejected, or split down the middle, rises instead of cancelling itself out. The Weight column keeps its sign, so the table says both things at once: what drew attention, and which way it went.
Layouts can also be saved in the Layouts tab of the web dashboard, and a saved layout can carry standing instructions of its own - up to 2,000 characters. Those come first on every run, and whatever you type in the command instructions option is added after them: the layout says what this report always is, the command says what is special about today.
/releaseKeep a release calendar reports can anchor to/release add records a release or event by name and date (YYYY-MM-DD), /release list shows the calendar, and /release remove deletes one by its id. A report set to since_last_release or given a release window anchors to these dates instead of a day count.
/forumgroupReport on a curated set of forum postsGroup related forum posts and analyze them as one subject. create makes an empty group, add and remove move posts in and out, list shows your groups, delete removes one, and run summarizes every post in the group as a single report, delivered to the channel you ran it in.
/engagementChoose which reactions count as positive or negative/engagement view shows the current emoji sets; positive and negative set them, and submitting either one blank resets it to the defaults. Every emoji is always counted — these two sets only set the +/− sign behind a message export's Weight column and a report's for/against split. Most-engaged ranking is distinct people who reacted, and is not configurable from Discord.
/intentsSet the categories digest items are classified into/intents view shows the current categories, set replaces them with your own comma-separated list, and reset puts the defaults back. The weekly digest classifies items into these categories, and the dashboard filters by them.
Privacy & Settings
Control which channels are included, set output language, and manage your data.
/privacy optoutExclude a channel from summariesPrevent a channel from being included in anything SummaryBot reads: summaries, /ask answers, scheduled summaries, Intelligence Reports, newsletters, automatic task detection, and message exports. Takes effect immediately for all future operations. A whole-server export also names every channel it left out, and why, in the manifest it ships with - so an excluded channel is visible as excluded rather than silently missing.
The picker lists your text and announcement channels, your forums and your categories - the ones that are not plain text channels say which they are - ordered the way your Discord sidebar orders them. Exclude a category and every channel, thread and forum post inside it is excluded too — on all of the surfaces above, not exports alone.
| Parameter | Required | Description |
|---|---|---|
channel | Required | What to exclude. The picker lists text and announcement channels, forums, and categories. |
/privacy optinRe-include a channelRestore a previously excluded channel so it's included in summaries again.
| Parameter | Required | Description |
|---|---|---|
channel | Required | The channel to include. |
/privacy listView excluded channelsShows everything currently excluded in the server - every channel, forum and category you have excluded. The same list can be read, added to and undone from the Privacy tab of the web dashboard.
/languageSet the output languageConfigure the language for all AI-generated output including summaries, task extraction, and UI strings. Supports 98 languages including English, Spanish, French, German, Japanese, Korean, Chinese, Arabic, and many more. Autocomplete helps you find the right language.
| Parameter | Required | Description |
|---|---|---|
language | Required | Language code or name (e.g. English, Français, 日本語). |
/language-currentCheck the current languageShows the language currently configured for the server.
/usageView token usage and quotaShows your server's AI token usage: percentage used, remaining tokens, estimated messages, voice call usage, and reset date. Includes a visual progress bar.
/helpView available commandsShows a categorized overview of all commands. Pass a specific command name to get detailed help for that command.
| Parameter | Required | Description |
|---|---|---|
command | Optional | Specific command name for detailed help. |
/glossaryTeach SummaryBot your community's words/glossary add records a term and what it means in your community, remove drops one, list shows the glossary and your community context, and context saves a sentence or two about the server, its tone and what it is about. SummaryBot reads both when it writes summaries and reports, so local jargon is interpreted the way a member would read it. Up to 100 terms; bulk editing lives in the Knowledge Base tab of the dashboard.
/adminBot owner analytics/admin stats and /admin guild report bot-wide and per-server numbers, and they answer only to the SummaryBot operators. It is listed here so nobody spends time hunting for it: there is nothing in this group for a server admin to configure.
Webhooks & Export
Send summaries to external services, download past summaries as files, and export your raw messages to CSV.
/webhook addRegister an outbound webhookRegister a URL to receive POST payloads whenever a summary is generated. Payloads are HMAC-signed and include the summary text, channel info, message count, and timestamp.
| Parameter | Required | Description |
|---|---|---|
url | Required | The webhook endpoint URL. |
label | Required | Short label (e.g. "slack-general", max 50 chars). |
/webhook listView registered webhooksShows all webhooks for the server including their label, URL preview, and enabled/disabled status.
/webhook removeDelete a webhookRemove a webhook by its label. Takes effect immediately.
| Parameter | Required | Description |
|---|---|---|
label | Required | Label of the webhook to remove. |
/webhook testSend a test payloadSend a test event to all configured webhooks to verify they're working. Uses the same signing and format as production payloads.
/exportDownload summaries as filesDownload recent summaries as Markdown or PDF files. You can filter by channel and choose how many summaries to include (1–50). To export the messages themselves rather than a summary of them, use /exportmessages below.
| Parameter | Required | Description |
|---|---|---|
channel | Optional | Filter to a specific channel. |
last | Optional | Number of recent summaries (1-50, default 1). |
/exportmessagesExport raw messages to CSVExports a channel's messages as a CSV - timestamp, author, content, attachments, the most common reaction and its count, a signed engagement Weight, and the thread each message came from - or every channel in the server you can read.
| Parameter | Required | Description |
|---|---|---|
channel | Optional | The channel, forum, thread, or forum post to export. |
days | Optional | How many days back, 1-365 (default 7). There is no all-time export. |
scope | Optional | This channel (default), or every channel in the server. |
layout | Optional | Whole server only: one CSV per channel, or one combined CSV with leading Channel and Channel ID columns. Either way it arrives as a ZIP with a manifest. |
include_threads | Optional | Also export the channel's thread messages (off by default). Forums always export their posts. |
posts_only | Optional | Forums only: one row per recent post — its first message, with the post's total reactions and reply count, so you can sort by what landed. The file says so when it could not fit them all. |
include_attachments | Optional | Bundle the actual image and file attachments alongside the CSV (Enterprise, one channel at a time). |
Nothing is truncated, and export depth is not a plan feature - every plan gets the same 1–365 day window. Past about 20,000 messages the run simply moves to the background: 20,000 is the number above which SummaryBot says something, not a number an export stops at. A background job survives a restart and picks up where it left off; a very large archive stops after six hours and ships what it reached, saying so in the file.
A small single-channel export comes straight back as a file on the command. Anything that ran in the background is delivered by DM with the download link, and waits in the Export tab of the dashboard either way. The link is good for 7 days and the dashboard issues a fresh one when you come back for it; the file itself is deleted 30 days after the export completes, so save it somewhere of your own. The Export tab can also start the same export, and it shows an estimate before the run and progress during it.
A whole-server export ships with a manifest naming every channel that was left out and why - channels opted out via /privacy, and channels you cannot read in Discord, are never included.
Context Menus
Right-click any message with a file attachment to access these actions under Apps.
Summarize FileRight-click → AppsSummarize the first .txt, .md, or .pdf attachment on a message without typing any command.
Ask About FileRight-click → AppsOpens a thread where you can ask questions about a file's content. Follow-up questions are automatically answered using cached context.
NotesBot Integration
If your server also uses NotesBot for voice call recording and transcription, SummaryBot can include those transcripts in your summaries.
How it works
When you run /summarize, SummaryBot automatically checks if any NotesBot voice calls happened during the selected time range. If calls are found, you'll see a prompt with call details - channel, duration, and speakers - and can choose to include or skip the transcripts.
Privacy controls
SummaryBot respects a three-layer access control for voice call data:
- Discord permissions - you must have view access to the voice channel
- Call visibility - private calls are never included; participants-only calls require you to have been a speaker
- Channel opt-out - channels excluded via
/privacy optoutare always skipped
Digest exclusion
Private NotesBot calls are never included in email digests or scheduled summaries - only in interactive /summarize commands where you explicitly choose to include them.
Plans & Usage Limits
Every plan includes the summarization, task, schedule, alert, webhook and export commands, and a message export is never plan-limited — plans differ by monthly usage budget, by how many messages one summary reads, and by how many scheduled messages a server can have: 5 on the free plan, 25 on any paid plan. Intelligence Reports (/report), newsletters (/newsletter) and bundling the actual attachment files into an export are Enterprise.
| Plan | Price | Tokens / month | Max messages per summary | Lookback |
|---|---|---|---|---|
| Free Trial | Free | 500,000 (one-time) | 100 | 7 days |
| Mini | $1/mo | 750,000 | 250 | 7 days |
| Lite | $3/mo | 2,500,000 | 500 | 7 days |
| Starter | $5/mo | 5,000,000 | 1,000 | 7 days |
| Pro | $10/mo | 12,000,000 | 2,000 | 30 days |
| Power | $20/mo | 30,000,000 | 10,000 | 90 days |
| Enterprise | $100/mo | Unlimited | 50,000 | 365 days |
Lookback is the window an Intelligence Report may cover. The /summarize and /ask wizards offer 1 hour to 30 days, or a custom range, on every plan; what the plan sets there is how many messages one run reads. A message export is bounded by the command's own 1–365 days on every plan.