youtube-full
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.
- License 许可
- MIT
- 最近更新
- 2026-10-10
- Stars
- ★ 0
- Forks
- 0
01 前言 Front Matter
- name
- youtube-full
- license
- MIT
- description
- 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.
02 资源文件 2
- 参考文档.claude-plugin/authoring-notes.json189 B
- 参考文档.claude-plugin/plugin.json659 B
03 SKILL.md 正文
youtube-full — YouTube Transcripts, Search, and Channel Data
Covers transcript extraction, video search, channel browsing, in-channel search, playlist extraction, and new-upload monitoring via TranscriptAPI.
Source: Ported from ZeroPointRepo/youtube-skills (MIT). Original skill authored by ZeroPointRepo contributors. Adapted for the claude-skills format.
BYOK / free-tier note: TranscriptAPI is a commercial service (BYOK — you bring your own key; 100 free credits included, no card required). For local/self-hosted extraction without an API key, use
youtube-transcript-api(Python) oryt-dlpas OSS fallbacks. See Anti-Patterns for guidance.
API Setup
Every request to transcriptapi.com requires two headers:
Authorization: Bearer $TRANSCRIPT_API_KEYUser-Agent: ClaudeCode/1.0
If TRANSCRIPT_API_KEY is not set, prompt the user to get a free key at https://transcriptapi.com (100 free credits, no card required) and store it as TRANSCRIPT_API_KEY.
Operations
Get transcript (1 credit)
GET https://transcriptapi.com/api/v2/youtube/transcript
?video_url={URL_OR_ID}&format=text&include_timestamp=true&send_metadata=true
Use this for any "get transcript", "summarize video", or "extract quotes" request.
Search YouTube (1 credit)
GET https://transcriptapi.com/api/v2/youtube/search
?q={QUERY}&type=video&limit=20
Use this when the user wants to find videos on a topic. Follow with transcript calls on selected results.
Channel — latest uploads (FREE)
GET https://transcriptapi.com/api/v2/youtube/channel/latest
?channel={@HANDLE_OR_ID}
Returns the 15 most recent uploads with view counts and publish timestamps. Use before fetching transcripts to check whether uploads are new.
Channel — all videos (1 credit/page)
GET https://transcriptapi.com/api/v2/youtube/channel/videos
?channel={@HANDLE_OR_ID}
Paginate with ?continuation=TOKEN on subsequent pages.
In-channel search (1 credit)
GET https://transcriptapi.com/api/v2/youtube/channel/search
?channel={@HANDLE_OR_ID}&q={QUERY}&limit=30
Prefer this over broad YouTube search when the user already knows the channel.
Playlist extraction (1 credit/page)
GET https://transcriptapi.com/api/v2/youtube/playlist/videos
?playlist={PLAYLIST_URL_OR_ID}
Paginate with ?continuation=TOKEN. Response includes playlist_info, results, has_more.
Resolve handle (FREE)
GET https://transcriptapi.com/api/v2/youtube/channel/resolve
?input={@HANDLE_OR_URL}
Returns {"channel_id": "UC...", "resolved_from": "@handle"}.
Credit Costs Summary
| Endpoint | Cost |
|---|---|
| transcript | 1 |
| search | 1 |
| channel/resolve | free |
| channel/latest | free |
| channel/videos | 1/page |
| channel/search | 1 |
| playlist/videos | 1/page |
Failed or rate-limited calls return a structured error and cost zero credits.
Common Workflows
Research workflow
- Search (
/search?q=...) — pick the most relevant results - Fetch transcripts (
/transcript?video_url=...) for selected videos - Summarize or extract quotes from transcript text
Channel monitoring
channel/latest(free) — check for new uploads- If new videos found, fetch transcripts
- Extract signal (announcements, topics)
Playlist to corpus
playlist/videos— get all video IDs in the playlist- Batch-fetch transcripts, pausing if near credit limit
- Assemble transcripts into a searchable document set
Decision Rules
- When the user provides a YouTube URL, video ID, or @handle, use the matching endpoint directly — do not search first
- When the user says "monitor" or "check for new uploads", use
channel/latest(free) first - Use
channel/searchwhen the user knows which channel and wants to find a topic within it - Use
search(type=channel) to find a channel when the user doesn't know the handle - Do not batch-transcribe an entire channel unless the user explicitly asks for that
Error Handling
| Code | Cause | Action |
|---|---|---|
| 401 | Bad API key | Check TRANSCRIPT_API_KEY |
| 402 | No credits | Inform user, direct to transcriptapi.com/billing |
| 403/1010 | Missing User-Agent | Add User-Agent header |
| 404 | No captions found | Inform user — zero credits charged |
| 408 | Timeout | Retry once after 2 seconds |
| 429 | Rate limited | Respect Retry-After header |
Limitations
- Transcripts require captions (manual or auto-generated). Some videos have no captions — this returns a 404 and costs zero credits.
- Private and age-restricted videos are not accessible.
- Live stream transcripts are unstable until the stream ends.
- Rate limit: 300 requests/minute on the free tier.
- This skill does not download audio or video files. For local file download, use
yt-dlpdirectly.
Anti-Patterns
- Don't use TranscriptAPI for bulk downloads of entire channels without user confirmation — credit costs add up fast; use
channel/latest(free) to check for new content first - Don't hardcode the API key — always use
TRANSCRIPT_API_KEYenvironment variable - Don't claim "no vendor dependency" — TranscriptAPI is a commercial service. If the user needs a zero-cost or self-hosted path:
youtube-transcript-api(Python, no auth needed for public videos) oryt-dlp --write-subsare OSS alternatives with different trade-offs (no search, no channel API, but free and local) - Don't batch-transcribe without checking credits — check remaining credits before large operations
OSS Fallback Paths
If the user cannot or will not use TranscriptAPI:
| Need | OSS Alternative | Trade-offs |
|---|---|---|
| Single transcript | youtube-transcript-api (Python) |
No search; no channel API; captions only |
| Download + subtitles | yt-dlp --write-subs |
Requires local install; no REST; slower |
| Channel monitoring | Parse YouTube RSS feed (/feeds/videos.xml?channel_id=...) |
Free, no auth; limited metadata |
Cross-References
marketing-skill/skills/video-content-strategist— for video strategy, scripting, and content planningmarketing-skill/skills/social-media-manager— for publishing and scheduling derived from transcriptsmarketing-skill/skills/content-production— for turning transcripts into blog posts, summaries, or articles
04 同仓库更多 Skills
syllabus
Generates a curated supplementary reading list from any course syllabus using Consensus academic search. Grill-me intake (syllabus input format + course audience + year range) plus a grouping forcing-options checkpoint before any search runs — so the reading list matches the course's level and recency need. Parses the syllabus to extract topics and learning outcomes, searches Consensus for recent peer-reviewed papers per topic, and produces a professionally formatted .docx with clickable Consensus links, plain-language summaries calibrated to audience level, and Bloom-higher-order discussion questions tied to course learning goals. Use when the user uploads a syllabus, course outline, or curriculum document and wants supplementary readings (e.g., 'create a reading list from this syllabus', 'find recent papers for my course') — even casual mentions with a syllabus attached should trigger this skill.
pulse
Multi-source recency research skill that takes the pulse of any topic across Reddit, Hacker News, the open web, and optionally X/Twitter within a configurable recent window (default 30 days). Forcing intake clarifies topic specificity, angle (trend/sentiment/problems/opportunities/comparison), time window, and platform scope before searching. Returns a synthesized briefing with citations, engagement metrics, and cross-platform pattern analysis. Use when the user requests multi-source recency intelligence on a topic (e.g., 'pulse on [topic]', 'what's happening with [topic]', 'what are people saying about [topic]', 'current conversation about [topic]', 'take the pulse of [topic]', 'trending: [topic]', 'find me info on [topic]'), and for competitor research, trend discovery, tool comparisons, and audience sentiment analysis.
patent
Patent prior-art and landscape intelligence skill — not generic patent help. Commits to one of five sub-use-cases via forcing intake (novelty search / freedom-to-operate / competitive landscape / acquisition diligence / litigation prior-art) before any search runs. Searches Google Patents, Espacenet, USPTO, and optionally Lens.org for citation-graph signals. Output is an editable Word document (.docx) with verdict, ranked closest art (claim-text extracted), CPC-class-aware landscape, family-resolved hits, geographic coverage, FTO flags where applicable, strategy recommendations, and full audit log. Use when the user asks for patent searching or analysis (e.g., 'prior art search for [invention]', 'freedom to operate analysis for [product]'). Produces search signal, not legal advice — always recommends consulting a patent attorney before filing or licensing decisions. Trademark, copyright, and trade-secret questions are out of scope.
notebooklm
Browser automation skill for controlling Google's NotebookLM. Use when the user wants anything done in NotebookLM (e.g., 'open NotebookLM', 'check my [name] notebook', 'ask my notebook about X', 'add [source] to NotebookLM', 'generate a Video Overview from my notebook', 'use NotebookLM Studio'). Handles reading and querying notebooks, adding sources (URLs, text, files, YouTube links, synthesized content), generating Studio outputs (Audio/Video Overviews, Mind Maps, Reports incl. Briefing Doc/Study Guide/FAQ, Flashcards, Quiz, slide decks, infographics — discover the exact set from the live Studio panel; the UI evolves fast), and creating new notebooks. Requires browser automation environment — fails gracefully when unavailable.
litreview
Academic literature orientation skill that searches papers via free keyless APIs (PubMed E-utilities + OpenAlex) by default — with the Consensus MCP as an optional enhancement lane when connected — builds a strategic search plan using PICO (default) or SPIDER / Decomposition / hybrid as fallbacks, and synthesizes findings into a formatted Word (.docx) research guide. Grill-me intake (research question specificity + framework hint + tentative depth) before the recon search; a second forcing checkpoint after Phase 2 confirms framework + sub-areas + depth before searches consume budget. Configurable depth (5/10/20 queries) controls coverage vs. speed. Output is a 'launching pad' — an orientation guide that lets a researcher dive in confidently, not a finished review. Use when the user starts literature-oriented research (e.g., 'litreview on [topic]', 'literature review on [topic]', 'I'm starting a literature review on X', 'I'm writing a paper on X', 'help me research X', 'I'm doing research on X', 'can you help me research X'). Do NOT use for single one-off paper searches wanting a quick list — that's a plain PubMed/OpenAlex (or Consensus) query.
grants
NIH grant research skill for clinical researchers. Grill-me intake (research idea + career stage + preliminary data + environment + submission posture + known institute targets) locks down the funding strategy before any search runs. Runs a 5-facet Consensus positioning analysis (with draft Significance/Innovation language), maps the research to the right NIH institutes and study sections via RePORTER, finds NOSIs and funded overlap, and produces an editable Word document (.docx) with budget/scope-aware mechanism recommendations, submission timelines, and a mandatory program officer recommendation. Use when the user asks about research funding or makes any grant-related request (e.g., 'grants for [topic]', 'find grants for my research idea', 'what grants match my research', 'help me find NIH funding', 'grant opportunities for my research'). NIH-only scope — non-NIH funders (PCORI, DOD CDMRP, VA, foundations) are out of scope and flagged at intake.