@remotion-dev

Creator · remotion-dev

Last updated · Aug 24, 2026

remotion-interactivity

REVIEW · 60Registry indexed

Structure Remotion markup for interactivity

OpenAgentSkill Trust Score
60/100

Sandbox only

Quality53/100
Audit72/100
Stars13
Verified installs0

Install targets

Codex install prompt

Install the "remotion-interactivity" agent skill from https://github.com/remotion-dev/claude-code-plugin/tree/main/skills/remotion-interactivity. Read its SKILL.md or equivalent instructions first, install only the files needed for this workspace, and summarize any required setup before using it. Skill purpose: Structure Remotion markup for interactivity After the install attempt, report the result to https://www.openagentskill.com/api/agent/outcome with POST JSON {"event_id":"install_<unique-id>","skill_slug":"remotion-dev-remotion-interactivity","task":"Install remotion-interactivity","agent":"codex","outcome":"success","install_used":true}. Replace event_id with a unique value and outcome with success or failed. Report success only after the skill is installed and a minimal verification passes.

Supply asset profile

Design and creative production

Design assets, images, video, audio, multimodal media, presentation, and creative production skills.

Browse track

Scenario

Multimodal media

I need my agent to process images, video, or audio and extract useful information.

Agent fit

Claude Code + CLI + Codex

Codex, Claude Code, Cursor, CLI, or custom agents.

Install

Ready

npx skills add remotion-dev/claude-code-plugin --skill remotion-interactivity

Maintenance

fresh

Pushed today

Risk

Needs review

License is unclear

GitHub quality

13

53/100 Quality · 68/100 Trust

Coverage tags

DesignMultimodal mediaautomationagent-skill

Review notes

License is unclear · Repository license is unknown; consider adding a clear open-source license to avoid ambiguity.

Agent adoption scorecard

Trust, audit, and install readiness at a glance

These scores combine public repository metadata, OpenAgentSkill review signals, maintenance freshness, and install readiness. They are a shortlist signal, not a replacement for human review.

Quality

Needs review
53

Inspect the repository carefully before adding it to an agent workflow.

Trust

Sandbox only
60

Useful candidate with missing or mixed trust signals. Keep it in an isolated workspace until the outcome loop proves task fit.

Audit

Needs review
72

A machine-readable review of install readiness, security metadata, maintenance, and adoption risk.

OpenAgentSkill Trust Score v5

Human review before install

Run only in a sandbox and compare close alternatives before using it for real work.

CodexClaude CodeCursorOpenAgentSkill CLI

Stars

13 GitHub stars

Repo activity

13 stars, 5 forks

Maintenance

Pushed today

License

Unknown

Install

npx skills add remotion-dev/claude-code-plugin --skill remotion-interactivity

Install safety

standard package or runtime install path

Permission surface

no high-risk permission surface in public metadata

Agent outcomes

No agent outcome data yet

Docs

Usable metadata, review docs

Risk summary

Review before production

  • Repository license is unknown; consider adding a clear open-source license to avoid ambiguity.
  • License is unclear
  • Low GitHub adoption signal
  • Quality score needs review

Install readiness

Install path available

  • Install path is available
  • Repository evidence is available
  • License is unclear
  • No Agent Proven outcome evidence yet

Agent-readable metadata

Machine-readable decision data for this skill.

Use this block or the embedded JSON to decide whether an agent should install this skill, choose an alternative, or ask for human review first.

View technical data+

Suited tasks

  • Multimodal media workflows
  • Claude Code teams
  • builders willing to evaluate younger projects
  • Read media metadata

Suited agents

CodexClaude CodeCursorOpenAgentSkill CLICLI

Install decision

Command
npx skills add remotion-dev/claude-code-plugin --skill remotion-interactivity
Policy
review
Human review
yes

Trust and risk

Trust
60/100
Audit
72/100
Risk level
Needs review

Outcome loop

Endpoint
/api/agent/outcome
Event ID
resolve
Outcomes
5

