mirror of
https://github.com/SillyTavern/SillyTavern-YouTube-Videos-Server.git
synced 2026-11-05 00:37:42 +00:00
Server plugin to extract a direct URL to a YouTube video using the yt-dlp library.
- TypeScript 87.5%
- JavaScript 12.5%
| dist | ||
| src | ||
| .eslintrc.js | ||
| .gitignore | ||
| LICENSE | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| tsconfig.json | ||
| webpack.config.js | ||
SillyTavern YouTube Player
Also check out a companion UI extension! SillyTavern-YouTube-Videos-UI
Server plugin to extract a direct URL to a YouTube video using the yt-dlp library.
How to use
Tip
Both endpoints also support providing the URL as a query parameter.
Video URL
Send a message containing a video element with the source URL pre-wrapped with /api/plugins/youtube/play/.
For example
<video src="/api/plugins/youtube/play/https://youtu.be/zFfL0y3zyfc" autoplay controls></video>
Video info
Query the GET /api/plugins/youtube/info/ endpoint to fetch the video info.
interface VideoInfo {
id: string;
title: string;
url: string;
thumbnail: string;
duration: number;
description: string;
uploader: string;
view_count: number;
upload_date: string;
}
Example: GET /api/plugins/youtube/info/https://youtu.be/zFfL0y3zyfc.
How to install
-
Before you begin, make sure you set a config
enableServerPluginstotruein the config.yaml file of SillyTavern. -
Open a terminal in your SillyTavern directory, then run the following:
cd plugins
git clone https://github.com/SillyTavern/SillyTavern-YouTube-Videos-Server
- Restart the SillyTavern server. The yt-dlp binary will be automatically downloaded from GitHub when you start the first video.
How to build
Clone the repository, then run npm install.
# Debug build
npm run build:dev
# Prod build
npm run build
License
AGPLv3