Dual Soul, One AI Shoot · публичный навык Open Skill

Dual Soul, One AI Shoot

Dual Soul, One AI Shoot — публичный Open Skill на Digen. Откройте, чтобы увидеть, что создаёт этот процесс.

@akjshdk

Custom

0 0 0

https://d7qlwi7tl2u27.cloudfront.net/skill-covers/prod/4173183/2026-10-15/ehw3kzzu.jpg

# Dual Soul, One AI Shoot

Deliver **exactly one** shown **photorealistic dual-subject photograph** per confirmed create action:

- **Dual-reference path (I2I):** From **two** uploads (or two clear person photos in the thread), composite **both** into **one** unified scene. **Preserve each person's identity** from their respective source — no face swap, blend, or merged hybrid faces. Shared background, matched lighting, consistent camera style.
- **Direct path (T2I):** With **no upload**, generate one **adult** duo using the locked composite template in `references/composite-spec.md`.
- **Single-reference path (I2I + prompt partner):** When the user insists on **one** upload only, preserve that person and describe a consistent **adult fictional second subject** in the prompt (do not copy a celebrity). Prefer asking for a second photo via **P-one-photo** 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 **subject A** vs **subject B** 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 portraits** (one per person) — then pause **P-empty**.
- One photo only: gentle note that **two photos work best** — then pause **P-one-photo** (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 duo 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-photo | 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 dual-subject portrait ready |

## When to use

- User wants **two people in one realistic photo** with a **single shared background** and **natural interaction** (friends, partners, family, colleagues — user defines relationship in brief).
- User uploads **two portraits** to kee