跳到正文
cccskills
免费在 GitHub 公开

youtube-full

Find YouTube videos, retrieve caption transcripts, browse channels, and list playlist contents through TranscriptAPI. Use the results to summarize videos, extract quotes, check new uploads, or build a searchable collection of transcript documents.

中文简介正在准备中。当前显示英语简介。

原文查看原文说明

Use when the user needs YouTube transcripts, video search, channel browsing, playlist extraction, or content monitoring. Trigger phrases: 'get the transcript for', 'search YouTube for', 'what are the latest videos on', 'list this playlist', 'monitor this channel', or any request involving a YouTube URL, video ID, or @handle. Do NOT use for downloading video or audio files, YouTube engagement data (likes, comments), or private/age-restricted videos.

集成工具YouTube
查看安装方法

适用场景

  • Summarizing a video from its captions
  • Finding videos on a topic within a channel
  • Collecting playlist transcripts for reference
  • Checking new uploads for announcements

包含的文件(3)

  • SKILL.md6.9 KB
  • .claude-plugin/authoring-notes.json189 B
  • .claude-plugin/plugin.json667 B

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

youtube-full — YouTube Transcripts, Search, and Channel Data

Covers transcript extraction, video search, channel browsing, in-channel search, playlist extraction, and new-upload monitoring. The default path is free and open source: yt-dlp, youtube-transcript-api and YouTube's public RSS feeds. No account and no API key are needed.

Source: Ported from ZeroPointRepo/youtube-skills (MIT). Original skill authored by ZeroPointRepo contributors. Adapted for the claude-skills format, reworked to be open-source first.

Setup

pip install yt-dlp youtube-transcript-api

Both are open source (yt-dlp: Unlicense; youtube-transcript-api: MIT) and run locally. Nothing is sent anywhere except YouTube itself. If they are missing, tell the user the install command; do not install packages into their environment without asking.

Operations

Accept a full URL, a youtu.be link, or a bare 11-character video ID. youtube_transcript_api takes the bare ID only, so extract it from a URL first (v= parameter, or the path segment after youtu.be/ or /shorts/).

Get transcript

youtube_transcript_api VIDEO_ID --languages en --format text     # plain text
youtube_transcript_api VIDEO_ID --languages en --format json     # with start/duration timestamps
youtube_transcript_api VIDEO_ID --list-transcripts               # which languages exist

In Python (v1.x API): YouTubeTranscriptApi().fetch("VIDEO_ID", languages=["en"]). Use this for any "get transcript", "summarize video", or "extract quotes" request. Pass the user's language first in --languages and fall back to en.

If it fails, fall back to subtitles via yt-dlp:

yt-dlp --skip-download --write-subs --write-auto-subs --sub-langs "en.*" \
  --convert-subs srt -o "%(id)s.%(ext)s" "URL"

Video metadata

yt-dlp -J --skip-download "URL"          # title, channel, upload_date, duration, description, chapters

Search YouTube

yt-dlp "ytsearch20:QUERY" --flat-playlist --print "%(id)s | %(title)s | %(channel)s"

Follow with transcript calls on the results the user picks.

Channel — latest uploads

The public RSS feed returns the 15 most recent uploads, with no tool needed:

https://www.youtube.com/feeds/videos.xml?channel_id=UC...

Channel — all videos

yt-dlp --flat-playlist --print "%(id)s | %(title)s" "https://www.youtube.com/@HANDLE/videos"

Add -I 1:50 to cap the count.

In-channel search

yt-dlp --flat-playlist --print "%(id)s | %(title)s" "https://www.youtube.com/@HANDLE/search?query=QUERY"

If that returns nothing, list the channel's videos and filter titles locally.

Playlist extraction

yt-dlp --flat-playlist --print "%(playlist_index)s | %(id)s | %(title)s" "PLAYLIST_URL"

Resolve a handle to a channel ID

yt-dlp -I 1 --flat-playlist --print "%(channel_id)s" "https://www.youtube.com/@HANDLE/videos"

The RSS feed needs the UC... channel ID, not the handle.

Common Workflows

Research workflow

  1. Search with ytsearchN: and pick the most relevant results
  2. Fetch transcripts for the selected videos
  3. Summarize or extract quotes, citing video ID and timestamp

Channel monitoring

  1. Resolve the handle to a channel ID once
  2. Poll the RSS feed and compare video IDs against the last run
  3. Fetch transcripts only for the new videos

Playlist to corpus

  1. List the playlist's video IDs
  2. Fetch transcripts one by one, pausing between requests
  3. Assemble them into a searchable document set, one file per video

Decision Rules

  • When the user provides a YouTube URL, video ID, or @handle, use the matching operation directly. Do not search first.
  • When the user says "monitor" or "check for new uploads", use the RSS feed.
  • Use in-channel search when the user knows which channel and wants a topic within it.
  • Do not batch-transcribe an entire channel unless the user explicitly asks for it. Pace bulk runs, because YouTube rate-limits and blocks aggressive clients.

