YouTube Daily Digest: Auto Monitor & Summary 🥥Meow

v1.0.0

A Python bot that monitors YouTube channels via RSS, summarizes new videos using Google Gemini AI (with audio fallback for videos without subtitles), and sen...

1· 153·0 current·0 all-time

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for inkiy/youtube-daily-digest-bot.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "YouTube Daily Digest: Auto Monitor & Summary 🥥Meow" (inkiy/youtube-daily-digest-bot) from ClawHub.
Skill page: https://clawhub.ai/inkiy/youtube-daily-digest-bot
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install youtube-daily-digest-bot

ClawHub CLI

Package manager switcher

npx clawhub@latest install youtube-daily-digest-bot
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
medium confidence
Purpose & Capability
The skill's requested capabilities (GEMINI_API_KEY, TG_BOT_TOKEN, TG_CHAT_ID) and included Python modules (google-genai, yt-dlp, youtube-transcript-api, requests) are consistent with a bot that fetches transcripts/audio, calls Gemini for summarization, and posts to Telegram. However, the registry metadata incorrectly lists no required environment variables or primary credential while SKILL.md and config.py require them.
Instruction Scope
SKILL.md and the code limit actions to: polling YouTube RSS, reading/writing a local db.json, fetching transcripts or downloading audio with yt-dlp, uploading audio/text to Google Gemini, and sending messages to Telegram. The instructions are explicit about which secrets are required. Notable runtime behaviors: audio files are downloaded to disk (temp_audio) and uploaded to Google; processed video IDs are persisted to db.json.
Install Mechanism
No special install mechanism is bundled; the README recommends using pip install -r requirements.txt. Dependencies are from PyPI (google-genai, yt-dlp, etc.). No downloads from arbitrary URLs or extract/install steps were found.
Credentials
The required environment variables (Gemini API key and Telegram bot token/Chat ID) are proportionate and necessary for the described functionality. However, registry metadata incorrectly claims 'none' for required env vars/primary credential — this mismatch should be resolved before trusting automated install/permission tooling.
Persistence & Privilege
The skill does not request platform-wide persistence or elevated privileges. It writes its own db.json and temporary audio files and does not modify other skills or system-wide settings. always:false and normal autonomous invocation settings are used.
Assessment
This skill appears to do what it says: it polls YouTube RSS, extracts transcripts or downloads audio, uploads content to Google Gemini for summarization, and posts summaries to a Telegram chat. Before installing: 1) Be aware you must provide GEMINI_API_KEY, TG_BOT_TOKEN, and TG_CHAT_ID — these are necessary and will be used to talk to Google and Telegram. 2) The bot will download audio to temp_audio/ and persist processed IDs in db.json; run it in a dedicated directory and ensure you are comfortable with audio and transcripts being uploaded to Google. 3) The registry metadata incorrectly omits the required secrets/primary credential — treat that as a configuration/packaging bug; verify env handling in config.py rather than relying on registry declarations. 4) Run the code in a controlled environment (non-root) and inspect or audit logs if you plan to run continuously. If you need higher assurance, rotate tokens/keys after testing and consider restricting the Telegram chat to a test group.

Like a lobster shell, security has layers — review code before you run it.

latestvk976knqrfyxv6410xkgf42vdeh834t4s
153downloads
1stars
1versions
Updated 1mo ago
v1.0.0
MIT-0

YouTube 每日视频总结 Telegram 机器人

This skill deploys a YouTube monitoring bot that:

  1. Polls configured YouTube channels via RSS feed (no API key needed for this step)
  2. Extracts video transcripts using youtube-transcript-api
  3. Falls back to audio download via yt-dlp if no subtitles are available
  4. Summarizes content using Google Gemini 2.5 Flash (supports both text and audio input natively)
  5. Sends a beautifully formatted bilingual (Chinese + English) summary to Telegram

Prerequisites

You need these three secrets configured in your environment:

  • GEMINI_API_KEY — from Google AI Studio
  • TG_BOT_TOKEN — from Telegram @BotFather
  • TG_CHAT_ID — your personal or group Telegram chat ID

File Structure

FilePurpose
config.pyAll configuration, API keys, and YouTube channel settings
youtube_monitor.pyRSS polling and local deduplication via db.json
extractor.pyTranscript fetching or audio download fallback
ai_summarizer.pyGemini API integration (text + audio)
tg_notifier.pyTelegram message delivery with chunking
main.pyMain entry point with daily 8:00 AM scheduling
requirements.txtAll Python dependencies

Setup & Usage

Step 1: Configure channels and secrets

Edit config.py and add your API keys and the YouTube Channel IDs you want to monitor:

YOUTUBE_CHANNELS = {
    "UCxxxxxxxxxxxxxxxxxxxxxx": "Channel Name Here"
}

Step 2: Install dependencies

pip install -r requirements.txt

Step 3: Run

For a one-off immediate check:

python main.py

For long-running background mode (runs daily at 8 AM Izmir time):

nohup python main.py > bot.log 2>&1 &

How to Find a YouTube Channel ID

  1. Go to the YouTube channel page
  2. Click the channel name, then go to About
  3. Click "Share Channel" and copy the link — the ID starts with UC...
  4. Or use commentpicker.com/youtube-channel-id.php

Notes

  • The bot tracks processed videos in db.json so it never sends duplicate summaries
  • If Gemini API is not configured, the bot will fail gracefully with a clear error message
  • Long videos with audio fallback may take 1–2 minutes to upload and process

Comments

Loading comments...