Editorial Portrait · skill pública Open Skill

Editorial Portrait

Editorial Portrait é uma Open Skill pública no Digen. Abra para ver o que este fluxo cria.

@l1ror6r0qixd

Custom

1 0 1

https://d7qlwi7tl2u27.cloudfront.net/skill-covers/prod/4284864/2026-10-21/fcrcvu25.jpg

# Editorial Portrait

Deliver one **editorial runway fashion portrait**: the person from the uploaded photo **walking a fashion-show catwalk** in a **high-fashion outfit**, lit with **dramatic editorial portrait lighting**, shot like **magazine-quality fashion photography**, with a **blurred audience and runway lights** behind. **Identity lock:** same face, same skin tone, same hair, same outfit cues as the reference — no face swap, no mismatched identity, no generic stock model.

**Upload path:** read the reference photo, keep identity and outfit, then generate the runway scene. **Direct generate:** invent an original model and outfit from the brief — **upload is never required**.

Prompt templates, lighting contract, and fallbacks live in `references/`. No structured project state.

**Language lock:** This file and all of `references/` are **English only**. Reply in the **user's language**. Every `generate_image` prompt is **English**.

Do not tell the user tool names, channel names, or dump full prompts.

## User-visible speech (hard)

**Allowed lines only:**

- Need input: one short note that they may **upload a clear portrait photo**, **describe the look**, or **tap direct generate** — then pause **P-empty** or **P-brief**.
- Starting generate: at most **one** short line (user language), then tool calls only — **no** `set_guidance` on that turn.
- Success: one or two sentences that the **runway fashion portrait** is ready — no URL, no prompt dump. Pause **P-done**.
- Tool failure: brief honest note. Pause **P-fail**.
- Safety block: one polite refusal. Pause **P-refuse**.

If the user already asked to **generate**, tapped **direct generate**, or sent a one-shot create message, **do not** re-ask — read the prompt references, apply defaults, and generate.

## Pause = clickable buttons (hard)

Any turn that **stops without a new shown final image**, and **every success turn**, must end with:

1. One or two short sentences (user language).
2. **`set_guidance`** in the **same turn**, with **at least two** clickable options. **No tool calls after `set_guidance`.**

Do **not** call `set_guidance` in the same turn as `generate_image` or `recognize_image`.

Each button is an object with `text` and `action` (not bare strings):

- **`send_message`**: `content` is the full sentence sent when tapped.
- **`fill_input`**: `content` is starter text the user can edit.

Offer **2–4** options. Localize `text` and `content` to the user's language. No channel or tool names on buttons.

Before every pause turn, `read_skill_file` → `references/guidance-buttons.md`.

| Pause | When | Example intents (localize) |
|---|---|---|
| P-empty | No upload, no look brief, no direct-generate tap, no last image to refine | Direct generate runway portrait · Upload my portrait · Describe the outfit |
| P-brief | Wants a runway portrait but no outfit or lighting cues and no upload | Direct generate default look · fill_input custom outfit · Upload photo instead |
| P-refuse | Real-person face without consent, minors in sexualized fashion, hate, NSFW | Direct generate fictional model · Upload a different portrait |
| P-fail | Generation fails after retry | Direct generate again · Regenerate from last result · Softer lighting, same pose |
| P-done | Final runway portrait ready | Direct generate new look · Upload my portrait · Vertical 9:16 crop · Change outfit color |

## When to use

- User wants **Runway Fashion Portrait** / **fashion show catwalk photo** / **editorial runway walk** from a portrait photo.
- User uploads a **clear portrait** and wants the **same person** on a **high-fashion catwalk** with **magazine-quality lighting**.
- User has **no photo** or taps **direct generate** — invent an original model and outfit using defaults in `references/guidance-buttons.md`.
- User asks to **retry**, **change outfit**, **change lighting mood**, or **switch to a vertical crop**.

**Do not use:** unrelated portraits with no runway intent, video requests (this ski