CLI Reference
remotion-ui commands for init, add, doctor, and custom registries.
Commands
| Command | Description |
|---|---|
init [name] | Scaffold a new Remotion project |
init --existing | Bootstrap remotion-ui.json in an existing Remotion project |
add <name...> | Install components and dependencies |
doctor | Diagnose config, aliases, and Remotion version |
list | List registry components and installed status |
update <name...> | Re-install from registry (overwrites files) |
diff <name> | Compare installed files vs registry |
search -q <query> | Search the registry |
view <name> | View registry item metadata |
build [registry.json] | Build a custom registry to public/r/ |
Every command accepts --json. Commands that read the registry also accept -r, --registry-url <url> and --preset <preset>.
Flags by command
| Command | Flags |
|---|---|
init [name] | -y, --yes, --existing, --agent-skill, --no-agent-skill, --json |
add <name...> | -r, --registry-url, --preset, -y, --yes, --json |
doctor | --json |
list | -r, --registry-url, --json |
search | -q, --query, --lane, --tier, -r, --registry-url, --json |
view <name> | -r, --registry-url, --preset, --json |
update <name...> | -r, --registry-url, --preset, -y, --yes, --json |
diff <name> | -r, --registry-url, --preset, --json |
build [registry.json] | -o, --output, --preset, --json |
Diagnose setup
$ npx remotion-ui@latest doctorChecks remotion-ui.json, tsconfig path aliases, install directories, and Remotion version alignment.
Existing Remotion project
cd your-remotion-app
npx remotion-ui@latest init --existing
npx remotion-ui@latest add social-clipinit --existing writes remotion-ui.json and installs the agent skill into .claude/skills/remotionui-agent/. Pass --no-agent-skill to skip it.
New project
npx remotion-ui@latest init my-video
cd my-video && npm run dev
npx remotion-ui@latest add social-clipNew projects skip the agent skill unless you pass --agent-skill.
Composition registration
When a registry item carries composition metadata, add patches Root.tsx for you — it inserts the import and a <Composition /> entry with the item's id, durationInFrames, fps, width, and height. If an id is already present, the file is left untouched, so re-running add or update never duplicates entries.
Filter the registry
npx remotion-ui@latest search -q caption
npx remotion-ui@latest search --lane atoms
npx remotion-ui@latest search --tier core --lane reelsLanes: atoms, signals, vectors, spatial, blocks, cuts, reels. Tiers: core, advanced.
Script output
Pass --json to any command for machine-readable output — useful for agents and CI.
npx remotion-ui@latest doctor --json
npx remotion-ui@latest search -q social --json
npx remotion-ui@latest view social-clip --json
npx remotion-ui@latest list --json
npx remotion-ui@latest add social-clip --json
npx remotion-ui@latest diff fade-in --jsonError codes
With --json, failures print a structured envelope on stdout and exit non-zero:
{
"ok": false,
"error": {
"code": "CONFIG_NOT_FOUND",
"message": "No remotion-ui.json found in /path/to/project. Run \"remotion-ui init\" first."
}
}| Code | Meaning |
|---|---|
CONFIG_NOT_FOUND | No remotion-ui.json (or no package.json during init --existing) in the working directory |
CONFIG_INVALID | remotion-ui.json failed schema validation |
REGISTRY_ITEM_NOT_FOUND | No registry item with that name |
REGISTRY_FETCH_FAILED | Network or HTTP failure reaching the registry |
REGISTRY_ITEM_INVALID | Fetched item failed schema validation |
REGISTRY_INDEX_INVALID | Fetched index failed schema validation |
TEMPLATE_NOT_FOUND | Project template missing from the CLI package |
TARGET_EXISTS | Target directory already exists |
INVALID_ARGS | Missing or malformed command arguments |
DEPENDENCY_SPEC_INVALID | A dependency string could not be parsed |
UNKNOWN | Anything not mapped to a specific code |
Remotion version compatibility
Registry items may declare a supported Remotion range:
{
"name": "map-flight",
"compat": { "remotion": "^4.0.0" }
}At install time, add reads the Remotion version from your package.json and warns when the range is not satisfied. The install still proceeds — the check is advisory, and it only runs at install time, not continuously. doctor reports your installed Remotion version alongside config and alias checks.
Component props
Prop metadata is published per component as JSON, for agents and tooling that need signatures without reading source:
https://remotionui.com/ai/components/lower-third.jsonEach entry carries name, type, required, default, and description, plus usage snippets and related components. See AI Usage for the full set of agent-readable endpoints.
Workflow: staying up to date
$ npx remotion-ui@latest diff fade-in$ npx remotion-ui@latest update fade-inCustom registry
$ npx remotion-ui@latest build ./registry.json -o ./public/rConfig: remotion-ui.json
{
"preset": "default",
"aliases": {
"primitives": "@/remotion/primitives",
"scenes": "@/remotion/scenes",
"compositions": "@/compositions",
"lib": "@/remotion/lib",
"hooks": "@/remotion/hooks"
}
}