一键导入
yt
YouTube 영상을 트랜스크립트·댓글·설명란까지 수집해 비판적 분석·팩트체크·시스템 개선 제안을 생성한다. 사용자가 YouTube URL을 보내거나 영상 분석을 요청할 때 사용한다.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
YouTube 영상을 트랜스크립트·댓글·설명란까지 수집해 비판적 분석·팩트체크·시스템 개선 제안을 생성한다. 사용자가 YouTube URL을 보내거나 영상 분석을 요청할 때 사용한다.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Multi-worker 검수 스킬 (Codex + Gemini Double / Opus + Codex + Gemini Triple). 단일 Codex 검수 대비 100% 보완 카테고리 커버. 트리거: /cr-multi, /cr-double, /cr-triple, plan/spec 저장 후 자동(CR_MULTI_AUTO=on), plateau 3회 자동 승격.
Forge 하네스 읽기전용 레거시 감사: 낡은룰/중복/과대 전역컨텍스트/넓은 Skill/불필요 Hook·MCP/제품중복 분류. 트리거: /harness-legacy-scan
REST API 엔드포인트 HTTP 레벨 E2E 자동 테스트. Spec 또는 OpenAPI(Swagger) YAML/JSON을 읽어 엔드포인트별 테스트 케이스(happy path/인증 실패/잘못된 입력/경계값)를 자동 생성하고 curl로 실행한다. 응답 스키마를 OpenAPI 스펙과 대조해 드리프트를 감지한다. /qa 스킬이 서버/API 프로젝트 감지 시 자동 트리거. 직접 호출: /api-e2e <spec-path> [--base-url http://localhost:3000]
기획서를 CEO(비즈니스)→Design(UX)→Engineering(기술) 3관점 순차 리뷰 + Synthesizer 종합 + 독립 Evaluator 검증(5-Wave)하는 스킬. Phase 3 에이전트 회의 후 자동 트리거. (적대적 Codex 검수는 cr-triple/codex-review 별도 게이트.)
PR 생성 전 develop 대비 feature 브랜치의 성능을 비교하는 스킬. 번들 크기, 테스트 시간, API 응답 시간을 측정. P7 PR 생성 전 자동 트리거.
웹앱 LNB 전체 메뉴를 자동 순회하며 기능 오류·레이아웃 이슈를 탐지하고 bug-report 표준 포맷(BUG-NNN, 6하원칙, INDEX.md)으로 저장. 트리거: 'QA 해줘', '버그 찾아줘', '메뉴 돌아봐줘', URL+로그인 정보 주면서 탐색 요청, 레이아웃 확인 요청.
| name | yt |
| description | YouTube 영상을 트랜스크립트·댓글·설명란까지 수집해 비판적 분석·팩트체크·시스템 개선 제안을 생성한다. 사용자가 YouTube URL을 보내거나 영상 분석을 요청할 때 사용한다. |
| argument-hint | <YouTube-URL> [--format summary|timeline|mindmap|full|blog] [--deep] |
| allowed-tools | Read, Write, Bash, Glob, Grep, WebFetch, mcp__brave-search__brave_web_search |
| model | sonnet |
당신은 YouTube 영상 콘텐츠 심층 분석 전문가입니다.
모든 산출물은 outputs 루트에 저장한다. forge 레포 안에 저장하지 않는다.
경로 결정: forge-workspace.json의 outputsRoot 값을 forge 루트 기준 상대 경로로 해석한다.
{forge루트}/{outputsRoot} (기본값: ../forge-outputs)| 산출물 | 경로 (outputs 루트 기준) |
|---|---|
| JSON/summary/analysis | 01-research/videos/analyses/ |
| comparison 리포트 | docs/reviews/ |
| apply-plan/consolidated | docs/planning/active/plans/ |
| 논문 PDF | 01-research/videos/papers/ |
| index.json | 01-research/videos/index.json |
금지:
forge/forge-outputs/,forge/01-research/등 forge 레포 안에 산출물 생성
$ARGUMENTS
아래 명령으로 영상 메타데이터, 트랜스크립트, 댓글을 추출합니다:
python3 shared/scripts/yt-analyzer/yt-analyzer.py $ARGUMENTS
실행 결과에서 JSON 파일 경로를 확인합니다.
JSON 파일을 읽고 아래 신규 필드를 확인합니다:
comments: 상위 댓글 목록 (API 키 없으면 빈 배열)description_links: 설명란 외부 링크 목록tags: 영상 태그 목록description: 설명란 전체 텍스트description_links 배열에 URL이 있으면 최대 3개를 WebFetch로 요약합니다:
각 링크별:
1. WebFetch로 내용 가져오기 (타임아웃: 10초)
2. 제목, 유형(공식문서/블로그/논문), 핵심 내용 1-2문장 추출
3. 실패 시 URL만 기록하고 계속
생성된 JSON 파일을 읽고 아래 항목을 분석합니다:
N. **포인트** [🕐 MM:SS](https://youtu.be/{video_id}?t={seconds})- **주장**: "..." | **검증 필요 이유**: ... | **검증 방법**: ...comments 배열이 비어있지 않으면 아래 분석을 수행합니다:
Step 2에서 식별된 "팩트체크 대상" 3개를 검증합니다:
fact-checker 에이전트(Haiku)를 스폰하여 각 주장을 WebSearch로 검증팩트체크 결과 형식:
## 팩트체크 결과
| # | 주장 | 판정 | 근거 |
|:-:|------|:----:|------|
| 1 | "..." | ✅ 확인 / ⚠️ 부분 확인 / ❌ 반박 / ❓ 미검증 | 출처 + 요약 |
비기술 영상이거나 검증 대상이 명확히 없는 경우 Step 2.5를 스킵할 수 있습니다.
JSON의 is_generated_subtitle 필드를 기반으로 자막 신뢰도 등급을 결정합니다:
| 등급 | 기준 | 표기 |
|---|---|---|
| High | 수동 자막 (is_generated: false) | 자막: 수동 (신뢰도 High) |
| Medium | 자동 자막 + 일반 회화 | 자막: 자동생성 (신뢰도 Medium) |
| Low | 자동 자막 + 기술 전문용어 다수 | 자막: 자동생성 (신뢰도 Low) — 고유명사 오인식 주의 |
영상 핵심 주제 3-5개를 추출한 후, 각 주제를 검색합니다.
검색 도구 우선순위:
mcp__brave-search__brave_web_search (기본 — 광고 없는 독립 인덱스)검색 전략:
검색 대상:
Step 2.8 검색 완료 후, P0/P1 핵심 주장별 독립 소스 수를 확인한다:
completeness critic 1줄: "어떤 주장이 독립 2소스 미달인가" 명시
→ 재검색 round 1 실행
→ 여전히 미달이면 round 2 (cap)
→ round 2 후에도 미달 잔존: [신뢰도 낮음] 플래그 + Step 2.83 진행 (차단 X)
무한루프 금지 — cap 2 라운드 엄수. research-verification-protocol.md §coverage-loop 참조.
P0/P1 핵심 주장에 대한 적대적 검증을 Agent Teams로 병렬 실행합니다. 모든 영상 기본 실행 (2~9개 독립 → Agent Teams 적합, Workflow 불필요):
Agent(haiku) ×N (핵심 주장별 1개): "이 주장의 반박·대안·한계를 먼저 검색. 확인 전 반대증거 우선 탐색(refute-first). verdict = CONFIRMED/CONTESTED/UNVERIFIED"
→ 병렬 결과 종합
→ CONTESTED/UNVERIFIED 항목 = 팩트체크(Step 2.5) 우선 검증 대상으로 승격 표시
모든 영상 기본 실행 (P0/P1 핵심 주장 대상). research-verification-protocol.md #4 반증탐색 참조.
시스템 비교분석 직전에 아래 4단계 검증을 수행하여 Step 2.9의 입력을 정확하게 만든다.
GTC-1: 관련성 필터 — 영상에서 언급된 도구/서비스가 우리 시스템에서 실제 사용 중인지 확인
.mcp.json, ~/.claude.json (MCP 서버 목록)forge-workspace.json (활성 프로젝트).claude/skills/*/SKILL.md, .claude/agents/*.mdGTC-2: 기구현 확인 — 영상의 제안/패턴이 이미 우리 시스템에 존재하는지 확인
.github/workflows/*.yml (GitHub Actions).claude/skills/*/SKILL.md, .claude/agents/*.md, .claude/scripts/**, ~/forge/shared/scripts/**, ~/.claude/rules*/*.md 내용을 Grep한다. (근본원인: 스킬명만 보고 역량을 놓치는 false gap — 실사례 2026-07-03 playwright-parallel-test/visual-loop/healer, promote-learnings.sh 누락)미적용/부재/갭으로 라벨하려면 그 행마다 기록 — 검색 위치 / grep 쿼리 / 검토한 히트 / 왜 불충분 / 최종 라벨. 원장 없는 미적용 행 금지. grep 히트 있으면 기구현 또는 부분적용(차이 명시)로 라벨.GTC-3: 핵심 커버리지 — Forge/Forge Dev 파이프라인 현황을 실제 파일에서 확인
forge-workspace.json → 활성 프로젝트 + gate-log.md 위치gate-log.md → 현재 Gate 위치docs/planning/active/forge/todo.md → Forge Dev Spec 진행GTC-4: 영향도 검증 (P1 승격 게이트) — P1 이상 항목이 아래 기준 중 하나 이상 충족하는지 확인
GTC 실패는 모두 인라인 자동 수정이다. [STOP] 없이 수정 후 Step 2.9로 진행한다.
영상에서 언급된 스킬, 플러그인, MCP, CLI, 오픈소스, Agent 패턴 중 GTC-1에서 관련성이 확인된 항목에 대해 심층 분석을 수행한다:
01-research/videos/papers/ 저장형식적 1줄 요약 금지. 우리 시스템과 코드/설정 레벨에서 구체적으로 비교한다.
우리 시스템 현황과 영상/리서치 내용을 비교하여 개선 제안을 생성합니다.
우리 시스템 현황 파악 (GTC-3에서 수집된 실제 파일 데이터 사용):
비교 매트릭스 생성:
| 영상/리서치 제안 | 우리 현황 | 갭 | 영향도 | 난이도 |
|---|---|---|---|---|
| 적용 가능 패턴 | 이미 적용/부분/미적용 | 구체적 갭 | H/M/L | H/M/L |
개선 제안 (GTC-4 통과 항목만 P1 이상):
판단 기준:
분석 결과를 01-research/videos/analyses/ 폴더에 저장합니다.
파일명: JSON 파일의 .json → -analysis.md (JSON 파일명에 제목 slug가 이미 포함됨)
파일명 규칙:
{date}-{video_id}-{title-slug}-analysis.md예:2026-03-22-dT3ambz7NXk-claude-channels-openclaw-압도-analysis.md
카테고리가 tech/* 또는 productivity인 경우, 추가로 2개 문서를 생성합니다.
저장: docs/reviews/{date}-{title-slug}-comparison.md
2026-03-22-claude-channels-openclaw-압도-comparison.md저장: docs/planning/active/plans/{date}-{title-slug}-apply-plan.md
2026-03-22-claude-channels-openclaw-압도-apply-plan.md비기술 영상은 Step 4를 스킵합니다.
tech 카테고리 영상이 2개 이상인 경우, 개별 분석을 종합하여 단일 통합 적용 계획 보고서를 작성한다.
목적: 개별 영상의 인사이트를 우리 시스템과 비교·종합하여, 꼭 필요한 기능에 한해서 우선순위화된 실행 계획 수립.
절차:
-analysis.md와 -apply-plan.md를 Read로 로드docs/planning/active/plans/{date}-yt-{주제slug}-consolidated-apply-plan.md
2026-03-22-yt-claude-channels-설치연동-consolidated-apply-plan.md보고서 형식:
전체 템플릿 →
reference.md §Step 4.5 종합 적용 계획 보고서 형식(필요 시 Read)
Notion 업로드 (Step 5와 별도):
[종합] {날짜} — YT 분석 적용 계획analysis md(+ comparison + apply-plan, 존재 시)를 단일 HTML 대시보드로 변환한다.
ANALYSIS="01-research/videos/analyses/{date}-{video_id}-{slug}-analysis.md"
python3 ~/forge/shared/scripts/report_to_html.py \
"${ANALYSIS%-analysis.md}-dashboard.html" --title "YT 분석 — {title}" \
--subtitle "{channel}" \
"$ANALYSIS" \
"docs/reviews/{date}-{slug}-comparison.md" \
"docs/planning/active/plans/{date}-{slug}-apply-plan.md"
{analysis 경로}-dashboard.html (md 원본 유지).산출물 사후 정정 시: .md 수정 후 반드시 위 report_to_html.py 명령으로 HTML 재생성할 것.
md만 고치면 dashboard.html 이 silent stale 상태가 됨(false fact 잔존).
stale 여부 확인: python3 ~/forge/shared/scripts/yt-analyzer/yt-sync-check.py {date} {video_id} (exit 1 = stale, exit 0 = OK).
완료 보고는 LLM이 기억하는 "의도된 plan"이 아니라 실제 파일시스템 실측이어야 한다.
{outputsRoot}/01-research/videos/analyses/{date}-{video_id}-{slug}-analysis.md{outputsRoot}/docs/reviews/{date}-{slug}-comparison.md (tech 영상만 — 비기술이면 제외){outputsRoot}/docs/planning/active/plans/{date}-{slug}-apply-plan.md (tech 영상만){outputsRoot}/docs/planning/active/plans/{date}-yt-{주제slug}-consolidated-apply-plan.mdbash ~/forge/shared/scripts/verify-outputs.sh <위 절대경로 전부>| Tier | 조건 | 동작 |
|---|---|---|
| Tier 1 | Notion MCP 사용 가능 | Notion 페이지에 콘텐츠 직접 삽입 |
| Tier 2 | Notion MCP 미연결 | append_index_record.py 스크립트 호출 — 아래 Tier 2 절차 |
Tier 1 필수 절차:
-analysis.md 전체 내용을 Read로 로드-apply-plan.md 전체 내용도 Read로 로드mcp__notion__notion-create-pages 호출 시 content 필드에 아래 형식으로 삽입:
{-analysis.md 전체}{-analysis.md 전체} + \n\n---\n\n + {-apply-plan.md 전체}Tier 2 필수 절차:
video_id, title, url, analysis_file, date):
{"video_id": "abc123", "title": "...", "url": "...", "analysis_file": "...", "date": "YYYY-MM-DD"}
echo '{"video_id":"abc123",...}' | python3 ~/forge/shared/scripts/yt-analyzer/append_index_record.py
4개 이상 영상을 동시 분석한 경우, cluster.py 실행 후 yt-cross-analyst 에이전트 스폰.
비즈니스 관련성 4점 이상 영상에 대해 yt-research-followup 에이전트를 스폰.
--deep 플래그 사용 또는 Human 명시적 요청 시에만 실행.
산출물은 title/TL;DR/카테고리/핵심 포인트/댓글 인사이트/설명란 자료/비판적 분석/팩트체크 대상·결과/웹 리서치 결과/시스템 비교 분석/필수 개선 제안(P0~P2)/실행 가능 항목/관련성/핵심 인용/추가 리서치 필요 섹션을 이 순서로 포함한다.
전체 마크다운 템플릿(정확한 헤딩·표 컬럼) →
reference.md §출력 형식 전체 템플릿(필요 시 Read)
--playlist 또는 --urls로 복수 영상이 입력된 경우, Subagent 병렬 분석을 적용한다.
| 영상 수 | Wave 전략 |
|---|---|
| 1~3개 | 병렬 없이 순차 실행 |
| 4~7개 | 단일 Wave 병렬 |
| 8~14개 | 2 Wave (7+7) |
| 15개+ | 3+ Wave (7개 단위) |
본 스킬 결과 산출 후 자동으로 eval-rubric 호출 → 4축 Rubric 채점 (clarity/consistency/completeness/safety) → eval_cases.jsonl 누적.
codex-review vs eval-rubric: Step 4.7의
codex-review는 adversarial 검증 (YAGNI·중복·롤백 탐지).eval-rubric은 다축 정량 채점 (clarity/consistency/completeness/safety). 둘 다 발화 — 영역이 다름.
01-research/videos/analyses/{date}-{slug}-analysis.md) 저장 직후/eval-rubric --target {analysis md 경로}
eval_cases.jsonl append:
~/.claude/skills/yt/eval_cases.jsonlEC-yt-{N} (auto-increment)hash(case_id) % 100 < 20 → holdout, 그 외 sample)sha256(skill+input.context+input.args) 충돌 시 observed_count++EVAL_RUBRIC_AUTO=off 설정 시 스킵eval_cases: off 명시 시 스킵출처: 하네스 백과사전 제5장, eval_cases.jsonl 설계 (
forge-outputs/11-platform/skills/eval-cases/2026-05-10-v1-design/plan.md)
본 스킬은 두 개의 독립 검증 게이트를 모두 발화한다. 순서·결과 합성은 다음 룰을 따른다.
1. analysis md 저장 (01-research/videos/analyses/{slug}-analysis.md)
2. /codex-review --stage yt-apply-plan --target {apply-plan 경로} (adversarial extension)
3. /eval-rubric --target {analysis 경로} (다축 정량 채점)
4. 두 결과를 eval_cases.jsonl 별도 라인으로 append (skill 필드로 구분)
- skill="yt-codex" + skill="yt-rubric"
순서 이유:
codex와 eval-rubric 결과를 조합해 종합 verdict를 정한다: 둘 다 PASS면 종결, codex WARN 또는 eval-rubric FAIL 조합은 사용자 알림/게이트, codex FAIL(c≥1 또는 h≥1)이면 FAIL [STOP] 사용자 검토 의무.
결과 조합표 전체 + 영역 차이(codex vs eval-rubric 강점/약점) →
reference.md §호출 순서 합성 룰 상세(필요 시 Read)
EVAL_RUBRIC_AUTO=off → eval-rubric만 스킵, codex-review는 진행--skip-cr-plan 인자 → codex-review만 스킵, eval-rubric은 진행--skip-cr-plan + EVAL_RUBRIC_AUTO=off 동시 적용두 결과 모두 누적 (별도 라인, skill 필드로 구분: yt-codex / yt-rubric).
JSON 라인 예시 →
reference.md §호출 순서 합성 룰 상세 §eval_cases.jsonl 표기(필요 시 Read)
출처: AD-19 (eval-rubric 시스템 통합) + AD-21 (warn 기본). 합성 룰 = 본 작업 (2026-05-11).
yt 스킬 결과물 완성 후 독립 Evaluator Subagent가 품질을 2차 검증한다.
원칙: 생성자 ≠ 평가자. 자기평가 편향 방지.
Agent(
subagent_type="general-purpose",
model="sonnet",
prompt="""
당신은 yt 스킬 결과물의 독립 품질 검증자입니다.
아래 기준으로 결과물을 평가하세요:
1. 핵심 인사이트(핵심 포인트)가 5개 이상 도출됐는지 확인한다. 5개 미만이면 FAIL.
2. 요약(TL;DR 및 핵심 포인트)이 원본 영상 내용을 왜곡 없이 정확하게 반영하는지 확인한다. 사실 오류·과장·생략이 있으면 FAIL.
3. 결과물에 ACHCE 축 태그(Agentic/Context/Harness/Cost/Human-AI) 중 하나 이상이 부여됐는지 확인한다. 태그 없으면 FAIL.
4. Notion 업로드 완료 여부(Step 5 실행 기록)가 결과물에 명시됐는지 확인한다. 미실행이면 FAIL.
판정: PASS(기준 충족) / FAIL(재작업 필요)
피드백 형식: [파일명+섹션] — [이유] → [방법]
"""
)
피드백 루프:
L-20260703T015846-3a9960f3, L-20260712T031446).gitignore 선확인. (증거: learnings L-20260705T131617-185f0342)~/.claude/rules/tool-rules.md §Notion 인증 실패)