Youtube Transcript
badlogic/pi-skills
Fetch transcripts from YouTube videos for summarization and analysis.
Fetches YouTube transcripts, video metadata, channel info, search results and playlists through the TranscriptAPI.com service, with no Google API quota or OAuth setup.
$ npx skills add ZeroPointRepo/youtube-skills --skill youtube-api -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install ZeroPointRepo/youtube-skills youtube-api --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/ZeroPointRepo/youtube-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/youtube-api .claude/skills/youtube-api && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "youtube-api" agent skill from https://github.com/ZeroPointRepo/youtube-skills/tree/main/skills/youtube-api into .claude/skills/youtube-api/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "youtube-api", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/ZeroPointRepo/youtube-skills/tree/main/skills/youtube-apiType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add ZeroPointRepo/youtube-skills --skill youtube-api -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install ZeroPointRepo/youtube-skills youtube-api --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ZeroPointRepo/youtube-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/youtube-api .agents/skills/youtube-api && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "youtube-api" agent skill from https://github.com/ZeroPointRepo/youtube-skills/tree/main/skills/youtube-api into .agents/skills/youtube-api/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "youtube-api", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add ZeroPointRepo/youtube-skills --skill youtube-api -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install ZeroPointRepo/youtube-skills youtube-api --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ZeroPointRepo/youtube-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/youtube-api .cursor/skills/youtube-api && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "youtube-api" agent skill from https://github.com/ZeroPointRepo/youtube-skills/tree/main/skills/youtube-api into .cursor/skills/youtube-api/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "youtube-api", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/ZeroPointRepo/youtube-skills.git --path skills/youtube-api--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add ZeroPointRepo/youtube-skills --skill youtube-api -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install ZeroPointRepo/youtube-skills youtube-api --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ZeroPointRepo/youtube-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/youtube-api .gemini/skills/youtube-api && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "youtube-api" agent skill from https://github.com/ZeroPointRepo/youtube-skills/tree/main/skills/youtube-api into .gemini/skills/youtube-api/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "youtube-api", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install ZeroPointRepo/youtube-skills youtube-apiInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add ZeroPointRepo/youtube-skills --skill youtube-api -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/ZeroPointRepo/youtube-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/youtube-api .github/skills/youtube-api && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "youtube-api" agent skill from https://github.com/ZeroPointRepo/youtube-skills/tree/main/skills/youtube-api into .github/skills/youtube-api/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "youtube-api", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add ZeroPointRepo/youtube-skills --skill youtube-api -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install ZeroPointRepo/youtube-skills youtube-api --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ZeroPointRepo/youtube-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/youtube-api .opencode/skills/youtube-api && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "youtube-api" agent skill from https://github.com/ZeroPointRepo/youtube-skills/tree/main/skills/youtube-api into .opencode/skills/youtube-api/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "youtube-api", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
youtube-apiFetches YouTube transcripts, video metadata, channel info, search results and playlists through the TranscriptAPI.com service, with no Google API quota or OAuth setup.
Requests go to TranscriptAPI.com under `https://transcriptapi.com/api/v2/youtube/` and need an API key in `TRANSCRIPT_API_KEY`; if it is not set, the agent follows `references/auth-setup.md` to obtain and store one. Every call carries a bearer Authorization header and a User-Agent naming the agent, and leaving the User-Agent out gets the request blocked by Cloudflare with a 403.
The endpoint table covers video info, metadata and transcripts, search, and channel lookups for info, latest uploads, videos, playlists, posts and sections, plus playlist contents. A few lookups such as basic video info, channel resolution and latest uploads are free, while the others cost one unit per call or per page. Search accepts video, playlist and movie types with filters, channel videos can be limited to videos, shorts or streams, and the older `/video/info` path is deprecated in favor of `/video/metadata`. It is not for uploads, account management or research that needs only written sources. Reference files hold auth setup and curl examples.
Read from SKILL.md and the folder at commit 4f7994b. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are http).
From the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
transcriptapi.comFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
TRANSCRIPT_API_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Requires internet access to reach transcriptapi.com. No additional runtimes or dependencies needed.
From compatibility in the SKILL.md frontmatter.
YouTube Data via TranscriptAPI loads about 2.3k tokens when it runs, and up to ~4.6k if it reads all its reference files. Until then it costs about 105 tokens; SKILL.md has 549 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from ZeroPointRepo/youtube-skills at commit 4f7994b, republished under its MIT licence (© ZeroPointRepo). 549 words, ~2,294 tokens.
.claude/skills/youtube-api/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.YouTube data access via TranscriptAPI.com — no Google API quota needed.
If $TRANSCRIPT_API_KEY is not set, read references/auth-setup.md and follow the instructions there to get and store the key.
Every request needs two headers:
Bearer $TRANSCRIPT_API_KEYHermesAgent/0.11.0, ClaudeCode/1.0). Version is optional — agent name alone is fine. Do not omit this header or send a bare default — Cloudflare will return a 403 (error code 1010) and block the request.Full OpenAPI spec: transcriptapi.com/openapi.json — consult this for the latest parameters and schemas.
All endpoints: https://transcriptapi.com/api/v2/youtube/...
Channel endpoints accept channel — an @handle, channel URL, or UC... ID. Playlist endpoints accept playlist — a playlist URL or ID.
| Endpoint | Method | Cost |
|---|---|---|
/info?video_url=ID | GET | free |
/video/metadata?video_url=ID | GET | 1 |
/transcript?video_url=ID | GET | 1 |
/search?q=QUERY&type=video | GET | 1 |
/channel/resolve?input=@handle | GET | free |
/channel/info?channel=@handle | GET | 1 |
/channel/latest?channel=@handle | GET | free |
/channel/videos?channel=@handle | GET | 1/page |
/channel/search?channel=@handle&q=Q | GET | 1 |
/channel/playlists?channel=@handle | GET | 1/page |
/channel/posts?channel=@handle | GET | 1/page |
/channel/sections?channel=@handle | GET | 1 |
/playlist/videos?playlist=PL_ID | GET | 1/page |
search also takes type=playlist or type=movie, plus first-page-only filters sort (relevance/views), upload_date, duration, and features. channel/videos takes tab=videos (default), shorts, or streams, plus an optional sort (latest/popular/oldest).
Naming:
/video/metadatawas previously/video/info. The old path still works but is deprecated — use/video/metadata.
Search videos:
GET https://transcriptapi.com/api/v2/youtube/search?q=python+tutorial&type=video&limit=10
Authorization: Bearer $TRANSCRIPT_API_KEY
User-Agent: YourAgent/1.0Get transcript:
GET https://transcriptapi.com/api/v2/youtube/transcript?video_url=dQw4w9WgXcQ&format=text&include_timestamp=true&send_metadata=true
Authorization: Bearer $TRANSCRIPT_API_KEY
User-Agent: YourAgent/1.0Check video info & transcript languages (free, before spending a credit):
GET https://transcriptapi.com/api/v2/youtube/info?video_url=dQw4w9WgXcQ
Authorization: Bearer $TRANSCRIPT_API_KEY
User-Agent: YourAgent/1.0Get rich video metadata (views, likes, description, tags):
GET https://transcriptapi.com/api/v2/youtube/video/metadata?video_url=dQw4w9WgXcQ&include=details
Authorization: Bearer $TRANSCRIPT_API_KEY
User-Agent: YourAgent/1.0Get a channel's profile (subscriber count, tags, tabs):
GET https://transcriptapi.com/api/v2/youtube/channel/info?channel=@TED
Authorization: Bearer $TRANSCRIPT_API_KEY
User-Agent: YourAgent/1.0Also available with the same channel parameter: /channel/playlists (a channel's playlists), /channel/posts (community tab), and /channel/sections (its curated Home-page shelves).
Resolve channel handle (free):
GET https://transcriptapi.com/api/v2/youtube/channel/resolve?input=@TED
Authorization: Bearer $TRANSCRIPT_API_KEY
User-Agent: YourAgent/1.0Latest videos (free):
GET https://transcriptapi.com/api/v2/youtube/channel/latest?channel=@TED
Authorization: Bearer $TRANSCRIPT_API_KEY
User-Agent: YourAgent/1.0Browse channel uploads (paginated):
GET https://transcriptapi.com/api/v2/youtube/channel/videos?channel=@NASA
Authorization: Bearer $TRANSCRIPT_API_KEY
User-Agent: YourAgent/1.0
# Most-viewed first (channel Videos tab, ~30 per page)
GET https://transcriptapi.com/api/v2/youtube/channel/videos?channel=@NASA&sort=popular
Authorization: Bearer $TRANSCRIPT_API_KEY
User-Agent: YourAgent/1.0
# Use continuation token from response for next pages, repeating the same tab and sortSorting. Add sort=latest, popular, or oldest to channel/videos to get a channel's videos in the order you want, for example its most-popular uploads first. A sorted page returns about 30 videos (an unsorted page returns about 100), and every page costs the same 1 credit.
When paging, send the same sort on each request.
Item fields. Every item carries members_only, true only when YouTube badges it "Members only", and those items have no viewCountText. tab=streams items carry lengthText and publishedTimeText (for example Streamed 2 years ago); tab=shorts returns null for both, because YouTube's Shorts grid publishes neither. On the channel-tab feeds (tab=videos with sort, tab=shorts, tab=streams) channelId, channelTitle, channelHandle and index are null.
Browse playlist (paginated):
GET https://transcriptapi.com/api/v2/youtube/playlist/videos?playlist=PL_PLAYLIST_ID
Authorization: Bearer $TRANSCRIPT_API_KEY
User-Agent: YourAgent/1.0| Field | Rule |
|---|---|
channel | @handle, channel URL, or UC... ID |
playlist | Playlist URL or ID (PL/UU/LL/FL/OL prefix) |
q (search) | 1-200 chars |
type (search) | video (default), channel, playlist, movie |
tab (channel/videos) | videos (default), shorts, streams |
sort (channel/videos) | latest, popular, oldest (omit for the uploads feed) |
tab (channel/sections) | featured (default), podcasts, releases |
include (video/metadata) | details, related (comma-separated) |
limit | 1-50 |
continuation | non-empty string |
| Google YouTube Data API | TranscriptAPI | |
|---|---|---|
| Quota | 10,000 units/day (100 searches) | Credit-based, no daily cap |
| Setup | OAuth + API key + project | Single API key |
| Transcripts | Not available | Core feature |
| Pricing | $0.0015/unit overage | $5/1000 credits |
| Code | Meaning | Action |
|---|---|---|
| 401 | Bad API key | Check key |
| 402 | No credits | transcriptapi.com/billing |
| 403/1010 | Cloudflare block | Add or fix User-Agent header |
| 404 | Not found | Resource doesn't exist |
| 408 | Timeout/retryable | Retry once after 2s |
| 422 | Validation error | Check param format |
| 429 | Rate limited | Wait, respect Retry-After |
Free tier: 100 credits, 300 req/min. Starter ($5/mo): 1,000 credits.
Every request in this file as a ready-to-run one-liner: references/curl-examples.md
© ZeroPointRepo, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 2 other files (references) in skills/youtube-api of ZeroPointRepo/youtube-skills.
Open the folder on GitHubat commit 4f7994b
We found 2 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in ZeroPointRepo/youtube-skills, which our catalogue first saw on October 7, 2026.
YouTube Data via TranscriptAPI next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| YouTube Data via TranscriptAPI this skillZeroPointRepo/youtube-skills | 1k | 1 repos | ~2.3k | Automated safety check: Pass | MIT | |
| Youtube Transcriptbadlogic/pi-skills | 2.6k | 1 repos | ~179 | Automated safety check: Pass | MIT | |
| Video Lenskar2phi/video-lens | 113 | — | ~8.2k | Automated safety check: Notes | MIT | |
| Youtube Transcript Extractor API Skillbrowser-act/skills | 6.1k | 1 repos | ~1.2k | Automated safety check: Pass | MIT | |
| YouTube Transcript ReformatterPrismer-AI/PrismerCloud | 1.6k | 2 repos | ~905 | Automated safety check: Pass | MIT | |
| Video SummaryLeoYeAI/openclaw-master-skills | 2.2k | — | ~4.2k | Automated safety check: Pass | MIT |
badlogic/pi-skills
Fetch transcripts from YouTube videos for summarization and analysis.
kar2phi/video-lens
Fetch a YouTube transcript and generate an executive summary, key points, and timestamped topic list as a polished HTML report.
browser-act/skills
This skill helps users automatically extract YouTube video transcripts and metadata via the BrowserAct API.
Prismer-AI/PrismerCloud
Fetches a YouTube transcript with a helper script and reshapes it into chapters, summaries, X threads, blog posts or timestamped quotes.
LeoYeAI/openclaw-master-skills
Video summarization for Bilibili, Xiaohongshu, Douyin, and YouTube.
joeseesun/qiaomu-anything-to-notebooklm
Collects content from WeChat articles, web pages, YouTube, podcasts, documents and more, uploads it to NotebookLM and generates podcasts, slides or mind maps.
ZeroPointRepo/youtube-skills
Fetches timestamped captions or plain-text transcripts for any YouTube video through the TranscriptAPI service, for reading, quoting, translating or accessibility.
ZeroPointRepo/youtube-skills
Fetches timestamped subtitles for any YouTube video through TranscriptAPI, as clean text for reading and translation or timed JSON.
ZeroPointRepo/youtube-skills
Fetches the transcript of a YouTube video through TranscriptAPI.com so the agent can summarize, quote, translate or fact-check what was said.
ZeroPointRepo/youtube-skills
Pulls YouTube transcripts, searches videos and channels and browses playlists through the TranscriptAPI service with a single API key.
ZeroPointRepo/youtube-skills
Fetches YouTube transcripts through TranscriptAPI.com so an agent can summarize, quote or translate a video from a link or ID.
ZeroPointRepo/youtube-skills
Browses YouTube channels through TranscriptAPI: resolves handles to channel IDs, lists recent uploads and pages through a channel's videos.
Works with
Categories
Fetches YouTube transcripts, video metadata, channel info, search results and playlists through the TranscriptAPI.com service, with no Google API quota or OAuth setup. md` to obtain and store one. Every call carries a bearer Authorization header and a User-Agent naming the agent, and leaving the User-Agent out gets the request blocked by Cloudflare with a 403.
YouTube Data via TranscriptAPI fits situations like: getting the transcript of a YouTube video from a pasted link; browsing a creator's latest uploads or playlists by @handle; searching YouTube for videos on a topic you are researching; summarizing a video without setting up Google API credentials.
Run `npx skills add ZeroPointRepo/youtube-skills --skill youtube-api -a claude-code`. Or copy the skill folder (skills/youtube-api in ZeroPointRepo/youtube-skills) into .claude/skills/youtube-api in your project. Claude Code loads it when a task matches its description.
Run `npx skills add ZeroPointRepo/youtube-skills --skill youtube-api -a codex`. Or copy the skill folder (skills/youtube-api in ZeroPointRepo/youtube-skills) into .agents/skills/youtube-api in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add ZeroPointRepo/youtube-skills --skill youtube-api -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/youtube-api, .gemini/skills/youtube-api, .github/skills/youtube-api and .opencode/skills/youtube-api in your project.
Going by SKILL.md and its folder, YouTube Data via TranscriptAPI needs credentials named TRANSCRIPT_API_KEY. Our summary lists: A TranscriptAPI.com API key in TRANSCRIPT_API_KEY; Internet access to transcriptapi.com. Compatibility (from SKILL.md): Requires internet access to reach transcriptapi.com. No additional runtimes or dependencies needed..
SKILL.md names 1 domain. In commands or code: transcriptapi.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
YouTube Data via TranscriptAPI is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.3k tokens (SKILL.md is roughly 9.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2.3k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with YouTube Data via TranscriptAPI: Youtube Transcript (badlogic/pi-skills, 2.6k stars), Video Lens (kar2phi/video-lens, 113 stars), Youtube Transcript Extractor API Skill (browser-act/skills, 6.1k stars) and YouTube Transcript Reformatter (Prismer-AI/PrismerCloud, 1.6k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
ZeroPointRepo (a GitHub organization) maintains it in ZeroPointRepo/youtube-skills, which has 1,036 GitHub stars. The repository holds 12 skills in this directory. The repository was last updated on October 6, 2026.
Source: ZeroPointRepo/youtube-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.