CtrlK
BlogDocsLog inGet started
Tessl Logo

seo-image-gen

AI image generation for SEO assets: OG/social preview images, blog hero images, schema images, product photography, infographics. Powered by Gemini via nanobanana-mcp. Requires banana extension installed. Use when user says "generate image", "OG image", "social preview", "hero image", "blog image", "product photo", "infographic", "seo image", "create visual", "image-gen", "favicon", "schema image", "pinterest pin", "generate visual", "banner", or "thumbnail".

67

Quality

84%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

SKILL.md
Quality
Evals
Security

Quality

Content

72%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A well-structured skill body: dense reference tables, executable commands, complete markup snippets, and an exemplary load-on-demand reference structure. The main weakness is the generation pipeline's lack of validation checkpoints — especially for the batch mode that makes multiple paid API calls — plus placeholder-styled model routing rows and a few vacuous cost-tracking lines.

Suggestions

Add a verification step to the Generation Pipeline (e.g., confirm the output file exists with the expected dimensions/aspect ratio before running the post-generation checklist), and for batch mode, validate the first variation before spending on the remaining N-1.

Replace the placeholder Model Routing entries ("Installed MCP/tool default @ 1K") with the concrete model identifiers from references/gemini-models.md, and show the actual `set_aspect_ratio` invocation syntax alongside the pipeline step.

Delete or concretize the "Approximate costs" stub (either state the numbers with a dated caveat or link directly to references/cost-tracking.md), and replace the empty presets code comment with a real command or a pointer to references/presets.md.

DimensionReasoningScore

Conciseness

The body is table- and command-driven with almost no concept explanation Claude already knows. It loses a point for vacuous filler like "Approximate costs: Verify current pricing in the installed MCP/tool configuration before quoting" and a presets section whose code block contains only a comment ("# Use the installed Banana MCP/tool configuration to list presets") rather than instructions.

4 / 5

Actionability

Mostly executable guidance: `./extensions/banana/install.sh`, `magick output.png -quality 85 output.webp`, complete ImageObject JSON and og: meta tag snippets, plus parameterized use-case tables. Gaps keep it below 5: the Model Routing table uses unactionable placeholders ("Installed MCP/tool default @ 1K") and "Set aspect ratio via `set_aspect_ratio` MCP tool" is given without its parameters.

4 / 5

Workflow Clarity

The 6-step pipeline (identify use case, apply defaults, set aspect ratio, construct brief, generate, post-gen checklist) is clearly sequenced and paired with an error-handling table, but there are no validation checkpoints on the output. The batch command generates N paid API variations with no verification step before or after spending, so the batch-operations cap applies — a 4 would require explicit checkpoints such as confirming the generated file exists with expected dimensions.

3 / 5

Progressive Disclosure

All nine referenced files (prompt-engineering.md, prompt-templates.md, prompt-adaptation-safety.md, gemini-models.md, mcp-tools.md, post-processing.md, cost-tracking.md, presets.md, seo-image-presets.md) exist in the bundle, are one level deep, and are listed under "Reference Documentation" with one-line descriptions and explicit "Load on-demand. Do NOT load all at startup" guidance. This matches the anchor-5 pattern of a clear overview with well-signaled references.

5 / 5

Total

16

/

20

Passed

Description

91%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description that clearly states what it generates and when to use it, with an extensive natural-language trigger list. The only weakness is slight overlap risk with the underlying general image-generation skill via broad triggers like "generate image" and "banner".

DimensionReasoningScore

Specificity

The description enumerates concrete deliverables ("OG/social preview images, blog hero images, schema images, product photography, infographics") in third-person voice. It stops short of anchor 5 because the only action stated is "generation" — no mention of presets, batch variations, or post-processing that the skill actually covers.

4 / 5

Completeness

Both parts are explicit: a clear "what" ("AI image generation for SEO assets: OG/social preview images, blog hero images, schema images, product photography, infographics") and an explicit "when" ("Use when user says \"generate image\", \"OG image\"..."). This mirrors the anchor-5 example structure exactly.

5 / 5

Trigger Term Quality

The trigger list is comprehensive with natural synonyms and phrasings users would actually say: "generate image", "OG image", "social preview", "hero image", "product photo", "infographic", "favicon", "pinterest pin", "banner", "thumbnail". Matches the anchor-5 example of full coverage including variations.

5 / 5

Distinctiveness Conflict Risk

The SEO-asset framing is a clear niche, matching anchor 4 ("mostly distinct; minor overlap risk"). Generic triggers like "generate image", "create visual", and "banner" overlap with the general-purpose banana image-generation skill this extension is built on, preventing a 5.

4 / 5

Total

18

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

15

/

16

Passed

Repository
AgriciDaniel/claude-seo
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.