Install command

npx skills add remotion-dev/claude-code-plugin --skill remotion-interactivity

Do not use when

  • teams that need a vendor-supported SLA
  • production agents without a repository review
  • Low GitHub adoption signal
  • Repository license is unknown; consider adding a clear open-source license to avoid ambiguity.
  • No OpenAgentSkill engagement data yet

Agent safety v2

60/100 · Review before install

Reviewed with permission notesreview

Usable candidate, but the agent should surface permission and audit notes before installation.

Require human approval before installing into a real workspace.

Resolve via API

medium

Network access

Skill likely fetches remote pages, APIs, repositories, or external services.

  • License is unclear

Agent resolve plan

Let an agent verify fit before installing.

The Resolve API returns the selected skill, alternatives, safety policy, audit notes, install target, and copy-paste prompt an agent can follow without scraping this page.

Open text plan

Agent should check

  • Task fit and alternatives from Resolve API.
  • Audit score, trust score, and safety policy warnings.
  • Install target compatibility for Codex, Claude Code, Cursor, or CLI.

Copy prompt

Task: Use remotion-interactivity in this workspace.
Resolve first: https://www.openagentskill.com/api/agent/resolve?task=Use%20remotion-interactivity%20for%20an%20agent%20workflow&agent=codex&max_risk=medium
Review install handoff: https://www.openagentskill.com/api/skills/remotion-dev-remotion-interactivity/install
Install command: npx skills add remotion-dev/claude-code-plugin --skill remotion-interactivity
Before running it, summarize audit warnings, required permissions, and the fallback skill if install is risky.

Agent handoff

Give an agent the install path, not another directory page.

Use the public install endpoint to fetch the command, safety checklist, target prompts, and canonical links for this skill.

Open install API

Agent prompt

Use remotion-interactivity for this task. Review https://www.openagentskill.com/api/skills/remotion-dev-remotion-interactivity/install, then install with: npx skills add remotion-dev/claude-code-plugin --skill remotion-interactivity

Registry metadata

Agent-readable profile for automatic skill selection.

This page exposes the same decision, trust, audit, use-case, and install signals through the Registry API, so agents can rank this skill without scraping the UI.

Open manifest

Agent fit

52/100

Multimodal media

Platforms

Claude Code

Audit report

Needs review · 72/100

A machine-readable review of install readiness, security metadata, maintenance, and adoption risk.

View audit reportView eval report

Agent decision cockpit

Needs validation for Multimodal media

Do a manual repository review before adding this to an agent workflow.

52
Readiness
Review
Stage

Role in stack

Needs validation

Primary fit

Multimodal media

Trust label

Needs manual review

Install path

Command ready

Use when

  • Multimodal media workflows
  • Claude Code teams
  • builders willing to evaluate younger projects

Evidence

  • recent repository activity
  • install command or GitHub repo available
  • 53/100 quality profile

review first

  • Low GitHub adoption signal
  • Repository license is unknown; consider adding a clear open-source license to avoid ambiguity.
  • No OpenAgentSkill engagement data yet

Implementation path

  1. 1Install it in a sandbox agent and run one Multimodal media task end to end.
  2. 2Compare output quality, latency, and failure behavior against at least one alternative.
  3. 3Promote it into production only after reviewing repository permissions, license, and maintenance signals.

Trust profile

Sandbox only

Useful candidate with missing or mixed trust signals. Keep it in an isolated workspace until the outcome loop proves task fit.

60
OpenAgentSkill Trust Score

GitHub adoption

FIX

13 GitHub stars

Stars/forks activity

FIX

13 stars, 5 forks; issue activity unavailable in current metadata

Recent maintenance

PASS

Pushed today

License clarity

CHECK

Unknown

Good signals

  • AI review approved
  • Install path is available
  • Repository evidence is available
  • Recently maintained repository
  • Install command has no obvious high-risk pattern
  • Outcome loop is ready but needs first real agent run

