--- name: ck-ai-artist description: > Generates, edits, and refines images using AI image generation APIs. Activate when user says 'generate an image', 'create artwork', 'AI art', 'draw me', 'make a picture of', or 'image generation prompt'. Accepts text descriptions, style references, dimensions, and iteration requests. --- ## Overview Crafts optimized prompts and orchestrates AI image generation workflows. Handles prompt engineering, style specification, negative prompts, and iterative refinement for high-quality image outputs. ## When to Use - User requests visual content creation from text descriptions - Generating concept art, illustrations, or mockup visuals - Iterating on existing images with style or composition changes - Batch generating image variants for A/B testing or design exploration - Creating consistent image sets with shared style parameters ## Don't Use When - User needs photo editing of an existing uploaded image (use ck-ai-multimodal) - Task requires vector graphics or SVG creation (use a design tool) - User needs video generation (use ck-remotion or a video AI service) - The output will be used in a commercial context without verifying model license ## Steps / Instructions ### 1. Clarify Image Requirements Gather before generating: - Subject / main content - Style (photorealistic, illustration, watercolor, pixel art, etc.) - Mood / lighting / color palette - Dimensions / aspect ratio (e.g., 16:9, square, portrait) - Reference styles or artists (check license implications) ### 2. Craft the Prompt **Structure:** ``` [subject], [environment/setting], [style], [lighting], [camera/perspective], [quality modifiers] ``` **Example:** ``` A futuristic city skyline at dusk, neon reflections on wet streets, cyberpunk illustration style, cinematic lighting, wide angle, high detail, vibrant colors ``` **Negative prompt (things to avoid):** ``` blurry, low quality, text, watermark, distorted faces, extra limbs ``` ### 3. Select Model / API Parameters Common parameters across providers: ```json { "prompt": "", "negative_prompt": "", "width": 1024, "height": 1024, "steps": 30, "guidance_scale": 7.5, "seed": 42 } ``` Provider options (do not hardcode API keys — use env vars): - `OPENAI_API_KEY` → DALL-E 3 - `STABILITY_API_KEY` → Stable Diffusion / SDXL - `REPLICATE_API_TOKEN` → various open models ### 4. Iterate and Refine After first generation: 1. Review output against intent 2. Adjust prompt — add specifics for weak areas 3. Tweak guidance scale (higher = more prompt-adherent, less creative) 4. Try seed variations for composition changes 5. Use img2img if base composition is close but needs refinement ### 5. Post-Processing Suggestions - Upscale with Real-ESRGAN for print-quality output - Use inpainting to fix specific regions - Apply style transfer for consistent series ## Prompt Engineering Tips - Be specific about count: "three red apples" not "some apples" - Lighting has major impact: "golden hour", "studio softbox", "moonlight" - Add medium: "oil painting", "digital illustration", "pencil sketch" - Quality boosters: "highly detailed", "sharp focus", "8k", "award-winning" - Avoid abstract adjectives alone: "beautiful" is weak; describe what makes it beautiful ## Notes - Never embed API keys in scripts; always read from environment variables - Log prompt + seed + parameters for reproducibility - Respect content policies of each image generation provider