⏳ This skill is pending AI review.

Scores will appear once the review pipeline completes.

v1.0.0

captions

@artemchuikin⭐ 104 stars

Reach for this when caption text from a YouTube video is wanted: reading a video instead of watching it, quoting or translating speech, accessibility (deaf/HoH) needs, content review, language practice, or exporting CC as SRT/VTT files. Timestamped captions from any public video. Skip it for uploading captions or account chores.

Choose how to use this skill

You do not need every option. Choose the path your AI client supports. The stable page stays the same; versioned files are immutable.

1. Native installer

This listing has no registered native installer command. Use the complete package or source fallback below, depending on what your client supports.

Do not guess an installer command or replace an existing version without reviewing the diff.

2. Complete package recommended

Download the ZIP when available. It includes SKILL.md plus the references, security notes and version metadata.

No complete ProSkills package is published for this listing yet.

3. Prompt-only

Copy the prompt above when the agent can read the stable page or when you want to adopt the workflow without installing a skill.

Need only the instruction file?

Download SKILL.md only if your client requires a single file. The complete ZIP is safer for a full installation because it preserves the references and release context.

No path installs or executes anything by itself. Your agent still needs access to the project files. Before updating, compare the installed version and review the diff.

—/10

// RATINGS

⭐GitHub Stars
⭐⭐⭐ 104 on GitHubGitHub ↗

Popular

🟢ProSkills Score
—
📍

Not yet listed on ClawHub or SkillsMP

// README

YouTube Skills for AI Agents 🎬

Drop-in skills that let a coding or chat agent pull YouTube transcripts, run searches, walk channels and export whole playlists.

An Agent Skill is a folder of instructions an agent loads when the task matches. The 12 skills in this repo cover YouTube end to end. Each one names its endpoint, shows the exact request, lists every parameter with defaults and limits, and maps every error code to a recovery, so the agent makes the right call on the first try instead of guessing. No yt-dlp, no headless browser, no Google Cloud project. One HTTPS request per answer.

Works with Claude Code, Cursor, Antigravity, Cline, Codex, OpenClaw, Hermes Agent, and anything else that reads the Agent Skills format.

Made by TranscriptOut · API docs · MCP server


⚡ Quick start

npx skills add artemchuikin/youtube-skills --skill youtube-full

Then ask the agent something it previously had to refuse.

What does this talk actually claim? https://www.youtube.com/watch?v=dQw4w9WgXcQ

The first run also takes care of the API key, without leaving the chat. The agent asks for your email, a 6-digit code arrives in your inbox, you read it back, and a fresh sk_ key lands in your shell or agent config. The account behind it is free, starts with 100 credits and never asks for a card.

Hermes Agent

hermes skills install skills-sh/artemchuikin/youtube-skills/skills/youtube-full

All 12 skills at once

npx skills add artemchuikin/youtube-skills

Manual (git clone)

git clone https://github.com/artemchuikin/youtube-skills.git
cp -r youtube-skills/skills/youtube-full ~/.claude/skills/

OpenClaw (ClawdBot/Moltbot). Copy a folder from clawhub/ into your skills directory. The clawhub/ tree carries the same 12 skills with bash-style examples.

No terminal at all. Paste this into the agent and let it do the work.

Install the youtube skills from this GitHub repo: https://github.com/artemchuikin/youtube-skills
I want to get YouTube transcripts, search YouTube, and browse channel videos from my agent.
Set everything up for me.

Installing skills and creating the API key are both things these skills teach the agent to do.


💬 What you can ask

Every row is something you can say to the agent word for word. The skill turns it into the right API call.

Ask forFor example
A transcript"What does this video actually say? [URL]"
A summary or quote"Pull the three strongest quotes from this talk"
Subtitles as files"Export this video's subtitles as SRT"
A YouTube search"Find recent talks about Rust async and pick the best three"
A channel's news"Anything new on @kurzgesagt this week?"
A channel's catalogue"List everything @3blue1brown has ever uploaded"
Search inside a channel"Find every Fireship video that mentions Postgres"
A whole playlist"Turn this lecture course into study notes"
A bulk export"Queue transcripts for all 800 videos on this channel"
RAG-ready chunks"Fetch this playlist's transcripts in ~1000-character segments for my index"

