Yt digest
Personal agent skills for Claude Code, Codex, and other Agent Skills-compatible agents, distributed via local symlinks.
npx -y skills add gitt510/agent-skills --skill yt-digestAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- 16 days oldThe repository was created 16 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Summarize a YouTube video from its transcript (subtitles) fetched with yt-dlp, without watching it; never downloads the video or audio. Use when a YouTube URL (youtube.com / youtu.be) is shared and the user wants the content, key points, or a transcript — including vague asks like "what's this about?" as long as the target is a YouTube video.
SKILL.md
3.9 KB, ~1.3k tokens by cl100k_base, as published. Nobody here has run it
YT Digest
Goal
動画を視聴せずに、YouTube が字幕表示用(CC ボタン)に配信している VTT データだけから内容を把握し、「見なくて済む判断材料」を渡す。 依頼者は内容の紹介ではなく、見る価値があるかの判断と要点を求めている。
動画・音声・storyboard は取得せず、account credentials なしで公開取得できる字幕 VTT だけをローカルで処理する。user がアクセス・処理する権限を持つ動画だけを対象にし、 platform の利用規約、著作権、適用法に従う。この skill 自体は利用の適法性を判断しない。
Requirements
- Python 3
uvx(uvに同梱)- Node.js(
yt-dlp --js-runtimes nodeから使用) - YouTube と package registry への network access
手順
-
読み込んだ
SKILL.mdの親 directory を<skill-directory>として解決する。~/.claude、~/.codexなどの固定 install path を仮定しない。 -
transcript を取得する:
python3 "<skill-directory>/scripts/fetch_transcript.py" <URL> \ --outdir <scratchpad>/yt-digest-<video_id>uvxが一時環境にyt-dlpを取得して実行する- 字幕の優先順位は 手動 ja → 自動 ja → 手動 en → 自動 en (手動字幕は人手なので誤変換がなく品質が段違い)
- exit 2 = 字幕なし。下の Edge cases へ
-
transcript.txtを読む。長い動画(>50k chars)は分割して読む。meta.jsonに chapters があれば構成把握の手がかりにする。 -
下の「出力の型」で要約を書く。
出力の型
- 📌 基本情報 — タイトル・チャンネル・長さ・公開日
- 論旨の流れ — 何を主張/説明する動画かを一文で言ってから、展開を追う
- 💢 ツッコミどころ — 主張系の動画(投資・健康・製品レビューなど、 何かを勧める/断じる動画)のみ。チュートリアルや純粋な解説には付けない。 データの選び方の偏り(チェリーピッキング)、意図的に省かれた前提 (税・手数料・リスク)、論理の飛躍を具体的に指摘する。 依頼者が「見なくていい理由」まで含めて判断できるようにするのが目的
- 宣伝の分離 — スポンサー枠・案件・自社宣伝は本編の要約に混ぜず、 「動画の◯割が宣伝」程度に分けて報告する
自動字幕の場合、ASR の誤変換は文脈から修正して要約に反映する。 固有名詞の重要な修正は注記する(例:「東京会場→東京海上」)。
Edge cases
- 字幕なし(exit 2): 音楽・ライブ配信・公開直後(自動字幕の生成前)は 字幕が存在しないことがある。その旨を報告して止まる。 音声をダウンロードしての文字起こしはこの skill の範囲外
- メンバー限定・年齢制限・非公開: アカウント不使用の設計なので取得 できない。報告して止まる
- 「◯◯についてどこで話してる?」 と聞かれたら
transcript_timed.txtから timestamp を引いて答える
拡張余地(未実装)
transcript_timed.txt の timestamp は、将来フレーム切り出し
(動画 DL + ffmpeg)を足すときの座標になる。図表が多くて transcript
だけでは不足する動画が出てきたら phase 2 として検討する。
What ships with it: 1 file
4.9 KB alongside SKILL.md, 1 of them executable
scripts/
- fetch_transcript.pyruns4.9 KB