Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add Poppify/poppify-claude-plugin --skill poppify-live-motiongit clone --depth 1 https://github.com/Poppify/poppify-claude-pluginWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/poppify/poppify-claude-plugin/poppify-live-motion)<a href="https://agentmods.dev/skills/poppify/poppify-claude-plugin/poppify-live-motion"><img src="https://agentmods.dev/badge/skills/poppify/poppify-claude-plugin/poppify-live-motion/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/poppify/poppify-claude-plugin/poppify-live-motion"><img src="https://agentmods.dev/badge/skills/poppify/poppify-claude-plugin/poppify-live-motion.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00161 | $0.03711 |
| Opus 5 | $0.00081 | $0.01855 |
| Sonnet 5 | $0.00032 | $0.00742 |
| Haiku 4.5 | $0.00016 | $0.00371 |
Grade A, and why
poppify-live-motion scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 8d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 143 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Live Motion prompting (Veo 3.1 image-to-video)
Two distinct modes with DIFFERENT prompting rules:
| Mode | What Veo gets | Who writes the prompt |
|---|---|---|
| Plain i2v (no end frame) | start image only, free-running animation | Poppify's auto prompt builder — fine as-is |
Bridged / interpolation (endFrameUri set) |
start image + last frame; Veo must land on the last frame | YOU — author overridePrompt; the auto prompt is wrong for this mode |
1. When to use live motion at all
- OPTIONAL per-slide upgrade (10 seeds/clip), never blanket-applied. ≤1 live slide per reel, usually the hook.
- Render the cinematic baseline FIRST, let the user review, then offer the upgrade (see
poppify-build-reelStep 6). search_live_librarybefore generating — cache hits are free.
2. Plain i2v action prompting (no end frame)
The auto prompt (5-part: cinematography + subject + action + context + style) works well here. Your only lever is liveAction:
- Specific physical verbs beat abstractions: "exhales slowly, hair drifting in the breeze" beats "looks relaxed".
- Match intensity to framing: close-ups take micro-gestures (blink, breath); wides take real movement (walks, turns).
- Respect the pairing check in the
animate_slidedryRun preview (pairing.ok/suggestedCamera) — a warned-against camera layered on a big action produces warping. - Iterate with
animate_slide({dryRun:true, ...})(free, no apiKey) until the assembled prompt reads shippable.
3. First/last-frame transition workflow (bridged renders)
The full recipe, in order:
- Start image on the slide (photo or
add_slide_image). - End frame via
add_slide_imagewithreferenceAssetId/referenceImageUrl(consistent-frames mode, same cost) — MUST be composition-locked. PasssessionIdso the end frame is generated at the session's aspect ratio: the start image, the end frame, and the reel must all be the SAME orientation (vertical by default), or the bridge crops/letterboxes and the interpolation drifts. Prompt template:"Same camera position, same framing, same background/setting. Only <the delta> changes. Subject <geometric consequence of the action — e.g. two steps lower, closer to camera, larger in frame>."
update_slides({action:"set_motion_mode", slideIndex, motionMode:"live", liveAction, endFrameUri, liveDurationSeconds: 8})— pass 8 explicitly: the current provider (Veo 3.1 Lite) REJECTSlastFrameat 4s/6s with400 INVALID_ARGUMENT ("use case not supported"); 8 is the only working bucket for bridged renders.animate_slide({dryRun:true, ...})(free preview) — reference only in this mode. The auto prompt is single-frame style (camera move + slow-motion suffix); do NOT ship it for a bridged render.- Author the journey
overridePrompt(template below). search_live_library(bridged renders cache in their own slot) →animate_slide({sessionId, slideIndex, overridePrompt}).
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 8d ago First seen · 143 lines · 161 tokens per session scan A 297ff96cada3
poppify-live-motion is a skill published in the GitHub repository Poppify/poppify-claude-plugin (0 stars, last pushed 1mo ago), licensed MIT. It adds 161 tokens to every session and 3,711 once invoked, about $0.0008 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
lanshu-create-ai-presenter-video
Turn a topic or finished script plus an authorized adult presenter image into a complete, publish-ready AI presenter video. Use for new presenter videos and for continuing, revising, captioning, lip-sync repairing, or re-exporting an existing presenter-video job. Keep model and provider selection capability-based and…
video-podcast-maker
Use when the user gives a topic and wants an automated topic-driven narrated explainer, podcast, or knowledge-summary video (Bilibili / YouTube / Xiaohongshu / Douyin / WeChat Channels), or asks to learn visual design patterns from a reference video/image. Trigger when the user mentions creating a knowledge video…
video-podcast-maker-lite
Minimal personal narrated-video pipeline — a topic becomes a talking-head-free explainer MP4 (1080p or 4K) via script → Azure TTS (SSML) → Remotion. Use when the user wants a quick narrated video from a topic without the full video-podcast-maker machinery (no extra skills, no thumbnails/shorts/publish matrix). Do NOT…
video-podcast-maker-nano
Smallest personal narrated-explainer-video pipeline (spoken narration over visuals, not an audio podcast), fully tool-agnostic and autonomous by default — topic → research ∥ asset collection → script → TTS → video → 4K render ∥ publish info + cover. The skill defines the pipeline logic and self-verified checkpoints…
video-podcast-maker-factory
Use when the user wants to create their own custom narrated-video pipeline skill — a personal video-podcast-maker-xxx variant with their own TTS backend, visual style, and review gates. Forks the lite reference implementation. Do NOT trigger for making an actual video (use the user's existing variant) or for full…
travel-skill
A production guide for realistic travel-promotion videos that combine authorised real footage with AI-generated shots.