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".

70

Quality

88%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

82%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-engineered, dense instruction file: every section is a table or executable snippet, the pipeline is sequenced with pre-flight checks and error-recovery loops, and references are explicitly gated behind on-demand loading. Remaining gaps are minor: duplicated install/checklist content, no post-generation verification for batch runs, and references that live entirely in the external banana extension rather than this bundle.

Suggestions

State the banana install command once (Prerequisites) and have the Error Handling rows reference 'install instructions above' instead of repeating the command twice, trimming redundant tokens.

Add a batch verification step to the Generation Pipeline, e.g. after batch generation confirm each output file exists and is non-empty before presenting the SEO checklist, closing the workflow validation gap.

Consolidate the Response Format 'SEO checklist' line into a pointer to the Post-Generation SEO Checklist section rather than re-listing alt text, file naming, and WebP conversion a second time.

DimensionReasoningScore

Conciseness

The body is table-heavy and lean (use-case matrix, model routing, error table) with no explanation of concepts Claude already knows, matching anchor 4 ('efficient; minor instances of over-explanation that could be trimmed'). Not anchor 5 because of small redundancies: the install command appears three times (Prerequisites, two Error Handling rows), and the Response Format section re-summarizes the Post-Generation SEO Checklist items ('SEO checklist: alt text suggestion, file naming, WebP conversion') already detailed above. Not anchor 2/3 because there is no padding or tutorial prose.

4 / 5

Actionability

Quotes: executable commands throughout — "./extensions/banana/install.sh", "magick output.png -quality 85 output.webp", the fallback "generate.py --prompt '...' --aspect-ratio '16:9' --model \"$NANOBANANA_MODEL\"", the cost log command, plus complete copy-paste JSON schema ("@type": "ImageObject"...) and og:image HTML snippets. This matches anchor 5 ('fully executable; copy-paste ready code or commands; specific examples cover the common cases'); the Reasoning Brief step deferring to prompt-engineering.md is well-signaled progressive disclosure, not a gap.

5 / 5

Workflow Clarity

Quotes: a numbered 6-step Generation Pipeline ('Identify use case... Set aspect ratio via set_aspect_ratio... Generate via gemini_generate_image'), a pre-flight checkpoint ('verify the MCP server is connected by checking if gemini_generate_image or set_aspect_ratio tools are available'), pre-batch safeguards ('Show estimated cost before generating (especially for batch)', 'Check current free-tier limits before batch operations'), and error-recovery loops ('Rate limited (429) | Wait 60s, retry', 'IMAGE_SAFETY | Rephrase prompt'). This fits anchor 4 ('clear sequence with most checkpoints present; minor validation gaps') — the gap is no post-generation output verification for batch results. Not capped at 3 since meaningful validation exists (availability check, cost/limits checks before batch), but not anchor 5 because batch output verification is missing.

4 / 5

Progressive Disclosure

Quotes: "Load on-demand. Do NOT load all at startup" followed by ten one-line-described reference files ("${CLAUDE_SKILL_DIR}/references/prompt-engineering.md: 6-component system, domain modes, advanced techniques" etc.) — well-signaled, one level deep, matching anchor 4 ('good structure; most content is appropriately placed; references mostly clear'). Not anchor 5 because all referenced files resolve to the externally installed banana extension (${CLAUDE_SKILL_DIR}/...), none are present in this skill's own bundle, so navigation depends on an external dependency rather than a self-contained structure. Not anchor 3 because the inline body content is appropriately split and the references are clearly signaled with purposes.

4 / 5

Total

17

/

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: concrete SEO asset types, explicit third-person what/when structure, and an unusually thorough natural-language trigger list. The only weaknesses are broad triggers that overlap general image generation and a single-action framing that omits post-generation SEO tasks.

DimensionReasoningScore

Specificity

Quotes: "AI image generation for SEO assets: OG/social preview images, blog hero images, schema images, product photography, infographics" names the domain with five concrete deliverable types, plus "Powered by Gemini via nanobanana-mcp. Requires banana extension installed." It matches anchor 4 ('several specific actions; minor gaps') rather than anchor 5 because it is essentially one action (generate) across multiple outputs rather than multiple distinct actions like extract/fill/merge, and post-generation SEO tasks (alt text, WebP conversion, schema markup) are absent.

4 / 5

Completeness

Quotes: the 'what' is explicit ("AI image generation for SEO assets: OG/social preview images, blog hero images, schema images, product photography, infographics") and the 'when' is explicit ("Use when user says...") with concrete trigger phrases. This exactly matches anchor 5 ('clearly and explicitly answers both what AND when with concrete trigger phrases'), mirroring the good_overall_examples pattern.

5 / 5

Trigger Term Quality

Quotes: "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'." This is comprehensive natural-language coverage including synonyms and platform-specific phrasing (Pinterest pin, favicon, thumbnail), matching the anchor 5 pattern ('PDF files, PDFs, forms, document extraction, .pdf'). Not anchor 4 because no common variation is missing.

5 / 5

Distinctiveness Conflict Risk

Quotes: SEO-specific triggers like "OG image", "schema image", "pinterest pin", "seo image" give it a clear niche and it scopes itself via "Powered by Gemini via nanobanana-mcp. Requires banana extension installed." However generic triggers — "generate image", "create visual", "banner", "thumbnail" — overlap with any general image-generation skill, fitting anchor 4 ('mostly distinct; minor overlap risk with closely related skills'). Not anchor 5 because those generic terms would fire for non-SEO image requests; not anchor 3 because the SEO-specific terminology dominates and clearly distinguishes it.

4 / 5

Total

18

/

20

Passed

Validation

87%

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

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

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

Warning

referenced_paths_exist

Referenced path issues: 1 missing

Warning

Total

14

/

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.