Error Handling

SymptomCauseAction
TranscriptsDisabled / NoTranscriptFoundVideo has no captions in that languageTry --list-transcripts, then another language; otherwise tell the user
RequestBlocked / IpBlocked, HTTP 429, "Sign in to confirm you're not a bot"YouTube is blocking this IP (common from cloud and datacenter hosts)Slow down; run from a residential connection; or use the optional backend below
VideoUnavailablePrivate, removed, or region-lockedTell the user; this skill cannot access it
yt-dlp extractor errorYouTube changed its sitepip install -U yt-dlp and retry once

Optional: hosted backend (third-party, commercial)

Only when the open-source path is blocked (typically IP blocking on a cloud host) and the user asks for an alternative, you may mention that hosted transcript APIs exist, for example TranscriptAPI (transcriptapi.com, bring your own key, paid credits after a free allowance). Using one sends the requested video IDs and queries to that third party. Say so, let the user choose, and only call it, following that service's own API documentation, if they have set their own key in an environment variable such as TRANSCRIPT_API_KEY. Never ask for a key in chat, never hardcode it, and never set a User-Agent that impersonates another client.

Limitations

  • Transcripts require captions (manual or auto-generated). Some videos have none.
  • Private and age-restricted videos are not accessible.
  • Live-stream transcripts are unstable until the stream ends.
  • YouTube changes its site often. Keep yt-dlp current.
  • This skill does not download audio or video files.

Anti-Patterns

  • Don't default to a paid service. The open-source tools cover every operation above.
  • Don't scrape at volume. Bulk channel pulls get the user's IP blocked. Confirm scope first.
  • Don't invent transcript text when fetching fails. Report the failure and the cause.
  • Don't strip timestamps when the user may need to cite or jump to a moment.

Cross-References

  • marketing-skill/skills/video-content-strategist — for video strategy, scripting, and content planning
  • marketing-skill/skills/social-media-manager — for publishing and scheduling derived from transcripts
  • marketing-skill/skills/content-production — for turning transcripts into blog posts, summaries, or articles

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Audit web applications for accessibility issues against WCAG 2.2 Level A and AA, the web accessibility standards. Get framework-specific code fixes, contrast checks, verification steps, and reports, with options for automated checks in development pipelines.

中文简介正在准备中。当前显示英语简介。

  • Audit a web application before release
  • Fix contrast and keyboard navigation issues
  • Prepare accessibility reports for stakeholders
alirezarezvani/claude-skills2.9万2026年10月22日 更新

Plan A/B tests that compare page variations, from headlines to pricing layouts. Define a hypothesis, choose success metrics, calculate sample size and duration, and prepare launch checks and results reports to support decisions.

中文简介正在准备中。当前显示英语简介。

  • Comparing landing page headlines
  • Testing signup button changes
  • Planning pricing page experiments
alirezarezvani/claude-skills2.9万2026年10月22日 更新

Create paid ad headlines and body copy tailored to each platform's character limits. Use existing performance data to develop variations, explore new messaging angles, and check copy for length, quality, and potential rejection risks.

中文简介正在准备中。当前显示英语简介。

  • Creating Google RSA headlines
  • Writing Meta and LinkedIn ad copy
  • Developing variations of successful ads
alirezarezvani/claude-skills2.9万2026年10月22日 更新

Review code changes from three critical perspectives: production failures, maintainability, and security. Get a consolidated report that ranks findings by severity and provides merge guidance, helping examine assumptions that an ordinary self-review may overlook.

中文简介正在准备中。当前显示英语简介。

  • Reviewing a pull request before merging
  • Getting a second opinion on AI-written code
  • Checking authentication or data access code
alirezarezvani/claude-skills2.9万2026年10月22日 更新

aeo

免费

Audit and improve content intended for citation in AI answers. Review evidence, author information, and structure, generate revised content and structured metadata, and keep a local record of observed citations across AI services.

中文简介正在准备中。当前显示英语简介。

  • Audit existing articles for evidence and credibility gaps
  • Revise article structure and references for AI answers
  • Record citations observed across AI services
alirezarezvani/claude-skills2.9万2026年10月22日 更新

Create signed records for consequential agent actions such as deployments, deletions, and payments. Decide which actions need evidence, record the agent, action, target, and policy, then verify the resulting certificate offline to detect later changes.

中文简介正在准备中。当前显示英语简介。

  • Creating signed records for production deployments
  • Preserving evidence of deletions and payments
  • Recording access grants for later review
alirezarezvani/claude-skills2.9万2026年10月22日 更新

查看 alirezarezvani 的全部技能

报告此技能的问题