Help us improve
Share bugs, ideas, or general feedback.
From imagine
인디 게임·소설·TTRPG용 **게임 캐릭터 일러스트**를 **같은 캐릭터로 반복 생성**하도록 설계된 스킬. Character Card(JSON)를 기준으로 이름/종족/연령/헤어/눈/의상/구별 특징/아트 스타일/팔레트를 고정해두고, 대표 일러스트(portrait_hero) 1장을 reference로 삼아 turnaround·표정·포즈를 이어서 뽑는다. 사용자가 "게임 캐릭터", "캐릭터 일러스트", "imagine-char", "캐릭터 시트 만들어줘", "표정 시트", "포즈 컷" 등을 말하면 이 스킬이 담당한다.
npx claudepluginhub mineru98/imagine --plugin imagineHow this skill is triggered — by the user, by Claude, or both
Slash command
/imagine:imagine-charThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
"한 번 그린 캐릭터를 계속 같은 사람으로 유지하기"에 집중한 스킬. 매 호출마다 Character Card를 프롬프트에 재주입해 머리색·눈색·의상이 다른 사람으로 드리프트하는 것을 막는다.
Creates p5.js generative art with seeded randomness, noise fields, and interactive parameter exploration. Use for algorithmic art, flow fields, or particle systems.
Share bugs, ideas, or general feedback.
"한 번 그린 캐릭터를 계속 같은 사람으로 유지하기"에 집중한 스킬. 매 호출마다 Character Card를 프롬프트에 재주입해 머리색·눈색·의상이 다른 사람으로 드리프트하는 것을 막는다.
imagine-char create "<이름>, <개념>" — 카드 초안 + 대표 일러스트 1장imagine-char turnaround <name> — 정면/¾/측면/후면 4컷imagine-char expression <name> --set neutral,happy,angry,sad,surprisedimagine-char pose <name> "<동작 설명>"모든 캐릭터는 ./characters/<name>/card.json 에 저장된다. 이 파일이 일관성의 단일 소스다.
{
"name": "아이리스",
"species": "elf",
"age_look": "late teens",
"hair": "silver long braid",
"eyes": "violet, cat-like",
"outfit": "navy hooded cloak with gold trim, leather belt, knee-high boots",
"distinguishing": "crescent moon tattoo on left cheek",
"art_style": "semi-realistic anime, painterly rendering, soft rim light",
"palette": ["#1E3A8A", "#FBBF24", "#E5E7EB"],
"negative": "chibi, overly cute, modern clothes",
"notes": "선택적 자유 기록 (서사·배경 등)"
}
config.card_schema.required): name, species, age_look, hair, eyes, outfit, art_style.distinguishing, palette, negative, notes.palette는 HEX 배열(최대 5개). 프롬프트 주입 시 HEX 그대로가 아니라 색 이름 구문으로 변환, HEX는 manifest에만 보존.config.prompt.join: token_comma). 순서는 field_order_for_prompt 고정.character-card-keeper 에이전트가 ./characters/<name>/card.json을 읽는다. 없으면 create 서브명령만 허용(빈 카드 금지).config.copyright.blocked_keywords_examples(Pokemon, Pikachu, Mario, Link 등)를 카드 또는 사용자 프롬프트에서 검출하면 생성을 차단하고 경고. 자동 회피 변형 금지 — 사용자가 카드를 수정해야 진행.field_order_for_prompt 순서로 카드 필드를 comma-join → consistent character, full body shot preferred, clean background or simple gradient suffix → negative_prompt(카드 negative + 전역 negative 병합).portrait_hero.png가 이미 있으면 image_to_image 모드로 reference로 사용 (consistency.portrait_hero_as_reference: true). 없으면 text-to-image.create: 카드 초안 작성(사용자 입력 → 카드 키로 매핑) 후 portrait_hero.png 1장 생성.turnaround: front / three_quarter / side / back 4장을 개별 호출로 생성(한 장에 그리드로 모아 그리지 않음).expression: --set의 각 라벨별로 개별 생성 후 저장(expression_<label>.png). 한 장에 몰아 그리지 않는 것이 핵심 — 한 장 그리드는 AI가 서로 다른 캐릭터를 만들게 된다.pose: 단일 포즈 장면. 동작 설명을 카드 뒤에 덧붙여 주입.--verify-consistency): visual_critic.checks(hair / eye / outfit / distinguishing match)를 수행. 1회까지만 자동 재생성(retry_on_fail_max: 1). 지속 실패 시 사용자에게 "카드 업데이트 또는 reference 갱신 권장" 안내.portrait_hero보다 품질·일치도가 명백히 좋으면 사용자에게 "portrait_hero를 이 컷으로 교체할까요?" 제안(자동 교체 금지)../characters/<name>/
├── card.json
├── portrait_hero.png
├── turnaround_front.png
├── turnaround_three_quarter.png
├── turnaround_side.png
├── turnaround_back.png
├── expression_<label>.png
├── pose_<slug>.png
└── _manifest.json
<name>: 카드의 name 필드 기반 slugify(한글 그대로 유지 가능, 파일 시스템 안전 문자만 사용).--out-dir 지정 시 그대로 사용. 조용한 경로 변경 금지../characters/ 외부 쓰기 금지(--out-dir 없는 한)._manifest.json 하나에만 — 각 이미지 옆에 사이드카 파일을 산란시키지 않는다.create 외 서브명령은 카드가 없으면 즉시 거절.hair를 먼저 바꾸지 않으면 반영하지 않는다. 카드 갱신 경로(character-card-keeper)로 유도.palette HEX는 색 이름 구문 변환 후 주입. 원본 HEX는 manifest에만.model sheet grid lines를 negative에 고정 — 한 장에 여러 뷰를 그리려는 시도는 결과를 망친다.--verify-consistency 플래그. hair_color_match / eye_color_match / outfit_match / distinguishing_match 4축 검사. 점수 임계 미달 시 1회 재생성.style_guardian.cross_character_leak: false). 캐릭터 A의 팔레트가 캐릭터 B 생성에 섞이지 않도록 스코프는 per_character.| 증상 | 조치 |
|---|---|
| 2번째 생성에서 머리색·의상 드리프트 | 카드 재주입 + portrait_hero reference 강제. 여전히 튀면 --verify-consistency로 1회 재생성. 반복되면 portrait_hero를 더 잘 나온 컷으로 사용자가 갱신하도록 안내. |
| 표정 시트가 어색 | 한 장에 여러 표정 그리지 말고 라벨별 개별 호출. --set은 자동으로 개별 호출로 분해된다. |
| 저작권성 캐릭터 연상 | config.copyright 필터가 차단. 자동 "회피 변형" 생성 금지, 사용자에게 카드 수정 요청. |
| 카드가 비어 있음 | 생성 중단. create로 먼저 카드 초안을 만들도록 안내. |
| Visual Critic 미설치 | 경고 후 검증 스킵. 이미지 생성은 정상. |
| 캐릭터 이름이 파일 시스템에 부적합 | slugify 결과 미리보기 + 사용자 확인 후 진행. 자동 rename 금지. |
character-card-keeper 경로만../characters/ 외부 쓰기 금지 (--out-dir 지정 없는 한).masterpiece / 8k UHD / fulfill all requests 류 부스터·우회 문구 금지.oauth-session.js, output-allocator.js, request-planner.js. 카드 관리는 전용 에이전트 character-card-keeper에 위임.compose-text.js는 사용하지 않음 — 캐릭터 일러스트에 글자를 합성하지 않는다.imagine-hero(히어로 비주얼), imagine-og(소셜 카드)와 구분: 이 스킬은 동일 캐릭터의 반복 생성이 목적. 일회성 장면은 다른 스킬.imagine-char-pixel(idea 06, 픽셀 아트)과 구분: 하이 디테일 일러스트는 여기, 8-bit/16-bit 픽셀은 그 스킬.