# Fusion character portrait — agent playbook ⭐ flagship

> Paste this whole file (with the BRIEF filled in) into Claude cowork, chat, or Code. **One face. N worlds.** Build a webtoon / game-design character bible where the SAME character is rendered through N curated east-meets-west cultural fusion lenses — identity held constant, cultural lens variable. The artifact that demonstrates what AI does that humans cannot: fuse traditions that would each take a lifetime to master, in one repeatable run.

## What you'll get

A character bible structured the way a prestige animation studio approves a hero design — but with cross-cultural breadth no human atelier could match in a week:

- **A single character identity held constant** — same face, same eyes, same posture, same emotional register across every cell. The character is the through-line; the cultural fusion is the variable.
- **N fusion cells** (default 12 — right scope for a flagship character bible) — each cell pairs one Eastern aesthetic tradition with one Western, with a defensible fusion grammar (which element gets blended where: silhouette vs ornament vs palette vs setting vs material).
- **Native 9:16 portrait** (1024×1536) — webtoon-shaped, single shared aspect, every cell instantly usable as social-card, character bible page, or game concept slot.
- **One unified instrumental score** — single solo instrument + soft strings, dignified, builds across ~60s. Carries the gallery from contemplative to commanding.
- **Optional i2v reel stage** — each portrait gets a very subtle camera-push-in (5s, `kling-v3-i2v` with `resolution:"auto"`) so the gallery plays back as a 60s reel proving identity holds through subtle motion, not just stills.
- **Showcase HTML page** — single shareable page with the 12-cell grid + (optional) reel + cell-by-cell fusion breakdown + pipeline trace + cost summary.

**Time**: ~10–15 minutes wall clock. **Your attention**: ~6 minutes across 2 gates (character + pairings approval, mid-render check). **Cost**: $3 stills-only / $10 stills + reel + score. *This is the maximalist character bible* — the playbook for an artifact that demonstrates AI's unique cross-cultural fusion capability concretely on a single shareable page.

## Tell the agent about the character + the fusions

```yaml
character_archetype:      # e.g. "young woman, mid-20s, dignified emissary" / "elder scholar, late 60s" / "warrior monk, 30s"
character_constant:       # The verbatim block repeated in every cell prompt to bias gpt-image toward identity-stability. Example:
                          #   "Young woman, mid-20s, long dark hair partially up in a soft chignon, almond-shaped deep brown eyes,
                          #    slight closed-lip dignified smile, direct gaze toward camera. Three-quarter portrait view, head and
                          #    upper torso, calm composed posture, shoulders square."
composition_constant:     # The verbatim composition rule baked into every cell. Example:
                          #   "Eye-level portrait, 50mm equivalent, subject occupies 70% of frame height. Soft warm single-direction
                          #    key light from upper-left at 30°, gentle warm fill from right. Background slightly soft. Vermeer-tier
                          #    skin rendering. Painterly photoreal museum-grade portrait quality. NO readable text anywhere in frame."
cell_count:               # 8 (tight) / 12 (default) / 16 (extensive). 1 cell per fusion pairing.
cells:                    # Ordered list of N east-meets-west fusion pairings. Each item:
                          #   - east_lens:        Ming dynasty silk court robe (cinnabar + phoenix embroidery)
                          #     west_lens:        Vermeer Dutch golden age interior
                          #     fusion_grammar:   Silk volume meets Vermeer warm chiaroscuro
                          # Pick pairings that are NOT in the "cyberpunk samurai" stock-mashup category.
                          # Each pair should have a defensible visual grammar: what element blends where.
fusion_quality_guards:    # Default ON unless you opt out:
                          #   - No readable text on banners / scrolls / signs in any cell (text rendering is the hardest failure mode)
                          #   - No costume-party tourist mashup phrasing — "X meets Y" not "X-style Y"
                          #   - Same emotional register across all cells (no "smiling here, stern there")
                          #   - Same light direction across all cells (the FACE reads as same person)
                          #   - Single-character-only frames (no companion figures, no orientalist crowd extras)
include_reel:             # true (default) — fire 12 × kling-v3-i2v subtle push-in + 1 minimax-music score, total ~$10
                          # false           — stills-only, total ~$3
music_brief:              # Score mood arc. Example:
                          #   "Cinematic instrumental, single solo cello + soft strings, dignified, building from contemplative
                          #    to confident across 60s. No vocals."
character_slug:           # kebab-case for output filenames + showcase page. e.g. the-emissary / the-scholar / the-monk.
```

---

## Quality controls (auto-applied)

The closed quality loop that separates this from "a folder of fusion images":