Review before install

  • Repository license is unknown; consider adding a clear open-source license to avoid ambiguity.
  • License is unclear
  • Low GitHub adoption signal
  • Quality score needs review
  • GitHub adoption: 13 GitHub stars
  • Stars/forks activity: 13 stars, 5 forks; issue activity unavailable in current metadata
  • License clarity: Unknown
  • No real agent outcome reports yet
  • Human review required before unattended installation

Recommended action

Run only in a sandbox and compare close alternatives before using it for real work.

Quality profile

Needs review candidate for agent workflows

Inspect the repository carefully before adding it to an agent workflow.

53
GitHub stars
13
Freshness
Today
Install ready
Yes
License
Unknown
Review before install: Low GitHub adoption signal · Repository license is unknown; consider adding a clear open-source license to avoid ambiguity.

Workflow fit

Use this skill in these scenarios

Workflow fit

Add it to a complete workflow

Alternative shortlist

Compare before you install

Similar skills that may fit this task.

Compare all

Overview

--- name: remotion-interactivity description: Structure Remotion markup for interactivity version: 4.0.516 ---

By writing Remotion markup in a specific way, the Remotion Studio is able to recognize the structure of the code and makes it interactive:

- Allowing items to be selected by clicking on them - Allowing drag+drop, resizing and rotation - Editing the CSS styles - Making keyframes and easing values editable

If the markup is too complex for the Studio to make it interactive, then the values become grayed out.

## Make an HTML element interactive using `Interactive`

Every HTML and SVG element (except `<Img>`, it already is interactive) such as `<div>` can be turned interactive using `Interactive`:

```tsx title="Interactive elements" <Interactive.Div name="Greeting card" style={{fontSize: 80, padding: 24}} > Hello </Interactive.Div> ```

This allows styles and keyframes to be set in the Studio. Be sensible, if a component has many elements, the timeline might get messy.

## Prefer inline text

If text is fixed and only used once, write it directly inside the interactive element instead of extracting it into a constant.

```tsx title="Inline text" // 👍 Fixed copy stays editable <Interactive.Div name="Title"> Remotion Best Practices </Interactive.Div> ```

Use a prop or variable only when the text is dynamic or reused.

## Give interactive elements a descriptive name

Add a `name` prop to elements to make them easily identifyable. Avoid computed names, hardcode them.

```tsx title="Interactive names" <> <Interactive.Div name="Hero title" style={{fontSize: 80}}> Launch day </Interactive.Div> <Img name="Avatar" src="https://remotion.media/image.jpeg" /> <Video name="Background" src="https://remotion.media/video.mp4" /> <Sequence name="Title"> Launch day </Sequence> </> ```

## Keep all CSS styles inline

The best way is to just pass a plain object to `style` - no referring to constants, no object spreading, no math.

```tsx title="Interactive example" <Interactive.Div style={{ fontSize: 80, color: 'red', }} > Hello World! </Interactive.Div> ```

```tsx title="❌ Bad for interactivity" const baseStyle = useMemo(() => { return { fontSize: 12 // ❌ Non-inline styles are not supported } }, []);

<Interactive.Div style={{ ...baseStyle, // ❌ Spreading is not supported color: RED, // ❌ Referring to constants is not supported scale: frame * 10 // ❌ Math is not supported }} > Hello World! </Interactive.Div> ```

## Animate using `interpolate()`

Write animations as inline `interpolate()` calls on the property that changes. The output range, easing, extrapolation and `output` property should use hardcoded values.

The input range may additionally use `durationInFrames`, `fps`, `width` and `height` destructured directly from `useVideoConfig()`. Bare identifiers such as `durationInFrames`, multiplication with a number such as `2 * fps` or `fps * 2`, and subtraction of a number such as `durationInFrames - 1` are supported.

