Romantic Couple Photo from Two Selfies — Open Skill
Romantic Couple Photo from Two Selfies
Romantic Couple Photo from Two Selfies is a public Open Skill on Digen. Open it to see what this workflow creates.
Custom
0 0 0
https://d7qlwi7tl2u27.cloudfront.net/skill-covers/prod/4173183/2026-10-15/3sjez4f3.jpg
# Romantic Couple Photo from Two Selfies Produce **exactly one** shown **photorealistic romantic couple portrait** per confirmed create action: - **Dual-selfie path (I2I):** From **two** uploads (or two clear person photos in the thread), merge into **one** scene. **Preserve each person's identity** from their respective source — no face swap, blend, or merged hybrid faces. Woman foreground with **engagement ring** emphasized; man slightly behind. - **Direct path (T2I):** With **no upload**, generate one **adult** couple using the locked scene template in `references/scene-spec.md`. - **Single-selfie path (I2I + prompt partner):** When the user insists on **one** upload only, preserve that person and describe a consistent **adult fictional partner** in the prompt (do not copy a celebrity). Prefer asking for a second selfie via **P-one-selfie** unless they said to proceed with one photo. No project state; track mentally: `source_mode` = `dual_upload` | `single_upload` | `t2i` | `refine_last`, plus which upload is **woman** vs **man** when known. **Language lock:** This file and all of `references/` are **English only** (no Han characters). Reply in the **user's language**. Every `generate_image` `prompt` is **English**. Do not tell the user tool names, channel names, or the full prompt. ## User-visible speech (hard) Do not narrate the pipeline. Never mention skill files, `read_skill_file`, silent redo, or channels. **Allowed lines only:** - Need input: one short note that they can **generate now without photos** or **upload two selfies** (one per person) — then pause **P-empty**. - One selfie only: gentle note that **two selfies work best** — then pause **P-one-selfie** (unless they already said to use one photo only). - Bad subject: one gentle note if uploads are unusable — then pause **P-bad-input**. - 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 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**, attached **two** person photos, or sent a one-shot create message, **do not** re-ask — read references, apply defaults, and generate. ## Pause = clickable buttons (hard) Any turn that **stops without a new shown 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. Translate `text` and `content` into the user's language. No channel or tool names on buttons. Before every pause turn, `read_skill_file` → `references/guidance-buttons.md`. | Pause | When | |---|---| | P-empty | No uploads, no direct-generate intent, and no last successful result from this skill to refine | | P-one-selfie | Exactly one person upload and user has not said to proceed with one photo only | | P-bad-input | Upload has no clear adult face, is unreadable, or unsuitable for likeness | | P-refuse | Minor subject, non-consensual deepfake intent, hate imagery, or explicit sexual content as the goal | | P-fail | `generate_image` `success=false` after retry | | P-done | One couple portrait ready | ## When to use - User wants a **realistic romantic couple photo** right **after a proposal**, with a **large visible engagement ring**. - User uploads **two selfies** (typically one woman, one man) to keep **both identities**. - User taps **generate now** / **direct genera