
Claude Gif Generate
- 2 installs
- 22 repo stars
- Updated April 10, 2026
- agricidaniel/claude-gif
claude-gif-generate is a Claude Code sub-skill that generates short AI video clips with Veo 3.1 and converts them to optimized GIFs.
About
claude-gif-generate is a Claude Code sub-skill that generates short AI video clips with Google Veo 3.1 and converts them to optimized GIFs. It engineers loop-friendly, static-background prompts to keep files small and produces perfect loops with palette optimization. Developers use it for cinematic loops, product demos, abstract art, and realistic motion where captured or code-drawn frames will not do.
- AI video-to-GIF generation using Veo 3.1
- Best for cinematic loops, product demos, and realistic motion
- Palette optimization and perfect-loop prompt engineering; Veo costs money
Claude Gif Generate by the numbers
- 2 all-time installs (skills.sh)
- Ranked #1,166 of 1,335 Generative Media skills by installs in the Skillselion catalog
- Data as of Aug 5, 2026 (Skillselion catalog sync)
claude-gif-generate capabilities & compatibility
Veo generation costs real money, roughly $0.60 for a 4-second fast-model clip.
- Capabilities
- gif generate · ai video · video to gif · cinematic loop
- Use cases
- video generation · image generation
- Pricing
- Bring your own API key
- Requires keys
- VEOGOOGLEGENERATIVEAPIACCESS
What claude-gif-generate says it does
AI video-to-GIF generation using Veo 3.1.
Veo generation costs real money. ALWAYS confirm with the user before proceeding.
npx skills add https://github.com/agricidaniel/claude-gif --skill claude-gif-generateAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 2 |
|---|---|
| repo stars | ★ 22 |
| Last updated | April 10, 2026 |
| Repository | agricidaniel/claude-gif ↗ |
What it does
Generate a photorealistic or cinematic GIF from a text prompt using Veo 3.1 then optimize the loop.
Who is it for?
Cinematic loops, product demos, abstract art, and realistic motion GIFs.
Skip if: UI-style or text animations, which are cheaper via Remotion.
When should I use this skill?
You say AI gif, cinematic gif, generate realistic gif, or Veo gif.
What you get
An optimized, loop-friendly GIF produced from an AI-generated Veo video clip.
- AI-generated video clip
- optimized looping GIF
By the numbers
- Veo 4-second fast clip approximately $0.60
- recommended 4-second clips for GIFs
Files
claude-gif-generate -- AI Video-to-GIF (Veo 3.1)
Generates photorealistic or stylized AI video clips using Google Veo, then converts them to optimized GIFs with palette optimization, perfect loops, and platform sizing.
Pipeline Overview
Prompt Engineering --> Veo Generate (MP4) --> gif_convert.sh (GIF) --> gif_loop.py (Loop) --> gif_optimize.py (Shrink)Step-by-Step Procedure
1. MANDATORY: Read Prompt Reference
Before constructing ANY Veo prompt for GIF output:
Read ~/.claude/skills/claude-gif/references/prompt-engineering.mdThis is not optional. GIF-optimized prompts differ significantly from general video prompts. Loop-friendly prompts and static-background strategies reduce file size dramatically.
2. Cost Confirmation
Veo generation costs real money. ALWAYS confirm with the user before proceeding.
| Model | Duration | Approximate Cost |
|---|---|---|
| veo-3.0-fast-generate-001 | 4 seconds | ~$0.60 |
| veo-3.0-fast-generate-001 | 8 seconds | ~$1.20 |
| veo-3.0-generate-001 | 4 seconds | ~$1.20 |
| veo-3.0-generate-001 | 8 seconds | ~$2.40 |
Recommendation: Use veo-3.0-fast-generate-001 with 4 seconds for GIFs. Shorter clips make better GIFs (smaller files, easier to loop). Fast model quality is excellent for GIF resolution (480px).
Tell the user: "This will use Veo 3.0 Fast (4s) costing approximately $0.60. Proceed?"
3. Analyze GIF Concept
Determine from the user's request:
- Loop requirement: Most GIFs should loop. Identify if the content naturally loops.
- Aspect ratio: 16:9 (landscape), 9:16 (portrait/mobile), 1:1 (square, best for GIFs)
- Duration: 4 seconds minimum (Veo constraint). 4s is ideal for GIFs.
- Subject matter: Affects prompt engineering strategy.
- Target platform: Determines final optimization pass.
4. Construct Loop-Friendly Prompt
Read references/prompt-engineering.md for detailed patterns. Key principles:
Natural loops (motion returns to start):
- Circular camera orbits: "Camera slowly orbits 360 degrees around..."
- Pendulum motion: "swinging", "rocking", "bobbing"
- Cyclical natural motion: fire, waves, rain, clouds, breathing, flickering
Static background strategy (reduces GIF file size via diff_mode):
- "A [moving subject] against a solid [color] background"
- "Isolated [subject] on a clean, minimalist backdrop"
- Moving subject on static background = only changed pixels encoded = smaller GIF
What to AVOID in prompts:
- Narrative progression ("walks across", "enters the room", "picks up")
- Scene changes or cuts
- Camera movement that doesn't return to start
- Complex multi-subject interactions
5. Generate Video
~/.video-skill/bin/python3 ~/.claude/skills/veo/scripts/generate.py \
--prompt "A single candle flame flickering gently against a solid black background, close-up macro shot, the flame dances in a continuous loop, warm orange and yellow tones, 4K quality" \
--model veo-3.0-fast-generate-001 \
--duration 4 \
--aspect-ratio 16:9 \
--resolution 720p \
--output /tmp/claude-gif/veo_output.mp4Parameters:
--model: Useveo-3.0-fast-generate-001for cost efficiency--duration: 4 (minimum and ideal for GIF)--aspect-ratio: Match GIF intent (16:9 for landscape, 1:1 for social)--resolution: 720p is sufficient; GIF will be downscaled to 480px anyway
6. Convert to GIF
bash ~/.claude/skills/claude-gif/scripts/gif_convert.sh \
--input /tmp/claude-gif/veo_output.mp4 \
--preset web \
--output ~/Documents/gif_output/candle.gifChoose preset based on target. For unknown targets, use web (480px, 15fps, 256 colors, 2MB cap).
7. Perfect Loop (If Needed)
Inspect the GIF. If the loop has a visible "jump" at the seam:
~/.video-skill/bin/python3 ~/.claude/skills/claude-gif/scripts/gif_loop.py \
--input ~/Documents/gif_output/candle.gif \
--method crossfade \
--frames 5 \
--output ~/Documents/gif_output/candle_looped.gifMethods:
crossfade: Alpha-blend last N frames into first N frames. Best for most content.pingpong: Play forward then reverse. Best for pendulum/oscillating motion.freeze: Blend first and last frames. Subtle, good for slow-moving content.
Read references/perfect-loops.md for detailed technique guidance.
8. Platform Optimization (If Needed)
If the GIF exceeds the target platform's size limit:
~/.video-skill/bin/python3 ~/.claude/skills/claude-gif/scripts/gif_optimize.py \
--input ~/Documents/gif_output/candle_looped.gif \
--target-size 256 \
--output ~/Documents/gif_output/candle_discord.gif9. Cleanup
rm -f /tmp/claude-gif/veo_output.mp4Prompt Templates by GIF Type
Cinematic Loop (Nature)
"[Natural element] in continuous seamless motion, [lighting], static camera,
[color palette], cinematic quality, the motion naturally repeats"Examples: crackling fire, ocean waves, falling rain, swirling smoke, flickering aurora
Product Demo (Turntable)
"A [product] slowly rotating 360 degrees on a clean [color] surface,
studio lighting, product photography, the rotation completes one full cycle"Abstract Art Loop
"Abstract [pattern/shape] flowing and morphing in a continuous cycle,
[color palette], minimalist background, mesmerizing seamless loop"Cinemagraph (Partial Motion)
"A [scene description] where only the [specific element] moves,
everything else perfectly still, cinematic quality, subtle continuous motion"Examples: steam rising from a cup (cup static), hair blowing in wind (person still)
Reaction GIF
"Close-up of a [subject/character] [facial expression or gesture],
[emotion], isolated against [simple background], short expressive motion"Decision Matrix: Veo vs Remotion
| Factor | Use Veo (generate) | Use Remotion (create) |
|---|---|---|
| Content | Photorealistic, nature, people, products | Text, UI, geometric, data |
| Motion | Complex physics, fluid dynamics | Programmatic, spring-based |
| Cost | ~$0.60+ per generation | Free (local render) |
| Speed | 30-90 seconds generation | 5-15 seconds render |
| Looping | Needs post-processing | Designed into component |
| File size | Larger (complex scenes) | Smaller (flat colors) |
| Predictability | AI may vary | Exact output every time |
Error Handling
| Error | Cause | Fix |
|---|---|---|
| Veo rate limit | Too many requests | Wait 60 seconds, retry |
| Veo safety filter | Prompt flagged | Rephrase prompt, remove potentially sensitive terms |
| Video too dark | Prompt lacks lighting cues | Add "well-lit", "bright", specific lighting description |
| Loop seam visible | Motion doesn't naturally cycle | Apply crossfade via gif_loop.py |
| GIF too large | Complex scene, many colors | Use discord/slack preset, or optimize aggressively |
| Generation failed | API error | Check ~/.claude/skills/veo/scripts/generate.py logs |
Related skills
FAQ
What generates the video?
Google Veo 3.1 generates a short clip, which is then converted to an optimized, looping GIF.
Does it cost money?
Yes. Veo generation costs real money, roughly $0.60 for a 4-second fast-model clip, and the skill always confirms cost before generating.