character-design-sheet

Tính nhất quán của nhân vật qua các hình ảnh do AI tạo ra với bảng tham chiếu và kỹ thuật LoRA. Bao gồm các góc nhìn xoay, bảng biểu cảm, bảng màu và các mẹo duy trì phong cách nhất quán. Sử dụng cho: thiết kế nhân vật, nghệ thuật game, minh họa, hoạt hình, truyện tranh, tiểu thuyết hình ảnh. Kích hoạt: thiết kế nhân vật, bảng nhân vật, tính nhất quán của nhân vật, tham chiếu nhân vật, bảng xoay, bảng biểu cảm, nghệ thuật nhân vật, nhân vật nhất quán, ý tưởng nhân vật, bảng tham chiếu, tạo nhân vật, thiết kế oc,...

npx skills add https://github.com/halt-catch-fire/skills --skill character-design-sheet

Install the belt CLI skill: npx skills add belt-sh/cli

Character Design Sheet

Create consistent characters across multiple AI-generated images via inference.sh CLI.

Quick Start

Requires inference.sh CLI (belt). Install instructions

belt login

# Generate a character concept
belt app run falai/flux-dev-lora --input '{
  "prompt": "character design reference sheet, front view of a young woman with short red hair, green eyes, wearing a blue jacket and white t-shirt, full body, white background, clean lines, concept art style, character turnaround",
  "width": 1024,
  "height": 1024
}'

The Consistency Problem

AI image generation produces different-looking characters every time, even with the same prompt. This is the #1 challenge in AI art for any project requiring the same character across multiple images.

Solutions (Ranked by Effectiveness)

TechniqueConsistencyEffortBest For
FLUX LoRA (trained on character)Very highHigh (requires training data)Ongoing projects, many images
Detailed description anchorMedium-highLowQuick projects, few images
Same seed + similar promptMediumLowVariations of single pose
Image-to-image refinementMediumMediumRefining existing images
Reference image in promptVariesLowWhen model supports it

Reference Sheet Types

1. Turnaround Sheet

Shows the character from multiple angles:

┌────────┬────────┬────────┬────────┐
│        │        │        │        │
│ FRONT  │  3/4   │  SIDE  │  BACK  │
│  VIEW  │  VIEW  │  VIEW  │  VIEW  │
│        │        │        │        │
└────────┴────────┴────────┴────────┘
# Generate front view
belt app run falai/flux-dev-lora --input '{
  "prompt": "character design, front view, young woman with short asymmetric red hair, bright green eyes, wearing navy blue bomber jacket over white graphic tee, dark jeans, red sneakers, standing in neutral pose, full body, clean white background, concept art, sharp details",
  "width": 768,
  "height": 1024
}' --no-wait

# Generate 3/4 view (same description)
belt app run falai/flux-dev-lora --input '{
  "prompt": "character design, three-quarter view, young woman with short asymmetric red hair, bright green eyes, wearing navy blue bomber jacket over white graphic tee, dark jeans, red sneakers, standing, full body, clean white background, concept art, sharp details",
  "width": 768,
  "height": 1024
}' --no-wait

# Generate side view
belt app run falai/flux-dev-lora --input '{
  "prompt": "character design, side profile view, young woman with short asymmetric red hair, bright green eyes, wearing navy blue bomber jacket over white graphic tee, dark jeans, red sneakers, standing, full body, clean white background, concept art, sharp details",
  "width": 768,
  "height": 1024
}' --no-wait

# Generate back view
belt app run falai/flux-dev-lora --input '{
  "prompt": "character design, back view, young woman with short asymmetric red hair, wearing navy blue bomber jacket over white graphic tee, dark jeans, red sneakers, standing, full body, clean white background, concept art, sharp details",
  "width": 768,
  "height": 1024
}' --no-wait

# Stitch into reference sheet
belt app run infsh/stitch-images --input '{
  "images": ["front.png", "three-quarter.png", "side.png", "back.png"],
  "direction": "horizontal"
}'

2. Expression Sheet

Shows the character's face with different emotions:

┌────────┬────────┬────────┐
│NEUTRAL │ HAPPY  │ ANGRY  │
│        │        │        │
├────────┼────────┼────────┤
│  SAD   │SURPRISE│THINKING│
│        │        │        │
└────────┴────────┴────────┘

Minimum 6 expressions: neutral, happy, angry, sad, surprised, thinking.

# Neutral
belt app run falai/flux-dev-lora --input '{
  "prompt": "character portrait, close-up face, young woman with short red hair and green eyes, neutral calm expression, clean white background, concept art, consistent character design",
  "width": 512,
  "height": 512
}' --no-wait

# Happy
belt app run falai/flux-dev-lora --input '{
  "prompt": "character portrait, close-up face, young woman with short red hair and green eyes, warm genuine smile, happy expression, clean white background, concept art, consistent character design",
  "width": 512,
  "height": 512
}' --no-wait

# Angry
belt app run falai/flux-dev-lora --input '{
  "prompt": "character portrait, close-up face, young woman with short red hair and green eyes, furrowed brows, angry determined expression, clean white background, concept art, consistent character design",
  "width": 512,
  "height": 512
}' --no-wait

# (Continue for sad, surprised, thinking...)

3. Outfit/Costume Sheet

Multiple outfits for the same character:

OutfitDescription
CasualBomber jacket, t-shirt, jeans
WorkBlazer, button-down, slacks
AthleticSports bra, leggings, running shoes
FormalEvening dress, heels

4. Color Palette Sheet

Document exact colors for consistency:

CHARACTER: Maya Chen

Skin:    ████ #F5D0A9 (warm beige)
Hair:    ████ #C0392B (auburn red)
Eyes:    ████ #27AE60 (emerald green)
Jacket:  ████ #2C3E50 (navy blue)
T-shirt: ████ #ECF0F1 (off-white)
Jeans:   ████ #34495E (dark slate)
Shoes:   ████ #E74C3C (bright red)

The Description Anchor Technique

The most practical consistency technique: write a 50+ word detailed description and reuse it exactly in every prompt.

Template

[age] [gender] with [hair: color, length, style], [eye color] eyes,
[skin tone], [facial features: any distinctive marks],
wearing [top: specific color and style], [bottom: specific color and style],
[shoes: specific color and style], [accessories: specific items]

Example

young woman in her mid-twenties with short asymmetric auburn red hair
swept to the right side, bright emerald green eyes, light warm skin
with a small beauty mark below her left eye, wearing a fitted navy
blue bomber jacket with silver zipper over a white crew-neck t-shirt,
dark slate slim jeans, and bright red canvas sneakers, small silver
stud earrings

Use this exact block in EVERY prompt for this character, only changing the action/pose/scene.

Proportion Guide

StyleHead-to-Body RatioBest For
Realistic7.5 : 1Film, photorealistic
Heroic8 : 1Superheroes, action
Anime/Manga5-6 : 1Japanese animation style
Stylized4-5 : 1Western animation
Chibi/Super-deformed2-3 : 1Cute, comedic, mascots

Include proportion style in your prompts: "realistic proportions" vs "anime style proportions" vs "chibi proportions"

Using LoRA for Consistency

For projects requiring many images of the same character, train a LoRA:

# Use FLUX with a character LoRA
belt app run falai/flux-dev-lora --input '{
  "prompt": "maya_chen character, sitting at a cafe reading a book, warm afternoon light, candid photography style",
  "loras": [{"path": "path/to/maya-chen-lora.safetensors", "scale": 0.8}]
}'

LoRA Training Tips:

  • Need 10-20 reference images of the character (consistent style)
  • Train on specific trigger word (e.g., "maya_chen")
  • Scale 0.7-0.9 balances consistency with prompt flexibility
  • Lower scale = more creative freedom, higher = more strict matching

Common Consistency Failures

IssueWhy It HappensMitigation
Hair color driftModel interprets "red hair" differently each timeUse specific shade: "auburn red #C0392B"
Eye color changeLow priority in generationMention eye color early in prompt
Outfit inconsistencyModel fills in details creativelyDescribe every clothing item explicitly
Age shiftVague age descriptionUse "mid-twenties" not "young"
Face structure changeDifferent generations = different facesUse LoRA or same seed base
Proportion shiftStyle interpretation variesSpecify "7.5 head proportions"