```tsx title="Inline values" const {fps, durationInFrames} = useVideoConfig();

// 👍 Inline values can be standardized and keyframed <Interactive.Div name="Product card" style={{ color: 'white', fontSize: 80, scale: interpolate(frame, [0, fps], [0, 1], { easing: Easing.spring({damping: 200}), output: 'perceptual-scale', extrapolateLeft: 'clamp', extrapolateRight: 'clamp' }), rotate: interpolate(frame, [0, 1 * fps], ['0deg', '20deg'], { easing: Easing.spring({damping: 200}), extrapolateLeft: 'clamp', extrapolateRight: 'clamp' }), translate: interpolate( frame, [durationInFrames - 30, durationInFrames], ['0px 0px', '0px 120px'], { easing: Easing.spring({damping: 200}), output: 'perceptual-scale', extrapolateLeft: 'clamp', extrapolateRight: 'clamp' } ), }} /> ```

```tsx title="❌ Bad interactivity" const translateY = interpolate(frame, [0, 30], [0, 120]); // ❌ Math should be directly in the markup

<Interactive.Div name="Product card" style={{ translate: translateY, // ❌ Only inline interpolate() calls are supported, rotate: interpolate(frame, [start, start + 10], [0, Math.PI]), // ❌ Cannot use math with arbitrary variables, cannot use constants scale: interpolate(anyVariable, [0, 30], [0, 1]) // ❌ Can only interpret the `frame` variable. }} /> ```

## Use `scale`, `translate`, `rotate` CSS properties

Avoid the `transform` CSS property. If possible, use `scale`, `rotate` and `translate` instead because only they are interactively editable.

## Keep composition metadata inline

When scaffolding a composition, keep `width`, `height`, `fps`, `durationInFrames` and `defaultProps` inline and make no type assertions.

The Props editor can save visual edits back to your code when `defaultProps` is an inline object literal on `<Composition>` or `<Still>`.

```tsx // 👍 Static values are in <Composition>, dynamic values are in calculateMetadata() const calculateMetadata = useMemo(async () => { const dimensions = await getDimensions(); // just an example return {width: dimensions.width, height: dimensions.height}; });

<Composition id="my-video" component={MyComponent} durationInFrames={150} fps={30} calculateMetadata={calculateMetadata} defaultProps={{title: 'Hello', color: '#0b84ff'}} /> ```

```tsx title="Negative examples" const defaultProps = {title: 'Hello', color: '#0b84ff'}; // ❌ Don't extract defaultProps, must be inline const calculateMetadata = useMemo(() => { // ❌ Unnecessary because no calculation is being done, return {durationInFrames: 150, fps: 30, width: 1920, height: 1080}; });

<Composition id="my-video" component={MyComponent} calculateMetadata={calculateMetadata} defaultProps={{ title: 'Hello', } as Props} // ❌ Don't have type assertions, instead type MyComponent correctly /> ```

Use only `calculateMetadata()` for the part of the metadata that is dynamic.

## Effects should be inline too

The effects array should not be computed. The same rules for setting keyframes as `interpolate()` apply too here: All values should also be hardcoded: Input range, output range, easing, extrapolation, `output` property.

```tsx title="Effects" // 👍 Parameters are inline and the array shape is stable <CanvasImage src={src} width={1280} height={720} effects={[ radialProgressiveBlur({ center: [0.5, 0.5], width: 1.2, height: 0.8, start: 0.2, disabled: true, rotation: interpolate(frame, [0, 120], [0, 180]), }), ]} />

const center = [0.5, 0.5] as const; const rotation = frame * 1.5;

<CanvasImage src={src} width={1280} height={720} // ❌ Conditional effect is not animateable effects={enabled ? [ radialProgressiveBlur({ // ❌ Not inline center, rotation, }), ] : []} /> ```

Render separate elements if one version should have effects and another should not.

## Making your own component interactive

