# Og Assets

> Create Open Graph images, link-preview assets, and README GIFs; /og-assets.

- Skill: `ucsandman/og-assets` (Agent Skill)
- Install (CLI): `npx skillmds@latest add ucsandman/og-assets`
- Raw SKILL.md: https://api.skillmd.com/api/skills/ucsandman/og-assets/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: ucsandman (https://skillmd.com/u/ucsandman)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/ucsandman/og-assets

---


# OG Assets

**REQUIRED BACKGROUND:** marketing-studio skill. Work in `C:/Projects/animations`.

Produces: `out/<brand>/og.mp4` (8s seamless 1200x630 loop), `og.gif`, `readme.gif`
(600x315), optionally backed by a ComfyUI AI hero texture.

## Recipe

1. Toolchain + brand check per marketing-studio. Background loop staged for the brand
   (Blender `background_loop` scene; PLAYBOOK seam rules) — or run with it null.
2. Optional AI hero: `node feeders/comfy/client.mjs hero [--seed N]` (needs ComfyUI
   Desktop up + a checkpoint; exit 2 = fine, procedural fallback is spec-compliant).
   Read the hero PNG: dark, on-brand hue, no text/people/off-brand colors; re-roll
   seeds until it passes. Prompt lives in the client; adapt per brand.
3. `node scripts/render-statics.mjs` (extend per brand: props tagline/CTA + hero path).
   The AnimatedOG loop is SEAMLESS by construction — if you touch the template, every
   animated value must stay periodic over the full duration (PLAYBOOK loop rules).
4. Verify one still (lockup sharp, CTA in the brand's positive color) + readme.gif
   legibility (extract frame 0 via ffmpeg if the gif exceeds Read limits).
5. Size check: GIFs are heavy; prefer og.mp4 for social embeds. For READMEs going to
   GitHub keep the gif under ~10MB (`--every-nth-frame=3`, lower `--scale`).
6. Deliver per marketing-studio.