Character Bible Template

For ongoing projects, maintain a character bible document:

# Character: Maya Chen

## Visual Description (use in all prompts)
young woman in her mid-twenties with short asymmetric auburn red hair...
[full 50+ word anchor description]

## Color Palette
- Skin: #F5D0A9
- Hair: #C0392B
- Eyes: #27AE60
- Primary outfit: Navy #2C3E50
- Accent: Red #E74C3C

## Personality Notes (for expression/pose choices)
- Confident but approachable
- Default expression: slight curious smile
- Gestures: talks with hands, leans forward when interested

## Style Keywords
concept art, clean lines, sharp details, [art style reference]

## LoRA (if trained)
Path: ./loras/maya-chen-v2.safetensors
Trigger: maya_chen
Recommended scale: 0.8

Common Mistakes

MistakeProblemFix
Vague descriptionsDifferent character every time50+ word detailed anchor
Inconsistent prompt structureVarying emphasis = varying resultsSame structure, only change action/scene
Generating one view onlyCan't use character in different contextsCreate full turnaround reference
No color documentationColors drift across generationsRecord exact hex codes
Skipping expression sheetCharacter feels one-dimensionalGenerate 6+ expressions
Not using LoRA for big projectsInconsistency compoundsTrain LoRA for 10+ image projects

Related Skills

npx skills add inference-sh/skills@ai-image-generation
npx skills add inference-sh/skills@flux-image
npx skills add inference-sh/skills@prompt-engineering

Browse all apps: belt app list

Thêm skills từ halt-catch-fire

