plugins/creative/skills/image-generation/SKILL.md
Generate images via Ideogram 3.0 (typography, character/style consistency, brand colors) or Nanobanana / Google Imagen 3 (artistic textures, fast iterations). Cowork-friendly — uses bash + REST API, no MCP required, keys fetched from 1Password. Use whenever the user wants to create, generate, or produce any image — product photos, brand visuals, illustrations, social posts, mockups, posters, icons, or visual content. Triggers also on "Ideogram", "nanobanana", "Imagen", "vygeneruj obrázek", "udělej vizuál".
npx skillsauth add petrogurcak/skills image-generationInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Generates images using REST APIs through bash scripts. Works in Claude Code AND Cowork — no MCP server required.
Announce: "Using image-generation skill — [Ideogram | Nanobanana] for [purpose]."
Before generating, the skill needs API keys. Always run setup first when on a new machine:
bash plugins/creative/scripts/setup.sh
(Path is relative to the skills repo root. From a Cowork project the absolute path is ~/Projects/skills/plugins/creative/scripts/setup.sh.)
The script tries to find each key in this order:
op://Dev/shared-keys/<KEY_NAME> (recommended, portable across machines)$IDEOGRAM_API_KEY, $GEMINI_API_KEY.env file in current working directoryIf a key is missing, the script prints exact instructions including the provider URL.
When setup.sh reports a missing key, instruct the user:
Pro Ideogram (typografie, character consistency):
- Get key: https://ideogram.ai/manage-api
- Open 1Password → vault
Dev→ itemshared-keys(create if missing)- Add field
IDEOGRAM_API_KEYwith the key value- Make sure
opCLI is signed in (op signin)- Re-run setup
Pro Nanobanana (Google Imagen 3, fast iterations):
- Get key: https://aistudio.google.com/apikey
- Same 1Password item, add field
GEMINI_API_KEY- Re-run setup
The user can also use env vars or .env — setup.sh documents all options.
Need text/typography IN the image? → Ideogram
Need exact brand colors enforced? → Ideogram (--colors)
Need character consistency across series? → Ideogram (--char-ref)
Need fast/artistic exploration? → Nanobanana
Need painterly/watercolor/sketch? → Nanobanana
Need complex layout with named elements? → Ideogram
Don't know yet? → Nanobanana (faster, cheaper) for first draft, then Ideogram if needed
Best for: typography in images, complex compositions, character/style consistency, brand-color-locked outputs, inpainting edits.
bash plugins/creative/scripts/ideogram-generate.sh \
--prompt "minimalist coffee bag mockup with text 'Flatwhite La Marzocco'" \
--aspect 4x5 \
--style DESIGN \
--speed QUALITY \
--colors "#1C2B3A,#F7F4EF,#C9A86A" \
--num 2 \
--out ./generated/coffee-mockups
| Flag | Values | Notes |
| -------------- | -------------------------------------------------------- | -------------------------------------- |
| --prompt | text | Required. Be specific about layout. |
| --aspect | 1x1 2x1 1x2 2x3 3x2 3x4 4x3 4x5 5x4 9x16 16x9 | Default 1x1 |
| --style | AUTO REALISTIC DESIGN GENERAL FICTION | Default AUTO |
| --speed | QUALITY BALANCED TURBO FLASH | Default QUALITY |
| --magic | AUTO ON OFF | OFF = use prompt verbatim |
| --num | 1-4 | Default 1 |
| --seed | integer | Reuse seed from successful run |
| --negative | text | e.g. "blurry, distorted text" |
| --preset | preset name | WATERCOLOR OIL_PAINTING PRODUCT_PHOTOGRAPHY MINIMALISM LINE_ART etc. |
| --colors | #hex,#hex,... | Enforce brand palette |
| --char-ref | URL | Maintain character identity |
| --style-ref | URL | Lock artistic style |
| --out | path | Default ./generated/ideogram |
text reading "Coffee Roastery"--magic OFF when you've crafted a specific prompt — Ideogram won't rewrite it--colors is strict — Ideogram sticks to the palette--char-ref + --style-ref together = strong consistency across a series--seed from a successful generation to make controlled variationsBest for: fast iterations, artistic textures, watercolor/sketch styles, exploration.
bash plugins/creative/scripts/nanobanana-generate.sh \
--prompt "watercolor sketch of a small Italian coffee bar, morning light" \
--aspect 16:9 \
--num 3 \
--out ./generated/exploration
| Flag | Values | Notes |
| ---------- | ------------------------------------- | -------------------------------- |
| --prompt | text | Required. |
| --aspect | 1:1 3:4 4:3 9:16 16:9 | Default 1:1 |
| --num | 1-4 | Default 1 |
| --model | model id | Default imagen-3.0-generate-002|
| --out | path | Default ./generated/nanobanana |
| --prefix | string | Filename prefix (default banana)|
"watercolor, soft pastels, hand-drawn," then describe scene--num 3), pick the best, refine the prompt--char-ref <url> and ideally --style-ref <url>--seed for controlled variations--style-ref <url> and --colors to enforce paletteUse Ideogram only. Pattern:
ideogram-generate.sh \
--prompt "[product] mockup, centered, white studio background, text '[BRAND]' visible on label" \
--style DESIGN \
--colors "#brand1,#brand2" \
--magic OFF \
--num 4
Pick the best, reuse --seed, refine.
--num 4 and a loose prompt — pick best direction| Use case | Ideogram | Nanobanana |
| ------------------------- | -------- | ---------- |
| Instagram post | 1x1 | 1:1 |
| Instagram story / reel | 9x16 | 9:16 |
| Book single page | 3x4 | 3:4 |
| Presentation slide | 16x9 | 16:9 |
| Product photo | 4x5 | 3:4 |
| Web hero (banner) | 2x1 | 16:9 |
If a script exits with code:
1 — key missing → run setup.sh, follow instructions2 — bad CLI args → check --help3 — API error → message printed to stderr (rate limit, quota, malformed prompt)If op is not signed in: eval $(op signin) then retry.
If running on a machine without op and no env var set: create a .env in the project working folder with IDEOGRAM_API_KEY=... / GEMINI_API_KEY=... (and add .env to .gitignore — the get-key.sh helper reads .env from cwd).
Both scripts print absolute paths of saved images to stdout, one per line. Use this in shell composition:
img=$(bash plugins/creative/scripts/ideogram-generate.sh --prompt "..." | tail -1)
open "$img"
creative@skills is not in cowork_settings.json > enabledPlugins, this skill is invisible — enable it via Cowork UI or by editing the file.op CLI inside Cowork sandbox. Cowork runs in a gVisor sandbox; op may or may not work depending on filesystem access. If it fails, use the .env fallback in the project working folder../generated/<tool>/ relative to the current working directory — meaning relative to the Cowork project folder. Easy to find afterwards.This skill uses bash for portability. If you're in Claude Code with MCP servers configured (ideogram, nanobanana), the MCP tools are also valid — they expose the same parameters as structured tool calls. The bash path is the universal fallback that always works.
development
Builds a pre-launch social proof strategy through structured beta programs using D'Souza Brain Audit interviews. Use when launching new products/services and need compelling testimonials, planning a beta cohort, designing interview questions to harvest objection-busting social proof, improving video testimonials for landing pages, or designing case studies with metrics. Trigger phrases include "beta tester program for testimonials", "pre-launch social proof", "Brain Audit testimonial framework", "case study harvest", "reverse testimonial", "video testimonial mechanics", "social proof landing page", "sběr referencí", "beta tester program", "testimonial pro landing page", "social proof před launchem", "rozhovor s klientem", "case study sběr", "reference před spuštěním". NOT for ongoing case study production (use growth-hacking case-study approach), offer design (use offer-creation), or conversion optimization (use ux-optimization).
development
Use when planning a product launch and the product type is unclear or could be either generic (SaaS/app/physical) or info-product. Routes between marketing:launch-strategy (generic launches) and marketing:info-product-launch (courses, memberships, ebooks, cohorts, communities). Trigger phrases - "launch", "spuštění", "go-to-market", "product launch", "release strategy", "uvedení na trh", "launch plan", "spuštění produktu", "launch sequence", "launch strategy". Do NOT trigger when product type is already clear (use specific skill directly).
testing
Specialized 8-week launch cadence for info-products — online courses, cohort programs, memberships, communities, ebooks, masterminds. Combines Jeff Walker's Product Launch Formula (Seed/Internal/JV variants, PLC sequence, open-cart day-by-day) with Stu McLaren's membership mechanics (closed cart, Success Path) and Hormozi Grand Slam Offer stacking. Use when planning "launch online kurzu", "info-product launch", "PLF launch", "course launch", "membership launch", "cohort launch", "ebook launch", "open cart close cart", "8-week launch of online course", "beta cohort to launch sequence", "spuštění kurzu", "launch členské sekce", "open cart strategie". Differentiates from marketing:launch-strategy (generic SaaS/app launches) — info-product-specific. NOT for SaaS launches, physical products, or services.
development
Use when releasing an Expo/React Native mobile app to App Store and Google Play - covers eas submit, ASC "Submit for Review", Play promote Internal→Production, OTA update, and decoding common silent failures (Apple agreement expiry, missing English locale, Background Location declaration, web bundle failure on react-native-maps).