# Identity And Likeness

> Use when a real or recurring person must appear in generated video - choosing between a consent-gated avatar, reference photos, reference-to-video, or a trained LoRA; writing prompts that preserve likeness instead of fighting it; and applying the consent and policy rules. Covers the zero-shot gate that tells you whether training is needed at all.

- Skill: `raphaelbgr/identity-and-likeness` (Agent Skill)
- Install (CLI): `npx skillmds@latest add raphaelbgr/identity-and-likeness`
- Raw SKILL.md: https://api.skillmd.com/api/skills/raphaelbgr/identity-and-likeness/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: raphaelbgr (https://skillmd.com/u/raphaelbgr)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/raphaelbgr/identity-and-likeness

---


# Identity, likeness and consent

Getting a specific person on screen is the hardest part of AI video, and the part with
real legal and ethical weight. This skill covers the four routes, the prompt rule that
decides likeness quality, and the consent rules that are not optional.

---

## 1. Consent comes first

- **Never** generate a real person's likeness without that person's explicit,
  informed permission. This is the platform policy on every major provider *and* the
  bar to hold yourself to regardless of platform.
- **Never** depict real, named politicians or celebrities. Use fictional personas for
  political content. Beyond the ethics, prominent-figure filters will block you
  anyway.
- **Never** train an identity model on someone who has not agreed to it, and gate
  publication on their approval, not just their approval to be photographed.
- **Label output as AI-generated** wherever the platform requires it. Google's video
  models embed a **SynthID** watermark in every frame with no opt-out, and it survives
  cropping, filters, frame-rate changes and re-encoding — so it is detectable whether
  or not you label it.

---

## 2. Route picker

| Situation | Route |
|---|---|
| Yourself on camera, need dialogue + audio, fast | **A — consent-gated avatar** (Google Flow `@me` + Omni Flash) |
| Another consenting person, fast | **B — reference images / character upload**, or their own consented avatar |
| Portable identity, offline, or a character you own | **C — trained LoRA** (still-image LoRA + image-to-video LoRA, local pipeline) |
| Character consistency across a long take with lip-sync | **D — reference-to-video** (e.g. Seedance, up to 30 image refs, no training) |
| Best likeness + best motion | **Hybrid** — generate clean plates on the best still model, feed them as references to the video model |

**Route A, the avatar,** is the reliable path for yourself: it is consent-verified via
a phone self-capture, so it is whitelisted rather than fighting the likeness filter.
Two consequences people learn the hard way:

- **Groom before the capture.** The avatar locks to how you look in the self-capture.
  Prompt wording only nudges it.
- Regional restrictions apply (the Flow avatar is **not available in the EEA, UK or
  Switzerland**), and avatar data cannot be shared through public project links.

**Route B, uploaded photos,** works but is flaky in consumer products — photorealistic
uploads of identifiable people are blocked in some geographies, inconsistently, even
for ordinary non-famous people. The robust fix for a recurring collaborator is **their
own consented avatar**, which removes both the filter friction and the ambiguity about
consent.

**Route D, reference-to-video, is the cheapest thing to try first.** Before any dataset
work, run the **zero-shot gate**: build the reference stills, run one paid
reference-to-video test, and score it against your quality bar. Training is only
justified for the specific layer that fails the gate.

---

## 3. The likeness rule that matters most

> **Less text = more likeness.**

With a reference photo, an avatar or a LoRA loaded, refer to the person **only** as
*"the woman/man from the reference photo"* (or by the trigger token). **Never describe
their face, hair, eyes or jaw.** Descriptive text pulls the render toward a generic
average and actively fights the reference.

What you *do* restate in every clip:

- **Wardrobe** — always, in full. The generator never sees the other clips.
- **A short body-fidelity line** — `Keep natural, realistic body proportions. Do not
  slim or idealize.` Models drift thin and idealised. The negative-only form ("do NOT
  slim") gets ignored on its own; an affirmative physical description over-corrects.
  This short line plus good references is the balance that holds.

**Reference photo quality is the single biggest factor.** Clean, well-lit,
front-facing, single subject, no filters, no sunglasses. Most products cap useful
references at ~3 for video (more causes identity and style drift); reference-to-video
models accept many more.

**Likeness booster:** generate a clean reference portrait *from* the real photo with a
strong image model first — front-facing, neutral expression, soft even light, plain
background, and an explicit *"keep the exact face — do not beautify, do not slim"*.
Optionally add a three-angle sheet and one shot in the film's wardrobe. **Never**
generate the person from scratch by text, and always check the result still looks like
them before using it.

**Where likeness holds and where it drifts:** it holds in calm close and medium shots;
it drifts in fast action and wide shots. Put identity-critical beats in calm coverage
and let the action shots run loose.

---

## 4. If you do train (Route C)

- **Identity is layers, not one model.** Identity, wardrobe, motion, expression and
  speech are separate systems. Train only the layer that fails the gate.
- **A unique trigger token per person**, placed first in every caption.
- **Never commit datasets, weights or `.safetensors`** to a repository.
- Match the training mode to the inference mode (a still LoRA and an image-to-video
  LoRA are not interchangeable).
- Every generated clip or plate gets a **manifest** recording the model, LoRA, seed,
  prompt and reference set. Without it you cannot reproduce the one that worked.
- Do not invent VRAM or step counts. Point at the trainer's own docs and re-validate
  on your GPU; tag anything unconfirmed.

---

## 5. Clip grammar still applies

Identity does not exempt you from the craft rules: short beats (4–8s), one camera move,
max two action beats, no state change inside a shot, wardrobe restated every clip. See
[`veo-flow-prompting`](../veo-flow-prompting/SKILL.md) and
[`wan-3-prompting`](../wan-3-prompting/SKILL.md).

