Snippy
Snippy is a Twitch clip queue overlay for OBS. Moderators queue clips from chat with commands like !watch and !skip, and the overlay handles playback, transitions, and queueing in a browser source. It reads chat through Streamer.bot first and falls back to direct Twitch chat, with optional AFK and BRB playback modes.
Platforms: OBS browser source, Web
Product page: desertice.tech/products/snippy
Who it’s for: Twitch streamers and their moderators who use OBS
Features
Section titled “Features”- Plays queued Twitch clips in an OBS browser source
- Moderator chat commands: !watch, !skip, !stop, !mute, !unmute, !so
- Streamer.bot chat input with automatic fallback to direct Twitch chat
- AFK mode loops your channel clips; BRB mode plays a Pastebin clip list
- Optional progress bar and clip metadata overlays, color theming, and fade transitions
- Stream Deck-style control via Streamer.bot websocket action pack
- Configurable clip delay, prefetch buffer, and per-clip fade
- OAuth Twitch login with server-side rate limiting and bot detection
Requirements
Section titled “Requirements”- OBS Studio with a Browser Source
- StreamerBot with its WebSocket server enabled (optional; Snippy falls back to direct Twitch chat after ~20 seconds)
- A Twitch account for OAuth login
- Moderator or higher to run chat commands
Install
Section titled “Install”- Add a Browser Source in OBS
- Set the URL to https://snippy.chat/ (or your own deployment)
- Set source dimensions to match your canvas (e.g. 1920x1080)
- Enable “Shutdown source when not visible”
- Right-click the source, choose Interact, and click “Login with Twitch”
- Point the overlay at your StreamerBot websocket with ?host=X&port=Y (defaults 127.0.0.1:8080)
- Add flags such as progress (progress bar), metadata (clip ID overlay), fade (transitions), and color (accent color)
- Tune playback with delay (0-30 seconds between clips) and prefetch (1-20 clips)
- For AFK screens add ?afk=all or ?afk=featured; for a curated list add ?brb=
(afk and brb are mutually exclusive) - Add ?shoutout to enable the !so command (disabled while AFK or BRB mode is active)
- A beta channel is available at https://preview.snippy.chat/ if you want upcoming changes
Using it
Section titled “Using it”- Mods queue a clip with !watch <clip_url> (clips.twitch.tv/
or twitch.tv/ /clip/ ) - !watch with no argument queues the most recent clip seen in chat
- !skip ends the current clip and plays the next one; !stop ends the clip and clears the whole queue (ignored in AFK/BRB modes)
- !mute and !unmute control playback audio
- !so
queues a random featured clip from another user when ?shoutout is set - Watch the bottom-left status dot: cyan = StreamerBot connected, purple = Twitch direct chat fallback, yellow pulsing = connecting, red pulsing = all connections failed
Troubleshooting
Section titled “Troubleshooting”StreamerBot won’t connect
Section titled “StreamerBot won’t connect”Ensure StreamerBot is running with WebSocket Server enabled, check that the host/port query params match your StreamerBot settings, and remember Snippy automatically falls back to Twitch chat after 20 seconds.
Twitch chat fallback not working
Section titled “Twitch chat fallback not working”Make sure you are logged in (click “Login with Twitch” if prompted) and that your Twitch authentication is valid and not expired or revoked.
Clips won’t play
Section titled “Clips won’t play”Make sure you’re logged in, the broadcaster allows clip playback/downloads, and the clip URL format is supported. Check the browser console and function logs for Twitch API errors.
The login prompt keeps reappearing
Section titled “The login prompt keeps reappearing”Clear the browser cache and site data for the source URL, re-authenticate via Twitch OAuth, and confirm the deployment uses the correct Twitch client ID and secret.
When should a mod use !skip instead of !stop?
Section titled “When should a mod use !skip instead of !stop?”!skip ends the playing clip and moves to the next queued clip. !stop ends the clip and discards everything queued behind it; use it when a run of requests needs to end immediately.
Can Streamer.bot trigger Snippy without chat?
Section titled “Can Streamer.bot trigger Snippy without chat?”Yes. Every chat command has a matching Streamer.bot action (Snippy.Watch, Snippy.Skip, Snippy.Stop, Snippy.Mute, Snippy.Unmute, Snippy.Shoutout) that broadcasts over the Streamer.bot websocket, e.g. from a Stream Deck button or raid trigger.
Do clips from other channels play differently?
Section titled “Do clips from other channels play differently?”Clips from the broadcaster’s own channel play directly; clips from other channels use Twitch embed behavior, which may behave slightly differently.