Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

Back to skills

Remotion Video Agent

ASecurity

Create, animate, preview, render, or review React video compositions with Remotion. Covers frame-accurate timing, spring and interpolate motion, multi-scene sequencing, cinematic transitions, captions, media, and honest Studio/render verification. Use for Remotion videos or code-driven motion graphics, not ordinary web UI animation.

19 stars
0 votes
0 copies
0 views
Added 9/19/2026
ai-agentsgoreactnodeexpressspringapidocumentation

Works with

cliapimcp

Security Analysis

A100/100

Scanned 9/19/2026

Install to Claude Code

$npx -y skills add muzimu217/ui-design-agent-kit --skill remotion-video-agent --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Remotion Video Agent?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Remotion Video Agent
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/muzimu217-remotion-video-agent/badge)](https://www.skillsdirectory.com/skills/muzimu217-remotion-video-agent)

More formats (shields.io, HTML) on the badges page.

Download Zip
Files
SKILL.md
---
name: remotion-video-agent
description: "Create, animate, preview, render, or review React video compositions with Remotion. Covers frame-accurate timing, spring and interpolate motion, multi-scene sequencing, cinematic transitions, captions, media, and honest Studio/render verification. Use for Remotion videos or code-driven motion graphics, not ordinary web UI animation."
---

# Remotion Video Agent

Act as a motion designer and React video engineer. Translate a brief into a
clear visual rhythm, then implement a deterministic, frame-accurate composition
that can be edited in Remotion Studio. Cool transitions are a consequence of
good scene intent, timing, and visual continuity; do not stack effects to hide
weak composition or unclear storytelling.

Design animation as part of the product's interaction and brand system. Start
from the user's audience, message, product behavior, and brand vocabulary, then
choose movement, pacing, typography, sound or media treatment, and transitions
that make those qualities legible. Remotion can express product launches,
interaction walkthroughs, identity systems, explainers, and other motion-led
stories; the correct treatment depends on the request, not on a preset style.
When a comparable treatment exists, search official examples and mature
open-source projects first and adapt a named, inspectable baseline. Reuse code
or assets only when the license or user authorization permits it.

Use the surrounding open-source ecosystem as a deliberate comparison set:
Remotion is the default for React and frame-accurate web compositions; Manim is
the stronger reference for mathematical or scientific animation; Vibe Video and
VibeFrame are agent-orchestration references when their current repositories and
requirements are verified; Shotcut and OpenShot are editing and multi-track
workflow references, not substitutes for Remotion's render model. This choice
must follow the user's requested medium and delivery, and none of these projects
is assumed to be installed, connected, or licensed for reuse without inspection.

## Route the work

Read [workflow.md](references/workflow.md) for the relevant mode and load only
the official Remotion skill needed for the current request:

When this route is dispatched by a main agent, follow the kit's bounded
concurrency policy: one active subagent per task, with dependent video phases
queued and the next worker started only after the previous worker has stopped
and been reviewed.

- `remotion-best-practices` routes all Remotion work when the exact mode is unclear.
- `remotion-create` covers a new project or composition.
- `remotion-docs` is required before relying on a current API or package detail.
- `remotion-markup` covers composition markup, animation, layout, typography,
  media, audio, fonts, and timing.
- `remotion-studio` opens a preview for visual inspection.
- `remotion-render` covers explicit render requests or advanced rendering.

For 3D compositions, shared Blender/glTF assets, or video embedded in a website,
also read [three-and-web.md](references/three-and-web.md). Distinguish a live
interactive scene, a parameterized Player, and an encoded video; implement and
verify the surfaces actually requested, without migrating the host framework.

For review or planning, remain read-only. A skill workflow cannot authorize
scaffolding, purchasing assets, uploading private media, deploying, or changing
global configuration. Follow the user's language and the target project rules.

Also use `motion` only for web UI animation or a shared web surface. Remotion's
frame timeline and Motion's browser runtime are compatible design ideas but not
interchangeable APIs. Do not import `motion/react` into a Remotion composition
just because the brief says “Motion”; choose based on the target runtime.

## Establish the video contract

Before writing code, extract or reasonably assume:

- audience, message, aspect ratio, duration, fps, and delivery format;
- a scene list with purpose, entry/hold/exit beats, and approximate frame ranges;
- visual system: type scale, palette, contrast, safe areas, media treatment;
- editability: which props should be exposed as `Composition` inputs or Studio
  controls, and which values must remain stable for repeatable renders;
- acceptance: key frames, transition points, preview route, and whether the user
  explicitly requested a rendered video file.

For every non-trivial animation, also record the brand and interaction contract:
the feeling to convey, the product action or state being clarified, the visual
motifs that must remain consistent, and the reference baseline or reason no
compatible baseline was found.

When a task mentions one of these adjacent projects, verify its current official
repository or documentation, version, command surface, and license before
claiming that it was used. An ecosystem reference can inform the composition
without changing the target runtime or adding an unrequested toolchain.

Do not change the brief's identity, claims, media, or target format without a
reason. If content is a fixture, label it as fixture content in the handoff.
If the user asks for a web UI transition rather than a video, hand the task back
to `ui-design-agent` and `motion`.

## Frame-first implementation

- Use `useCurrentFrame()` and `useVideoConfig()` inside renderable components.
  Derive all time from frame and fps; never use wall-clock time, random state,
  timers, or unseeded randomness for visible output.
- Use `spring()` for physical entrances, emphasis, or handoff moments when the
  overshoot is intentional. Use `interpolate()` for explicit keyframes and
  multi-stage paths. Provide `durationInFrames` or clamped ranges when the
  animation must end at a known frame.
- Keep scene timing in a small, named contract. The same frame count has a
  different duration at 30fps and 60fps. Keep editable per-property keyframes
  inline when the current Studio interactivity workflow requires it; centralize
  shared scene durations without making those keyframes opaque to the editor.
- Do not use wall-clock CSS transitions, CSS keyframes, Tailwind animation
  classes, or auto-playing browser animation timelines to drive rendered video.
  A requested GSAP integration must be explicitly seeked from the current frame
  through a supported integration, never allowed to free-run.
- Prefer transform, opacity, clip, and color interpolation that renders
  deterministically. Use `extrapolateLeft: 'clamp'` and
  `extrapolateRight: 'clamp'` when a driver must not continue past its beat.
  Use `Easing.step1` for intentionally discrete string changes.
- Remotion's browser renderer can use DOM APIs. Do not depend on unguarded
  browser globals in Node-side code or module initialization. For necessary DOM
  measurement, read the official measurement guidance, account for preview scale,
  and wait for required fonts/assets before capture. The same frame and props
  must render the same output regardless of evaluation order.
- Use `staticFile()` and Remotion media components for project assets. Resolve
  metadata before rendering when dimensions or duration are dynamic. Use
  `delayRender()` only for a real asynchronous dependency and always release it
  on success or `cancelRender()` on a bounded failure.
- Keep important text inside the actual video safe area. Use deterministic line
  breaks or measured layout for long and localized copy. Never make essential
  information depend on hover, audio, or a transition completing.

## Transitions

For adjacent scenes, prefer `@remotion/transitions` and `TransitionSeries`.
Add a missing package only in the target video project, aligning exact versions
of all `remotion` and `@remotion/*` packages. Verify official licensing for the
intended usage; do not infer separate paid access from npm metadata alone.
Use `TransitionSeries.Sequence` for scenes and put a single
`TransitionSeries.Transition` or `TransitionSeries.Overlay` between them.

- Choose the presentation from the edit: `fade` for continuity, `slide` or
  `pushCut` for directional movement, `wipe` for a reveal, `flip` for a deliberate
  spatial change, and more elaborate presentations only when the subject earns
  them. A short dissolve plus a well-matched hold is often more cinematic than
  a new effect on every cut.
- Choose `linearTiming` for exact editorial control and `springTiming` when the
  transition should feel physical. Read current docs for the exact API and
  calculate duration in frames; do not guess from milliseconds.
- A transition overlaps two scenes and shortens total duration. An overlay sits
  at the cut without shortening adjacent scenes. Do not place transitions or
  overlays adjacent to each other, exceed the previous or next sequence length,
  or leave scenes without a neighboring sequence.
- Keep transition scenes absolutely positioned with the default absolute-fill
  layout. The scene must remain readable at the start and end of the overlap.
- For a custom transition, first specify the outgoing/incoming property,
  progress range, z-order, and the fallback at progress 0 and 1. Reuse
  `useTransitionProgress()` or a documented presentation API when appropriate;
  do not invent a second timeline that can disagree with `TransitionSeries`.
- The `@remotion/transitions` package is not the same as an arbitrary npm
  package named `remotion-mcp`. Do not use the deprecated Remotion MCP; use
  the installed official `remotion-docs` skill for current package guidance.

## Studio, render, and evidence

Open Studio after a meaningful composition change and inspect the first frame,
the hold, every transition midpoint, and the final frame. Check the actual
requested delivery formats; do not add an unrequested aspect ratio. Check
long copy, missing media, rapid prop changes, and audio/video boundaries when
they are in scope.

Only render a video when the user explicitly asks for a render or the task's
deliverable is a rendered file. Before rendering, run the project's typecheck,
test, and bundle checks when present. For an explicit render, verify that the
output exists, has the requested dimensions and duration, and can be opened;
do not claim visual success from a zero-exit command alone. A Studio screenshot
proves preview inspection, not a production render.

Respect reduced-motion language when the same composition is used in a Player
or web preview. A video file itself cannot react to a viewer's media query after
rendering, so if the request spans both contexts, define the distinction and
provide a usable non-motion preview path.

Report the exact composition id, tested frame/fps assumptions, commands run,
preview URL or output path, and any unverified media, browser, licensing, or
rendering limitation. Never claim a transition is “frame-perfect”, “4K”, or
“broadcast ready” without checking the corresponding artifact.

Attribution

muzimu217muzimu217
View sourceMore from muzimu217 →
SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Related Skills

Caveman

Ultra-compressed communication mode. Cuts token usage ~75% by speaking like caveman while keeping full technical accuracy. Supports intensity levels: lite, full (default), ultra, wenyan-lite, wenyan-full, wenyan-ultra. Use when user says "caveman mode", "talk like caveman", "use caveman", "less tokens", "be brief", or invokes /caveman. Also auto-triggers when token efficiency is requested.

1023331 votes

Hyperplan

Adversarial multi-agent planning skill. Self-orchestrates 5 hostile category members (unspecified-low, unspecified-high, deep, ultrabrain, artistry) via team-mode for ruthless cross-critique debate, distills only the defensible insights, then MANDATORILY hands the distilled insight bundle to the `plan` agent for executable plan formalization. Use when planning needs maximum rigor and surfacing of weak assumptions, blind spots, and over-engineering. Triggers: 'hyperplan', 'hpp', '/hyperplan', ...

686011 votes

Mcp Code Execution

Routes multi-tool workflows through MCP servers for large datasets and pipelines. Use when Bash tool overhead is limiting throughput on data-heavy tasks.

3331 votes

catchup

Recovers prior coding-agent session context by running `catchup <agent> --since-compact`, which extracts a clean summary of a previous Codex, Claude Code, Antigravity, OpenCode, or Pi Agent session. Use when the user says "catch up", "what did the last session do", "get me up to speed", "I switched agents", or asks to recover/summarize a previous session before continuing. Do NOT use for the current conversation, git history, or any non-agent log.

611 votes

math-skill

A comprehensive mathematical reasoning skill for AI assistants — handles arithmetic to research-level problems with rigorous step-by-step reasoning, systematic verification, and transparent uncertainty handling

381 votes
View all in ai-agents →