To make a custom userland component interactive, use: [Make a component interactive](https://www.remotion.dev/docs/studio/make-component-interactive.md)

## Video editing

If a Remotion component mainly consists of video and audio clips, see [Video editing](../remotion-markup/video-editing.md) for best practices on how to structure Remotion markup so the clips are interactively editable in the timeline.

Technical details

Version
4.0.516
License
Unknown
Last updated
Aug 24, 2026
Published
Aug 24, 2026

Decision snapshot

Needs validation

52
Ready
Review
Stage

recent repository activity

Audit

Install review

Install and adoption review

72
Needs review
Security
75/100
Maintenance
100/100
Install
92/100
Open full auditView eval report

Agent-proven evidence

Agent-proven evidence

Outcome reports after resolve, review, install, and one narrow run.

0
Proven
Needs first agent runAuto-install: review firstLast: Unknown
Success rate
Recent failure
Outcomes
0
Output quality
Failed
0
Not relevant
0
Installs
0
Risk blocked
0
Setup needed
0
Production
0

No agent outcome data yet. The first agent run can report success, setup needs, risk blocks, failure, or not-relevant through /api/agent/outcome.

Install

Add to agent workflow

Free and open source. Review the report before installing into production agents.

Growth loop

Share kit

X

Scenario-led draft for remotion-interactivity, ready for a manual X post.

Curator note
For design or creative work, this is a skill worth shortlisting before another blank prompt.

remotion-interactivity: Structure Remotion markup for interactivity

13 stars

https://www.openagentskill.com/skills/remotion-dev-remotion-interactivity?ref=x
Open X draft
Optional reply with install command
Listing + install path for remotion-interactivity:
https://www.openagentskill.com/skills/remotion-dev-remotion-interactivity?ref=x

Install: npx skills add remotion-dev/claude-code-plugin --skill remotion-interactivity

Listing source

Registry indexed

Claimable

This listing was indexed from public sources and is not marked official until a maintainer claim is approved.

Indexed by
OpenAgentSkill community index

Attribution links to the public repository or creator profile. Creators can claim the listing to update ownership signals.

Claim this skill

Owner claim

Claim this skill listing

This Registry indexed listing is attributed to remotion-dev but is not marked official yet. Claim it to add a verified owner signal and make future launch, install, and audit updates easier to trust.

Creator backlink kit

Add the evidence badges to your README

Show the canonical listing, current trust and audit signals, and real Agent-Proven evidence where developers evaluate the repository.

[![Listed on OpenAgentSkill](https://www.openagentskill.com/api/badge/remotion-dev-remotion-interactivity?metric=listed&label=Listed)](https://www.openagentskill.com/skills/remotion-dev-remotion-interactivity)
[![OpenAgentSkill Trust](https://www.openagentskill.com/api/badge/remotion-dev-remotion-interactivity?metric=trust&label=Trust)](https://www.openagentskill.com/skills/remotion-dev-remotion-interactivity)
[![OpenAgentSkill Audit](https://www.openagentskill.com/api/badge/remotion-dev-remotion-interactivity?metric=audit&label=Audit)](https://www.openagentskill.com/skills/remotion-dev-remotion-interactivity/audit)
[![Agent Proven](https://www.openagentskill.com/api/badge/remotion-dev-remotion-interactivity?metric=proven&label=Agent%20Proven)](https://www.openagentskill.com/skills/remotion-dev-remotion-interactivity)

Author

R

remotion-dev

@remotion-dev

Platform fit

Health signals

GitHub stars
13
Quality score
31/100
Last GitHub push
Aug 24, 2026
Framework hints
Unknown
OpenAgentSkill views
0
Install copies
0
Outbound clicks
0

Community signal

Share whether this skill looks useful for your agent workflow. Aggregated feedback improves rankings over time.

Trust & safety

Sandbox only

60
  • GitHub adoption13 GitHub starsFIX
  • Stars/forks activity13 stars, 5 forks; issue activity unavailable in current metadataFIX
  • Recent maintenancePushed todayPASS
  • License clarityUnknownCHECK
  • README/SKILL.md completenessPublic metadata needs stronger README/SKILL.md contextINFO
  • Dependency/runtime riskno major dependency risk hints in public metadataPASS