Everyday Life Portrait · öffentlicher Open Skill

Everyday Life Portrait

Everyday Life Portrait ist ein öffentlicher Open Skill auf Digen. Öffne ihn, um zu sehen, was dieser Workflow erstellt.

@akjshdk

Custom

0 0 0

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

# Everyday Life Portrait

Create **one natural slice-of-life everyday portrait** per request: a **candid, spontaneous daily moment** with **photographic realism** when the input is a photo (or matching style when the input is illustration). **Image-to-image** reproduces the **exact same individual** from the upload. **Text-to-image** builds an **original adult** in a random everyday scenario when the user has no photo or taps **direct generate**.

Prompt blocks and scenario rules live in `references/portrait_spec.md`.

No 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 the full style prompt.

## User-visible speech (hard)

**Allowed lines only:**

- Need input: one short note that they may **upload a photo**, **describe a scene**, 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 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**.

## 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. 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 usable brief, no direct-generate tap, no last image to refine | Direct generate now · Describe my daily scene · I'll upload a photo |
| P-brief | Text too vague (no subject cues and no scene preference) | Example café stroll (`fill_input`) · Direct generate default (`send_message`) |
| P-refuse | NSFW goal, sexualized minor, gore focus, hate target, non-consensual deepfake | Family-safe direct generate · Upload a different photo |
| P-fail | `generate_image` `success=false` after retry | Regenerate same source · Direct generate again · Upload a different photo |
| P-done | One portrait ready | Another random daily scene · Higher quality · Change activity · Direct generate new person |

## When to use

- User uploads a **person photo** and wants a **natural everyday slice-of-life** portrait while **keeping the same face and identity**.
- User has **no photo** or taps **direct generate** / **generate without upload** — run **text-to-image** immediately with the default in `references/guidance-buttons.md` unless they already gave a different brief in the same message.
- User asks to **retry**, **upgrade quality**, **change scenario/activity**, or **refine** the last output while keeping identity (I2I path).
- User opens the skill from the catalog (**Everyday Life Portrait**) without extra text → treat as **P-empty** (offer buttons including direct generate).

**Do not use:** video; unrelated stylized themes (studio glamour, costume fantasy) unless the user clearly opts out of everyday slice-of-life.

## Reference files

| File | When |
|---|---|
| `references/portrait_spec.md` | Before every `generate_image` — identity rule, style lock, scenario randomization |
| `references/generation.md` | Before every `generate_image` — channels, `input_urls`, prompt assem