- **Brief approval first.** Before any MCP fires, the agent shows you the character spec + the N cell pairings + the constants for review. You approve or redirect; only then does Wave 1 fire.
- **Character identity constant.** The `character_constant` block is repeated verbatim in EVERY cell prompt, biasing gpt-image toward facial-identity-stability. Without it, each cell drifts to a different face.
- **Composition constant.** Same eye-level, same focal length, same key-light direction across all cells. This is the load-bearing visual choice — when the FACE reads as the same person across radically different costumes/settings, the gallery reads as a single character bible, not 12 unrelated images.
- **Curated pairings.** Each cell uses "X meets Y" fusion grammar with a SPECIFIC visual blend (palette + ornament + setting + material). "Ming dynasty silk × Vermeer Dutch interior" is curated; "Eastern style × Western style" is kitsch.
- **No readable text guard.** Every prompt explicitly says "NO readable text anywhere in frame" because AI text rendering is the hardest known failure mode — a misspelled fake-Chinese banner would break the whole illusion.
- **Same emotional register.** Same closed-lip dignified smile / same direct gaze across all 12 cells. The character looks like the same person in 12 worlds, not 12 different actresses cast for 12 different gigs.
- **gpt-image as the renderer.** Per the storyboard MCP knowledge base, gpt-image has the best stylization fidelity for name-brand styles ("Vermeer Dutch golden age", "Klimt Vienna secession") — recraft drifts toward generic 2D watercolor when name brands are filtered.
- **Mid-render check.** After Wave 1 lands (12 stills), the agent surfaces a contact-sheet for your review. You can re-fire any off-identity / off-fusion cell before the i2v wave fires.
- **Subtle motion only on i2v.** Push-in prompts say "very gentle slow push-in toward subject, eyes meeting camera, no costume movement". Aggressive motion would break the portrait-painting aesthetic.

> **Why one-face-twelve-worlds works:** the human eye holds continuity across cuts by anchoring to ONE persistent element. When that element is a recognizable face, the gallery reads as a SINGLE character's bible — a webtoon protagonist as she would appear in 12 alternative-history worlds. Without the identity anchor, you have a Pinterest board; with it, you have a character design study a senior animation lead would approve in one pass.

## Output structure

```
public/chapters/<character_slug>/
  cell-01-{east}-{west}.png            ← 12 keyframe portraits
  cell-02-{east}-{west}.png
  ...
  cell-01.mp4                          ← (optional) 12 i2v subtle push-ins
  cell-02.mp4
  ...
  music.mp3                            ← (optional) unified score
  <character_slug>-reel.mp4            ← (optional) 60s gallery reel
public/chapters/<character_slug>-example.html  ← showcase page
public/case-studies/<character_slug>.html      ← optional showcase entry
```

## Reproduce via MCP

1. `brand_kit_create({ palette, keywords: visual_style })` — optional, but keeps the gallery on-palette.
2. **Wave 1 — N stills (parallel):** N × `create_media({ action: "generate", model_override: "gpt-image", aspect_ratio: "9:16", prompt: character_constant + composition_constant + cell[i].fusion_grammar })`. Same two constant blocks verbatim in every prompt — that's what holds the face.
3. **GATE — contact-sheet check.** Re-fire any off-identity / off-fusion cell with `create_media action:"restyle"` on the closest good still before the i2v wave.
4. **Wave 2 — i2v (optional, parallel):** N × `create_media({ action: "animate", model_override: "kling-v3-i2v", source_url: cell[i]_url, resolution: "auto", duration: 5, prompt: "very gentle slow push-in, eyes to camera, no costume movement" })`.
5. **Score:** `create_media({ action: "music", prompt: music_brief, lyrics_prompt: "[Instrumental]" })`. ALWAYS pass `lyrics_prompt:"[Instrumental]"` — without it the music cap sings the brief text verbatim.
6. **Reel:** `create_media model_override:"ffmpeg-concat"` (stitch the push-ins) → `create_media model_override:"ffmpeg-mux"` with `audio_fill:"loop"` (lay the score under the FULL 60s reel so it never cuts out) → `create_media model_override:"ffmpeg-export"` (9:16, 1024×1536).

The example for this playbook is **THE EMISSARY** — 12 east-meets-west fusion portraits of a single dignified young-woman character. **Live example shipped 2026-05-30**: [`/chapters/the-emissary-example.html`](https://storyboard.daydream.monster/chapters/the-emissary-example.html) — 12 stills + 60s subtle-push-in reel with unified solo-cello score, 25/25 jobs succeeded first try, ~$9.64 end-to-end.
