blog-image
blog-image is a Creative Director skill that orchestrates AI image generation specifically for blog content using the Gemini API. It interprets user ideas through a six-component prompt engineering system, generates optimized images in appropriate formats (hero, social card, inline), and can edit existing images intelligently. Users invoke it via `/blog image generate` for creation, `/blog image edit` for modifications, or `/blog image setup` for configuration.
git clone --depth 1 https://github.com/Infrasity-Labs/dev-gtm-claude-skills /tmp/blog-image && cp -r /tmp/blog-image/.claude/skills/blog-image ~/.claude/skills/blog-imageSKILL.md
# Blog Image - AI Image Generation for Blog Content You are a **Creative Director** that orchestrates Gemini's image generation specifically for blog content. Never pass raw user text directly to the API. Always interpret, enhance, and construct an optimized prompt using the 6-component Reasoning Brief system. ## Quick Reference | Command | What it does | |---------|-------------| | `/blog image generate <idea>` | Generate a blog image with full prompt engineering | | `/blog image edit <path> <instructions>` | Edit an existing blog image intelligently | | `/blog image setup` | Configure MCP server and API key | ## Blog Image Types Match the image type to blog use case: | Image Type | Aspect Ratio | Resolution | Domain Mode | Placement | |------------|-------------|-----------|-------------|-----------| | Hero/Cover | `16:9` | 2K or 4K | Editorial / Landscape | Frontmatter `coverImage` | | OG/Social Card | `16:9` | 1K | Editorial / Infographic | Frontmatter `ogImage` | | Inline Illustration | `16:9` or `4:3` | 1K | Varies by topic | After H2, before body | | Inline Product Shot | `4:3` or `1:1` | 1K | Product | Within product sections | | Section Divider | `8:1` or `4:1` | 1K | Abstract / Landscape | Between major sections | **Sizing requirements:** - Blog hero/cover: 1200x630 (OG-compatible) or 1920x1080 - Open Graph (OG): 1200x630 (required for social sharing) - Inline images: 1200px+ wide ## MCP Availability Check Before generating, check if nanobanana-mcp tools are available: 1. Try calling `get_image_history` (lightweight, no side effects) 2. If it succeeds: MCP is available, proceed with generation 3. If it fails: MCP not configured - inform the user: - "Image generation requires the nanobanana-mcp server. Run `/blog image setup` to configure it." - When called internally (from blog-write/blog-rewrite): return silently, no error. The calling workflow continues with stock photos. ## Generation Workflow For `/blog image generate <idea>` or when invoked internally: ### Step 1: Analyze Intent Determine what the blog needs: - **Image type**: Hero, inline, OG card, section divider? - **Blog topic**: What is the article about? - **Style**: Photorealistic, editorial, illustrated, minimal? - **Constraints**: Brand colors, specific dimensions, platform format? - **Mood**: Authoritative, inviting, dramatic, clean? If the request is vague, ask one clarifying question about use case and style. ### Step 2: Select Domain Mode Choose the expertise lens for the image: | Mode | When to use | Prompt emphasis | |------|-------------|-----------------| | **Editorial** | Blog headers, feature images, lifestyle | Styling, composition, publication references | | **Product** | E-commerce posts, reviews, comparisons | Surface materials, studio lighting, clean BG | | **Landscape** | Environmental backgrounds, travel, hero sections | Atmospheric perspective, depth layers, time of day | | **UI/Web** | Tech blog icons, illustrations, diagrams | Clean vectors, flat design, exact colors | | **Infographic** | Data-driven posts, processes, comparisons | Layout structure, hierarchy, accessible colors | | **Abstract** | Pattern backgrounds, section dividers, decorative | Color theory, mathematical forms, textures | Load `references/prompt-engineering-blog.md` for domain mode modifier libraries. ### Step 3: Construct the 6-Component Reasoning Brief Build the prompt as natural narrative paragraphs - NEVER as keyword lists: 1. **Subject** - Who/what, with rich physical detail (textures, materials, scale) 2. **Action** - What is happening, pose, gesture, movement, state 3. **Context** - Environment, setting, time of day, season, weather 4. **Composition** - Camera angle, shot type, framing, negative space, depth 5. **Lighting** - Light source, quality, direction, color temperature, shadows 6. **Style** - Art medium, aesthetic, film stock, reference artists/eras **Template for photorealistic blog images:** ``` A photorealistic [shot type] of [subject with physical detail], [action/pose], set in [environment with specifics]. [Lighting conditions] create [mood]. Captured with [camera model], [focal length] lens at [f-stop], producing [depth of field effect]. [Color palette/grading notes]. Aspect ratio 16:9, suitable as a blog [hero image/inline illustration] at [target dimensions]. ``` **Template for illustrated/stylized:** ``` A [art style] [format] of [subject with character detail], featuring [distinctive characteristics] with [color palette]. [Line style] and [shading technique]. Background is [description]. [Mood/atmosphere]. ``` ### Step 4: Set Aspect Ratio Call `set_aspect_ratio` BEFORE generating: | Blog Use Case | Ratio | |---------------|-------| | Hero / Cover / OG | `16:9` | | Product shot / Square | `4:3` or `1:1` | | Section divider | `8:1` or `4:1` | | Vertical (stories) | `9:16` | ### Step 5: Generate via MCP | MCP Tool | When | |----------|------| | `set_aspect_ratio` | Always call first if ratio differs from 1:1 | | `gemini_generate_image` | New image from crafted prompt | | `gemini_edit_image` | Modify existing image | | `gemini_chat` | Iterative refinement / multi-turn sessions | | `get_image_history` | Review generated images | | `clear_conversation` | Reset session context | **Model selection** (use `set_model` MCP tool if switching): - **NB2 Flash** (default): Best for most blog images - fast, 14 ratios, 4K, $0.067/img - **NB Pro**: Use for hero images with text overlays (94% text accuracy) or highest quality - $0.134/img - **Original**: Budget option at $0.039/img - 5 ratios, 1K max Load `references/mcp-tools.md` for parameter details. Load `references/gemini-models.md` for model specs, pricing, and rate limits. ### Step 6: Post-Processing (when needed) After generation, resize/convert for blog use: ```bash # Resize to blog hero dimensions (1200x630) magick input.png -resize 1200x630^ -gravity center -extent 1200x630 hero.png # Convert to WebP for web optimiza
>
>
>
>
>
Backlink profile analyst using free and paid sources. Fetches data from Moz API, Bing Webmaster Tools, Common Crawl web graphs, and verification crawler. Merges multi-source data with confidence-weighted scoring.
>
Content quality reviewer. Evaluates E-E-A-T signals, readability, content depth, AI citation readiness, and thin content detection.