All projects
Personal / Discord Bot · Self-Hosted
D&D Session Recorder
A self-hosted Discord bot that records tabletop sessions per speaker, hands the audio to a separate transcriber, and posts the finished transcript back to the channel.
Recording and transcription want opposite machines: recording needs Discord access and almost no CPU, transcription needs a lot of CPU and no network. So the bot only records, and a separate transcriber picks up finished sessions wherever there is CPU to spare.
- Per-speaker recording, written to disk incrementally and fsync-ed every few seconds, so a crash loses almost nothing.
- Handover through a shared filesystem or a Cloudflare R2 bucket, with speaker labels frozen into the session metadata so the transcriber needs no database or Discord access.
- Campaigns: several games on one server, each with its own voice channel, character names, expected names and “heard → correct” fixes.
- Slash commands for sessions, characters, campaigns and private initiative rolls, with admin-only commands for anything that reaches into past sessions.
- Music and soundboard in voice, plus an HTTP API that the web portal drives.
- Runs on the smallest VPS: no GPU, and it idles at a couple of hundred MB of RAM.