From toon-generator
인스타툰 콘텐츠 준비 스킬. 소크라테스식 인터뷰로 기획 정보를 수집하고, 콘텐츠 문서(캐릭터 시트/아트 디렉션/콘티 등)를 자동 생성하며, 레퍼런스 이미지(캐릭터/배경/톤마스터)까지 만든다.
How this skill is triggered — by the user, by Claude, or both
Slash command
/toon-generator:toon-prepThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
인스타툰 콘텐츠 준비 스킬.
scripts/generate-refs.tstemplates/art-direction.tmpl.mdtemplates/bgm-guide.tmpl.mdtemplates/captions.tmpl.mdtemplates/character-concept.tmpl.mdtemplates/character-sheet-detailed.tmpl.mdtemplates/character-sheet.tmpl.mdtemplates/conti.tmpl.mdtemplates/emotion-chart.tmpl.mdtemplates/episode-design.tmpl.md인스타툰 콘텐츠 준비 스킬. 소크라테스식 인터뷰 -> 콘텐츠 문서 생성 -> 레퍼런스 이미지 생성의 3단계 파이프라인을 오케스트레이션한다.
--content-dir path (선택): 콘텐츠 문서 출력 디렉토리 (기본: ./content)--skip-interview (선택): 인터뷰 단계 건너뛰기 (이미 interview-result.json이 있을 때)--skip-docs (선택): 문서 생성 단계 건너뛰기 (이미 문서가 있을 때)--skip-refs (선택): 레퍼런스 이미지 생성 단계 건너뛰기--model model-name (선택): 이미지 모델. gemini-3.1-flash-image-preview (기본값) / gemini-3-pro-image-preview / gpt-image-2--episodes N (선택): 생성할 에피소드 수 (기본: 인터뷰에서 결정)GEMINI_API_KEY 환경변수 설정 (3단계 레퍼런스 이미지 생성에 필요)gpt-image-2) 사용 시 OPENAI_API_KEY 환경변수 설정npm install이 완료된 상태 (플러그인 루트의 node_modules/ 존재)
3단계를 모두 완료하면 아래 구조가 생성된다:
{content-dir}/
interview-result.json # 1단계 출력
character-sheet.md # 2단계 출력 (기초 문서)
character-concept.md
character-sheet-detailed.md # (선택) 상세 캐릭터 시트 + 프롬프트 키워드
visual/
art-direction.md
character-sheet-detailed.md
emotion-chart.md
bgm-guide.md
captions.md # 에피소드별 캡션 + 댓글 유도 문구
episode-design/
EP1.md ~ EP{N}.md # 에피소드별 설계서
conti/
EP1.md ~ EP{N}.md # 에피소드별 콘티
visual/
references/
character/
full-body.png # 3단계 출력
expressions.png
full-body-home.png
scenes/
main-location.png
secondary-location.png
tone-masters/
key-visual.png
mood-sample.png
{content-dir} 디렉토리 존재 확인. 없으면 생성--skip-* 플래그에 따라 건너뛸 단계 결정--skip-interview 시: {content-dir}/interview-result.json 존재 여부 확인--skip-docs 시: 필수 문서(art-direction.md, character-sheet-detailed.md 등) 존재 여부 확인목적: 사용자와의 대화를 통해 인스타툰 기획에 필요한 핵심 정보를 수집한다.
실행:
Agent(interviewer) 호출
- 에이전트가 AskUserQuestion으로 사용자에게 질문
- 5단계 인터뷰 진행:
Phase 1: 프로젝트 개요 (목적/타겟/플랫폼/시리즈 구조)
Phase 2: 캐릭터 디자인 (주인공/조연/관계)
Phase 3: 서사 구조 (전체 아크/에피소드 수/감정선)
Phase 4: 비주얼 방향 (작화 스타일/색감/분위기)
Phase 5: 확인 및 출력
출력: {content-dir}/interview-result.json
판단 기준:
이미 interview-result.json이 존재하는 경우:
목적: 인터뷰 결과와 템플릿을 기반으로 toon-slide 스킬이 사용할 콘텐츠 문서를 생성한다.
실행:
Agent(doc-generator) 호출
- 입력: {content-dir}/interview-result.json + ${CLAUDE_SKILL_DIR}/templates/*.tmpl.md
- 3차에 걸쳐 문서 생성 (순서 중요 - 앞 문서가 뒤 문서에 영향)
생성 순서:
| 템플릿 | 출력 파일 | 설명 |
|---|---|---|
character-sheet.tmpl.md | {content-dir}/character-sheet.md | 성격/말투/내면 갈등 |
character-concept.tmpl.md | {content-dir}/character-concept.md | 정서적 결/해석 기준 |
art-direction.tmpl.md | {content-dir}/visual/art-direction.md | 작화 스타일/금지 요소 |
character-sheet-detailed.tmpl.md | {content-dir}/visual/character-sheet-detailed.md | 외형/감정 표현/프롬프트 키워드 |
| 템플릿 | 출력 파일 | 설명 |
|---|---|---|
emotion-chart.tmpl.md | {content-dir}/emotion-chart.md | 회차별 감정 흐름 |
bgm-guide.tmpl.md | {content-dir}/bgm-guide.md | BGM/사운드 가이드 |
| 템플릿 | 출력 파일 | 설명 |
|---|---|---|
episode-design.tmpl.md | {content-dir}/episode-design/EP{N}.md | 에피소드 감정/구조/장면 |
conti.tmpl.md | {content-dir}/conti/EP{N}.md | 슬라이드별 화면/텍스트/연출 |
완료 확인:
art-direction.md, character-sheet-detailed.md, conti/EP*.md, episode-design/EP*.md) 누락 시 에이전트에 재생성 요청목적: doc-generator가 생성한 문서의 품질을 90점 이상이 될 때까지 반복 개선한다.
루프 조건: 90점 이상 달성 또는 최대 3회 반복 시 종료
루프 흐름:
반복 (최대 3회):
1. Agent(doc-inspector) 호출 → 점수 + 감점 항목 수신
2. 90점 이상 → 루프 종료, 3단계로 진행
3. 89점 이하 → 감점 항목을 doc-generator에 전달하여 해당 문서만 재생성
- LANG/CROSS/PROHIBIT 감점: doc-generator로 해당 문서 재생성
- CONTI/TODO 감점: 오케스트레이터가 직접 해당 위치 수정
4. 3회 반복 후에도 90점 미달 시 → 현재 점수와 잔여 이슈를 사용자에게 보고 후 판단 위임
doc-generator 재호출 시:
목적: 2단계에서 생성한 문서를 기반으로 toon-slide이 사용할 레퍼런스 이미지를 생성한다.
실행:
node --import tsx ${CLAUDE_SKILL_DIR}/scripts/generate-refs.ts \
--content-dir {content-dir} \
--output-dir {content-dir}/visual/references \
--model {model}
생성 이미지 (7종):
| 카테고리 | 파일 | 용도 |
|---|---|---|
| character | character/full-body.png | 전신 정면 기본 포즈 |
| character | character/expressions.png | 감정 표현 시트 (6가지) |
| character | character/full-body-home.png | 실내복 전신 |
| background | background/main-location.png | 메인 배경 |
| background | background/secondary-location.png | 보조 배경 |
| tone-master | tone-masters/key-visual.png | 톤/스타일 기준 이미지 |
| tone-master | tone-masters/mood-sample.png | 분위기 샘플 |
옵션:
--category character 등으로 특정 카테고리만 생성 가능실패 시:
--category로 해당 카테고리만 재실행3단계가 모두 완료되면 사용자에게 결과를 요약하고, toon-slide 스킬로 이미지 생성을 진행할 수 있음을 안내한다:
toon-prep 완료:
- interview-result.json 생성 완료
- 콘텐츠 문서 {N}종 생성 완료
- 레퍼런스 이미지 7종 생성 완료
다음 단계: /toon-slide --episode 1 로 EP1 이미지 생성을 시작할 수 있습니다.
레퍼런스 이미지 확인 권장:
이미 일부 단계가 완료된 경우 건너뛸 수 있다:
| 시나리오 | 사용 방법 |
|---|---|
| 이미 기획이 있고 문서화만 필요 | interview-result.json을 직접 작성 후 --skip-interview |
| 이미 문서가 있고 ref만 필요 | --skip-interview --skip-docs |
| 인터뷰만 진행하고 싶을 때 | --skip-docs --skip-refs |
| 문서 일부만 재생성 | doc-generator 에이전트를 직접 호출 |
${CLAUDE_SKILL_DIR}/templates/ 아래 .tmpl.md 파일을 수정하여 문서 구조를 변경할 수 있다.
{{플레이스홀더}} 형태의 변수를 포함<!-- -->)로 doc-generator 에이전트용 작성 지침이 포함되어 있음| 문제 | 해결 |
|---|---|
GEMINI_API_KEY 없음 | Gemini 모델 사용 시 .env 파일에 설정하거나 export GEMINI_API_KEY=... 실행 |
OPENAI_API_KEY 없음 | gpt-image-2 사용 시 .env 파일에 설정하거나 export OPENAI_API_KEY=... 실행 |
| 인터뷰가 중단됨 | interview-result.json이 부분 저장되어 있으면 수동 편집 후 --skip-interview |
| 문서 생성 품질 낮음 | interview-result.json의 내용이 충분한지 확인. 부족하면 인터뷰 재진행 |
| ref 이미지 스타일 불일치 | art-direction.md의 작화 스타일 섹션을 보강 후 3단계 재실행 |
| npm 패키지 없음 | cd ${CLAUDE_SKILL_DIR}/.. && npm install 실행 |
Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub anomie7/toon-generator --plugin toon-generator