Skip to main content

youtube-transcript

YouTube 발화 정본 추출. 시간 조각 자막을 YouTube 원본 >> 경계로만 조립해 ~/org/transcript에 denote md로 저장. turn 시작은 <!-- [m:ss] -->. LLM 재작성 없음. transcript.js 기본 + ytdlp 폴백.

الانتقال إلى التثبيت

معلومات المصدر

المستودع
junghan0611/agent-config
آخر نشاط في المصدر
٦ سبتمبر ٢٠٢٦ في ٠٧:١٠
لغة SKILL.md المكتشفة
الكورية
النجوم
٥
التفرعات
٠

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

مستكشف الملفات
5 ملفات

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
youtube-transcript
description
YouTube 발화 정본 추출. 시간 조각 자막을 YouTube 원본 >> 경계로만 조립해 ~/org/transcript에 denote md로 저장. turn 시작은 <!-- [m:ss] -->. LLM 재작성 없음. transcript.js 기본 + ytdlp 폴백.
# YouTube Transcript YouTube 자동/수동 자막을 **발화 정본 md**로 가져온다. 요약이 아니다. LLM 문장 교정도 아니다. **코드 레벨 조립**만 한다. ## 정본 계약 | 한다 | 안 한다 | |------|---------| | 원본 cue 텍스트 보존 (`uh`, 반복, `[laughter]`) | LLM 재작성 / 마침표 발명 | | YouTube가 넣은 `>>` 경계로만 turn 분리 | 발화자 이름 추정·라벨 | | YAML front matter에 영상 메타 | 본문에 보이는 `[0:00]` 접두 | | turn 시작 `<!-- [m:ss] -->` (HTML 주석) | SRT/VTT 포맷 출력 | | `~/org/transcript/` denote md 저장 | | `>>`가 없으면 긴 덩어리로 남긴다. 없는 경계를 만들지 않는다. ## Setup ```bash cd {baseDir} npm install ``` ## 방법 1: transcript.js (기본) ```bash # 추출 + ~/org/transcript 저장 + stdout 전체 문서 {baseDir}/transcript.js <video-id-or-url> # 언어 지정 (default: en) {baseDir}/transcript.js <video-id-or-url> --lang en # 저장 없이 stdout만 {baseDir}/transcript.js <video-id-or-url> --no-save # 저장 경로 오버라이드 {baseDir}/transcript.js <video-id-or-url> --outdir ~/org/transcript # 사용 가능 자막 언어 {baseDir}/transcript.js <video-id-or-url> --list ``` stderr에 `Saved: <path>`가 찍힌다. stdout은 헤더+본문 전체. ## 방법 2: transcript-ytdlp.sh (폴백) transcript.js 실패 시. 쿠키 자동 감지. 같은 정본 계약. ```bash {baseDir}/transcript-ytdlp.sh <video-id-or-url> {baseDir}/transcript-ytdlp.sh <video-id-or-url> --lang en {baseDir}/transcript-ytdlp.sh <video-id-or-url> --list {baseDir}/transcript-ytdlp.sh <video-id-or-url> --no-save ``` ### oracle / datacenter 참고 - 주거 IP(thinkpad)에서는 `transcript.js`가 쿠키 없이 되는 경우가 많다. - 오라클(클라우드 IP)에서는 JS 경로가 막히고 **ytdlp + 쿠키**가 본선이다. - 쿠키 파일: `~/cookies.txt` (컨테이너 마운트 `/home/node/cookies.txt`, **rw**). Netscape 포맷에 **`LOGIN_INFO`가 있어야** 한다. `yt-dlp --cookies-from-browser chrome`은 이 필드를 빠뜨리는 경우가 있어, thinkpad에서 `browser-cookie3`로 export 한 뒤 scp 한다. - yt-dlp **≥ 2026.8.19** + `--remote-components ejs:github` 필요(스크립트가 자동 포함). 컨테이너 재빌드 전 임시 갱신: `docker exec -u root openclaw-gateway pip install -U --break-system-packages 'yt-dlp>=2026.8.19'`. ## 출력 예 파일명: `20260811T095500--gurudev-on-the-future-of-humanity__transcript_youtube.md` ```markdown --- title: "Gurudev on the Future of Humanity" date: 2026-08-11T09:55:00+09:00 tags: ["transcript", "youtube"] identifier: "20260811T095500" source: "https://youtu.be/ZBJkxUcgYa8" video_id: ZBJkxUcgYa8 channel: "Mo Gawdat" lang: en duration: 25:26 cues: 597 turns: 154 --- <!-- [0:00] --> Do you believe that we are all [music] designed for some kind of a mission in life that <!-- [0:04] --> definitely there is certain uh [music] preset missions for all of us amenities or [music] uh instruments we need we end up getting that <!-- [0:15] --> when we align with what that mission ``` - `<!-- [m:ss] -->` — 에디터/미리보기에서 주석(흐리게). 발화 텍스트와 시각적으로 분리 - 저장 루트: `~/org/transcript` (실체: `~/sync/org/transcript`). md 가든 정책에 맞춘 Denote id 축 편입 ## 판단 기준 1. 먼저 `transcript.js` 2. 실패 → `transcript-ytdlp.sh` 3. 둘 다 실패 → summarize `--extract` 또는 transcribe(Whisper) ## 에이전트 활용 1. 스크립트 실행 → `Saved:` 경로 확인 → 필요 시 파일 read 2. 영어 자막이 기본. 한국어 자막을 직접 받지 않는다 — en 받아 에이전트가 번역/분석 3. 정본을 고치거나 화자를 붙여 쓰지 않는다. 원본 조립본을 근거로 둔다 ## Notes - `youtube-transcript-plus`의 `offset`/`duration` 단위는 **초** - oracle 등 다른 기기: `~/org/transcript` 경로와 npm install 전제 - `--lang en` 기본. 자동생성 영어 포함
عرض على GitHub