Everyday Life Portrait · compétence Open Skill
Everyday Life Portrait
Everyday Life Portrait est une Open Skill publique sur Digen. Ouvrez-la pour voir ce que ce workflow crée.
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