pfp-animate

Generate animated videos from static profile pictures using AI. Use when users want to animate images, create PFP videos, make meme videos, or turn portraits into short clips. Supports video with generated audio, lip-sync to existing audio, and precise keyframe control.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "pfp-animate" with this command: npx skills add velinussage/pfp-animate/velinussage-pfp-animate-pfp-animate

<overview> PFP Animate generates animated videos from static images using AI models on Replicate.

Four animation modes:

  • Veo mode (recommended): Video + audio from text prompt (Veo 3.1, ~$3.20/8s)
  • Lip-sync mode: Video synced to existing audio file (OmniHuman 1.5, ~$0.16/s)
  • Video mode: Silent video from prompt (Kling v2.5, ~$0.35/5s)
  • Keyframe mode: Precise facial expressions as GIF (expression-editor, ~$0.02)

Requires: REPLICATE_API_TOKEN environment variable </overview>

<check_setup> CRITICAL: Before ANY animation, check for token:

echo $REPLICATE_API_TOKEN | head -c 10

If empty or missing, ASK the user directly:

"I need your Replicate API token to generate videos. Please provide it, or get one from https://replicate.com/account/api-tokens"

Once user provides token, use it inline:

REPLICATE_API_TOKEN='user_provided_token' python scripts/animate_veo.py ...

Do NOT run animation scripts without first verifying the token is available. </check_setup>

<intake> What would you like to do?
  1. Setup Replicate - Create account, get API token, configure environment
  2. Animate with voice - Generate video with AI-generated voice/audio (Veo 3.1)
  3. Lip-sync to audio - Sync video to existing audio file (OmniHuman 1.5)
  4. Silent video - Generate video without audio (Kling v2.5)
  5. Keyframe animation - Precise facial expressions as GIF
  6. List presets - See available motion presets

Wait for user response before proceeding. </intake>

<routing> | Response | Workflow | |----------|----------| | 1, "setup", "install", "token", "account" | `workflows/setup.md` | | 2, "veo", "voice", "audio", "speak", "talking" | `workflows/veo.md` | | 3, "lip-sync", "sync", "existing audio", "mp3" | `workflows/audio.md` | | 4, "silent", "video", "no audio", "kling" | `workflows/animate.md` | | 5, "keyframe", "precise", "expression", "gif" | `workflows/keyframe.md` | | 6, "list", "presets", "options" | Show presets from `references/presets.md` |

After reading the workflow, follow it exactly. </routing>

<quick_reference> Veo 3.1 (video + generated audio):

python scripts/animate_veo.py IMAGE OUTPUT.mp4 --prompt "person speaks to camera"
python scripts/animate_veo.py IMAGE OUTPUT.mp4 --prompt "person says 'Hello world'" --duration 8
python scripts/animate_veo.py IMAGE OUTPUT.mp4 --prompt "dramatic reveal" --reference IMAGE

OmniHuman 1.5 (lip-sync to audio file):

python scripts/animate_audio.py IMAGE AUDIO.mp3 OUTPUT.mp4
python scripts/animate_audio.py IMAGE --tts "Hello world" OUTPUT.mp4 --voice Deep_Voice_Man

Kling v2.5 (silent video):

python scripts/animate_pfp.py IMAGE OUTPUT.mp4 --motion nod
python scripts/animate_pfp.py IMAGE OUTPUT.mp4 --prompt "slowly winking"

Keyframe (precise gestures):

python scripts/animate_keyframe.py IMAGE OUTPUT.gif --motion nod_wink

</quick_reference>

<model_comparison>

ModelAudioBest ForCost
Veo 3.1GeneratedSpeaking videos, announcements~$3.20/8s
OmniHuman 1.5Lip-syncSync to specific audio~$0.16/s
Kling v2.5NoneSilent motion, gestures~$0.35/5s
Expression-editorNonePrecise facial control~$0.02
</model_comparison>

<reference_index> Presets: references/presets.md - Motion presets for keyframe mode Troubleshooting: references/troubleshooting.md - Common errors and fixes API Costs: references/pricing.md - Full pricing reference </reference_index>

<workflows_index>

WorkflowPurpose
setup.mdCreate Replicate account and configure API token
veo.mdGenerate video with AI voice/audio using Veo 3.1
audio.mdLip-sync video to existing audio using OmniHuman 1.5
animate.mdGenerate silent video using Kling v2.5
keyframe.mdPrecise facial expression control with expression-editor
</workflows_index>

<success_criteria>

  • Replicate API token configured (echo $REPLICATE_API_TOKEN shows value)
  • Can run animation script without errors
  • Output video/GIF saved to specified path </success_criteria>

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

Clay

Search, manage, and organize your contact network via the Clay CLI.

Registry SourceRecently Updated
Coding

Ftp Client Php

FTP/FTPS file manager via PHP proxy. Supports list, upload, download, delete, move, copy, mkdir, read, write. Works behind NAT/firewalls (e.g. HuggingFace) b...

Registry SourceRecently Updated
Coding

Vultr

Manage Vultr cloud infrastructure including VPS instances, bare metal, Kubernetes clusters, databases, DNS, firewalls, VPCs, object storage, and more. Use wh...

Registry SourceRecently Updated
Coding

QR Campaign Studio

Generate marketing QR codes with batch output, UTM tracking links, logo embedding, and poster composition. Use when users ask 生成二维码/批量二维码/渠道追踪码/带logo二维码. Sup...

Registry SourceRecently Updated
30Profile unavailable