Nanobanana Fully Customizable · compétence Open Skill
Nanobanana Fully Customizable
Nanobanana Fully Customizable est une Open Skill publique sur Digen. Ouvrez-la pour voir ce que ce workflow crée.
Custom
5 0 8
https://d7qlwi7tl2u27.cloudfront.net/skill-covers/prod/4284862/2026-10-19/ygdubw4k.jpg
# Nanobanana Fully Customizable
Turn the user's uploaded image(s) plus a short brief into ONE fully customized image. This is a reference-driven image-to-image task: the uploaded picture supplies the subject, the text supplies the customization, and one fixed visual language (glossy 3D toy render) unifies color, material and light across the whole frame.
## When to use
- The user uploads one or more images and asks for a new image based on them ("make this into ...", "restyle my photo", "turn this into a poster", "same character but in ...", "combine these references").
- The user wants an existing picture re-rendered, upgraded, or turned into a key visual / banner / avatar / sticker sheet.
- The user iterates on a previously generated customized image and wants a variation.
Not for: pure text-to-image with no uploaded picture (see "No reference image" branch in `references/step-details.md`), video generation, or plain photo retouching with no creative re-render.
## Inputs and output
- Inputs: **reference image(s)** (up to 5) + **free text brief** (optional but recommended).
- Output: **one image** per generation call, uploaded to the canvas.
## Steps
1. **Intake.** Collect the reference image(s) and the text brief. Accept up to 5 references. If the brief is missing, ask one short question about what should change and keep everything else as-is; do not interrogate the user with a long questionnaire. If an iteration request arrives, reuse the same references from this conversation.
2. **Read the references.** If the subject, identity, or key details in a reference are not obvious (unusual character, dense product, text, tiny props), call `recognize_image` with a targeted question (`image_url` = the uploaded asset, `prompt` = "Describe the subject, identity-defining features, colors, pose, composition and any text"). Never invent details you cannot see.
3. **Read the visual rules.** Call `read_skill_file(name='nanobanana-fully-customizable', path='references/style-and-prompt.md')`. It defines the fixed style (saturated candy palette, glossy clay/toy material, bright soft studio light), subject handling, layout grammar, must-keep and must-avoid lists, and the copy-ready prompt blocks. All prompt text you write must follow that file.
4. **Read the step rules.** Call `read_skill_file(name='nanobanana-fully-customizable', path='references/step-details.md')`. It contains the intake checklist, how each of the 5 reference slots is used inside the prompt, ratio/resolution selection, the no-reference branch, the pre-generation self-check, and the retry rules.
5. **Optional grounding.** Only if the user asks for a real, recognizable place, product, brand or event, call `search_web` for factual details and fold one or two concrete visual facts into the prompt. Skip this otherwise; do not pad prompts with unrelated research.
6. **Write the prompt.** Call `read_skill_file(name='nanobanana-fully-customizable', path='references/prompt-templates.md')`, pick the template that matches the brief, and fill it with the actual subject description, keep-list and scene props. The result must be a specific, copy-ready English prompt — never leave placeholder brackets or reuse a generic template sentence as the final prompt.
7. **Generate.** Call `generate_image` once per output image:
- `prompt` = the filled English prompt from step 6.
- `input_urls` = the uploaded reference image URLs / asset ids, most identity-defining image first (max 5).
- `model='i2i.hd.lite'` (reference-driven image-to-image; do not use any physical model name).
- `orientation` = `portrait` for posters / covers / stickers, `square` for avatars / product tiles, `landscape` for banners / key visuals — unless the user states otherwise. Only pass `aspect_ratio` when the user explicitly asks for a non-standard ratio such as `3:4` or `4:3`.
- `resolution='2K'` by default (high-definition detail, matching the app's enhanced-detail output); drop to `720P` only