A new npm package called blog-cover-image-cli just dropped, and it's exactly the kind of practical tool infrastructure folks have been waiting for. The CLI generates polished, minimalist blog cover images using Google's Gemini 3.1 Flash Image Preview modelβall from your terminal. No more hunting for designers or fumbling through Canva when you just need a clean 16:9 thumbnail for your latest post.
Why This Matters for Builders
This isn't just another image generator. The tool is built specifically for developers who want to automate their content workflow. It handles the entire pipeline: fetch a company logo from any domain using Brandfetch, normalize it to PNG via sharp, then feed it into the AI context alongside aesthetic examples that guide the model toward clean, white-background, heavy-typography designs. If your title involves current events, Google Search grounding pulls real-time data into the generation.
The OpenCode Skill
Here's where it gets interesting for AI agent workflows. The package includes a structured SKILL.md file at agent-skill/blog-cover-generator/ that lets AI agents use the CLI autonomously. An agent can execute npx -p blog-cover-image-cli blog-cover-cli config set-key $KEY to configure the Gemini key, then run blog-cover-cli generate -t "Title" -l "domain.com" to produce a cover image and return it to the user. This is designed for OpenClaw, Claude Code, and similar agent setups where you want your AI assistant handling visual asset creation without manual handholding.
Self-Healing Generation
The most impressive feature is the built-in QA loop. After generating an image, the CLI uses Gemini Pro Vision to OCR the output and check for typos, layout issues, or missing elements. If validation fails, it automatically retries up to 3 times with corrective feedback passed back to the generator. No more AI-generated images with misspelled words in the typographyβthis is the kind of polish that makes these tools actually usable in production.
Setup Requirements
You'll need Node.js v18+ and two API keys: a Gemini API key for image generation and a Brandfetch Client ID for logo fetching. The CLI stores these securely using the conf package, so you configure once and forget about it. Run blog-cover-cli config set-key and blog-cover-cli config set-brandfetch-id to get started, or let the interactive prompt guide you.
Key Takeaways
- Generates 16:9 blog covers from title and domain using Gemini 3.1 Flash Image Preview
- Auto-fetches company logos via Brandfetch and normalizes to PNG
- Self-healing validation catches typos and retries up to 3 times
- Includes OpenCode SKILL.md for autonomous AI agent use
- Outputs to ./output/ with intelligent file naming if --output flag omitted
The Bottom Line
This is the kind of dev tool that makes you wonder how you lived without it. The self-healing mechanism alone justifies adoptionβit solves the biggest pain point with AI image generation. Combined with the OpenCode skill integration, this is practically built for the AI agent era where your coding assistant should also be able to generate your blog thumbnails. Install it, configure your keys, and never open a design tool for a cover image again.