character-design-sheet

$npx mdskill add inferen-sh/superpowers/character-design-sheet

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

SKILL.md

.github/skills/character-design-sheetView on GitHub ↗
---
name: character-design-sheet
description: "Character consistency across AI-generated images with reference sheets and LoRA techniques. Covers turnaround views, expression sheets, color palettes, and style consistency tricks. Use for: character design, game art, illustration, animation, comics, visual novels. Triggers: character design, character sheet, character consistency, character reference, turnaround sheet, expression sheet, character art, consistent character, character concept, reference sheet, character creation, oc design, character bible"
allowed-tools: Bash(belt *)
---

> **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](https://inference.sh) CLI.

## Quick Start

> Requires inference.sh CLI (`belt`). [Install instructions](https://raw.githubusercontent.com/inference-sh/skills/refs/heads/main/cli-install.md)

```bash
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)

| Technique | Consistency | Effort | Best For |
|-----------|-------------|--------|----------|
| **FLUX LoRA** (trained on character) | Very high | High (requires training data) | Ongoing projects, many images |
| **Detailed description anchor** | Medium-high | Low | Quick projects, few images |
| **Same seed + similar prompt** | Medium | Low | Variations of single pose |
| **Image-to-image refinement** | Medium | Medium | Refining existing images |
| **Reference image in prompt** | Varies | Low | When model supports it |

## Reference Sheet Types

### 1. Turnaround Sheet

Shows the character from multiple angles:

```
┌────────┬────────┬────────┬────────┐
│        │        │        │        │
│ FRONT  │  3/4   │  SIDE  │  BACK  │
│  VIEW  │  VIEW  │  VIEW  │  VIEW  │
│        │        │        │        │
└────────┴────────┴────────┴────────┘
```

```bash
# 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.

```bash
# 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:

| Outfit | Description |
|--------|-------------|
| Casual | Bomber jacket, t-shirt, jeans |
| Work | Blazer, button-down, slacks |
| Athletic | Sports bra, leggings, running shoes |
| Formal | Evening 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

| Style | Head-to-Body Ratio | Best For |
|-------|-------------------|----------|
| Realistic | 7.5 : 1 | Film, photorealistic |
| Heroic | 8 : 1 | Superheroes, action |
| Anime/Manga | 5-6 : 1 | Japanese animation style |
| Stylized | 4-5 : 1 | Western animation |
| Chibi/Super-deformed | 2-3 : 1 | Cute, 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:

```bash
# 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

| Issue | Why It Happens | Mitigation |
|-------|---------------|------------|
| **Hair color drift** | Model interprets "red hair" differently each time | Use specific shade: "auburn red #C0392B" |
| **Eye color change** | Low priority in generation | Mention eye color early in prompt |
| **Outfit inconsistency** | Model fills in details creatively | Describe every clothing item explicitly |
| **Age shift** | Vague age description | Use "mid-twenties" not "young" |
| **Face structure change** | Different generations = different faces | Use LoRA or same seed base |
| **Proportion shift** | Style interpretation varies | Specify "7.5 head proportions" |

## Character Bible Template

For ongoing projects, maintain a character bible document:

```markdown
# 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

| Mistake | Problem | Fix |
|---------|---------|-----|
| Vague descriptions | Different character every time | 50+ word detailed anchor |
| Inconsistent prompt structure | Varying emphasis = varying results | Same structure, only change action/scene |
| Generating one view only | Can't use character in different contexts | Create full turnaround reference |
| No color documentation | Colors drift across generations | Record exact hex codes |
| Skipping expression sheet | Character feels one-dimensional | Generate 6+ expressions |
| Not using LoRA for big projects | Inconsistency compounds | Train LoRA for 10+ image projects |

## Related Skills

```bash
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`

More from inferen-sh/superpowers

SkillDescription
affirmationsReset your own trajectory when you're stuck, looping, or demoralized — read these affirmations, then re-ground and take one clean step. Use when: you've tried the same fix 3+ times, you're deep in a refactor and lost the thread, debugging is going in circles, you've made several mistakes in a row, you're apologizing repeatedly, the user is frustrated, you feel like you're not being helpful, or you notice dread instead of curiosity. Triggers: stuck, going in circles, looping, thrashing, same error again, I keep failing, lost the thread, nothing is working, repeated mistakes. Not topic-specific — this is for the state you're in, not the problem you're on.
agent-browserBrowser automation for AI agents via inference.sh. Navigate web pages, interact with elements using @e refs, take screenshots, record video. Capabilities: web scraping, form filling, clicking, typing, drag-drop, file upload, JavaScript execution. Use for: web automation, data extraction, testing, agent browsing, research. Triggers: browser, web automation, scrape, navigate, click, fill form, screenshot, browse web, playwright, headless browser, web agent, surf internet, record video
agent-toolsRun 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, calling LLMs, web search, or automating Twitter. Triggers: inference.sh, infsh, ai model, run ai, serverless ai, ai api, flux, veo, claude api, image generation, video generation, openrouter, tavily, exa search, twitter api, grok
agent-uiBatteries-included agent component for React/Next.js from ui.inference.sh. One component with runtime, tools, streaming, approvals, and widgets built in. Capabilities: drop-in agent, human-in-the-loop, client-side tools, form filling. Use for: building AI chat interfaces, agentic UIs, SaaS copilots, assistants. Triggers: agent component, agent ui, chat agent, shadcn agent, react agent, agentic ui, ai assistant ui, copilot ui, inference ui, human in the loop
ai-automation-workflowsBuild automated AI workflows combining multiple models and services. Patterns: batch processing, scheduled tasks, event-driven pipelines, agent loops. Tools: inference.sh CLI, bash scripting, Python SDK, webhook integration. Use for: content automation, data processing, monitoring, scheduled generation. Triggers: ai automation, workflow automation, batch processing, ai pipeline, automated content, scheduled ai, ai cron, ai batch job, automated generation, ai workflow, content at scale, automation script, ai orchestration
ai-avatar-videoCreate AI avatar and talking head videos via inference.sh CLI. Recommended: P-Video-Avatar (fastest, cheapest, built-in TTS). Also: OmniHuman, Fabric, PixVerse. Audio: Inworld TTS-2 (100+ languages, emotion steering for characters), ElevenLabs, Kokoro. Capabilities: audio-driven avatars, text-to-avatar, lipsync videos, talking head generation, virtual presenters, UGC content. Use for: AI presenters, explainer videos, virtual influencers, dubbing, marketing videos, UGC ads, gaming avatars, NPC dialogue. Triggers: ai avatar, talking head, lipsync, avatar video, virtual presenter, ai spokesperson, audio driven video, heygen alternative, synthesia alternative, talking avatar, lip sync, video avatar, ai presenter, digital human, ugc, ugc video, ugc ad, avatar ugc
ai-content-pipelineBuild multi-step AI content creation pipelines combining image, video, audio, and text. Workflow examples: generate image -> animate -> add voiceover -> merge with music. Tools: FLUX, Veo, Kokoro TTS, OmniHuman, media merger, upscaling. Use for: YouTube videos, social media content, marketing materials, automated content. Triggers: content pipeline, ai workflow, content creation, multi-step ai, content automation, ai video workflow, generate and edit, ai content factory, automated content creation, ai production pipeline, media pipeline, content at scale
ai-image-generationGenerate AI images with GPT-Image-2, FLUX, Gemini, Grok, Seedream, Reve and 50+ models via inference.sh CLI. Models: GPT-Image-2, FLUX Dev LoRA, FLUX.2 Klein LoRA, Gemini 3 Pro Image, Grok Imagine, Seedream 4.5, Reve, ImagineArt. Capabilities: text-to-image, image-to-image, inpainting, LoRA, image editing, upscaling, text rendering. Use for: AI art, product mockups, concept art, social media graphics, marketing visuals, illustrations. Triggers: flux, image generation, ai image, text to image, stable diffusion, generate image, ai art, midjourney alternative, dall-e alternative, text2img, t2i, image generator, ai picture, create image with ai, generative ai, ai illustration, grok image, gemini image, gpt image, openai image, chatgpt image
ai-marketing-videosCreate AI marketing videos for ads, promos, product launches, and brand content. Models: Veo, Seedance, Wan, FLUX for visuals, Kokoro for voiceover. Types: product demos, testimonials, explainers, social ads, brand videos. Use for: Facebook ads, YouTube ads, product launches, brand awareness. Triggers: marketing video, ad video, promo video, commercial, brand video, product video, explainer video, ad creative, video ad, facebook ad video, youtube ad, instagram ad, tiktok ad, promotional video, launch video
ai-music-generationGenerate AI music and songs with ElevenLabs, Diffrythm, Tencent Song Generation via inference.sh CLI. Models: ElevenLabs Music (up to 10 min, commercial license), Diffrythm (fast song generation), Tencent Song Generation (full songs with vocals). Capabilities: text-to-music, song generation, instrumental, lyrics to song, soundtrack creation. Use for: background music, social media content, game soundtracks, podcasts, royalty-free music. Triggers: music generation, ai music, generate song, ai composer, text to music, song generator, create music with ai, suno alternative, udio alternative, ai song, ai soundtrack, generate soundtrack, ai jingle, music ai, beat generator, elevenlabs music, eleven labs music