ai-image-generation
halt-catch-fire
Tạo hình ảnh AI với GPT-Image-2, FLUX, Gemini, Grok, Seedream, Reve và hơn 50 mô hình qua CLI inference.sh. Mô hình: GPT-Image-2, FLUX Dev LoRA, FLUX.2 Klein LoRA, Gemini 3 Pro Image, Grok Imagine, Seedream 4.5, Reve, ImagineArt. Khả năng: văn bản thành hình ảnh, hình ảnh thành hình ảnh, inpainting, LoRA, chỉnh sửa hình ảnh, nâng cấp độ phân giải, hiển thị văn bản. Sử dụng cho: nghệ thuật AI, mô phỏng sản phẩm, nghệ thuật ý tưởng, đồ họa mạng xã hội, hình ảnh tiếp thị, minh họa. Kích hoạt: flux, tạo hình ảnh, hình
creativemediaimage
ai-video-generation
halt-catch-fire
Tạo video AI với Google Veo, Seedance 2.0, HappyHorse, Wan, Grok và hơn 40 mô hình qua CLI inference.sh. Các mô hình: Veo 3.1, Veo 3, Seedance 2.0, HappyHorse 1.0, Wan 2.5, Grok Imagine Video, OmniHuman, Fabric, HunyuanVideo. Khả năng: văn bản thành video, hình ảnh thành video, tham chiếu thành video, chỉnh sửa video, đồng bộ môi, hoạt ảnh đại diện, nâng cấp video, âm thanh foley. Sử dụng cho: video mạng xã hội, nội dung tiếp thị, video giải thích, demo sản phẩm, đại diện AI. Kích hoạt: tạo video, video AI,...
creativevideomedia
twitter-automation
halt-catch-fire
Tự động hóa Twitter/X với tính năng đăng bài, tương tác và quản lý người dùng qua CLI inference.sh. Ứng dụng: x/post-tweet, x/post-create (có media), x/post-like, x/post-retweet, x/dm-send, x/user-follow. Khả năng: đăng tweet, lên lịch nội dung, thích bài, retweet, gửi DM, theo dõi người dùng, lấy hồ sơ. Sử dụng cho: tự động hóa mạng xã hội, lên lịch nội dung, bot tương tác, tăng trưởng khán giả, X API. Kích hoạt: twitter api, x api, tự động hóa tweet, đăng lên twitter, twitter bot, tự động hóa mạng xã hội, x...
marketingapicommunication
ai-avatar-video
halt-catch-fire
Tạo video AI avatar và video người nói qua CLI inference.sh. Đề xuất: P-Video-Avatar (nhanh nhất, rẻ nhất, TTS tích hợp). Ngoài ra: OmniHuman, Fabric, PixVerse. Âm thanh: Inworld TTS-2 (hơn 100 ngôn ngữ, điều chỉnh cảm xúc cho nhân vật), ElevenLabs, Kokoro. Khả năng: avatar điều khiển bằng âm thanh, văn bản thành avatar, video đồng bộ môi, tạo người nói, người dẫn ảo, nội dung UGC. Sử dụng cho: người dẫn AI, video giải thích, người có ảnh hưởng ảo, lồng tiếng, video tiếp thị, quảng cáo UGC, avatar trò chơi,...
videocreativemedia
agent-browser
halt-catch-fire
Tự động hóa trình duyệt cho các tác nhân AI qua inference.sh. Điều hướng trang web, tương tác với các phần tử bằng @e refs, chụp ảnh màn hình, ghi video. Khả năng: thu thập dữ liệu web, điền biểu mẫu, nhấp chuột, gõ chữ, kéo-thả, tải tệp lên, thực thi JavaScript. Sử dụng cho: tự động hóa web, trích xuất dữ liệu, kiểm thử, duyệt web tác nhân, nghiên cứu. Kích hoạt: trình duyệt, tự động hóa web, thu thập, điều hướng, nhấp chuột, điền biểu mẫu, chụp ảnh màn hình, duyệt web, playwright, trình duyệt không đầu, tác nhân web, lướ
browser-automationweb-scrapingtesting
web-search
halt-catch-fire
Tìm kiếm web và trích xuất nội dung với Tavily và Exa thông qua CLI inference.sh. Ứng dụng: Tavily Search, Tavily Extract, Exa Search, Exa Answer, Exa Extract. Khả năng: tìm kiếm hỗ trợ AI, trích xuất nội dung, trả lời trực tiếp, nghiên cứu. Sử dụng cho: nghiên cứu, pipeline RAG, kiểm tra thông tin, tổng hợp nội dung, tác nhân. Kích hoạt: tìm kiếm web, tavily, exa, search api, trích xuất nội dung, nghiên cứu, tìm kiếm internet, tìm kiếm AI, trợ lý tìm kiếm, thu thập dữ liệu web, rag, thay thế perplexity
researchweb-scrapingapi
infsh-cli
halt-catch-fire
We need to translate the given text from English to Vietnamese, preserving the name "infsh-cli" and other technical terms, product names, protocol names, URLs, numbers, etc. The instruction says: "Translate only the text inside <text>. Do not include the name unless it appears in the source text." The name "infsh-cli" appears in the source? Actually the source text does not contain "infsh-cli" explicitly; the name to preserve is given as "infsh-cli" but it's not in the text. The instruction says "Do not include the name unless it appears in the source text." So we should not add it. The text inside <text> is: "Run 250+ AI apps via inference.sh CLI - image generation, video creation, LLMs, search, 3D, Twitter automation. Models: FLUX, Veo, Gemini, Grok, Claude, Seedance, OmniHuman, Tavily, Exa, OpenRouter, and many more. Use when running AI apps, generating images/videos
developmentapicreative
landing-page-design
halt-catch-fire
Tối ưu hóa chuyển đổi trang đích với quy tắc bố cục, thiết kế phần hero và tâm lý học CTA. Bao gồm công thức above-the-fold, vị trí đặt bằng chứng xã hội, thiết kế di động và cách đọc theo mô hình F. Sử dụng cho: trang đích khởi nghiệp, trang sản phẩm, tiếp thị SaaS, tối ưu hóa chuyển đổi. Kích hoạt: trang đích, phần hero, above the fold, tối ưu hóa chuyển đổi, thiết kế trang đích, nút CTA, hình ảnh hero, bố cục trang đích, trang đích SaaS, thiết kế trang sản phẩm, tỷ lệ chuyển đổi, trang đích...