Communitygithub.com

YouTube 文字起こしと検索

FrontierAgent 向けスキル:YouTube 動画の文字起こし、動画検索、チャンネル情報の取得をAPI経由で行います。

YouTube 文字起こしと検索 とは?

このスキルは、FrontierAgent が YouTube 動画の文字起こし、動画検索、チャンネル情報取得を REST API 経由で実行できるようにします。動画は多くの研究エージェントが読み取れない主要情報源ですが、このスキルを使えばタイムスタンプ付きのテキストとして引用できます。yt-dlp やヘッドレスブラウザなどの追加バイナリは不要で、単一の API キーを環境変数に設定するだけで利用可能です。取得した文字起こしはテキスト形式またはJSON形式で出力でき、テキスト形式はファイルに保存して必要な部分だけ読み込むことで、ツール出力予算を節約できます。また、動画やチャンネルの検索、チャンネルハンドルの解決機能も備え、401/403/404/422/429 といったHTTPエラーに対する具体的な対処方法がドキュメント化されています。

対応~Claude Code~Codex CLI~Cursor
npx skills add ZeroPointRepo/transcriptapi-frontieragent-skill

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

YouTube 文字起こしと検索 は何をしますか?

動画は多くの研究エージェントが読めない主要な情報源です。このスキルは、あらゆる YouTube 動画、チャンネル、検索クエリをタイムスタンプ付きの引用可能なテキストに変換します。

すべては 1 つの REST API 経由で動作します。yt-dlp、ヘッドレスブラウザ、インストールが必要なバイナリは一切不要です。

セットアップ

API を使用するには環境変数にキーが必要です。FrontierAgent の .env に次の 1 行を追加します:

echo 'TRANSCRIPT_API_KEY=sk_your_key_here' >> .env

キーは https://transcriptapi.com で取得してください。無料枠では 100 クレジットが付与され、カード情報は不要です。FrontierAgent は起動時に .env を読み込み、シェルコマンドはそれを継承するため、以下のすべてのコマンド内で $TRANSCRIPT_API_KEY が解決されます。

変数が空の場合は処理を停止し、ユーザーに追加を促してください。キーを推測したり、値をユーザーに表示したりしないでください。

すべてのリクエストに必要なヘッダー

Authorization: Bearer $TRANSCRIPT_API_KEY と、実際の User-Agent が必要です。User-Agent が欠けているかデフォルトのままの場合、Cloudflare 403 エラー (コード 1010) が返されます。

文字起こしを取得する

消費クレジット: 1。video_url には完全な YouTube URL か、11 文字の動画 ID のみを指定します。

curl -sS -G "https://transcriptapi.com/api/v2/youtube/transcript" \
  --data-urlencode "video_url=$VIDEO" \
  --data-urlencode "format=text" \
  --data-urlencode "send_metadata=true" \
  -H "Authorization: Bearer $TRANSCRIPT_API_KEY" \
  -H "User-Agent: FrontierAgent/1.0"

タイムスタンプを引用するためにセグメントごとの start と duration の値が必要な場合は、代わりに format=json を指定してください。JSON の形式は次のとおりです: {"video_id": "...", "language": "en", "transcript": [{"text": "...", "start": 18.0, "duration": 3.5}]}。

動画またはチャンネルを検索する

消費クレジット: 1。type は video または channel、limit は 1 から 50 の間で指定します。

curl -sS -G "https://transcriptapi.com/api/v2/youtube/search" \
  --data-urlencode "q=$QUERY" \
  --data-urlencode "type=video" \
  --data-urlencode "limit=20" \
  -H "Authorization: Bearer $TRANSCRIPT_API_KEY" \
  -H "User-Agent: FrontierAgent/1.0"

チャンネルハンドルを解決する

無料、クレジット消費なし。@ハンドル、チャンネル URL、または UC... ID を受け付けます。

curl -sS -G "https://transcriptapi.com/api/v2/youtube/channel/resolve" \
  --data-urlencode "input=@TED" \
  -H "Authorization: Bearer $TRANSCRIPT_API_KEY" \
  -H "User-Agent: FrontierAgent/1.0"

他のチャンネルエンドポイントは同じ channel 値を直接受け付けるため、事前に解決する必要はほとんどありません。

ヘルパースクリプト

scripts/transcript.sh は文字起こし呼び出しをラップし、キーがない場合はエラーメッセージを表示します。

bash plugins/skills/youtube-transcripts/scripts/transcript.sh "https://www.youtube.com/watch?v=nm1TxQj9IsQ"

呼び出しが失敗した場合

ステータス意味対処方法
401キーが間違っているか存在しないユーザーに .env 内の TRANSCRIPT_API_KEY を確認するよう依頼する
403Cloudflare がリクエストをブロックしたUser-Agent ヘッダーが不足している。追加してリトライする
404動画にキャプションがないその旨を明確に伝える。文字起こしを捏造しない
422動画IDまたはURLが不正ユーザーのリンクからIDを読み直す
429クレジット不足、またはレート制限その旨を報告する。ループ内でリトライしない

長い文字起こしはツールの出力予算を超える可能性があります。format=text を指定し、本文を > outputs/transcript.txt でファイルに書き出し、必要な部分だけを読み取ってください。

取得したデータの取り扱い

主張が含まれている場合は、言い換えるよりも文字起こしをそのまま引用してください。自動キャプションには認識エラーが含まれる可能性があるため、不自然な技術用語は疑い、それを基に議論を構築する前に動画のタイトルや説明と照合してください。

関連スキル