remotion-best-practices
Mejores prácticas para Remotion
npx skills add https://github.com/remotion-dev/codex-plugin --skill remotion-best-practicesPreserve user changes
Users may make edits in the code outside of the conversation.
If you detect a surprising change made in the meanwhile, don't overwrite it, assume it was intentional or ask for confirmation.
Creating a video
If the user asks to make, create, or build a new video or composition, load Create a new Remotion video, whether or not a Remotion project already exists.
New project setup
If no Remotion project currently exists, load Create a new Remotion project
React Markup Best Practices
If you are writing Remotion React Markup, load Remotion Markup Best Practices
Maps
For static maps, animated routes and markers, geographic explainers, Mapbox, MapLibre, MapTiler, GeoJSON, or 3D geographic flyovers, load Remotion Maps.
Multimedia
For achieving multimedia tasks in the browser, such as trimming, cropping videos, or getting metadata from them, load Remotion Multimedia
Improving Interactivity
By structuring the Remotion markup well, we can allow users to interactively change things in the Studio and write back to code. If relevant: Interactivity Best Practices
Open the preview
If the user asks to "make" a video, "create" a video, etc. Don't render the video by default unless they are very explicit. They want to instead see an interactive preview. After creating or updating the video, start the preview server by default:
Always pass --no-open so the system browser is not opened:
npx remotion studio --no-open
This will start a long-running process and print the server URL for the preview.
If the server is already started, it will print the URL.
Open the exact URL in the Codex in-app browser. If the in-app browser is not available, keep the preview server running and provide the URL to the user.
You can visit a specific composition by navigating to /[composition-id], for example http://localhost:3000/MapAnimation.
:::note The Studio supports WebMCP tools. :::
More options
To launch a project in Remotion Studio, open its exact local URL, or configure Studio CLI flags, load Remotion Studio.
Render the video
Only render if the user is very explicit in asking for it.
E.g. "Render the video", "Export", "Give me the MP4".
The preview also has a more intuitive rendering interface, so consider using it instead of the command line for rendering.
npx remotion render
For more options, see Rendering.
For advanced rendering beyond simple npx remotion render, see: Rendering Best Practices
Captions
When working with Captions, load Remotion Captions.
Creating a SaaS, automation or application
Use the Remotion SaaS skill for knowledge about Remotion-powered SaaS apps, such as <Player>, rendering on Lambda, Vercel, Cloudflare, via Express.js, client-side rendering, or for finding the right SaaS template.
Looking up Remotion APIs and documentation
To find and read current Remotion documentation, load Remotion Docs.
Upgrading
To upgrade Remotion, related packages, compatible Mediabunny packages, and installed Remotion Agent Skills, load Remotion Upgrade.
Codex troubleshooting
When running inside Codex, first try starting the Remotion Studio without opening the system browser:
npx remotion studio --no-open
Only if that fails with file watcher limits such as EMFILE: too many open files, watch, retry with polling and without opening a browser from Codex:
npx remotion studio --no-open --webpack-poll 1000
If Studio still fails to start from Codex, ask the user to start it manually from their macOS Terminal and then continue using the already-running Studio. Sandbox errors while launching Chromium from Codex are likely caused by the Codex/macOS sandbox rather than the Remotion project.