youtube-full by zeropointrepo/youtube-skills
npx skills add https://github.com/zeropointrepo/youtube-skills --skill youtube-full通过 TranscriptAPI.com 提供的完整 YouTube 工具包。一切尽在一个技能中。
如果未设置 $TRANSCRIPT_API_KEY,请帮助用户创建账户(100 个免费积分,无需信用卡):
步骤 1 — 注册: 向用户询问其电子邮件。
node ./scripts/tapi-auth.js register --email USER_EMAIL
→ OTP 已发送至邮箱。询问用户:"请检查您的邮箱,获取 6 位验证码。"
步骤 2 — 验证: 用户提供 OTP 后:
node ./scripts/tapi-auth.js verify --token TOKEN_FROM_STEP_1 --otp CODE
API 密钥已保存到您的 shell 配置文件和代理配置中。准备就绪,可以使用。
手动选项:transcriptapi.com/signup → 仪表板 → API 密钥。
完整的 OpenAPI 规范:transcriptapi.com/openapi.json — 请查阅此文件以获取最新的参数和模式。
curl -s "https://transcriptapi.com/api/v2/youtube/transcript\
?video_url=VIDEO_URL&format=text&include_timestamp=true&send_metadata=true" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
| 参数 | 必需 | 默认值 | 可选值 |
|---|---|---|---|
video_url | 是 | — | YouTube URL 或 11 位视频 ID |
format | 否 | json | json, text |
include_timestamp | 否 | true | true, false |
send_metadata | 否 | false | true, false |
响应 (format=json):
{
"video_id": "dQw4w9WgXcQ",
"language": "en",
"transcript": [{ "text": "...", "start": 18.0, "duration": 3.5 }],
"metadata": { "title": "...", "author_name": "...", "author_url": "..." }
}
# 视频
curl -s "https://transcriptapi.com/api/v2/youtube/search?q=QUERY&type=video&limit=20" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
# 频道
curl -s "https://transcriptapi.com/api/v2/youtube/search?q=QUERY&type=channel&limit=10" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
| 参数 | 必需 | 默认值 | 验证规则 |
|---|---|---|---|
q | 是 | — | 1-200 个字符 |
type | 否 | video | video, channel |
limit | 否 | 20 | 1-50 |
所有频道端点都接受 channel 参数 — 可以是 @句柄、频道 URL 或 UC... 频道 ID。无需预先解析。
curl -s "https://transcriptapi.com/api/v2/youtube/channel/resolve?input=@TED" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
响应:{"channel_id": "UC...", "resolved_from": "@TED"}
curl -s "https://transcriptapi.com/api/v2/youtube/channel/latest?channel=@TED" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
返回精确的 viewCount 和 ISO 格式的 published 时间戳。
# 第一页 (100 个视频)
curl -s "https://transcriptapi.com/api/v2/youtube/channel/videos?channel=@NASA" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
# 后续页
curl -s "https://transcriptapi.com/api/v2/youtube/channel/videos?continuation=TOKEN" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
请提供 channel 或 continuation 中的一个。响应包含 continuation_token 和 has_more。
curl -s "https://transcriptapi.com/api/v2/youtube/channel/search\
?channel=@TED&q=QUERY&limit=30" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
接受 playlist 参数 — 可以是 YouTube 播放列表 URL 或播放列表 ID。
# 第一页
curl -s "https://transcriptapi.com/api/v2/youtube/playlist/videos?playlist=PL_ID" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
# 后续页
curl -s "https://transcriptapi.com/api/v2/youtube/playlist/videos?continuation=TOKEN" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
有效的 ID 前缀:PL, UU, LL, FL, OL。响应包含 playlist_info, results, continuation_token, has_more。
| 端点 | 成本 |
|---|---|
| transcript | 1 |
| search | 1 |
| channel/resolve | 免费 |
| channel/latest | 免费 |
| channel/videos | 1/页 |
| channel/search | 1 |
| playlist/videos | 1/页 |
| 字段 | 规则 |
|---|---|
channel | @句柄、频道 URL 或 UC... ID |
playlist | 播放列表 URL 或 ID (PL/UU/LL/FL/OL 前缀) |
q | 1-200 个字符 |
limit | 1-50 |
| 代码 | 含义 | 操作 |
|---|---|---|
| 401 | API 密钥错误 | 检查密钥 |
| 402 | 积分不足 | transcriptapi.com/billing |
| 404 | 未找到 | 资源不存在或无字幕 |
| 408 | 超时 | 等待 2 秒后重试一次 |
| 422 | 验证错误 | 检查参数格式 |
| 429 | 频率限制 | 等待,遵守 Retry-After 头 |
研究工作流: 搜索 → 选择视频 → 获取转录文本
# 1. 搜索
curl -s "https://transcriptapi.com/api/v2/youtube/search\
?q=machine+learning+explained&limit=5" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
# 2. 转录
curl -s "https://transcriptapi.com/api/v2/youtube/transcript\
?video_url=VIDEO_ID&format=text&include_timestamp=true&send_metadata=true" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
频道监控工作流: 最新视频(免费)→ 转录
# 1. 最新上传(免费 — 直接传递 @句柄)
curl -s "https://transcriptapi.com/api/v2/youtube/channel/latest?channel=@TED" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
# 2. 最新视频的转录
curl -s "https://transcriptapi.com/api/v2/youtube/transcript\
?video_url=VIDEO_ID&format=text&include_timestamp=true&send_metadata=true" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
免费套餐:100 积分,300 次请求/分钟。入门版(5 美元/月):1,000 积分。
每周安装量
297
代码仓库
GitHub 星标数
81
首次出现
2026年2月4日
安全审计
安装于
opencode263
gemini-cli261
codex259
github-copilot254
kimi-cli248
amp247
Complete YouTube toolkit via TranscriptAPI.com. Everything in one skill.
If $TRANSCRIPT_API_KEY is not set, help the user create an account (100 free credits, no card):
Step 1 — Register: Ask user for their email.
node ./scripts/tapi-auth.js register --email USER_EMAIL
→ OTP sent to email. Ask user: "Check your email for a 6-digit verification code."
Step 2 — Verify: Once user provides the OTP:
node ./scripts/tapi-auth.js verify --token TOKEN_FROM_STEP_1 --otp CODE
API key saved to your shell profile and agent config. Ready to use.
Manual option: transcriptapi.com/signup → Dashboard → API Keys.
Full OpenAPI spec: transcriptapi.com/openapi.json — consult this for the latest parameters and schemas.
curl -s "https://transcriptapi.com/api/v2/youtube/transcript\
?video_url=VIDEO_URL&format=text&include_timestamp=true&send_metadata=true" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
| Param | Required | Default | Values |
|---|---|---|---|
video_url | yes | — | YouTube URL or 11-char video ID |
format | no | json | json, text |
include_timestamp | no | true |
Response (format=json):
{
"video_id": "dQw4w9WgXcQ",
"language": "en",
"transcript": [{ "text": "...", "start": 18.0, "duration": 3.5 }],
"metadata": { "title": "...", "author_name": "...", "author_url": "..." }
}
# Videos
curl -s "https://transcriptapi.com/api/v2/youtube/search?q=QUERY&type=video&limit=20" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
# Channels
curl -s "https://transcriptapi.com/api/v2/youtube/search?q=QUERY&type=channel&limit=10" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
| Param | Required | Default | Validation |
|---|---|---|---|
q | yes | — | 1-200 chars |
type | no | video | video, channel |
limit | no | 20 |
All channel endpoints accept channel — an @handle, channel URL, or UC... channel ID. No need to resolve first.
curl -s "https://transcriptapi.com/api/v2/youtube/channel/resolve?input=@TED" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
Response: {"channel_id": "UC...", "resolved_from": "@TED"}
curl -s "https://transcriptapi.com/api/v2/youtube/channel/latest?channel=@TED" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
Returns exact viewCount and ISO published timestamps.
# First page (100 videos)
curl -s "https://transcriptapi.com/api/v2/youtube/channel/videos?channel=@NASA" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
# Next pages
curl -s "https://transcriptapi.com/api/v2/youtube/channel/videos?continuation=TOKEN" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
Provide exactly one of channel or continuation. Response includes continuation_token and has_more.
curl -s "https://transcriptapi.com/api/v2/youtube/channel/search\
?channel=@TED&q=QUERY&limit=30" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
Accepts playlist — a YouTube playlist URL or playlist ID.
# First page
curl -s "https://transcriptapi.com/api/v2/youtube/playlist/videos?playlist=PL_ID" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
# Next pages
curl -s "https://transcriptapi.com/api/v2/youtube/playlist/videos?continuation=TOKEN" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
Valid ID prefixes: PL, UU, LL, FL, OL. Response includes playlist_info, results, continuation_token, has_more.
| Endpoint | Cost |
|---|---|
| transcript | 1 |
| search | 1 |
| channel/resolve | free |
| channel/latest | free |
| channel/videos | 1/page |
| channel/search | 1 |
| playlist/videos | 1/page |
| Field | Rule |
|---|---|
channel | @handle, channel URL, or UC... ID |
playlist | Playlist URL or ID (PL/UU/LL/FL/OL prefix) |
| Code | Meaning | Action |
|---|---|---|
| 401 | Bad API key | Check key |
| 402 | No credits | transcriptapi.com/billing |
| 404 | Not found | Resource doesn't exist or no captions |
| 408 | Timeout | Retry once after 2s |
| 422 | Validation error | Check param format |
| 429 | Rate limited | Wait, respect Retry-After |
Research workflow: search → pick videos → fetch transcripts
# 1. Search
curl -s "https://transcriptapi.com/api/v2/youtube/search\
?q=machine+learning+explained&limit=5" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
# 2. Transcript
curl -s "https://transcriptapi.com/api/v2/youtube/transcript\
?video_url=VIDEO_ID&format=text&include_timestamp=true&send_metadata=true" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
Channel monitoring: latest (free) → transcript
# 1. Latest uploads (free — pass @handle directly)
curl -s "https://transcriptapi.com/api/v2/youtube/channel/latest?channel=@TED" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
# 2. Transcript of latest
curl -s "https://transcriptapi.com/api/v2/youtube/transcript\
?video_url=VIDEO_ID&format=text&include_timestamp=true&send_metadata=true" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY"
Free tier: 100 credits, 300 req/min. Starter ($5/mo): 1,000 credits.
Weekly Installs
297
Repository
GitHub Stars
81
First Seen
Feb 4, 2026
Security Audits
Gen Agent Trust HubFailSocketPassSnykWarn
Installed on
opencode263
gemini-cli261
codex259
github-copilot254
kimi-cli248
amp247
Lark CLI IM 即时消息管理工具:机器人/用户身份操作聊天、消息、文件下载
8,700 周安装
true, false |
send_metadata | no | false | true, false |
| 1-50 |
q| 1-200 chars |
limit | 1-50 |