youtube-content
YouTube transcripts to summaries, threads, blogs, and video uploads.
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
YouTube transcripts to summaries, threads, blogs, and video uploads.
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
Voxtral TTS: Mistral voice cloning and text-to-speech via API.
Analyse SEO de mots-clés et scoring de contenu via NeuronWriter API. Automate your SEO pipeline from keyword research to WordPress publishing.
Générer des photos réalistes de personnes via PhotoGPT AI — portraits, headshots, mises en scène — en utilisant des modèles personnels entraînés (ex: modèle personnel) ou des modèles publics. Upload possible dans Mural via le flow assets.
Créer, lire, modifier et organiser des murals (tableaux de collaboration visuelle mural.co) via l'API Mural — workspaces, rooms, widgets (stickies, formes, textes, images, connecteurs).
Créer des mises en page WordPress pro avec WPBakery — shortcodes + REST API (your WordPress sites).
Gère les listes email, contacts, campagnes et automatisations SendFox via l'API. Intégration avec WooCommerce, WordPress et workflows marketing.
| name | youtube-content |
| description | YouTube transcripts to summaries, threads, blogs, and video uploads. |
| platforms | ["linux","macos","windows"] |
Use when the user:
Transforms transcripts into structured content (chapters, summaries, threads, blog posts) and handles video uploads via YouTube API.
pip install youtube-transcript-api google-api-python-client google-auth-oauthlib
SKILL_DIR is the directory containing this SKILL.md file. The script accepts any standard YouTube URL format, short links (youtu.be), shorts, embeds, live links, or a raw 11-character video ID.
# JSON output with metadata
python3 SKILL_DIR/scripts/fetch_transcript.py "https://youtube.com/watch?v=VIDEO_ID"
# Plain text (good for piping into further processing)
python3 SKILL_DIR/scripts/fetch_transcript.py "URL" --text-only
# With timestamps
python3 SKILL_DIR/scripts/fetch_transcript.py "URL" --timestamps
# Specific language with fallback chain
python3 SKILL_DIR/scripts/fetch_transcript.py "URL" --language tr,en
# List accessible YouTube channels
python3 SKILL_DIR/scripts/list_channels.py --token youtube-token-chaine2.json
# Upload a video with metadata
python3 SKILL_DIR/scripts/upload_video.py \
--token youtube-token-chaine2.json \
--file video.mp4 \
--title "Your Video Title" \
--description "Detailed description with links." \
--tags "tag1,tag2,tag3" \
--category 27 \
--privacy unlisted \
--thumbnail thumbnail.png
# Note: Tokens in /home/ubuntu/.hermes/google/youtube-token-*.json are now complete with client_id, client_secret, and token_uri
# Token naming convention: youtube-token-{channel-name}.json (e.g., youtube-token-contesenchantes.json, youtube-token-CHANNEL_NAME.json)
After fetching the transcript, format it based on what the user asks for:
00:00 Introduction — host opens with the problem statement
03:45 Background — prior work and why existing solutions fall short
12:20 Core method — walkthrough of the proposed approach
24:10 Results — benchmark comparisons and key takeaways
31:55 Q&A — audience questions on scalability and next steps
--text-only --timestamps.--language to get any available transcript. If still empty, tell the user the video likely has transcripts disabled.scripts/list_channels.py to confirm the token has upload permissions.ffmpeg -loop 1 -i image.png -i audio.mp3 -c:v libx264 output.mp4).scripts/upload_video.py with the prepared metadata.Example cleanup:
# After successful upload
if result.returncode == 0:
os.remove(video_path)
# Also clean up temporary files in the working directory
for temp_file in ['index.html', 'composition.js', 'audio.mp3', 'vignette.webp']:
if os.path.exists(temp_file):
os.remove(temp_file)
--language to fetch any available transcript, then note the actual language to the user.pip install youtube-transcript-api google-api-python-client google-auth-oauthlib and retry.youtube.upload).scripts/list_channels.py to test access.ffmpeg.unlisted first to avoid public mistakes.