영상편집디자인

유튜브 카드뉴스 자동화 스킬봇

유튜브 카드뉴스 메이커

유튜브 주소 하나로 카드뉴스 이미지와 하이라이트 쇼츠 영상을 함께 만들고, 해외 영상은 한글 번역 자막까지 넣어요.

Claude · GPT · Gemini 모두 사용 가능VS Code에 셋 중 하나만 설치하면 돼요 →ClaudeClaude CodeGPTCodexGeminiAntigravity

사용법

  1. 1

    ZIP 받기

    아래 버튼으로 스킬 파일을 내려받아요. 가입은 필요 없어요.

  2. 2

    폴더에 풀고 열기

    원하는 폴더에 압축을 풀고 VS Code에서 그 폴더를 열어요.

  3. 3

    말로 시키기

    AI 에이전트에게 ‘이 폴더에 있는 자동화 파이프라인 진행해줘’라고 말하면 돼요.

이럴 때 써요

이렇게 말해 보세요

“이 유튜브 주소로 카드뉴스 만들어줘”
“하이라이트 2개도 한글 자막 넣어서 뽑아줘”
“해외 영상이라 한글로 번역해서 자막 넣어줘”

이런 결과를 받아요

  1. 01표지·배경·핵심·마무리 구조의 카드뉴스 이미지(PNG)
  2. 02인스타그램 캡션과 추천 첫 댓글, 출처 표기
  3. 03한글 자막이 들어간 9:16 하이라이트 클립과 자막 파일(SRT)

잘 쓰는 팁

지금 무료로 받아 보세요

가입 없이 ZIP 하나면 끝이에요. 개인·상업 용도로 고쳐 써도 돼요.

ZIP 받기 (22KB)

설치 방법

Claude.ai / 데스크톱 앱 (ZIP 업로드)

  1. 아래 ZIP을 내려받아요.
  2. 설정 → 기능(Capabilities) → 스킬에서 ZIP을 업로드해요.
  3. 스킬을 켜 두고, 아래 "이렇게 말해 보세요" 문장 중 하나로 대화를 시작해요.

Claude Code (폴더 복사)

  1. ZIP을 풀면 스킬 이름의 폴더가 나와요.
  2. 그 폴더를 ~/.claude/skills/ 안에 넣어요. (프로젝트 전용이면 .claude/skills/)
  3. Claude Code를 다시 시작해요.

이용 환경에 따라 메뉴 이름이 조금 다를 수 있어요. 메뉴가 안 보이면 요금제에서 스킬 기능이 켜져 있는지 확인해 주세요.

파일 구성과 미리보기

들어 있는 파일

SKILL.md
references/cards-format.md
scripts/check.py
scripts/fetch.py
scripts/make_highlights.py
scripts/prepare_subs.py
scripts/render_cards.py
README.txt

SKILL.md 앞부분 미리보기

---
name: youtube-cardnews-maker
description: Turn a YouTube link into Instagram card-news images and 9:16 highlight clips; foreign videos get Korean-translated subtitles. Free - no API key, no browser login. 유튜브 주소로 카드뉴스와 하이라이트 쇼츠, 해외 영상은 한글 번역 자막.
---

# YouTube Card-News + Highlight Maker

Given a YouTube URL, you (the agent) read the transcript, write the card-news text yourself, render the card images, and cut two highlight clips with Korean subtitles. **Every run delivers both: the cards and the highlight videos.** **You do the summarizing and translating** - there is no paid API and no Aside/browser login. Everything else is free local tooling (`yt-dlp`, `ffmpeg`, a headless browser for rendering).

## Setup (once)
```
pip install yt-dlp youtube-transcript-api playwright
```
- `ffmpeg` and `ffprobe` must be on PATH (Windows: `winget install ffmpeg`).
- Rendering uses an installed Chrome/Edge. If neither exists: `playwright install chromium`.
- Optional, only for videos with no captions: `pip install faster-whisper` (local speech recognition, free).
- A Korean font is found automatically (Windows/macOS/Noto). Otherwise pass `--font path/to/font.ttf`.