🧰 Which skill to install

youtube-full is the right answer for most people. One skill, the whole surface. The narrower ones exist because a skill is context the agent has to carry, and a workflow that only ever needs transcripts should not pay for playlist documentation.

SkillWhat it doesInstall
youtube-fullEverything. Transcripts, search, channels, playlists, bulk jobs--skill youtube-full
transcriptVideo transcripts with timestamps--skill transcript
youtube-searchSearch YouTube for videos and channels--skill youtube-search
youtube-channelsUploads, latest videos, search within a channel--skill youtube-channels
youtube-playlistEvery video of a playlist--skill youtube-playlist
# one skill
npx skills add artemchuikin/youtube-skills --skill transcript

# several at once
npx skills add artemchuikin/youtube-skills --skill transcript --skill youtube-search

Beyond the core five, the rest are vocabulary variants of the same capabilities. People say "captions", "subtitles", "video to text" or "youtube api" for overlapping things, and an agent picks a skill by matching your words against skill descriptions, so each phrasing has a skill that answers to it.

SkillDescription
youtube-fullComplete toolkit. Transcripts + search + channels + playlists + bulk jobs
transcriptExtract the transcript of any YouTube video, with timestamps
captionsClosed captions / CC, including SRT and VTT files
subtitlesSubtitles from YouTube videos, including SRT and VTT files
youtube-searchSearch YouTube for videos and channels
youtube-channelsChannel uploads, latest videos, in-channel search
youtube-playlistAll videos of a YouTube playlist
youtube-dataVideo and channel data without Google's API quotas
youtube-apiYouTube API access for agents, no Google Cloud project
transcriptoutThe full API surface in one skill
video-transcriptConvert YouTube videos to text
ytQuick lookups. Transcript, search, channel latest

💳 What calls cost

The unit is a credit, and one credit is one answered request.

RequestCost
transcript of one video (any of 5 formats)1
video metadata + available caption languages1
YouTube search1 per page
channel latest (~15 newest videos)1
channel videos1 per page (100 videos, or 500 IDs)
search within a channel1 per page
playlist videos1 per page (100 videos, or 500 IDs)
search within a playlist1
bulk job submit1 per video
bulk job progress, results, cancelfree

A call that dies before reaching YouTube (bad parameter, rate limit, service busy) refunds itself automatically. A confirmed "this video has no captions" costs the credit, because the lookup really happened. The rate limit is 200 requests per minute per key on every plan.

PlanPriceCredits
Free$0100 on signup, one-time
Starter$4.49/month1,000/month
Starter Annual$45.29/year (~$3.77/mo)1,000/month
Scaleslider up to $198.99/moup to 100,000/month

Subscription volume is a slider from 1,000 to 100,000 credits per month in steps of 1,000, and the per-1,000 rate falls as the volume grows. Full pricing →


📦 Built for bulk work

Bulk export is one job, not a loop. The agent collects video IDs cheaply (ids_only=true returns up to 500 per page), submits them all in a single POST /v1/transcripts (up to 4,000 videos), and reads results page by page while the job is still running. Duplicates are dropped before billing, an Idempotency-Key makes retries free, the job paces itself inside the rate limit instead of tripping 429s, and any video the service fails to deliver is refunded on its own. A full channel archive that used to be an evening of scripting is three prompts.

🧠 Chunks sized for retrieval

Transcripts arrive pre-chunked if you ask. The segment parameter (20 to 5,000 characters) controls how the text is cut, and 500 to 1,500 gives retrieval-sized pieces with real context. Cut points come from per-word timestamps in YouTube's raw srv3 data, so each chunk's start is the moment the words are actually spoken rather

// HOW IT'S BUILT

KEY FILES

clawhub/captions/SKILL.mdREADME.md

// REPO STATS

104 stars