콘텐츠: 기획 및 제작
브랜드의 콘텐츠를 기획하고 종단 간 제작합니다: 리서치 기반 스토리, 주목을 끄는 훅, AI 특유의 표현이 없는 카피, 브랜드 디자인에 맞춘 제작물, 채널별 게시 시트. 브랜드 고유의 모든 것은 브랜드 팩에 저장됩니다. 여기의 방법론은 모든 브랜드에 적용됩니다. 프레임은 Figma로 제작하거나 HTML로 작성하여 PNG로 렌더링하며, 이는 셋업 시 브랜드가 선택한 방식에 따릅니다.
단어가 사람들이 멈출지 결정합니다. 대부분의 노력은 Figma나 카메라 전에 리서치와 작성에 투자됩니다. 무엇이든 쓰기 전에 references/writing-craft.md와 두 가지 작업 예시를 읽으십시오: references/examples/linux-7.4-carousel.md (뉴스 기록) 및 references/examples/ai-cost-js-carousel.md (다른 사람의 실험). 각 예시는 탈락한 초안과 그 이유를 나열합니다. 문장을 모방하지 말고 움직임을 모방하십시오.
모든 실행에서 시작하기
scripts/, references/, templates/, brands/ 경로는 이 스킬의 폴더 안에 있습니다. content/는 작업 중인 프로젝트에 있습니다. 프로젝트 루트에서 스킬 경로와 함께 명령을 실행하십시오. 예: python3 <skill>/scripts/new_item.py content ... (<skill>은 이 파일이 있는 폴더입니다). Pillow를 사용하는 스크립트(contact_sheet.py, slides_to_pdf.py, artefact_marks.py, ref_sheets.py)는 python3 -I 없이 실행됩니다.
- 셋업 확인. 프로젝트의
content/setup.md를 읽으십시오. 파일이 없으면 첫 번째 실행입니다: 다른 모든 작업 전에 setup-content 스킬을 실행하십시오 (함께 설치됨; 이 저장소에서../setup-content/SKILL.md에 있음; 호출하거나 수동으로 따라 하십시오). 이 스킬은 어떤 브랜드를 사용할지 묻고, 브랜드의 사이트와 프로필에서 자체 에셋을 수집하고(허락 필요), 렌더러(Figma 또는 HTML→PNG)를 선택하고, 브랜드 팩을 작성합니다. - 브랜드 팩 찾기 (
brands/README.md): 프로젝트의content/brand/, 없으면 이 스킬의brands/<name>/을 확인하십시오.brand.md,design.md, 그리고 존재하는 경우content/brand/assets/README.md(브랜드 자체 사진과 로고가 스톡보다 우선)를 읽으십시오.(proposed)로 표시된 것은 확정되지 않았습니다. 계획이 이에 의존하기 전에 물어보십시오. - 도구 목록 파악 및 도움이 되는 모든 도구 사용 (
references/research-tools.md): 웹 검색, 페이지 가져오기, 실제 브라우저 (ego-browser), 소셜 미디어 MCP 또는 내장 X 접근, Figma MCP, 이미지 생성: 자체 이미지 도구가 있으면 사용(Grok Bot의 Grok Imagine, Codex, ChatGPT, Antigravity), 그다음python3 <skill>/scripts/gen_image.py detect(agy, OpenAI, Gemini, xAI 키). 누락된 것을 기록하십시오. - 작업 공간 찾기 (
templates/workspace.md):content/에plan/,items/,reviews/,ideas.md,design-log.md가 있어야 합니다. 처음에 생성하십시오. - 모드 선택 아래 표 참조.
| 사용자가 원하는 것 | 모드 |
|---|---|
| 계획, 캘린더, "rencana konten bulan ini" | 계획(Plan) |
| 하나의 콘텐츠: 캐러셀, 단일 포스트, 스레드, 릴스 스크립트, 링크드인 포스트, 기사 | 제작(Create) |
| 하나의 소스에서 여러 콘텐츠 | 재활용(Repurpose) |
| 무엇이 효과적이었고 무엇을 바꿔야 하는지 알기 | 검토(Review) |
| 새 브랜드 설정, 렌더러 변경, 에셋 새로고침 | 설정(Setup) (setup-content 스킬) |
계획(Plan)
- 입력 읽기 (
references/planning.md섹션 1): 브랜드 팩, 마지막 검토,ideas.md, 해당 월의 주요 일정(날짜 확인), 용량, 소유자의 목표. templates/plan-month.md를 사용하여content/plan/YYYY-MM.md작성: 필러의 비중, 시리즈의 주기, 슬롯의 약 4분의 1은 반응형, 각 강력한 항목은 다른 날에 3~5개 형식으로 나눕니다.python3 <skill>/scripts/check_plan.py content/plan/YYYY-MM.md --brand <pack>/brand.mdFAIL이 없을 때까지 실행합니다. 계획 노트에 유지하는 경고는 설명하십시오.- 보고: 해당 월을 세 줄로 요약, 제안된 사항과 확인이 필요한 사항, 공백.
제작(Create)
- 항목 폴더:
python3 <skill>/scripts/new_item.py content <date> <slug> <format>. - 리서치 (
research-tools.md): 기본 출처, 한 링크 깊이, 게시 이후 수정 사항, 지명된 사람들의 직접 발언, 지역적 각도, 숫자당 두 번째 출처. - 스토리를
brief.md에 작성 (writing-craft.md섹션 1~4): 다섯 가지 질문, 전환점, 사다리(berita, uji coba, daftar referensi, 또는copy-playbook.md의 루브릭), 저장할 가치가 있는 슬라이드 또는 포스트, 세 가지 이상의 형태로 된 다섯 개의 훅(게이트와 결투 통과), 하나의 은유군과Verbs:줄. - 카피를 해당 형식(
references/formats/:carousel.md,single-post.md,x.md,threads.md,linkedin.md,reels-tiktok.md,long-form.md)에 따라copy.md에 작성. 모든 숫자, 이름, 인용구 아래>출처 주석. 모든 헤드라인은 "lalu kenapa?" 테스트를 통과하고, 은유는 최소 세 개의 헤드라인에 포함되어야 합니다. 주의사항은writing-craft.md7b가 지정하는 위치에 배치합니다. 행동은 "누가, 무엇으로, 언제"를 충족해야 합니다. 그런 다음python3 <skill>/scripts/lint_copy.py <item>/copy.md --format <format> --brand <pack>/brand.md가 종료 코드 0을 반환해야 합니다 (new_item.py가 올바른--format을 출력합니다:thread는x로,document는linkedin으로 린트). 경고와 헤드라인 전용 읽기를 확인하십시오. 그 읽기를brief.md에 기록하고, 카피를 한 번 소리 내어 읽으십시오. - 이미지 (
image-sourcing.md): 증거 프레임에는 실제 결과물; 은유 프레임에는 브랜드 자체 사진, 그다음 맞는 것이 없으면 자동 생성된 이미지(자체 이미지 도구 우선, 그다음agy, 그다음content/setup.md가 허용하는 경우에만 유료 API), 그다음 Unsplash; 하나의 시각적 스레드, 매니페스트에서 유지된 크레딧. 소유자는 언제든지 이미지 도구를 전환하거나 생성 중단을 요청할 수 있습니다. - 스킴 및 레이아웃 선택 (
design-variety.md): 시리즈의 색상 스킴, 또는 일회성 작품의 경우 이전 작품에서 사용하지 않은 스킴; 각 슬라이드의 역할과content/design-log.md에서 최근 사용된 내용에 따라 슬라이드별 변형을 선택하여 두 작품이 같지 않도록 합니다.brief.md의 "Design" 테이블에 작성하고, 하나의 헤드라인 마크 스타일과 패턴을 깨는 하나의 슬라이드를 포함합니다. 브랜드 팩의 갤러리 페이지(Figma) 또는content/setup-gallery/*.jpg(HTML)와refs/(팩에 있을 때)는 옵션을 보여줍니다. - 제작은
content/setup.md의 렌더러(design-system.md)로 진행합니다. 둘 다라고 명시되면 해당 규칙에 따라 어느 작품이 어디로 가는지 결정하고, 그렇지 않으면 물어보십시오:- Figma (
figma-mechanics.md):scripts/figma-helpers.js의 레이아웃 함수,scripts/figma_bundle.py --brand <pack>/design.md --page "<name>" --scheme <scheme> --n <frames>로 브랜드 팩의BRAND블록과 함께 번들(도구는 50,000자 제한), 브랜드 Figma 파일의 새 페이지에 사용. 다른 페이지는 건드리지 마십시오. 이미지를 업로드한 후 스킴의 쌍(duotone(id, 'light' | 'dark'))을 사용하여 두 번째 호출에서 톤을 조정합니다. - HTML → PNG (
html-render.md):scripts/new_html.py는 항목의html/폴더를 키트와 브랜드 CSS로 설정합니다. 키트의 레이아웃을 사용하여slides.html을 작성하고, 선택한 사진과 생성된 이미지를html/img/에 복사합니다.scripts/render_slides.py가 슬라이드당 하나의 PNG를 렌더링합니다. 릴스:storyboard.md+ 1080×1920 커버 프레임 (Figma, 또는html-render.md섹션 4에 설명된 별도 HTML 페이지).
- Figma (
- 저렴하게 검증: 먼저 레이아웃 검사(Figma의
layoutCheck(), HTML의render_slides.py가 출력하는 문제)를 실행하고 보고된 문제를 수정합니다. 그런 다음 커버, 데이터 프레임, 변경된 사항을 확인합니다(Figma에서는 한 번에 하나씩 스크린샷; HTML에서는 PNG). 사용자가 스크린샷을 중단하면 중단하고 검사되지 않은 프레임을 알립니다. - 게시 시트:
publish.md에 채널별 텍스트, 제한 내 해시태그, 대체 텍스트, 시간, 링크, 크레딧을 작성합니다.content/design-log.md에 행을 추가합니다. 게시는 소유자의 단계이며, 연결된 도구를 통해 특정 작품을 게시하라는 명시적 요청이 없는 한 확인 후 진행합니다. - 보고: 위치, 두 줄 방향, 선택한 레이아웃, 검증된 사항과 그렇지 않은 사항, 사용 가능했고 부족했던 리서치 도구, 캡션.
재활용(Repurpose)
함께 커트 계획 (planning.md 섹션 6), 하나의 항목 폴더, 계획에 커트당 하나의 행. 각 커트는 해당 형식(references/formats/)에 맞게 다시 작성되며, 그 자체로 완전한 내용을 말하고 다시 링크합니다. 캐러셀 프레임은 링크드인 문서(scripts/slides_to_pdf.py)와 스레드/틱톡 사진 포스트로도 사용됩니다.
검토(Review)
templates/review-month.md를 사용하여 content/reviews/YYYY-MM.md 작성: 플랫폼 또는 소유자의 숫자만, 날짜 포함; 각 작품을 브랜드의 해당 형식 중앙값과 비교; 시리즈별로 유지, 수정, 중단 결정; 결정 사항을 다음 달 계획에 반영. 공유된 숫자가 없으면 수집할 항목을 나열하고 중단.
가장 중요한 작성 규칙
전체 방법은 writing-craft.md, 규칙은 copy-playbook.md, 언어는 language/<lang>.md에 있습니다.
- 훅 = 정확한 숫자 + 장면 + 이해관계, 또는
writing-craft.md섹션 3b의 여섯 가지 형태 중 하나. 세 가지 형태로 다섯 개를 작성하고, 게이트(30단어 이하, 평이, 주의사항 없음, 정직, 답 숨김, 긴장), 결투를 통해 생존자를 가리고 각 패자가 진 이유를 작성하십시오. 점수를 매기지 마십시오: 자기 점수는 동점입니다. - 헤드라인은 결과를 수반하는 주장입니다: 각각 "lalu kenapa?" 테스트를 통과합니다. 주제 단어는 눈썹(eyebrow) 부분에 넣습니다. 주장을 담당하는 한두 단어를 표시하십시오.
- 하나의 은유군, 한 번 언급한 후 최소 세 개의 헤드라인 동사에 담습니다.
- 스토리 후반에 전환점; 저장할 가치가 있는 하나의 프레임 또는 포스트.
- 집으로 가져오기: 청중의 자체 가격, 날짜, 장소, 회사 또는 행동.
- 숫자는 공정하게 비교, 차트는 0에서 시작, 모호한 표현은 출처에서 복사, 1인칭은 브랜드가 한 일에만 사용.
- 모호한 표현은 문장에 남음; 주의사항에는 예산이 있음: 커버나 헤드라인에는 없음, 데이터 슬라이드에 하나, 의견 슬라이드에 하나, 나머지는 캡션에.
- 의견은 레이블 표시되고 "누가, 무엇으로, 언제"를 충족하는 행동으로 끝남.
- 하나의 CTA는 브랜드 팩에서; 약속은 작품이 방금 한 일을 설명.
- 브랜드 팩의 언어; 다른 언어는 사용자가 해당 작품에 대해 명시적으로 요청할 때만.
- 진부한 오프너, AI 특유의 표현 없음; 린터가 대부분 잡아냄.
품질 게이트
- 브랜드 팩 읽음;
(proposed)인 것을 묻지 않고 확정된 것으로 사용하지 않음. - 사용 가능한 모든 리서치 도구를 도움이 되는 곳에 사용함; 간격 보고됨.
- 다섯 가지 스토리 질문에 지역적 각도 포함하여 답변함; 전환점 배치됨.
- 훅 워크숍이 게이트와 결투로 완료됨; 커버는 30단어 이하, 주의사항 없음, 독립적으로 작동.
- 헤드라인 전용 읽기가
brief.md에 작성되고 스토리를 전달함; 은유가 최소 세 개의 헤드라인에 있음; 저장할 가치가 있는 한 작품, 이름 지정됨. - 행동이 "누가, 무엇으로, 언제"를 충족함.
-
lint_copy.py가 해당 형식에 대해 종료 코드 0; 모든 숫자, 이름, 인용구에 주석 있음. - 플랫폼 제한 준수 (
formats/specs.md): 해시태그, 문자, 안전 영역. -
brief.md에 슬라이드별 레이아웃 선택됨; 커버와 헤드라인 표시가content/design-log.md의 이전 작품과 다름; 하나의 슬라이드가 패턴을 깸. - 하나의 스킴 적용됨; 브랜드 자체 사진이 적합한 곳에 사용됨; 사진 톤 조정됨; 스크린샷은 컬러, 변경 없음, 크레딧, 하이라이터 마크 표시.
- 레이아웃 검사 통과(Figma의
layoutCheck(), HTML의render_slides.py) 또는 각 메모 설명됨; 커버와 데이터 프레임 확인됨(또는 간격 보고됨). - 마무리: 하나의 CTA, 모든 출처 및 크레딧; 생성된 이미지는 일러스트레이션으로 레이블 표시.
-
publish.md완료 및content/design-log.md에 행 추가됨; 명시적 동의 없이 게시, 좋아요, 팔로우 없음. - 계획이
check_plan.py통과.
파일 맵
| 파일 | 읽는 시기 |
|---|---|
brands/README.md, brands/<brand>/brand.md, design.md | 모든 실행 |
../setup-content/SKILL.md, references/brand-onboarding.md | 첫 실행(content/setup.md 없음), 새 브랜드, 새 렌더러 |
references/planning.md | 계획, 재활용, 검토 |
references/writing-craft.md, references/examples/*.md (두 개의 작업 캐러셀 및 거부된 초안) | 무엇이든 쓰기 전에 |
references/copy-playbook.md | 프레임워크, copy.md 형식, CTA, 캡션 |
references/language/id.md, en.md | 브랜드의 언어 |
references/formats/*.md | 제작 중인 형식; specs.md 제한 사항 |
references/design-system.md, design-variety.md, design-references.md | 프레임 제작 전: 역할, 레이아웃 변형 및 선택 방법, 다른 계정의 패턴 |
references/figma-mechanics.md | 첫 use_figma 전; 업로드, 듀오톤, 스크린샷 |
references/html-render.md, templates/html/ | HTML → PNG 렌더러: 설정, 클래스 참조, 렌더링, 확인 |
references/image-sourcing.md, research-tools.md | 리서치 및 이미지 |
references/patterns-from-data.md | 규칙이 왜 그런지 |
references/prerequisites.md | 컴패니언 및 선택 도구 설치 |
templates/ | 작업 공간, 설정, 계획, 브리프, 게시, 검토, 아이디어, 디자인 로그; html/ (슬라이드 키트 및 예제) |
scripts/ | lint_copy.py, check_plan.py, new_item.py, figma-helpers.js (레이아웃, 스킴), figma_bundle.py, figma-gallery.js + figma-gallery-2.js, figma-gallery-schemes.js, brand_css.py, new_html.py, render_slides.py, crawl_site.py, capture_profile.sh, artefact_marks.py, ref_sheets.py, slides_to_pdf.py, capture_artefact.sh, x_post.py, scan_site_tokens.sh, unsplash_search.py, gen_image.py, agy_image.sh, contact_sheet.py, export_oss.sh |
사용하지 말아야 할 때
슬라이드 데크나 프레젠테이션용 아님(슬라이드 스킬 사용), 웹사이트 구축용 아님, 기존 포스트의 한 단어 수정용 아님(직접 편집).