From david-skills
Generate channel-consistent titles, descriptions, and tags for YouTube videos.
How this skill is triggered — by the user, by Claude, or both
Slash command
/david-skills:youtube-content-opsThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Generate titles, descriptions, and tags matching channel brand style.
Generate titles, descriptions, and tags matching channel brand style. All publish actions require user confirmation.
yutu CLI (eat-pray-ai/yutu) — read + write via YouTube APIyoutube_transcript_api CLI (pip install youtube-transcript-api) — transcript fetch onlyAt session start, detect mode:
yutu channel list --output json 2>/dev/null && echo "FULL" || \
(youtube_transcript_api --help >/dev/null 2>&1 && echo "READ_ONLY" || echo "NONE")
yutu command returns an authentication error (e.g., authError, 401, 403), immediately abort the task, report the raw error to the user, instruct them to run yutu auth --credential client_secret.json, and halt execution. Do not retry or attempt manual/automated HTTP scraper workarounds.Check for ./[channel-name]-brand-guide.md. If missing, generate from recent videos and confirm with user. Template: references/brand-guide-template.md.
Full Access:
yutu caption list --videoId VIDEO_ID --output json
yutu caption download --id CAPTION_ID --file /tmp/caption.txt --tfmt srt
Read-Only (extract video ID from URL yourself — supports youtube.com/watch?v=, youtu.be/, shorts/, embed/):
youtube_transcript_api VIDEO_ID --languages en zh --format text
Fallback: ask user for transcript.
From transcript, extract topic, key highlights, target audience, keywords.
Apply brand guide tokens: title_format, title_separator, tone, banned_phrases, primary_tags, footer_full.
Generate:
Present content. Never publish without explicit user confirmation.
Full Access (after confirmation):
yutu video update --id VIDEO_ID --title "Title" --description "Description" --tags "t1,t2,t3"
Read-Only: User copies to YouTube Studio manually.
references/brand-guide-template.md — Brand guide formatreferences/brand-guide-generation.md — Auto-generation from channel historyreferences/yutu-commands.md — Full yutu CLI referencereferences/pre-publish-checklist.md — Review checklistnpx claudepluginhub thedavidweng/skillsUploads videos to YouTube as single videos or numbered series, sets titles/descriptions/custom thumbnails, builds and orders playlists via the YouTube Data API v3 with resumable uploads, OAuth token caching, and idempotent state.
Manages YouTube channels via CLI: upload videos, list/edit metadata, schedule/unschedule, set thumbnails, download private videos, fetch transcripts, generate AI chapters. Use for YouTube upload, scheduling, editing, downloading, transcribing.
Routes YouTube creator requests to 14 sub-skills for channel audits, video SEO, retention scripts, hooks, thumbnails, strategy, calendars, Shorts, analytics, monetization, competitors, repurposing, metadata, and ideas.