youtube-transcript

star 0

抓 YouTube 影片的乾淨逐字稿,並可整理成 jerry 式章節 notes(章節摘要 + 範例稿 + 時間戳目錄)。當用戶說「抓逐字稿」「YouTube 逐字稿」「transcript」「這支影片講什麼」「幫我存這支影片」「影片整理一下」「影片大綱」,或貼出 youtube.com / youtu.be 連結要內容時使用。先跑 scripts/fetch-youtube-transcript.mjs 取乾淨逐字稿,再依需要產整理 notes。不做離線 whisper 轉錄(那是 scripts/transcribe-techtalk-video.py)。

ringda By ringda schedule Updated 6/8/2026

name: youtube-transcript description: 抓 YouTube 影片的乾淨逐字稿,並可整理成 jerry 式章節 notes(章節摘要 + 範例稿 + 時間戳目錄)。當用戶說「抓逐字稿」「YouTube 逐字稿」「transcript」「這支影片講什麼」「幫我存這支影片」「影片整理一下」「影片大綱」,或貼出 youtube.com / youtu.be 連結要內容時使用。先跑 scripts/fetch-youtube-transcript.mjs 取乾淨逐字稿,再依需要產整理 notes。不做離線 whisper 轉錄(那是 scripts/transcribe-techtalk-video.py)。

/youtube-transcript — YouTube 逐字稿 + 整理 notes

這個 skill 在做什麼

丟一個 YouTube 連結 → 跑腳本抓乾淨逐字稿 → 依需要讀逐字稿、整理成 notes。查既有影片時:先讀 notes(整理過、可單讀),要原話才回 transcript。

處理:離線語音轉錄(無字幕影片走 scripts/transcribe-techtalk-video.py)、綁特定主題的分析。

落地前先確認(每段對話第一次)

每段對話第一次要落地逐字稿前,先跟使用者確認兩件事,不要默默照預設存:

  1. 落地路徑 / 分組資料夾:預設 shared/references/external-systems/youtube/;若是連續看同一頻道 / 系列,可開分組資料夾(例如 external-systems/telerik/)集中放。
  2. 要不要產 notes:只存逐字稿,還是逐字稿 + 整理 notes。

確認後,同一段對話後續影片沿用同一決定,不每支再問。預設落點是合理預設、不是唯一正解;第一次確認一次,避免事後搬檔 / 刪檔。

落點與兩檔結構(對齊 jerry 範本)

預設落在 shared/references/external-systems/youtube/;同頻道 / 系列可改落分組資料夾(例如 external-systems/telerik/),落點以對話開頭確認的決定為準。同一資料夾下,一支影片最多兩個檔:

  • {slug}-transcript.md — 生逐字稿,腳本產(必有)。
  • {slug}-notes.md — 章節摘要 + 範例稿 + 時間戳目錄,AI 產(依對話確認決定要不要產;「只存逐字稿」時就沒有這檔)。

jerry 範本參考:artifacts/jerry-first-batch-2026-05-25/youtube-transcripts/DNpT-c1mW6w-notes.zh-TW.md

抓逐字稿(固定步驟)

node scripts/fetch-youtube-transcript.mjs <url|videoId>
  • 先不要給 --lang,讓腳本自己看實際字幕 track 選(猜語言碼會抓到空)。只有用戶明確指定語言才加 --lang例外:--asr-ok 模式下,腳本可能選到 zh-Hant 等非原語言的自動翻譯字幕(劣質、不可用)。若是英文影片走 ASR,明確加 --lang en 抓原語言。
  • 腳本會自動:優先手動字幕、429 退避重試、清 VTT、依標點或每 N 行分段、寫出 transcript.md。
  • 腳本寫死落在 youtube/,不吃分組落點。 若這段對話確認落到分組資料夾(如 telerik/),抓完要把 transcript 從 youtube/ 搬過去。
  • 429 限流:一次只抓一支。 多支併發抓會觸發 ASR 端點限流、重試耗盡失敗。
  • 前置(deno + uvx/yt-dlp)缺了腳本會自己報錯並給安裝指令;照訊息指引使用者裝即可。

整理 notes(判斷層,AI 做,不交給腳本)

讀完 transcript 後,依 jerry 結構產 {slug}-notes.md

  1. 章節摘要 — 把影片切段(開場 / 核心觀念 / 各主題 / 收尾),每段條列重點。
  2. 完整範例稿(可直接模仿) — 挑高價值段落整理成可套用的稿。
    • 範例稿語言依影片原語言:影片英文 → 中文整理 + 英文原話並陳(保留原文);影片中文 → 直接中文。
  3. 時間戳記目錄 — 各章節對應影片時間點。

求職用途的整理要吃 career-positioning(.specify/conventions/career-positioning.md),重點是「對 Xin 求職有什麼用」,不是機械摘要。

Decision points

  • 腳本報「無 manual 字幕」:先問用戶要不要接受自動字幕(品質較差,加 --asr-ok),或這支根本沒字幕 → 指向 scripts/transcribe-techtalk-video.py 做離線轉錄。
  • 選到 asr:讀逐字稿時若發現明確的誤聽詞(人名、產品名、專有名詞,如 CloudClaudeBeatVite),直接 Edit 改正逐字稿,並在檔頭 ASR 校準: 註記改了哪些。無法確認原字的(疑似代號)保留原樣、在註記標出存疑,不要猜一個錯字填。不只列對照表給用戶。
  • 要不要產 notes:以對話開頭「落地前先確認」的決定為準;該段對話已確認只存逐字稿,就不再每支問。
  • 腳本報 429 重試耗盡:告訴用戶字幕端點限流中,過幾分鐘再試;不要改用 cookie 或 remote-components 繞(那些已知會失敗)。

原則

  • 語言碼以腳本實際抓到的 track 為準,不猜。
  • 查既有影片:先 notes 後 transcript。
  • 逐字稿是機械層、notes 是判斷層;notes 不交給腳本做。
  • positioning 衝突時以 career-positioning.md 為準。
  • 保持一支影片最多兩個檔,不堆 index / 系統;同頻道分組資料夾只是換落點,不算堆系統。
Install via CLI
npx skills add https://github.com/ringda/xin-job-hunting --skill youtube-transcript
Repository Details
star Stars 0
call_split Forks 0
navigation Branch main
article Path SKILL.md
More from Creator