Skip to content
cccskills
FreePublished on GitHub

image-gen

AI image generation: Gemini and Nano Banana backends; single/series/batch workflows with prompt-to-disk.

The English summary is being prepared. Showing the original description.

Works withGemini
See how to install

Files included (7)

  • SKILL.md5.1 KB
  • references/backends/gemini.md4.3 KB
  • references/backends/nano-banana.md6.2 KB
  • scripts/detect-backend.py532 B
  • scripts/generate_image.py12.2 KB
  • scripts/nano-banana-generate.py12.7 KB
  • scripts/nano-banana-process.py16.7 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

image-gen

Backend-agnostic image generation: single images, series with anchor-chain consistency, batch pipelines. Two backends: Gemini (API) and Nano Banana (local scripts with post-processing).

Deep References

SignalLoadContent
Gemini backend selectedreferences/backends/gemini.mdModels, env vars, flag table, examples, error codes
Nano Banana needed (post-processing, series, JSON batch, style-match)references/backends/nano-banana.mdSubcommands, flags, aspect ratios, prompt patterns by asset type

Phase 1: Detect Backend

python3 skills/content/image-gen/scripts/detect-backend.py
  • gemini -- load references/backends/gemini.md
  • ask -- no key found; ask the user to set GEMINI_API_KEY

Gate: backend confirmed.

Phase 2: Write Prompt Files

Write all prompts to disk before any API call. Prompt files are the generation record and anchor-chain input for series.

File naming: single prompts/YYYY-MM-DD-{slug}.md, series prompts/{series-name}-01.md through -NN.md.

---
model: gemini-3-pro-image-preview
aspect-ratio: 1:1
flags: []
---

Full prompt text. Be explicit about subject, style, background, constraints.
mkdir -p prompts

For series: write ALL prompt files before calling any generation script.

Gate: all prompt files written and reviewed.

Phase 3: Select Script

Use caseScriptSubcommand
Single image, Geminiscripts/generate_image.py--prompt
Batch from text file, Geminiscripts/generate_image.py--batch
Single with post-processingscripts/nano-banana-generate.pygenerate
Style match from referencescripts/nano-banana-generate.pywith-reference
Batch from JSON manifestscripts/nano-banana-generate.pybatch
Series (anchor chain)scripts/nano-banana-generate.pygenerate then with-reference
Post-processing onlyscripts/nano-banana-process.pycrop / remove-bg / pipeline

Model selection:

ScenarioModel
Draft, testing, batch, cost-sensitivegemini-2.5-flash-image (2-5s)
Final asset, character art, typographygemini-3-pro-image-preview (~30s)

Aspect ratio by use case:

Asset typeRatio
Sprites, characters, icons1:1
Card art, landscape16:9
Vertical maps, portrait bg9:16
Portrait cards3:4
Wide banners21:9

Generate at the target ratio. Generating 1:1 and cropping to 16:9 loses 56% of pixels.

Gate: script and subcommand identified.

Phase 4: Generate

Use absolute paths for output files. Show full script output.

Anchor-Chain Algorithm (Series)

Character drift occurs when images are generated independently. Prevent it by passing the previous output as --reference:

image-01.png (no ref) -> image-02.png (ref=01) -> image-03.png (ref=02) -> ...
  1. Generate image 1 with no reference.
  2. Use output of image 1 as --reference for image 2.
  3. Continue: each image N references image N-1.

Save originals with --save-original for any batch or expensive generation. Re-processing a saved original is free; re-generating costs quota and may break the chain.

Gate: script exits 0.

Phase 5: Verify and Report

Read the generated image to verify:

  • Subject matches prompt
  • No unwanted watermarks or artifacts
  • Aspect ratio and framing correct
  • No excessive padding or dark borders

If inspection fails: regenerate with adjusted prompt. Report the issue before retrying.

Report: output file path (absolute), dimensions, model, post-processing applied, verification result. Report only what was requested.

Error Handling

ErrorCauseResolution
GEMINI_API_KEY not setMissing env varexport GEMINI_API_KEY=your_key
No image in responseSafety filter or text-only responseAdjust prompt; remove policy-adjacent content
Missing dependency: google-genaiPackage absentpip install google-genai pillow
Rate limit exceeded (429)Too many requestsIncrease --delay; script retries automatically
Content policy violation (400)Restricted contentRephrase using neutral language
Model not foundWrong model stringUse exact strings: gemini-2.5-flash-image or gemini-3-pro-image-preview

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Manage multiple Claude Code accounts: add, list, check, launch, and install shell aliases for 10+ isolated CLAUDE_CONFIG_DIR profiles.

The English summary is being prepared. Showing the original description.

notque/vexjoy-agent442Updated Oct 20, 2026

Improve architecture across modules by deepening interfaces.

The English summary is being prepared. Showing the original description.

notque/vexjoy-agent442Updated Oct 20, 2026

Assessment: read-only inspection, codebase overview, value analysis, health checks, ADR consultation, decision analysis, multi-perspective critique.

The English summary is being prepared. Showing the original description.

notque/vexjoy-agent442Updated Oct 20, 2026

Background memory consolidation — overnight review, merge, and injection payload for memory files.

The English summary is being prepared. Showing the original description.

notque/vexjoy-agent442Updated Oct 20, 2026

Jev-driven browser automation: Jev picks operations, programs execute, a text model writes field values only when Jev cannot pick one from the goal.

The English summary is being prepared. Showing the original description.

notque/vexjoy-agent442Updated Oct 20, 2026

Write, compose, integrate, and improve programs that call Jev, TypeSafe's System One judgment model.

The English summary is being prepared. Showing the original description.

notque/vexjoy-agent442Updated Oct 20, 2026

See all skills by notque

Report a problem with this skill