Run scripts from this skill's `scripts/` folder. Use a work folder whose path has no `#` character (ffmpeg treats `#` as a URL fragment), e.g. `work/<video-id>`.

## Steps

1. **Ask** for: the URL; card count (default 5-10, you decide by length); card size (default 1080x1350, or 1080x1080); an optional brand label for the cover.
   - **Highlight videos are always made** (2 clips of 10-20 s) together with the cards. Do not ask whether to make them, and never skip them unless the user explicitly says "cards only" or the video cannot be downloaded (then say why).
2. **Fetch** - `python scripts/fetch.py "<url>" --out work/<id>`
   - Prefers Korean captions, then English, then any, then local speech recognition. If the video is foreign and you want the original captions to translate yourself, add `--lang en`.
   - Writes `meta.json`, `transcript.json`, `transcript.txt` and `video.mp4` (<=720p).
   - Read `transcript.txt` fully (it has `[mm:ss|seconds]` markers).
3. **Write `cards.json`** in the work folder (format and rules: `references/cards-format.md`). Summarize into Korean cards: cover -> background -> point_1..N -> closing. If the transcript is not Korean, translate while summarizing; keep names, numbers and quotes accurate. Wrap the one or two key words of a title in `**double asterisks**` to color them. Give each card a `time` (seconds) whose video frame fits that card. Also write the caption (`description`) and a first comment with the original link.
4. **Pick two highlights** right away (not overlapping, from different parts): the strongest claim, a reveal, or a quotable moment, 10-20 s each, starting and ending on caption-line boundaries. Add `"highlights": [{"start": .., "end": .., "title": "short Korean clip title"}]` to `cards.json`, then run
   `python scripts/prepare_subs.py work/<id>` - it copies the caption lines (with exact timing) into each highlight's `subs`. For foreign videos fill every empty `ko` with a natural Korean line (34 characters or fewer reads best). For Korean videos `ko` is pre-filled; just tidy it.
5. **Check** - `python scripts/check.py work/<id>`. Fix every `FIX` line (limits, missing Korean, overlaps) and re-run until it says `0 to fix`.
6. **Render cards** - `python scripts/render_cards.py work/<id> [--theme dark|light] [--accent "#ffcf3f"] [--size 1080x1080] [--brand "Name"]`
   - Output: `cards/card_01.png ...`, `cards/_preview.png` (all cards on one sheet) and `description.txt`.
   - Design: the cover is a full-bleed frame with the key words on an accent marker; inner cards show the frame as a rounded image, a label pill, a large faint point number, the title with a marker underline and the body. `dark` (default) or `light` theme.
   - **Open `_preview.png` and every card.** The script warns when text runs off a card; shorten it and re-render. Swap a card's `time` if its frame is dull or unrelated.
7. **Make the highlight videos** - `python scripts/make_highlights.py work/<id> [--show-original] [--accent "#ffcf3f"] [--brand "Name"]`
   - Output: `highlights/highlight_01.mp4` + `.ko.srt`, and `highlights/_preview_01.png` (3 frames). Layout: clean dark frame, a HIGHLIGHT pill + bold title + source on top, the video in a rounded window with a thin progress bar on its bottom edge, Korean subtitles under it (same font as the cards; `**word**` colors a key word). The lower part is left empty on purpose: shorts apps cover it with their own buttons and captions.
   - **Open each `_preview_NN.png`** to confirm subtitles are readable, in sync with the scene and not cut off.
8. **Deliver**: list the full paths of the cards, the preview sheet, the highlight videos, the `.srt` files and `description.txt`. Point out any names/terms you were unsure about in translation. Remind the user about the rules below. Do not upload anywhere unless asked.

함께 보면 좋은 스킬

이 스킬은 Claude가 알아서 불러 쓰는 지침서예요. 사용 결과에 대한 책임은 사용자에게 있어요. 이용약관