Snorkel Mask Portrait · skill pubblica Open Skill
Snorkel Mask Portrait
Snorkel Mask Portrait è una Open Skill pubblica su Digen. Aprila per vedere cosa crea questo workflow.
Custom
0 0 0
https://d7qlwi7tl2u27.cloudfront.net/skill-covers/prod/3325120/2026-10-13/tvstfe5a.jpg
# Snorkel Mask Portrait
Turn an **uploaded adult photo** into a **full-body shallow-water snorkel scene**: the **entire figure suspended** between rippling surface and visible sand—not a bust-only underwater paste. Identity lock from the upload; prompt rules in `references/scene-prompt.md`.
## Language lock
This skill package and all `references/` are **English only**. Reply to the user in **their** language. Every `generate_image` `prompt` is **English**.
## When to use
- User uploaded a photo (or points at the last image) and wants the underwater snorkel-mask look described in `description`.
- User wants a redo: stronger sun rays, turtle on the other side, more fish, **full body / legs visible**, or clearer face through the mask—not a tighter bust crop unless they explicitly ask for close-up only.
**Do not use:** no source photo and no prior result from this skill; pure text-to-image without a person reference; video; NSFW or nudity; minors as the subject.
## User-visible speech (hard)
Do not narrate the pipeline. Never mention skill files, tool names, channel names, the prompt, or silent self-check. Allowed user-visible lines:
- Missing photo: one short ask, then pause **P-upload**.
- Vague request with photo only: offer to generate the default scene or ask for tweaks, then pause **P-brief** (or generate if they said "go" / "default" / equivalent).
- Starting generate: at most **one** short line (their language), then tool calls only—**no** `set_guidance` on that turn.
- Success: one or two sentences that the image is ready—no URL. Pause **P-done**.
- Tool failure or safety block: brief explanation. Pause **P-fail** or **P-refuse**.
## Pause = clickable buttons (hard)
Any turn that **stops without showing a new image** 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`.**
Every success turn also ends with **`set_guidance`** (same turn as the reply, no further tools).
Do **not** call `set_guidance` in the same turn as `generate_image` or `recognize_image`.
Buttons must be objects 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 (`replace: true` when replacing the input).
Offer **2–4** options. Translate `text` and `content` into the user's language. No channel or tool names on buttons.
| Pause | When | Example buttons (adapt and translate) |
|---|---|---|
| P-upload | No usable photo or asset | I'll upload a portrait photo · Describe the scene after I upload |
| P-brief | Photo present, no clear go-ahead | Create the default shallow-sea snorkel scene · I'll describe tweaks (`fill_input`) |
| P-refuse | Minor subject, nudity, sexual content, gore | Upload a photo of an adult instead · Ask for a family-safe swim look |
| P-fail | `generate_image` `success=false` | Try the snorkel scene again · Upload a clearer front-facing photo |
| P-done | Image ready | Full-body float head to feet · More sun rays · Turtle on the other side · Softer fish in the background |
Example shape after success:
```json
{
"suggested_questions": [
{
"text": "Brighter sun rays",
"action": {
"type": "send_message",
"content": "Regenerate with stronger visible sunbeams from the surface and slightly brighter water."
}
},
{
"text": "Turtle on the other side",
"action": {
"type": "send_message",
"content": "Keep everything the same but move the sea turtle to pass on the opposite side."
}
},
{
"text": "Full-body float",
"action": {
"type": "send_message",
"content": "Regenerate as a full-body underwater snorkel float: head to feet visible, legs extended, sandy bottom below, not waist-up. FULL-BODY LOCK."
}
}
]
}
```
## Channel and size
Every `generate