Tooluck logoTooluck
SKILL.md

captions

Agent skill fromZeroPointRepo/youtube-skills

Use when captions, subtitles, or the spoken text of a YouTube video is needed — even if not explicitly requested: pasted video links or IDs, requests to read, quote, or translate a video, accessibility needs, deaf/HoH use cases, content review, or language learning. Fetches timestamped caption data from any YouTube video. Not for uploading subtitles or account management.

How to install captions

install captions
# install the youtube-skills pack with the skills CLI
npx skills add ZeroPointRepo/youtube-skills

# or add only this skill to Claude Code: copy the folder

clawhub/captions/

# into

~/.claude/skills/captions/ (all projects)

.claude/skills/captions/ (one project)

clawhub/captions/SKILL.md

MITFull file
1# Captions
2
3Extract closed captions from YouTube videos via [TranscriptAPI.com](https://transcriptapi.com).
4
5## Setup
6
7If `$TRANSCRIPT_API_KEY` is not set, read [references/auth-setup.md](references/auth-setup.md) and follow the instructions there to get and store the key.
8
9## Required Headers
10
11Every request needs two headers:
12
13- **Authorization:** `Bearer $TRANSCRIPT_API_KEY`
14- **User-Agent:** your agent's name and version if known (e.g. `HermesAgent/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.
15
16## GET /api/v2/youtube/transcript
17
18```bash
19curl -s "https://transcriptapi.com/api/v2/youtube/transcript\
20?video_url=VIDEO_URL&format=json&include_timestamp=true&send_metadata=true" \
21 -H "Authorization: Bearer $TRANSCRIPT_API_KEY" \
22 -H "User-Agent: YourAgent/1.0"
23```
24
25| Param | Required | Default | Values |
26| ------------------- | -------- | ------- | ----------------------------------- |
27| `video_url` | yes | — | YouTube URL or video ID |
28| `format` | no | `json` | `json` (structured), `text` (plain) |
29| `include_timestamp` | no | `true` | `true`, `false` |
30| `send_metadata` | no | `false` | `true`, `false` |
31
32**Response** (`format=json` — best for accessibility/timing):
33
34```json
35{
36…

Excerpt shown under the repository's MIT license.

More skills in youtube-skills

Keep exploring

Similar skill repositories

Newsletter

Join the Community

Subscribe to our newsletter for the latest news and updates