Quickstart
Deploy JoBot with Docker Compose in five minutes.
AI chat
How Claude AI conversations work in your server.
Music
Stream from YouTube and your Subsonic library.
Text-to-speech
ElevenLabs voice playback in voice channels.
Key features
- Claude AI chat — @mention JoBot or reply to it to start a conversation. JoBot maintains per-guild message history and supports a customizable system prompt.
- YouTube music — Ask JoBot to search for and play songs from YouTube directly in a voice channel.
- Subsonic music — Connect your personal Subsonic server so JoBot can search, play random tracks, and manage share links from your private library.
- ElevenLabs TTS — JoBot can speak responses aloud in a voice channel using your ElevenLabs API key and chosen voice.
- Per-guild settings — Server admins can tune AI temperature, conversation history length, and music volume using
/settingsslash commands. - SQLite persistence — Guild settings and conversation state are stored in a local SQLite database, so nothing is sent to a third-party database.
What you need
Before deploying JoBot, make sure you have:- Docker and Docker Compose — JoBot ships as a container image; no .NET installation required.
- Discord bot token — Create an application and bot at the Discord Developer Portal. Enable the Message Content intent and grant voice channel permissions.
- Anthropic API key — Required for all AI chat functionality. Sign up at console.anthropic.com.
- Lavalink passphrase — A passphrase you choose yourself, shared between the JoBot container and its Lavalink sidecar for audio routing.
- Subsonic credentials (optional) — Base URL, username, and password for your Subsonic-compatible music server.
- ElevenLabs API key and voice ID (optional) — Required only if you want text-to-speech in voice channels.