算法艺术创作
algorithmic-art
通过代码和可调参数创作生成艺术与交互式视觉效果。
image-prompt-generator【设计与创意】Generate AI images using Gemini image generation API. Use this skill when content needs images - thumbnails, social posts, blog headers, or creative visuals. Follows an iterative workflow - brainstorm concepts, select direction, generate in multiple styles, then produce via API.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Generate professional, non-generic images using Google's Gemini API for image generation.
Option 1: Environment file (recommended)
Create a .env file in your project root:
GEMINI_API_KEY=your_api_key_here
Option 2: Direct environment variable
export GEMINI_API_KEY=your_api_key_here
pip install google-generativeai python-dotenv pillow
| Model | API Name | Best For |
|---|---|---|
| Flash | gemini-2.5-flash-image | Speed, drafts, iteration |
| Pro | gemini-3-pro-image-preview | Final assets, 16:9 aspect ratio, quality |
CRITICAL: Use gemini-3-pro-image-preview for:
When the user provides a topic or use case, generate 4-6 high-level visual concepts. Each concept should be:
Format:
1. **[Short label]** - One sentence description of the visual concept and why it works.
2. **[Short label]** - One sentence description...
Example for "newsletter about personal productivity":
1. **Compass with coffee stain** - A vintage compass where the needle points toward a coffee ring stain on a map, suggesting direction emerges from daily rituals.
2. **Clock face with seasons** - A clock where the 12 hours show seasonal changes, suggesting time management over long arcs, not just hours.
3. **Empty desk with shadow** - A minimalist desk in morning light, but the shadow shows a cluttered desk - the gap between intention and reality.
4. **Single key on many keychains** - One small key attached to dozens of decorative keychains, suggesting we overcomplicate simple solutions.
Wait for user to select before proceeding.
Once the user selects a concept, develop it into a full prompt. Structure:
Create a [style type] illustration of [subject].
CONCEPT: [Expand the one-sentence idea into a clear visual description]
STYLE: [Artistic approach - load from references/styles/ if brand-specific]
COMPOSITION: [Framing, focal point, negative space, balance]
COLORS: [Palette - describe by name, not hex codes which may render as text]
TEXTURE: [Surface qualities, analog/digital feel]
AVOID: [What should NOT appear - be specific]
FORMAT: [Aspect ratio]
Key principles:
Default style: Risograph - Use references/styles/risograph.md unless the content calls for something different.
Available styles in references/styles/:
Present style options to user, recommending risograph as default.
# Load key from .env and generate
export $(grep GEMINI_API_KEY .env) && \
python scripts/generate_image.py "prompt here" --model pro --aspect 16:9
# Save to specific folder
python scripts/generate_image.py "prompt" --output "./images" --name "my_image"
Options:
--model flash (faster, cheaper) or --model pro (higher quality)--aspect 16:9, 1:1, or 9:16 (PRO MODEL ONLY - for flash, you MUST include ratio in prompt text)--variations N - generate N versions--output ./path - save location--name prefix - filename prefixOutput location: Save images alongside the content they belong to - not a generic images dump.
After user reviews generated images:
Brief the model like a human artist. Use proper grammar, full sentences, and descriptive adjectives.
| Don't | Do |
|---|---|
| "Cool car, neon, city, night, 8k" | "A cinematic wide shot of a futuristic sports car speeding through a rainy Tokyo street at night. The neon signs reflect off the wet pavement and the car's metallic chassis." |
Be specific about:
Context helps the model make logical artistic decisions. Include the "why" or "for whom."
Example: "Create an image of a sandwich for a Brazilian high-end gourmet cookbook." (Model infers: professional plating, shallow depth of field, perfect lighting)
Aesthetic style definitions:
risograph.md - DEFAULT - Halftone, misregistration, indie printmakingminimalist-ink.md - Black and white ink illustrationwatercolor-line.md - Ink with watercolor washeseditorial-conceptual.md - Conceptual editorial stylegenerate_image.py - Gemini API image generation| Category | Examples |
|---|---|
| Lighting | golden hour, dramatic shadows, soft diffused light, neon glow, overcast |
| Style | cinematic, editorial, technical diagram, hand-drawn, photorealistic |
| Texture | matte finish, brushed steel, soft velvet, crumpled paper, weathered wood |
| Composition | wide shot, close-up, bird's eye view, dutch angle, symmetrical |
| Mood | energetic, serene, dramatic, playful, sophisticated |
| Quality | 4K, high-fidelity, pixel-perfect, professional grade |
Put exact text in quotes. Specify style: "polished editorial," "technical diagram," or "hand-drawn whiteboard."
Example prompts:
Earnings Report Infographic:
"Generate a clean, modern infographic summarizing the key financial highlights from this earnings report. Include charts for 'Revenue Growth' and 'Net Income', and highlight the CEO's key quote in a stylized pull-quote box."
Whiteboard Summary:
"Summarize the concept of 'Transformer Neural Network Architecture' as a hand-drawn whiteboard diagram suitable for a university lecture. Use different colored markers for the Encoder and Decoder blocks, and include legible labels for 'Self-Attention' and 'Feed Forward'."
Use reference images and state "Keep the person's facial features exactly the same as Image 1." Describe expression/action changes while maintaining identity.
Example prompt:
Viral Thumbnail:
"Design a viral video thumbnail using the person from Image 1.
Face Consistency: Keep the person's facial features exactly the same as Image 1, but change their expression to look excited and surprised.
Action: Pose the person on the left side, pointing their finger towards the right side of the frame.
Subject: On the right side, place a high-quality image of a delicious avocado toast.
Graphics: Add a bold yellow arrow connecting the person's finger to the toast.
Text: Overlay massive, pop-style text in the middle: 'Done in 3 mins!'. Use a thick white outline and drop shadow.
Background: A blurred, bright kitchen background. High saturation and contrast."
The --input flag enables "rework mode" - pass an existing image to Gemini and describe the changes you want.
Key use cases:
Running in rework mode:
# Basic edit - add something
python scripts/generate_image.py "Add snow to the roof and yard" \
--input ./house.png \
--model pro
# Color adjustment
python scripts/generate_image.py "Change the accent color from red to teal, keep everything else identical" \
--input ./thumbnail.png \
--model pro
# Style transfer - keep composition, change aesthetic
python scripts/generate_image.py "Convert this to risograph style with halftone dots and slight color misregistration" \
--input ./photo.png \
--model pro
# Generate variations of an edit
python scripts/generate_image.py "Make the lighting warmer, like golden hour" \
--input ./portrait.png \
--variations 3 \
--model pro
Prompting tips for rework mode:
Be specific about what to preserve:
Be explicit about what to change:
Use comparative language:
Output naming: Files from rework mode are named {prefix}_{timestamp}_edit_{model}.png to distinguish from generated images (_gen_).
Object Removal:
python scripts/generate_image.py \
"Remove the tourists from the background and fill with matching cobblestones and storefronts" \
--input ./street-photo.png \
--model pro
Seasonal Control:
python scripts/generate_image.py \
"Turn this into winter. Add snow to the roof and yard. Change lighting to cold, overcast afternoon. Keep architecture identical." \
--input ./house-summer.png \
--model pro
Character Consistency (thumbnail series):
python scripts/generate_image.py \
"Keep the person's face exactly the same. Change expression to surprised. Add a pointing gesture toward the right side of the frame." \
--input ./person-reference.png \
--model pro
For custom brand styles, create new style files in references/styles/ following the existing format