Contents

Platforms

YouTube

The YouTube adapter follows the active broadcast chat and skips messages that were already in the chat when it started.

Minimal configuration

SectionRequired fields
youtubelive_chat_id, client_id, client_secret, refresh_token, bot_channel_id
twitchKeep channels empty for a YouTube-only setup
{
  "twitch": {"channels": []},
  "youtube": {
    "live_chat_id": "auto",
    "client_id": "<oauth-client-id>",
    "client_secret": "${YOUTUBE_CLIENT_SECRET}",
    "refresh_token": "${YOUTUBE_REFRESH_TOKEN}",
    "bot_channel_id": "<bot-channel-id>"
  }
}

For a YouTube-only setup, keep twitch.channels empty.

Browser sign-in with setup

Run go run . -setup -config ./client/config.json from packages/bridge and choose YouTube. Create a Desktop app OAuth client and enable YouTube Data API v3. Setup opens an authorization URL; open it in a browser on the same machine, sign in as the channel that will post replies, and allow access. Enter the bot channel ID when prompted.

Chat behavior

Set live_chat_id to auto to follow the active broadcast. The bot channel ID lets the adapter ignore its own messages; leave it empty when the bot posts from the same account used to authorize. Messages already present when the bridge starts are skipped.