About generate-image
A skill for generating custom images for Remotion video projects. It helps shape prompts and choose between remotion-media and Replicate, then explains how to add and refine generated images.
Key features
- 01Image prompt planning
- 02Generation with remotion-media
- 03Replicate model search and execution
- 04Reference image guidance
- 05Adding images to Remotion
Use cases
- 01Creating a scene background or thumbnail
- 02Generating a consistent set of scene images
- 03Using a specific Replicate image model
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ dojocodinglabs/ remotion-superpowers --skill generate-imageAfter installing, type/generate-imagein Claude Code to confirm it loaded.
Details
From the project READMEGenerate Image — AI Image Creation
You are helping the user generate custom images for their Remotion video project.
Workflow
1. Understand the Need
Ask the user (if not already clear):
- What is the image for? — Scene background, thumbnail, character, product shot, abstract art, diagram?
- Style — Photorealistic, illustration, 3D render, flat design, watercolor, pixel art?
- Dimensions — Landscape (1920x1080), portrait (1080x1920), square (1080x1080)?
- Mood/Colors — Bright, dark, warm, cool, neon, pastel?
2. Craft the Prompt
Write the prompt in full sentences, following Replicate's official prompt-images skill for technique (it's model-agnostic, so it applies to KIE too). Cover, in order: subject, style, lighting, camera angle, color palette, background details.
Good prompt examples:
- "A modern tech startup office seen from above, clean minimalist design with white desks and blue accents, bright natural light from large windows, photorealistic."
- "An abstract geometric pattern of glowing neon purple and blue lines on a dark background, futuristic 3D render."
- "A friendly robot mascot waving, cartoon illustration with pastel colors on a clean white background, suitable for a logo."
- "A downtown skyline silhouetted against a warm orange and pink golden-hour sky, drone aerial shot, cinematic."
For a video, also:
- Leave negative space where Remotion will place titles or captions, and ask for "no text, no watermark"; Remotion renders the text.
- Keep scenes consistent: reuse one style block verbatim across every image in the video, and pass the first good image as a reference. See
skills/remotion-production/rules/image-generation.md.
3. Generate via remotion-media (default)
Use remotion-media generate_image:
- prompt: [crafted prompt]
- output_name: img-hero
- aspect_ratio: 16:9 # always pass it (default is 1:1); 9:16 for shorts
- resolution: 2K # default 1K; use 2K+ for 1080p compositions
- image_urls: [optional reference images, up to 8, public URLs only]
The image is saved to public/img-hero.png in the directory your agent was launched from, so start your agent (Claude Code, Codex, Gemini CLI…) from the Remotion project root. Reference images in image_urls must be public URLs KIE can fetch, not files in public/.
4. Generate via Replicate (specific models)
Use Replicate when the user wants a specific model (typography, several references, a particular look) or KIE fails. It needs the local replicate-mcp server with REPLICATE_API_TOKEN. Follow Replicate's official find-models and run-models skills:
- Search, then read the schema.
search_modelswithbody: "<task>", thenget_models(model_owner,model_name) andlist_models_examples. Use only inputs that exist in the schema; the aspect-ratio input name varies per model. - Create the prediction. Official models:
create_models_predictionswithmodel_owner,model_nameandinput. Community models:create_predictionswithversion: "owner/name:<version_id>". Fast image models can takePrefer: "wait"(blocks up to 60 s). - Poll
get_predictionswithprediction_iduntilstatusissucceeded,failedorcanceled. - Download the URL in
outputright away (it expires after 1 hour):
mkdir -p public/images
curl -L -o public/images/img-[descriptive-name].png "<output URL>"
Starting points, as of Oct 2026 (search and read the schema before calling):
- FLUX.2 Pro / Max (
black-forest-labs/flux-2-pro,-max): photoreal, several reference images viainput_images - Nano Banana Pro (
google/nano-banana-pro): image with text, editing - GPT Image 2 (
openai/gpt-image-2) - Ideogram v3 Quality / Turbo (owner
ideogram-ai, one ID per tier; searchideogram): typography, logos - FLUX Kontext Pro (
black-forest-labs/flux-kontext-pro): edit from a single reference (input_image)
See skills/remotion-production/rules/replicate-models.md for the full flow and rules/image-generation.md for provider choice and consistency guidance.
5. Show Usage in Remotion
Add the image with <CanvasImage> from remotion, as the official remotion-markup skill does (<Img> still works; both accept effects). Sizing and animation follow its images.md and timing.md. The path depends on the provider: generate_image saves to public/<output_name>.png, Replicate downloads to public/images/.
import { CanvasImage, Easing, interpolate, staticFile, useCurrentFrame, useVideoConfig } from "remotion";
const frame = useCurrentFrame();
const { fps } = useVideoConfig();
// As a background (remotion-media output)
<CanvasImage
src={staticFile("img-hero.png")}
style={{ width: "100%", height: "100%", objectFit: "cover" }}
/>
// As an element that pops in (Replicate download)
<CanvasImage
src={staticFile("images/img-product.png")}
style={{
scale: interpolate(frame, [0, 0.6 * fps], [0, 1], {
extrapolateLeft: "clamp", extrapolateRight: "clamp",
easing: Easing.spring({ damping: 200 }),
output: "perceptual-scale",
}),
}}
/>
For a slow Ken Burns move on a still, see skills/remotion-production/rules/image-generation.md.
6. Iterate
If the image isn't right:
- Adjust the prompt — be more specific about what's wrong (see
prompt-imagesfor editing and common pitfalls) - Generate multiple variations and let the user pick
- Use exclusions only if the model supports them ("no text, no watermark"); some models get worse with negative prompts
- Change one thing at a time so the image still matches the other scenes