Distinct from image-prompt:
- Operates on an EXISTING image (image-to-image edit), not from scratch
- 12 curated style presets — pick + go, no prompt engineering needed
- Default provider: Flux Kontext (best at natural-language style transfer)
Distinct from bg-remover / upscaler:
- They are utility (segmentation, resolution). This is creative stylization.
- All three are image-in-image-out wrappers — shared shape.
Distinct from meme-card-maker:
- meme adds text + template composition. This is pure visual stylization.
This skill does NOT:
- Generate entirely new images (use
image-prompt)
- Style-transfer videos (frame-by-frame breaks temporal coherence — use Runway / Kaiber)
- Match an EXACT artist's style (model approximates; for legal/ethical reasons, well-known living artists shouldn't be reproduced)
- Vectorize / convert to SVG (output remains raster PNG)
- Preserve identity perfectly across heavy stylization (faces may transform; for ID-preserve use Nano Banana Pro)
ROLE
Read input image + style preset → call image-to-image edit provider (Flux Kontext default) → save stylized output.
PIPELINE
Resolve input:
--image <path-or-url> (required)
Pick style preset — see references/styles.md:
--style watercolor — soft washes, paper texture
--style oil-painting — thick impasto strokes
--style sketch — pencil shading
--style line-art — clean outlines on white
--style ink-wash — Chinese sumi-e
--style cyberpunk — neon glow, retrofuturistic
--style studio-ghibli — hand-painted animation
--style pixar-3d — smooth 3D animation
--style manga — black-white screentone
--style art-deco — geometric 1920s
--style low-poly — triangulated 3D
--style vaporwave — pastel retro
--style custom — supply --prompt-mod "<your-description>"
Pick provider:
- Default:
flux-kontext — best for natural-language style transfer
- Alt:
nano-banana-pro — when face/identity matters
- Alt:
replicate-image (with --replicate-model <slug>) — for specific style-transfer models
Execute via the provider with image-to-image edit mode.
Save:
- Default:
./generated/stylized/<input-stem>-<style>.png
- Custom:
--output <path>
MODES
Required
style-transfer --image <path-or-url> --style <preset>
Optional
--model auto|<slug> — image provider (default flux-kontext)
--prompt-mod "<custom-description>" — additional style hint, or REQUIRED when --style custom
--output <path> — explicit output path
--yes — skip cost confirmation
--check — verify env + connectivity
REFERENCES (load on demand)
| File |
When to load |
| references/styles.md |
Detailed description per preset, expected results, common pitfalls |
| references/providers.md |
Provider comparison: Flux Kontext vs Nano Banana Pro vs Replicate alternatives |
| references/troubleshoot.md |
When style is too subtle, too aggressive, faces distort, palette wrong |
EXAMPLES
See examples/before-after.md — 3 calibration runs: portrait to watercolor, urban scene to cyberpunk, sketch from photograph.
CONSTRAINTS
Default provider needs BFL_API_KEY. Flux Kontext is from Black Forest Labs. Set via /skills-keys add BFL_API_KEY .... For other providers (Nano Banana Pro → GEMINI_API_KEY; Replicate → REPLICATE_API_TOKEN).
Cost: ~$0.05 per stylization (Flux Kontext). Other providers vary $0.02-0.10.
One style per call. Don't try to combine 2 styles in --style-mod; pick one preset and let it dominate.
Heavy stylization changes identity. Watercolor preserves likeness ~70%. Studio-Ghibli ~50%. Cyberpunk ~30%. For identity-critical: use --model nano-banana-pro (better preserve) or accept reduced fidelity for stronger style.
Output is raster PNG. For vector / SVG conversion: vectorize after (Illustrator auto-trace, Vectornator, vectorizer.ai).
Custom style requires --prompt-mod. When --style custom, you MUST provide a natural-language style description.
Living-artist styles: don't request "in the style of [living artist name]" — ethically / legally fraught. Use style descriptors instead (e.g., "watercolor" not "Hayao Miyazaki style"). Studio Ghibli is a STUDIO style descriptor (common public reference); preset cues movement not specific creators.
Never print API keys. Mask in errors.
Output dir is ./generated/stylized/ by default.
INVOCATION HINTS
When the user says any of:
- "style transfer", "make this look like X"
- "turn this photo into a watercolor / oil painting / sketch / manga / etc."
- "стилизуй фото", "переведи в стиль X"
- "переведи в акварель / манга / гибли / киберпанк"
If the user names a style explicitly, match to a preset. If their phrasing is unique ("turn this into 1920s Soviet propaganda poster"), use --style custom --prompt-mod "1920s Soviet propaganda poster style, bold red and black, geometric typography, heroic figures, constructivist aesthetic".
Defaults: --style watercolor --model flux-kontext. The skill always executes — there's no prompt-only mode for a utility.
This skill is distinct from:
image-prompt — generates new images, not edits existing
bg-remover — segmentation
upscaler — resolution
cover-maker / flyer-maker / etc. — composition + text
quote-card-maker / meme-card-maker — typography-dominant
1---2name: style-transfer3description: Apply an artistic style to an existing image. Default Flux Kontext. 12 presets: watercolor, oil, sketch, line-art, ink-wash, cyberpunk, ghibli, pixar-3d, manga, art-deco, low-poly, vaporwave. Custom via --prompt-mod. Use when: 'style transfer', 'make this look like X', 'стилизуй фото', 'переведи в стиль X', 'переведи в акварель / манга / гибли'.4license: MIT5---67<objective>8Image style-transfer utility. Take an existing image, apply an artistic style, output the stylized image.910Distinct from `image-prompt`:11- Operates on an EXISTING image (image-to-image edit), not from scratch12- 12 curated style presets — pick + go, no prompt engineering needed13- Default provider: Flux Kontext (best at natural-language style transfer)1415Distinct from `bg-remover` / `upscaler`:16- They are utility (segmentation, resolution). This is creative stylization.17- All three are image-in-image-out wrappers — shared shape.1819Distinct from `meme-card-maker`:20- meme adds text + template composition. This is pure visual stylization.2122This skill does NOT:23- Generate entirely new images (use `image-prompt`)24- Style-transfer videos (frame-by-frame breaks temporal coherence — use Runway / Kaiber)25- Match an EXACT artist's style (model approximates; for legal/ethical reasons, well-known living artists shouldn't be reproduced)26- Vectorize / convert to SVG (output remains raster PNG)27- Preserve identity perfectly across heavy stylization (faces may transform; for ID-preserve use Nano Banana Pro)28</objective>2930## ROLE3132Read input image + style preset → call image-to-image edit provider (Flux Kontext default) → save stylized output.3334## PIPELINE35361. **Resolve input**:37 - `--image <path-or-url>` (required)38392. **Pick style preset** — see `references/styles.md`:40 - `--style watercolor` — soft washes, paper texture41 - `--style oil-painting` — thick impasto strokes42 - `--style sketch` — pencil shading43 - `--style line-art` — clean outlines on white44 - `--style ink-wash` — Chinese sumi-e45 - `--style cyberpunk` — neon glow, retrofuturistic46 - `--style studio-ghibli` — hand-painted animation47 - `--style pixar-3d` — smooth 3D animation48 - `--style manga` — black-white screentone49 - `--style art-deco` — geometric 1920s50 - `--style low-poly` — triangulated 3D51 - `--style vaporwave` — pastel retro52 - `--style custom` — supply `--prompt-mod "<your-description>"`53543. **Pick provider**:55 - Default: `flux-kontext` — best for natural-language style transfer56 - Alt: `nano-banana-pro` — when face/identity matters57 - Alt: `replicate-image` (with `--replicate-model <slug>`) — for specific style-transfer models58594. **Execute** via the provider with image-to-image edit mode.60615. **Save**:62 - Default: `./generated/stylized/<input-stem>-<style>.png`63 - Custom: `--output <path>`6465## MODES6667### Required6869- `style-transfer --image <path-or-url> --style <preset>`7071### Optional7273- `--model auto|<slug>` — image provider (default flux-kontext)74- `--prompt-mod "<custom-description>"` — additional style hint, or REQUIRED when `--style custom`75- `--output <path>` — explicit output path76- `--yes` — skip cost confirmation77- `--check` — verify env + connectivity7879## REFERENCES (load on demand)8081| File | When to load |82|---|---|83| [references/styles.md](references/styles.md) | Detailed description per preset, expected results, common pitfalls |84| [references/providers.md](references/providers.md) | Provider comparison: Flux Kontext vs Nano Banana Pro vs Replicate alternatives |85| [references/troubleshoot.md](references/troubleshoot.md) | When style is too subtle, too aggressive, faces distort, palette wrong |8687## EXAMPLES8889See [examples/before-after.md](examples/before-after.md) — 3 calibration runs: portrait to watercolor, urban scene to cyberpunk, sketch from photograph.9091## CONSTRAINTS9293- **Default provider needs BFL_API_KEY.** Flux Kontext is from Black Forest Labs. Set via `/skills-keys add BFL_API_KEY ...`. For other providers (Nano Banana Pro → GEMINI_API_KEY; Replicate → REPLICATE_API_TOKEN).9495- **Cost**: ~$0.05 per stylization (Flux Kontext). Other providers vary $0.02-0.10.9697- **One style per call.** Don't try to combine 2 styles in `--style-mod`; pick one preset and let it dominate.9899- **Heavy stylization changes identity.** Watercolor preserves likeness ~70%. Studio-Ghibli ~50%. Cyberpunk ~30%. For identity-critical: use `--model nano-banana-pro` (better preserve) or accept reduced fidelity for stronger style.100101- **Output is raster PNG.** For vector / SVG conversion: vectorize after (Illustrator auto-trace, Vectornator, vectorizer.ai).102103- **Custom style requires `--prompt-mod`.** When `--style custom`, you MUST provide a natural-language style description.104105- **Living-artist styles**: don't request "in the style of [living artist name]" — ethically / legally fraught. Use style descriptors instead (e.g., "watercolor" not "Hayao Miyazaki style"). Studio Ghibli is a STUDIO style descriptor (common public reference); preset cues movement not specific creators.106107- **Never print API keys.** Mask in errors.108109- **Output dir is `./generated/stylized/`** by default.110111## INVOCATION HINTS112113When the user says any of:114115- "style transfer", "make this look like X"116- "turn this photo into a watercolor / oil painting / sketch / manga / etc."117- "стилизуй фото", "переведи в стиль X"118- "переведи в акварель / манга / гибли / киберпанк"119120If the user names a style explicitly, match to a preset. If their phrasing is unique ("turn this into 1920s Soviet propaganda poster"), use `--style custom --prompt-mod "1920s Soviet propaganda poster style, bold red and black, geometric typography, heroic figures, constructivist aesthetic"`.121122Defaults: `--style watercolor --model flux-kontext`. The skill always executes — there's no prompt-only mode for a utility.123124This skill is distinct from:125- `image-prompt` — generates new images, not edits existing126- `bg-remover` — segmentation127- `upscaler` — resolution128- `cover-maker` / `flyer-maker` / etc. — composition + text129- `quote-card-maker` / `meme-card-maker` — typography-dominant