stevysmith/og-image-skill/stevysmith-og-image

Claude Code and agent skill by stevysmith/og-image-skill

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Generate social media preview images (Open Graph) and configure meta tags. Creates a screenshot-optimized page using the project's existing design system, captures it at 1200x630, and sets up all social sharing meta tags.

Install

npx vskill@latest install stevysmith/og-image-skill/stevysmith-og-image

SKILL.md

This skill creates professional Open Graph images for social media sharing. It analyzes the existing codebase to match the project's design system, generates a dedicated OG image page, screenshots it, and configures all necessary meta tags.

Workflow

Phase 1: Codebase Analysis

Explore the project to understand:

  1. Framework Detection
  • Check package.json for Next.js, Vite, Astro, Remix, etc.
  • Identify the routing pattern (file-based, config-based)
  • Find where to create the /og-image route
  1. Design System Discovery
  • Look for Tailwind config (tailwind.config.js/ts) for color palette
  • Check for CSS variables in global styles (:root definitions)
  • Find existing color tokens, font families, spacing scales
  • Look for a theme or design tokens file
  1. Branding Assets
  • Find logo files in /public, /assets, /src/assets
  • Check for favicon, app icons
  • Look for existing hero sections or landing pages with branding
  1. Product Information
  • Extract product name from package.json, landing page, or meta tags
  • Find tagline/description from existing pages
  • Look for existing OG/meta configuration to understand current setup
  1. Existing Components
  • Find reusable UI components that could be leveraged
  • Check for glass effects, gradients, or distinctive visual patterns
  • Identify the overall aesthetic (dark mode, light mode, etc.)
Phase 2: OG Image Page Creation

Create a dedicated route at /og-image (or equivalent for the framework):

Page Requirements:

  • Fixed dimensions: exactly 1200px wide × 630px tall
  • Self-contained styling (no external dependencies that might not render)
  • Hide any dev tool indicators with CSS:
css
[data-nextjs-dialog-overlay],
[data-nextjs-dialog],
nextjs-portal,
#__next-build-indicator {
display: none !important;
}

Content Structure:

  • Product logo/icon (prominent placement)
  • Product name with distinctive typography
  • Tagline or value proposition
  • Visual representation of the product (mockup, illustration, or abstract design)
  • URL/domain at the bottom
  • Background that matches the project aesthetic (gradients, patterns, etc.)

Design Principles:

  • Use the project's existing color palette
  • Match the typography from the main site
  • Include visual elements that represent the product
  • Ensure high contrast for readability at small sizes (social previews are often small)
  • Test that text is readable when the image is scaled down to ~400px wide
Phase 3: Screenshot Capture

Use Playwright to capture the OG image:

  1. Navigate to the OG image page (typically http://localhost:3000/og-image or similar)
  2. Resize viewport to exactly 1200×630
  3. Wait for any animations to complete or fonts to load
  4. Take a PNG screenshot
  5. Save to the project's public folder as og-image.png

Playwright Commands:

browser_navigate: http://localhost:{port}/og-image
browser_resize: width=1200, height=630
browser_take_screenshot: og-image.png (then copy to /public)
Phase 4: Meta Tag Configuration

Audit and update the project's meta tag configuration. For Next.js App Router, update layout.tsx. For other frameworks, update the appropriate location.

Required Meta Tags:

typescript
// Open Graph
openGraph: {
title: "Product Name - Short Description",
description: "Compelling description for social sharing",
url: "https://yourdomain.com",
siteName: "Product Name",
locale: "en_US",
type: "website",
images: [{
url: "/og-image.png", // or absolute URL
width: 1200,
height: 630,
alt: "Descriptive alt text for accessibility",
type: "image/png",
}],
},
// Twitter/X
twitter: {
card: "summary_large_image",
title: "Product Name - Short Description",
description: "Compelling description for Twitter",
creator: "@handle", // if provided
images: [{
url: "/og-image.png",
width: 1200,
height: 630,
alt: "Descriptive alt text",
}],
},
// Additional
other: {
"theme-color": "#000000", // match brand color
"msapplication-TileColor": "#000000",
},
appleWebApp: {
title: "Product Name",
statusBarStyle: "black-translucent",
capable: true,
},

Ensure `metadataBase` is set for relative URLs to resolve correctly:

typescript
metadataBase: new URL("https://yourdomain.com"),
Phase 5: Verification & Output
  1. Verify the image exists at the public path
  2. Check meta tags are correctly rendered in the HTML
  3. Provide cache-busting instructions:
  • Facebook/LinkedIn: https://developers.facebook.com/tools/debug/
  • Twitter/X: https://cards-dev.twitter.com/validator
  • LinkedIn: https://www.linkedin.com/post-inspector/
  1. Summary output:
  • Path to generated OG image
  • URL to preview the OG image page locally
  • List of meta tags added/updated
  • Links to social preview debuggers

Prompting for Missing Information

Only ask the user if these cannot be determined from the codebase:

  1. Domain/URL - If not found in existing config, ask: "What's your production domain? (e.g., https://example.com)"
  1. Twitter/X handle - If adding twitter:creator, ask: "What's your Twitter/X handle for attribution? (optional)"
  1. Tagline - If no clear tagline found, ask: "What's a short tagline for social previews? (1 sentence)"

Framework-Specific Notes

Next.js App Router:

  • Create /app/og-image/page.tsx
  • Update metadata in /app/layout.tsx
  • Use 'use client' directive for the OG page

Next.js Pages Router:

  • Create /pages/og-image.tsx
  • Update _app.tsx or use next-seo

Vite/React:

  • Create route via router config
  • Update index.html meta tags or use react-helmet

Astro:

  • Create /src/pages/og-image.astro
  • Update layout with meta tags

Quality Checklist

Before completing, verify:

  • [ ] OG image renders correctly at 1200×630
  • [ ] No dev tool indicators visible in screenshot
  • [ ] Image saved to public folder
  • [ ] Meta tags include og:image with absolute URL capability
  • [ ] Meta tags include twitter:card as summary_large_image
  • [ ] Meta tags include dimensions (width/height)
  • [ ] Meta tags include alt text for accessibility
  • [ ] theme-color is set to match brand
  • [ ] User informed of cache-busting URLs

Security

  • Security scanPassed, 100 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

Repository stars
58
Repository forks
2
7-day trend score
20

Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 3 Apr 2026, 7 months ago.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/stevysmith/og-image-skill/stevysmith-og-image/badge)](https://verified-skill.com/skills/stevysmith/og-image-skill/stevysmith-og-image)

Something wrong with this skill or its page? Tell us.