Neon Rain Wet Portrait · öffentlicher Open Skill

Neon Rain Wet Portrait

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

@eggs

Manhua

1 0 1

https://d7qlwi7tl2u27.cloudfront.net/skill-covers/prod/4284862/2026-10-16/ke4qkqxp.jpg

# Neon Rain Wet Portrait

Turns one uploaded reference photo into a rainy-night, neon-lit wet portrait in a narrow alley. One image in, one image out — there is no project state, no script, and no multi-stage pipeline.

## When to use

- The user attaches a photo and asks for the rainy neon / wet-street / neon-reflection look (any wording: "rainy neon portrait", "wet alley selfie at night", "put me in a neon alley in the rain").
- The user asks to redo, re-light, adjust or re-generate a result that came out of this skill.

## Input and output

- **Input**: one reference photo from the user (attachment, canvas asset, or URL). It is the identity and structure source, so it must always be passed to the generator as `input_urls`.
- **Output**: one generated image placed on the canvas. Do not call `generate_video` — this skill only produces a still image.

## Steps

1. **Read the prompt conventions first.** Call
   `read_skill_file(name='neon-rain-wet-portrait', path='references/style-and-prompt.md')`
   before generating. Never write the prompt from memory — that reference holds the style, content, layout, must-keep / must-avoid rules and the copyable prompt template.
2. **Resolve the reference image.** Use the user's uploaded image (or the canvas asset / URL they point at) as the input URL. If the user supplied several images, the first one is the person whose identity must be preserved; any extra images are only for lighting or alley reference and must not replace the person.
3. **Inspect the source before writing the prompt (optional but recommended).** Call
   `recognize_image(image_url=<reference>, prompt='Describe the person and the shot: apparent age range and gender, skin tone, hairstyle and hair length, facial hair or glasses, clothing type and main colors, body orientation, camera angle, shot scale and framing, background.')`
   so the prompt can state the identity and structure details that must survive the restyle.
4. **Compose the prompt** from the template in `references/style-and-prompt.md`: keep the subject sentence faithful to what step 3 returned, then append the neon-rain wet-alley clauses. Apply only the modifiers the user asked for; do not invent new people, props, or locations that are not in the source and not in the reference file.
5. **Generate the image** with `generate_image`, using these conventions:
   - `prompt`: the composed prompt (English).
   - `input_urls=[<reference image>]` — required for likeness and pose.
   - `model='i2i.hd.lite'` — the image-to-image channel for this restyle.
   - `orientation='portrait'` by default (narrow-alley selfie); use `landscape` if the source photo is clearly landscape and would lose the person otherwise; `square` only if the user asks.
   - `resolution='1080P'` (fall back to `720P` if the user only wants a quick preview). Never pass pixel `width`/`height` — only `orientation` / `resolution` are accepted.
   - `name`: a short canvas title, e.g. `Rainy neon selfie`.
   - `entity_type='portraits'`.
6. **Reply** in one or two natural sentences describing the result. Do not paste URLs. If the task is finished and a next step is obvious, call `set_guidance` in the same turn as the final text (for example a warmer-neon variant, a tighter crop, or the same look with more rain).

## Notes

- Pass the channel (`i2i.hd.lite`) in `model`; physical model names are rejected and must not be used.
- Preserve who the person is: face structure, apparent age and gender, skin tone, hair, glasses, and the clothing design. Only add rain wetness and neon light — do not swap the outfit or the person.
- If the source is landscape or a group shot, keep the whole frame sensible rather than forcing a portrait crop that cuts people out.
- If `success=false`, say so plainly and do not claim a result or invent an image URL.
- Declining is required for sexual, violent, or otherwise policy-violating requests — do not call the generation tool for them. Note that the `.hd*` channels are non-NSFW, s