Deco Frame Photo · публичный навык Open Skill

Deco Frame Photo

Deco Frame Photo — публичный Open Skill на Digen. Откройте, чтобы увидеть, что создаёт этот процесс.

@l1ror6r0qixd

Custom

1 0 1

https://d7qlwi7tl2u27.cloudfront.net/skill-covers/prod/4284864/2026-10-21/wx8xc2hx.jpg

# Deco Frame Photo

Turn **one uploaded portrait** into a **decorative framed keepsake**: the person's face is detected, aligned to the **heart-shaped opening** of a **cute pink and white heart-themed frame**, cropped with a **softly feathered heart mask**, and blended into the frame with **matched lighting, shadow and color temperature**. The frame keeps **crisp, undistorted** ribbon, lace and heart decorations on a **soft pastel palette**. The person's **identity, facial features, skin tone and expression are preserved** — the face is never reshaped or regenerated.

**Fixed play:** one shown **image** per request. **Never call `generate_video` or any video tool.**

No project state.

**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, masks, or channels.

**Allowed lines only:**

- Need input: one short note that they may **upload a portrait** — then pause **P-empty**.
- 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 **heart frame 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. 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 | Example intents (localize) |
|---|---|---|
| P-empty | No upload and no last success to refine | I'll upload a portrait · What does the frame look like? · Make it a softer pastel frame |
| P-refuse | NSFW goal, gore focus, sexualized minor, request to reshape the face | Family-safe framed portrait · Upload a different photo |
| P-fail | `generate_image` `success=false` after retry | Try again with the same photo · Upload a different portrait · Softer pastel frame |
| P-done | One heart frame portrait ready | Add more lace and ribbon · Softer pastel palette · Square frame version · Upload another portrait |

## When to use

- User wants a **heart frame portrait** / **decorative photo frame** composite **from an uploaded portrait**.
- User **uploaded a portrait** (even with no text) or opened this skill from the catalog — **run `generate_image` immediately**; do not stop on **P-empty**.
- Follow-up on **last successful image** from this skill: regenerate, richer lace/ribbon, softer palette, or size change (still **one** image).

**Do not use:** **video** or motion clips; face reshaping, slimming, age change or beautification; plain retouch with no frame; unrelated face swap; NSFW or sexualized minors.

## One-shot (hard)

- **Upload present** and no contradictory instruction → **one shown image**; no questionnaire.
- Only **P-empty** when there is **no upload** and **no last success**.
- This skill is **upload-driven**: there is no text-only direct generate of a real person's framed portrait. If the user asks for a frame with no photo, invite an upload (P-empty).

## Reference files

| File | When |
|---