> ## Documentation Index
> Fetch the complete documentation index at: https://docs.jobot.jeppdev.com/llms.txt
> Use this file to discover all available pages before exploring further.

# What is JoBot? AI-powered Discord bot overview

> JoBot is a self-hosted Discord bot combining Claude AI conversations, YouTube and Subsonic music playback, and ElevenLabs text-to-speech.

JoBot is a self-hosted Discord bot built on .NET that brings three capabilities to your server: Claude AI-powered conversations triggered by @mentions, music playback from YouTube and your personal Subsonic library, and ElevenLabs text-to-speech in voice channels. Because you host it yourself, you control the API keys, the system prompt, and per-guild settings like AI temperature and music volume.

<CardGroup cols={2}>
  <Card title="Quickstart" icon="rocket" href="/quickstart">
    Deploy JoBot with Docker Compose in five minutes.
  </Card>

  <Card title="AI chat" icon="message-circle" href="/features/ai-chat">
    How Claude AI conversations work in your server.
  </Card>

  <Card title="Music" icon="music" href="/features/music">
    Stream from YouTube and your Subsonic library.
  </Card>

  <Card title="Text-to-speech" icon="volume-2" href="/features/text-to-speech">
    ElevenLabs voice playback in voice channels.
  </Card>
</CardGroup>

## 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 `/settings` slash 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](https://discord.com/developers/applications). 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](https://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.
