SkillsMar 29, 2026·2 min read

Remotion Rule: Parameters

Remotion skill rule: Make a video parametrizable by adding a Zod schema. Part of the official Remotion Agent Skill for programmatic video in React.

TO
TokRepo精选 · Community
Quick Use

Use it first, then decide how deep to go

This block should tell both the user and the agent what to copy, install, and apply first.

npx skills add remotion-dev/skills

This rule activates automatically when working with parameters in a Remotion project.


Intro

Make a video parametrizable by adding a Zod schema. Part of the Remotion AI Skill — the official Agent Skill for programmatic video creation in React.

Best for: Developers using Remotion for parameters Works with: Claude Code, OpenAI Codex, Cursor


Rule Content

To make a video parametrizable, a Zod schema can be added to a composition.

First, zod must be installed .

Search the project for lockfiles and run the correct command depending on the package manager:

If package-lock.json is found, use the following command:

npm i zod

If bun.lockb is found, use the following command:

bun i zod

If yarn.lock is found, use the following command:

yarn add zod

If pnpm-lock.yaml is found, use the following command:

pnpm i zod

Then, a Zod schema can be defined alongside the component:

import { z } from "zod";

export const MyCompositionSchema = z.object({
  title: z.string(),
});

const MyComponent: React.FC<z.infer<typeof MyCompositionSchema>> = () => {
  return (
    <div>
      <h1>{props.title}</h1>
    </div>
  );
};

In the root file, the schema can be passed to the composition:

import { Composition } from "remotion";
import { MycComponent, MyCompositionSchema } from "./MyComposition";

export const RemotionRoot = () => {
  return (
    <Composition
      id="MyComposition"
      component={MyComponent}
      durationInFrames={100}
      fps={30}
      width={1080}
      height={1080}
      defaultProps={{ title: "Hello World" }}
      schema={MyCompositionSchema}
    />
  );
};

Now, the user can edit the parameter visually in the sidebar.

All schemas that are supported by Zod are supported by Remotion.

Remotion requires that the top-level type is a z.object(), because the collection of props of a React component is always an object.

Color picker

For adding a color picker, use zColor() from @remotion/zod-types.

If it is not installed, use the following command:

npx remotion add @remotion/zod-types # If project uses npm
bunx remotion add @remotion/zod-types # If project uses bun
yarn remotion add @remotion/zod-types # If project uses yarn
pnpm exec remotion add @remotion/zod-types # If project uses pnpm

Then import zColor from @remotion/zod-types:

import { zColor } from "@remotion/zod-types";

Then use it in the schema:

export const MyCompositionSchema = z.object({
  color: zColor(),
});

🙏

Source & Thanks

Created by Remotion. Licensed under MIT. remotion-dev/skills — Rule: parameters

Part of the Remotion AI Skill collection on TokRepo.

Related Assets