5 minutes · one-time setup per campaign
Threadfall can publish your session recaps straight to a Discord channel — the bardic blurb in the channel itself, the full beat-by-beat recap in a thread off the post — and, new in beta, record your sessions: the bot joins your voice channel and transcribes live, with every speaker identified by their Discord account. See Record your sessions below.
Open the install link below in a new tab. Discord will ask you which server to add the bot to, and which permissions to grant. Leave the defaults (Threadfall has pre-selected the minimum permissions it needs).
→ Invite Threadfall bot to your server
The permissions Threadfall asks for:
@here on live-session announce)Installed the bot before July 2026? It predates recording and lacks the voice permissions. Just open the invite link again for the same server — Discord updates the permissions in place, nothing else changes.
If you only want the bot in one specific channel rather than the whole server, you can scope its permissions to a single channel via that channel's Edit Channel → Permissions after the install — Threadfall only ever posts where you tell it to.
You need this to copy the IDs Threadfall asks for. It's a setting on Discord itself, not Threadfall.
With Developer Mode on, Discord gives you a Copy ID option on every server and channel.
#recaps) → Copy Channel ID. Also a 17–20 digit number.Threadfall checks the channel by trying to read it as the bot. If something's off, you'll get a specific error:
If you set Next session in Manage → Next Session, Threadfall will post a "Last time on…" reminder to your recap channel 24 hours before the session starts. The bot pulls the most recent session's blurb so your players walk in with the story already in their heads.
The bot can record your table right in Discord — it joins your voice channel, transcribes live, and hears every player on their own track, so each line of the transcript is attributed to the person who actually said it. No more per-session “Speaker A = who?” labeling.
Trav | Thalen) auto-labels your transcript lines as Thalen — set once, remembered for the whole campaign. Corrections live in the Live screen’s Speakers tab.A Discord-recorded session uses a session from your plan like any other recording. Recording is included on every tier.
Threadfall installs slash commands in any server the bot joins. Type /tf in any channel mapped to a Threadfall campaign (recap, announce, or reveal) and Discord shows the available commands.
/tf-reveal — save an image to your codex from DiscordThe mobile-GM workflow: you see a portrait or location image on your phone mid-prep, drop it straight into the campaign's codex without opening Threadfall on a laptop.
/tf-reveal in any mapped channelGorym Stonefist)Permissions: only the campaign's GM or co-GM can use /tf-reveal. Players running it get an error message.
Reveal vs. recap channel: if you've configured a reveal_channel_id the player-facing post goes there; otherwise it falls back to your recap channel. To set up a dedicated reveal channel, contact us — for now we use the recap channel as fallback.
Codex Lookup & /tf-codex — link your codex into the chatSomeone mentions an NPC and half the table has forgotten who that is? Right-click the message (long-press on mobile) → Apps → Codex Lookup and the bot posts the matching codex entries to the channel — type, name, one-line snippet, portrait, and a link straight to their page on Threadfall. Or ask directly with /tf-codex name:Althea; suggestions appear as you type.
/tf-bard — ask the Bard what your party knowsMid-argument about whether the innkeeper was in on it? /tf-bard question: what do we know about the innkeeper? and the Bard answers from your campaign's own chronicle — recaps, codex, quest log — in his own voice. The same Bardic memory that powers the in-app chat, from any channel of your linked server.
Check the toast at the top of the screen — Threadfall surfaces the actual Discord error. The most common cause is the bot lacking Send Messages permission in the target channel after a channel-permission override.
The bot was able to post the parent message but couldn't open a thread. Grant it Create Public Threads on that channel and re-publish.
You need to link your Discord identity to your Threadfall account once. In Threadfall: Profile → Link Discord → authorize. Then try the command again.
The channel you're in isn't configured as a recap, announce, or reveal channel. Go to Manage → Discord, copy the channel's ID, and paste it into the appropriate field.
Discord caches commands client-side. Press Ctrl+R (Cmd+R on Mac) inside Discord — or quit and relaunch the app — and the command list will refresh.
Go back to Manage → Discord, paste the new channel ID, Save. Past posts aren't moved — only future publishes use the new channel.
Manage → Discord → Clear. Nothing already posted to Discord is touched; future publishes are disabled until you reconnect.
Discord publishing is part of Standard tier and above. If your campaign's primary GM is on the Free or Hobby tier, Save returns a 402 — upgrade in your profile to enable it.