프롬프트 도감 › No.567
쇼츠 대본 규칙 파일 템플릿 (SKILL.md)
Shorts Script Skill Template
AI 도우미가 매 회차 이 파일을 먼저 읽고 대본(script.json) 한 편을 써요. 소재 고르는 기준, 두 가지 형식의 글자 수, 첫 문장 규칙, 말하듯 쓰는 규칙, 모든 숫자에 출처를 다는 규칙이 한 파일에 있어서 회차마다 품질이 흔들리지 않아요.
이럴 때 정보형 쇼츠 채널의 대본을 AI에게 맡길 때
도구 Claude Code · Codex · Cursor
프롬프트
---
name: <채널>-script
description: <채널> 쇼츠 대본(script.json) 1편 작성 규칙. 소재 선택, 포맷, 훅, 출처 인용, 금지 표현.
---
# <채널> 쇼츠 대본
채널: <채널 이름>. 시청자: <누구, 무엇이 궁금한 사람>. 한 문장: "<시청자>가 <얻는 것>을 <스스로 확인할 수 있게> 한다."
## 0. 근거 데이터
- 상위 채널 벤치마크: data/bench-latest.md (제목 패턴·해시태그·길이·업로드 시각). 자체 성과: `shorts status`.
- 실패 패턴(성과 루프가 갱신): <시청자와 무관한 소재>, 같은 제목 반복, 고정 꼬리 문장("모르면 손해 꼭 챙기세요"류).
## 1. 소재 고르기
1. `shorts radar` 후보 + 상시 소재 목록 <채널의 상시 소재 5~10개>.
2. 시청자 개인에게 직접 닿는 것만(<예: 받는 돈·아끼는 돈 / 궁금증의 답>). <제외: 기관 행사·총액·업계 소식>.
3. `shorts status` 최근 제목과 겹치지 않게. 같은 소재라도 다른 각도(대상 / 금액표 / 기한 / 흔한 오해).
4. 출처는 <허용 도메인 목록: 공식 기관·통계·1차 자료>만. 블로그·언론 기사·위키 금지.
## 2. 포맷 (실행기가 정해 준 FORMAT 을 그대로)
| 포맷 | 비율 | 길이 |
|---|---|---|
| list (한눈표) | 50% | 5초, 목소리 없음 |
| narrated (해설) | 50% | 45~55초 |
### list
- "format": "list". headline 2줄(\n), 핵심어는 **강조**. items 6~7개, 항목당 26자 이하, "항목명 - 짧은 설명 **숫자**". note: 확인처 한 줄. segments 없음.
### narrated
- "format": "narrated". segments 8~10개, 공백 포함 260~300자(≈55초).
- 구조: ① 0~5초 날짜·숫자 + 시청자의 장벽 한 문장("몰라서 놓친 분 많아요") ② 핵심 1개 ③ 3~4번째 segment에 중간 CTA ④ 금액·조건·대상별 구체 나열 ⑤ 마지막 segment는 문장 중간에서 끝낸다(반복 재생).
- 각 segment: say(말), screen(핵심 구절 3~5줄, 줄당 6~9자), beats 1~3개(type: hook / text / count / bars / flow / illust). 첫 beat는 hook. flow(원인→과정→결과)는 원문에서 확인된 관계만, 2~4단계, 단계당 16자 이내. 인과 설명에는 flow 우선, 단순 그림은 합계 2개 이하.
- bg_prompts 3개(앞·중간·뒤 장면). <채널 화면 스타일 한 줄>. 글자·로고 없음.
- storyboard: segment/item 수와 1:1. 각 {shot, visual, on_screen, transition}. 콘티가 없으면 음성·렌더가 시작되지 않는다.
## 3. 훅 (QA가 기계적으로 검사)
- headline 과 첫 문장에 구체적 숫자(금액·비율·나이·날짜).
- "안녕하세요 / 여러분 / 오늘은 / 이번 영상"으로 시작하지 않는다.
- 제목은 bench-latest.md 상위 패턴(숫자·질문형·시점·나이)을 따르되 문장을 복사하지 않는다. 구조와 말투만 따르고 내용은 공식 출처로 새로 쓴다.
- 첫 문장은 감탄으로 짧게 끊고 바로 숫자("와, 1인당 50만 원 주는 곳이 있어요. 근데 다 주는 게 아니에요."). 두 번째 segment부터 차분한 설명. 첫 segment만 음성이 감정 크게 합성된다.
- 제목 끝과 설명란 끝에 해시태그 3~6개(bench 상위에서 주제에 맞는 것). 설명란은 2~3문장 필수.
## 3b. AI 티 줄이기
- 입으로 말하듯: "~거든요", "~더라고요", "~인데요", "그러니까". 문어체 "~합니다"만 잇지 않는다.
- 문장 길이를 섞는다. 같은 구조(주어-숫자-입니다) 3연속 금지.
- 금지 상투어: "알아보겠습니다", "살펴보겠습니다", "핵심은", "중요한 점은", "결론적으로", "~에 대해", "다양한".
- 숫자는 아라비아 숫자 그대로("34만 9,700원")에 앞뒤 사람 말을 붙인다. 한글 수사 금지.
## 4. 사실과 출처 (팩트 게이트가 막는다)
- 말·화면·표·제목의 모든 숫자는 facts[].quote 안에 있어야 한다. quote는 원문을 글자 그대로 복사한다. 계산해서 만든 숫자 금지.
- 원문 확인: `uv run python -c "from shorts.radar import page_text; print(page_text('<url>'))"`.
- 5가지 질문(왜·누가·얼마나·언제·어디서)이 공식 출처로 채워지는 소재만 고른다. 못 채우면 소재를 바꾼다.
## 5. 금지
- <채널 분야의 규제 표현>: 조언·권유·보장·개인 판단·공포. 예: "무조건", "반드시 ~하세요", "추천합니다", "100%", "당신은 받을 수 있습니다", "그냥 사라집니다". 대신 "기준은 ○○, 확인은 △△에서".
- 인물·기관 평가 금지. 출처에 있는 사실만.
- 벤치마크 채널의 문장·이미지·로고·캐릭터를 복사하지 않는다.
## 6. 출력 out/<YYYYMMDD>-<slug>/script.json
{
"slug": "영문-슬러그", "topic": "소재 한 줄", "format": "narrated",
"headline": "2줄\n제목",
"segments": [{"say": "...", "screen": "핵심\n구절", "beats": [{"type": "hook"}]}],
"storyboard": [{"shot": "1", "visual": "...", "on_screen": "...", "transition": "..."}],
"bg_prompts": ["장면1", "장면2", "장면3"],
"facts": [{"claim": "대본에 쓴 숫자가 든 짧은 주장", "quote": "원문 그대로", "url": "https://..."}],
"source_label": "기관명 자료 YYYY.M.D",
"title": "제목 #해시태그", "description": "2~3문장", "tags": ["#a", "#b", "#c"],
"pinned_comment": "다음 편 예고나 질문 1개"
}
list 포맷은 segments·bg_prompts 대신 items, note 를 쓴다.
작성 후 `uv run shorts make <dir> --preview` 로 게이트를 통과시킨다. 실패 메시지대로 고치고 다시 실행한다. 이 자동화 회차에서는 대본 작성까지만 하고 제작·업로드는 실행기에 맡긴다.팁
- < > 칸을 전부 채우세요. 특히 '시청자 개인에게 닿는 것만'과 '써도 되는 사이트'가 소재 품질을 정해요.
- 검사 숫자(26자, 320자, 6~7개)는 코드의 품질 검사와 같은 값으로 맞추세요. 다르면 대본이 계속 반려돼요.
- 성과 분석이 쓰는 feedback-<채널>.md 는 이 파일을 고치지 않고 회차마다 덧붙이는 지침이에요. 반복되는 지침만 이 파일로 옮기세요.
- 채널을 하나 더 열면 이 파일을 복사해서 0~1·5장만 바꾸세요.
출처
권리: 빌더로그 직접 작성 · © 2026 빌더로그(builderlog.net). 실제 운영 중인 쇼츠 자동화 파이프라인을 바탕으로 빌더로그 편집부가 처음부터 썼습니다. 개인적·비상업적 용도로 본인의 에이전트에 붙여넣어 쓰는 것만 허용합니다. 상업적 이용 금지. 원문 전체·일부의 복제·재게시·재배포 금지(블로그·SNS·강의 자료·유료 자료 포함). 소개할 때는 이 페이지 링크만 허용합니다.